Replies & First Comments

PostFuze models replies, first comments, and threads as containerson a post rather than a separate resource. There is no dedicated “comment” field — instead, the additional containers you attach to a post are published as native replies to the root after it lands. The endpoints on this page let you add a reply to an already-published post and read back the replies for a post.

First comments via containers

The most common pattern — a “first comment” carrying a link without hurting the root post’s reach — is expressed at create time through the containers array on POST /posts. Container position determines the role:

  • Position 0main — the root post.
  • Position 1first_comment — auto-published as a reply to the root once it lands.
  • Position 2+thread — chained replies that form a thread.

Comments and threads support media identically to the root post — each container has its own mediaarray. You do not call the replies endpoint for these; they are published automatically as part of the post’s publish run.

curl
curl https://api.postfuze.com/api/v1/posts \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "containers": [
      { "content": "Our biggest release yet is live 🎉", "media": [] },
      { "content": "Read the full changelog → https://acme.com/changelog", "media": [] }
    ],
    "accounts": ["a1b2c3d4-…"]
  }'

The second container is stored with role first_comment and published as a reply to the root post on each platform that supports it.

Add a reply

POST /posts/{id}/replies

Posts a reply to an already-published post. Use this for replies decided after the original post went out — for example responding in a thread later. The reply fans outacross the post’s published targets whose platform supports replies; by default it replies under every published target. Use the optional filters to narrow which targets receive the reply.

ParameterTypeRequiredDescription
contentstringYesText of the reply.
account_idsstring[]NoRestrict the fan-out to these connected account ids (UUIDs). Omit to reply under every published target.
platform_post_idstringNoReply to a specific platform post id, when the post fanned out to several accounts.
account_usernamestringNoRestrict the fan-out to the connected account with this username.
curl
curl https://api.postfuze.com/api/v1/posts/p1a2b3c4-…/replies \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "And here's the deep-dive thread 🧵",
    "account_ids": ["a1b2c3d4-0000-4a9f-9b1c-2e7d6f0a1234"]
  }'

Returns 200 OK with one entry in data per target the reply was posted to, and one entry in errorsper target that failed or whose platform doesn’t support replies. A partial success (some data, some errors) is normal for a multi-platform post.

200 OK
{
  "data": [
    {
      "id": "r1a2b3c4-0000-4a9f-9b1c-2e7d6f0a1234",
      "post_id": "p1a2b3c4-…",
      "social_account_id": "a1b2c3d4-…",
      "platform": "x",
      "content": "And here's the deep-dive thread 🧵",
      "platform_reply_id": "1799012345678901299",
      "permalink": "https://x.com/acme/status/1799012345678901299",
      "status": "published",
      "created_at": "2026-06-14T15:02:00.000Z"
    }
  ],
  "errors": [
    {
      "social_account_id": "b7c8d9e0-…",
      "platform": "youtube",
      "error": "Replies are not supported on this platform."
    }
  ]
}

List replies

GET /posts/{id}/replies

Returns the replies recorded for a post, newest first, under a top-level data array. Both query parameters are optional — omit them to list every recorded reply across all platforms.

Query parameterTypeRequiredDescription
networkenumNoOnly return replies on this platform.
usernamestringNoFilter to replies from a specific connected account.
curl
curl "https://api.postfuze.com/api/v1/posts/p1a2b3c4-…/replies?network=x&username=acme" \
  -H "Authorization: Bearer sk_live_…"
200 OK
{
  "data": [
    {
      "id": "r1a2b3c4-0000-4a9f-9b1c-2e7d6f0a1234",
      "post_id": "p1a2b3c4-…",
      "social_account_id": "a1b2c3d4-…",
      "platform": "x",
      "content": "And here's the deep-dive thread 🧵",
      "platform_reply_id": "1799012345678901299",
      "permalink": "https://x.com/acme/status/1799012345678901299",
      "status": "published",
      "error_message": null,
      "created_at": "2026-06-14T15:02:00.000Z"
    }
  ]
}