addedInput schema / properties / ifUnmodifiedSince
Added value: +{
+ "description": "Optional precondition: the post's updatedAt exactly as the last read returned it. The update is refused with 409 CONFLICT if a teammate has changed the post since, rather than overwriting their version. Pass it whenever you read a post before editing it; omit it to keep the previous last-write-wins behaviour.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / bluesky / properties / repostId
Added value: +{
+ "description": "With postTypeOverrides.bluesky = 'repost': the bsky.app post URL (or at:// URI) to repost.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / facebook / properties / thumbnailUrl
Added value: +{
+ "description": "Cover image URL for a video or Reel. Facebook only accepts a cover once the video exists, so it is applied after the video publishes and appears a moment after the post; a cover that cannot be fetched or that Facebook rejects leaves the video published with Facebook's own chosen frame rather than failing the post.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / instagram / properties / collaborators / description
Added value: +"Comma-separated Instagram usernames (no leading @) tagged as co-authors. Applies with postTypeOverrides.instagram of 'feed_photo', 'feed_video', 'reel' or 'carousel' — on a carousel the co-authors are set on the carousel itself, not on its individual items. Ignored on 'story', which has no co-author concept."
addedInput schema / properties / platformSpecific / properties / instagram / properties / coverUrl
Added value: +{
+ "description": "Cover image URL for a video or Reel. Takes precedence over thumbnailTimestamp: Instagram accepts one or the other and rejects a request carrying both, so only this one is forwarded when both are sent.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / instagram / properties / graduationStrategy / description
Added value: +"How a trial reel becomes a normal one: 'manual' (the creator releases it) or 'auto' (released automatically if it performs well). Default 'manual'. Ignored unless trialReel is true."
addedInput schema / properties / platformSpecific / properties / instagram / properties / thumbnailTimestamp / description
Added value: +"Cover frame for a video or Reel, in seconds from the start. Applies to postTypeOverrides.instagram of 'feed_video' or 'reel'. Ignored when coverUrl is also set."
addedInput schema / properties / platformSpecific / properties / instagram / properties / trialReel / description
Added value: +"Publish as a trial reel, shown to people who do not follow the account first. Only takes effect with postTypeOverrides.instagram of 'reel' — a 'feed_video' publishes as an ordinary reel and this is ignored, even though both use the same underlying reel container."
addedInput schema / properties / platformSpecific / properties / mastodon / properties / repostId
Added value: +{
+ "description": "With postTypeOverrides.mastodon = 'repost': the status URL or ID to boost.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / threads / properties / locationId
Added value: +{
+ "description": "Numeric place ID from get_channel_options with a `q` search on a Threads channel. Only works once the channel has granted location tagging.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / threads / properties / repostId
Added value: +{
+ "description": "With postTypeOverrides.threads = 'repost': the numeric ID of the Threads post to repost (Threads links cannot be used; the ID of a post published through BulkPublish is in get_post's platforms[].platformPostId).",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / threads / properties / topicTag
Added value: +{
+ "description": "One topic tag for the post, without a leading '#'. Must not contain periods or ampersands.",
+ "type": "string"
+}
addedInput schema / properties / platformSpecific / properties / tiktok / properties / thumbnailTimestamp / description
Added value: +"Cover frame for the video, in seconds from the start."
changedInput schema / properties / platformSpecific / properties / tumblr / description
Previous value: -"Tumblr options, nested under the BulkPublish channel id: { \"12\": { \"blogName\": \"myblog\", \"tags\": [\"art\"] } }. A flat object applies to every Tumblr channel on the post. Up to 30 images OR exactly one video per post."New value: +"Tumblr options, nested under the BulkPublish channel id: { \"12\": { \"blogName\": \"myblog\", \"tags\": [\"art\"] } } (tags: array of strings or one comma-separated string). A flat object applies to every Tumblr channel on the post. Up to 30 images OR exactly one video per post."
addedInput schema / properties / platformSpecific / properties / x / properties / repostId
Added value: +{
+ "description": "With postTypeOverrides.x = 'repost': the X post URL or ID to repost (retweet).",
+ "type": "string"
+}
changedInput schema / properties / postTypeOverrides / properties / bluesky / enum
Previous value: -[
- "post",
- "video"
-]New value: +[
+ "post",
+ "video",
+ "thread",
+ "repost"
+]
changedInput schema / properties / postTypeOverrides / properties / mastodon / enum
Previous value: -[
- "post"
-]New value: +[
+ "post",
+ "thread",
+ "repost"
+]
changedInput schema / properties / postTypeOverrides / properties / threads / enum
Previous value: -[
- "text",
- "image",
- "video",
- "carousel"
-]New value: +[
+ "text",
+ "image",
+ "video",
+ "carousel",
+ "repost"
+]
changedInput schema / properties / postTypeOverrides / properties / x / enum
Previous value: -[
- "tweet",
- "video",
- "thread"
-]New value: +[
+ "tweet",
+ "video",
+ "thread",
+ "repost"
+]
addedInput schema / properties / publishWhenApproved
Added value: +{
+ "description": "Optional. Set true to have the post go out as soon as it is approved, even after its scheduled time (see create_post). An explicit value is stored while the post waits for approval. Omitted, it is kept, except that sending a different scheduledAt clears it to false, and it is always false once the post is no longer approvalStatus 'pending'.",
+ "type": "boolean"
+}
addedOutput schema / properties / approver
Added value: +{
+ "anyOf": [
+ {
+ "additionalProperties": {},
+ "properties": {},
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Who approved it: { id, name, image }. Null unless approvalStatus is approved."
+}
addedOutput schema / properties / assignee
Added value: +{
+ "anyOf": [
+ {
+ "additionalProperties": {},
+ "properties": {},
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Who is expected to act on it next: { id, name, image }. Null when nobody is."
+}
addedOutput schema / properties / author
Added value: +{
+ "anyOf": [
+ {
+ "additionalProperties": {},
+ "properties": {},
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Who wrote the post: { id, name, image }. Null when that account is gone."
+}