Skip to navigation

Social · Posts · Create a social media post

View as Markdown

Schedule, queue, or draft a social media post. Publishing actions (‘schedule’, ‘add_to_queue’) require at least one account in account_ids; ‘draft’ can be saved without any account. Optionally attach auto-comments via comments: a list of { "message": string, "delay": seconds } objects published after the post goes live, in array order. For a LinkedIn document (carousel) post, pass the PDF as additional.linkedin.document (see LinkedinDocument) with media: [].

Authentication

AuthorizationApi-Key

Header authentication of the form Api-Key <token>

OR
AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
messagestringRequired<=5000 characters
actionenumRequired
Allowed values:
account_idslist of stringsOptional

Target social media account IDs. Required for action 'schedule' and 'add_to_queue'. For action 'draft' this may be empty or omitted to create an accountless draft (saved without a connected account).

datestringOptionalformat: "^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$"

Scheduled datetime in format: YYYY-MM-DD HH:MM

medialist of strings or objectsOptional

Media items attached to the post. Each entry is a Simplified asset UUID, a fully qualified URL, or a { url, thumbUrl } object for video with an explicit poster/thumbnail — see MediaItem. Asset UUIDs are resolved server-side to a fresh permanent URL before publishing; pass them whenever the media was produced via generateImage with storage: "asset". URLs are passed through as-is and should only be used for media that already lives at a permanent public location.

tagslist of integersOptional

Tag (label) IDs to attach to the created post(s). Get IDs via listSocialMediaTags; create new ones via createSocialMediaTag. Tags are used by the user to filter posts in the Drafts/Publishing views and to deep-link the confirmation widget.

commentslist of objectsOptional

Optional auto-comments published to the post after it goes live, in array order. Omit or pass an empty array for no comments. Each entry exposes only message + delay (no media). delay is cast to an integer server-side; a comment with no message defaults to "".

additionalobjectOptional

Response

Post created successfully