Comment on a post or reply to a comment
Publishes a comment on the post, or a reply to commentId when one is given. Requires a read-write API key and the account's comment-management scope; without the scope the call answers 403 platformCapabilityMissing and nothing is sent to the platform. attachmentUrl is Facebook only — every other platform rejects it with 400 attachmentUnsupported. Instagram is two levels deep, so replying to a reply is redirected to that reply's top-level parent. A Threads reply is created as a container and then published; when the publish is still pending after PostZen's internal retries the call returns 502 publishPending and the reply may still appear on its own, so check the thread before retrying rather than posting twice.
Authorization
bearerAuth PostZen API key.
In: header
Path Parameters
Post the comments belong to. Accepts a PostZen post id — resolved to the id the post was published under for accountId — or the platform's own post/media id, which is the common case because the inbox covers every post the account has, not only the ones PostZen published. Instagram and Facebook also accept a comment id here.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/inbox/comments/string" \ -H "Content-Type: application/json" \ -d '{ "accountId": "k17d8s9f0a1b2c3d4e5f6g7h8i", "message": "Thank you!", "commentId": "17912345678901234" }'{ "success": true, "data": { "commentId": "17912345678901299", "isReply": true }}{ "error": "attachmentUrl is supported for Facebook comments only.", "code": "attachmentUnsupported", "platform": "instagram"}{ "error": "Unauthorized"}{ "error": "Reconnect the account to grant PostZen access to its comments.", "code": "platformCapabilityMissing", "platform": "facebook"}{ "error": "That post could not be found.", "code": "postNotFound"}{ "error": "This connection needs to be reauthorized before its comments can be read.", "code": "connectionDead", "platform": "instagram"}{ "error": "(#4) Application request limit reached", "code": "4", "platform": "instagram", "platformError": "(#4) Application request limit reached"}{ "error": "Failed to create post"}{ "error": "Unsupported get request.", "code": "100", "platform": "facebook", "platformError": "Unsupported get request."}List comments on a post GET
Returns the comments the platform holds for one Instagram, Facebook, or Threads post, and refreshes PostZen's stored copy of the thread as a side effect. `replies` carries the first page of nested replies when the platform returns them cheaply — `repliesHasMore` says when it did not, and passing that comment's id as `commentId` pages through the rest. Instagram threads are only two levels deep, so a reply never carries replies of its own. Fields a platform does not report are absent rather than zero: Threads, for example, never reports per-reply like counts. Read-only and read-write API keys are accepted.
Delete a comment DELETE
Deletes a comment. Requires a read-write API key and the account's comment-management scope. `canDelete` on the comment says whether the platform allows it: Facebook reports it per comment, and Threads only allows deleting replies the connected account itself wrote.