Reply to a comment
Reply as the account that received the comment. This speaks publicly on behalf of the workspace and is treated like publishing: Idempotency-Key required, at most 5 per minute. If the comment already has a reply from you the call is refused with a summary (params.reason=already_replied); pass force:true to add another. One comment takes at most 3 replies per 24 h. Length follows the platform (e.g. X's 280 weighted characters).
/api/v1/comments/{commentId}/repliesAuthorization & guardrails
- Send
Authorization: Bearer <credential>; credentials are issued under Settings → Integrations → Long-lived credentials, see Authentication. - The credential needs scope
comments:write; the issuer's workspace role must also allow the action. - Rate limit: publish tier, 5/min per credential; over the cap returns 429 with
Retry-After. - Idempotency:
Idempotency-Keyis required (400 without it); a retry with the same key returns the first result withmeta.replayed: true.
Path parameters
commentIdstringrequiredComment id from the inbox (never a replyRowId).
Request body (application/json)
textstring (1–2000)requiredReply text.
forcebooleanoptionalAdd another reply even though one exists.
clientRequestIdstringrequiredIdempotency key (8–128 chars of [A-Za-z0-9_.:-]); prefer the Idempotency-Key header, which wins over the body.
Responses
Success is HTTP 201 with a { data, meta } envelope; examples per status are on the right (at the end of the page on narrow screens). Every error is { error: { code, message, params }, meta } — branch on the code, not the message; see Errors.
| Status | Possible codes |
|---|---|
| 400 | invalid_input |
| 401 | unauthenticated |
| 402 | plan_limit |
| 403 | forbidden / workspace_not_found |
| 404 | not_found |
| 409 | no_account / needs_reauth / replay |
| 429 | rate_limited |
| 500 | internal |
| 502 | platform_error |
| 503 | external_writes_off |
Examples
curl -X POST "https://popkit.loxily.com/api/v1/comments/cmt_01J8ZQ7H2K4W/replies" \
-H "Authorization: Bearer popkit_it_••••••••" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: acme-2026-09-21-001" \
-d '{
"text": "小红书已经以素材包方式支持啦,可以到账号页看看 🙌"
}'{
"data": {
"commentId": "cmt_01J8ZQ7H2K4W",
"replyRowId": "cmt_01J8ZR…",
"platformCommentId": "7412…",
"platform": "tiktok",
"text": "小红书已经以素材包方式支持啦,可以到账号页看看 🙌",
"repliedAt": "2026-09-20T08:02:11.000Z",
"deepLink": "https://popkit.loxily.com/engagement?comment=cmt_01J8ZQ7H2K4W"
},
"meta": {
"requestId": "6a1d0c9e-2b7f-4e3a-8c5d-1f0e9b8a7c76"
}
}