syndication

PUT /v1/syndication/posts/{postId}

Change a held post's copy before it goes out.

All syndication endpoints

Authentication

Send an API key as a bearer token. This endpoint does not state a specific permission in the specification, so give your key the least it needs and check the response rather than assuming.

This endpoint takes no organisation id. Your key already identifies the organisation it belongs to, and the response is scoped to it.

Try it

Replace anything in angle brackets with your own values, and the key placeholder with a key from your dashboard.

curl -X PUT https://api.zinndigital.com/v1/syndication/posts/{postId} \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "text": <string> }'

Signed in? The API console in your dashboard fills in your real organisation id and your own key, and runs the request against the live API so you can see the actual response. Open this endpoint in the API console

Details

⛔ Refused once the post has gone out — there is nothing to edit. The channel's character limit is enforced here, so a customer typing 400 characters into a Bluesky box is told while they are typing. Gated on `syndication.manage`.

Parameters

NameTypeRequiredWhat it is
postId (path)stringYes

Request body

NameTypeRequiredWhat it is
textstringYes

Response

NameTypeRequiredWhat it is
idstringYes
channelstringYes
connection_idstringYes
connection_labelstringYes
statusstring<drafting, awaiting_approval, queued, posted, failed, needs_reconnect, skipped>Yes⛔⛔ `needs_reconnect` is NOT `failed`. `skipped` means the customer said no or the connection was removed — nothing went wrong.
textstringYes
remote_urlstringYesThe live post, read back from the channel where it returns one. ⛔ Empty where the vendor gives us nothing to build a URL from (a Slack incoming webhook answers the literal strin…
droppedstring[][]Yes`[[field, reason], …]` — what this channel could not carry, and WHY. The reason travels: "no image endpoint" and "the upload was refused" are different problems with different n…
errorstringYesA machine code, never a sentence.
cost_microsintegerYesWhat this post cost us, in USD micros. One line per channel per post.
character_limitintegerYes
posted_atstringYes

Errors this endpoint can return

401 · 403 · 404 · 422