POST/social-inbox/conversations/{id}/read

Marks a conversation read (zeroes its unread count). Internal to PostFast, so nothing changes on the platform.

https://api.postfa.st/Auth: pf-api-keyRate limit: 600 requests per hour

Internal to PostFast

This only clears PostFast's own unread state. Nothing is sent to the platform and nobody outside your workspace can tell that you read the thread.

The workspace-wide total returned by /social-inbox/unread-count drops by this conversation's unreadCount.

The request takes no body. Send it with an empty body or no body at all.

Path parameters

idstring (UUID)required

The conversation id, from /social-inbox/conversations.

Response

201 Created The updated conversation, with unreadCount back to 0 and lastReadAt set.

idstring (UUID)required

Conversation id. Use it on the read, status, and assign routes.

socialMediaIdstring (UUID)required

The connected account the comments arrived on, as returned by /social-media/my-social-accounts.

platformstringrequired

Network the conversation belongs to.

TIKTOKINSTAGRAMFACEBOOKTHREADS
kindstringrequired

Conversation type. Always COMMENT_THREAD today.

externalConversationIdstringrequired

The platform's id for the post the thread hangs off.

contactIdstring (UUID) | nulloptional

PostFast contact record for the participant, when one exists.

socialPostIdstring (UUID) | nulloptional

Set when the post was published through PostFast, so you can join back to /social-posts. null for posts published elsewhere.

externalPostIdstring | nulloptional

The platform's own post id, when known.

statusstringrequired

Triage state, changed via the status route.

OPENSNOOZEDCLOSED
assignedToUserIdstring (UUID) | nulloptional

Workspace member the conversation is assigned to, or null.

lastItemAtISO 8601 | nulloptional

When the newest item in the thread arrived or was sent.

lastInboundAtISO 8601 | nulloptional

When the newest inbound comment arrived.

lastReadAtISO 8601 | nulloptional

When the conversation was last marked read.

unreadCountnumberrequired

Unread inbound comments in this conversation.

lastItemPreviewstring | nulloptional

Roughly 140-character snippet of the newest item.

participantUsernamestring | nulloptional

Latest commenter's username. May be null briefly after arrival.

participantDisplayNamestring | nulloptional

Latest commenter's display name, when the platform exposes it.

participantAvatarUrlstring | nulloptional

Latest commenter's avatar, when the platform exposes it.

windowStatestringrequired

Reply-window state. Always NOT_APPLICABLE for comment threads.

canReplybooleanrequired

Authoritative: whether a public reply can be sent in this conversation right now. Gate your UI on this, not on platform assumptions.

maxReplyLengthnumberrequired

Authoritative per-conversation character cap for a public reply. Validate against this value, not a hardcoded per-platform number.

maxPrivateReplyLengthBytesnumber | nulloptional

Byte cap for a private reply. 1000 on Instagram conversations, null everywhere else.

disabledReasonstring | nulloptional

Why replying is unavailable when canReply is false, as a stable code such as inbox.replyNotSupportedOnPlatform. null when replying is available.

postPreviewobject | nulloptional

Lightweight preview of the post the thread belongs to.

captionstringoptional

Post caption, when available.

thumbnailUrlstringoptional

Thumbnail image, when available.

permalinkstringoptional

Link to the post on the platform, when available.