List post draft versions
List saved draft versions for a post’s channel editors, newest first. Each channel with an editor is returned as its own entry with its own versions array, nextCursor, and optional error.
Pagination: Each channel paginates independently. To fetch more versions for a channel, call again with channel set to that channel and cursor set to the nextCursor from the previous response. channel is required whenever cursor is set.
Errors: When channel is set and that channel has no editor for this post, the endpoint returns 404 NOT_FOUND. If a single channel’s version history fails to load, that channel’s entry has an empty versions array plus an error string — the rest of the response still succeeds.
Use the returned version IDs with GET /posts/{id}/channels/{channel}/versions/{versionId} to read the copy of a specific version.
/posts/{id}/versionsAuthorizationBearer token · headerrequiredAPI key authentication. Generate an API key from your workspace settings.
idstring<uuid>requiredPost ID (UUID)
channelstringOptional. Only return versions for this channel. Omit to return every channel that has an editor. Required when cursor is set.
LinkedInFacebookInstagramTikTokDiscordSlackWebflowYouTubeShortslimitintegerMax versions returned per channel, newest first. Default 15, max 100.
cursorstringPagination cursor from a previous response's channels[].nextCursor. Requires channel — each channel paginates independently.
Version history grouped by channel
postIdstring<uuid>requiredchannelsobject[]requiredShow propertiesHide properties
objectchannelstringrequiredLinkedInFacebookInstagramTikTokDiscordSlackWebflowYouTubeShortsversionsobject[]requiredShow propertiesHide properties
objectidstringrequiredVersion ID. Pass to the get version content endpoint.
createdAtstring<date-time>requiredauthorsobject[]requiredWorkspace users who edited the draft in this version. Empty when Ordinal can't resolve the editor.
Show propertiesHide properties
objectidstringrequiredfirstNamestring | nullrequiredlastNamestring | nullrequiredemailstring | nullrequirednextCursorstring | nullrequiredPass as cursor (with the same channel) to fetch the next page. Null when there are no more versions.
errorstringPresent only if this channel's version history failed to load. versions will be empty.
Bad Request - Invalid input parameters
codestringmessagestringdataobjectShow propertiesHide properties
errorsobjectUnauthorized - Missing or invalid API key
codestringmessagestringNot Found - Resource does not exist
codestringmessagestring