You can’t import comments for imported posts (future thing, maybe)
- import comments from a published post,
- display comments as a real thread,
- reply to imported comments on the original platform,
- keep your comments list fresh after new activity.
Supported Platforms
Comment import is available for:FACEBOOKINSTAGRAMLINKEDINYOUTUBETIKTOKREDDITTHREADSMASTODONBLUESKY
Twitter / X is intentionally not supported in this import flow. If you have spare 5k drop it in.
Before You Start
Use this quick checklist first:- You already connected a social account to the team.
- You already published a post on that platform through bundle.social.
- You have:
teamIdpostIdsocialAccountType
Flow of comments API
Think about import as a small background job:- User clicks “Import comments”.
- Your app starts the import job on bundle.
- Your app checks status every 5/10 seconds (if you do a while loop I will post used F-150 on marketplace with your phone number).
- When completed, your app fetches comments and renders the thread.
Step 1: Start Import
Endpoint:POST /api/v1/comment/import
Why Import Can Be Rejected
Import start can return validation errors if:- post does not belong to this team,
- post is not published to selected platform yet,
- this team has no connected account for that platform,
- there is already an active import for this same post and platform.
409.
Step 2: Track Progress
Endpoints:GET /api/v1/comment/import?teamId=...&postId=...GET /api/v1/comment/import/:importId
| Status | What to show to user |
|---|---|
PENDING | ”Waiting in queue” |
FETCHING | ”Importing comments…” |
RETRYING | ”Retrying after temporary issue” |
RATE_LIMITED | ”Platform limit reached. We will retry automatically.” |
COMPLETED | ”Import complete” |
FAILED | ”Import failed. Try again later.” |
SKIPPED | ”Import skipped” |
Step 3: Get Imported Comments
Endpoint:GET /api/v1/comment/import/comments
Query params:
teamId(required)postId(required)platform(optional)socialAccountId(optional)limit,offset
What Exactly Gets Imported
Each imported comment includes:externalId: unique platform comment ID.externalParentId: parent comment ID on platform, ornullfor top-level.externalPostId: platform post ID.- author metadata:
authorName,authorExternalId,authorProfileUrl,authorAvatarUrl. - content and stats:
text,likesCount,repliesCount,publishedAt.
- the API returns a flat list,
- your app rebuilds thread hierarchy using
externalParentId.
How To Display Comments In Your App
Plain-Language Rule
IfexternalParentId is empty, this is top-level comment.
If externalParentId points to another externalId, this is a reply.
Recommended Rendering Steps
- Create
externalId -> commentmap. - Group comments by
externalParentId. - Start from root comments.
- Attach children recursively.
Sometimes platform APIs do not return full parent mapping for every nested reply. If parent is missing, treat this comment as root and still show it.
Replying To Imported Comments
To reply to imported comment, create normal comment withfetchedParentCommentId.
Endpoint: POST /api/v1/comment
Minimal body:
What Happens After You Send Reply
- API resolves correct platform and post from fetched parent.
- New comment is saved with
SCHEDULEDstatus. - Queue publishes it to platform.
- Status becomes
POSTEDorERROR.
Limits Explained
Per Import Storage Limit (Per Post)
Import always runs, but stored comments are capped for each run.| Tier | Max stored comments per post import |
|---|---|
| FREE | 25 |
| PRO | 200 |
| BUSINESS | 1000 |
- if platform has 900 comments and your cap is 200,
- import completes successfully,
- newest 200 are stored in this run.
Is There a Monthly Comment Import Quota?
No. Comment import does not use monthly counters. Limit is per run and per post.Reply Text Limits By Platform
| Platform | Max text length |
|---|---|
| 8000 | |
| 2200 | |
| 1250 | |
| YOUTUBE | 10000 |
| TIKTOK | 150 |
| 10000 | |
| THREADS | 500 |
| MASTODON | 500 |
| BLUESKY | 30000 |
For global API rate limits, see Rate Limits.
Quick FAQ
”Why comments list is empty?”
Most common reasons:- post was not published to selected platform,
- import still running,
- no comments yet on that post.