Search loads only when you use it. Browse all categories below.

Scheduling and publishing

Get scheduled post

Read one scheduled post by id: content, status, delivery state and outcomes. Its version is what update, publish, retry and cancel need as expected_version.

POST /studio-api/scheduled-posts/get

Contract reviewed: · sha256:563d2d581da0ad29

Overview

Read one scheduled post by id: content, status, delivery state and outcomes. Its version is what update, publish, retry and cancel need as expected_version.

A successful HTTP response can mean that a request was accepted rather than completed. For background work, save the returned ID and check the same operation until it finishes. A scheduled or accepted post is published only when the platform confirms it; a client timeout does not establish the result.

Authentication and permissions

Accepted credential classes
user_session, delegated_oauth, personal_access_token
Delegated capability
agent:operate
Minimum workspace role
viewer
Access scope
Resources this user is authorized to access
All-workspace consent required
No
Changes state
No
When the operation is complete
synchronous_http_response

A token can use only the rights held by its owner. Each request checks workspace membership, resource ownership, selected workspaces and granted capabilities. Core and full profiles change which tools are displayed; they do not grant access.

Request fields

Required means required inside its parent object and selected branch. A required child does not make an optional parent required. Rules and field names below are copied from the contract.

Request fields
Field / branchType / requiredConstraints
$objectRequired in parent
  • additionalProperties: false
idstringRequired in parent
  • pattern: "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
Complete JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}

Response and completion

Success HTTP statuses: 200. When the operation is complete: synchronous_http_response.

A successful HTTP response can mean that a request was accepted rather than completed. For background work, save the returned ID and check the same operation until it finishes. A scheduled or accepted post is published only when the platform confirms it; a client timeout does not establish the result.

Required means required inside its parent object and selected branch. A required child does not make an optional parent required. Rules and field names below are copied from the contract.

Response and completion
Field / branchType / requiredConstraints
$objectRequired in parent—
postobjectRequired in parent—
post.idstringRequired in parent
  • pattern: "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
post.workspace_idstringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
post.social_account_idstring | nullRequired in parent—
post.social_account_idanyOf 1stringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
post.social_account_idanyOf 2nullRequired in parent—
post.platformstringRequired in parent
  • enum: ["instagram","threads","facebook","youtube","x"]
post.destinationobjectRequired in parent—
post.destination.social_account_idstring | nullRequired in parent—
post.destination.social_account_idanyOf 1stringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
post.destination.social_account_idanyOf 2nullRequired in parent—
post.destination.platformstringRequired in parent
  • enum: ["instagram","threads","facebook","youtube","x"]
post.destination.platform_user_idstring | nullRequired in parent—
post.destination.platform_user_idanyOf 1stringRequired in parent—
post.destination.platform_user_idanyOf 2nullRequired in parent—
post.destination.account_labelstring | nullRequired in parent—
post.destination.account_labelanyOf 1stringRequired in parent—
post.destination.account_labelanyOf 2nullRequired in parent—
post.captionstring | nullRequired in parent—
post.captionanyOf 1stringRequired in parent—
post.captionanyOf 2nullRequired in parent—
post.hashtagsarrayRequired in parent—
post.hashtags[]stringOptional / item—
post.mediaarrayRequired in parent—
post.media[]objectOptional / item—
post.media[].kindstringRequired in parent
  • enum: ["image","video"]
post.media[].urlstringRequired in parent
  • format: "uri"
post.media[].cover_urlstring | nullOptional / item—
post.media[].cover_urlanyOf 1stringOptional / item
  • format: "uri"
post.media[].cover_urlanyOf 2nullOptional / item—
post.media[].cover_asset_idinteger | nullOptional / item—
post.media[].cover_asset_idanyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
post.media[].cover_asset_idanyOf 2nullOptional / item—
post.media[].asset_idinteger | nullOptional / item—
post.media[].asset_idanyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
post.media[].asset_idanyOf 2nullOptional / item—
post.media[].mime_typestring | nullOptional / item—
post.media[].mime_typeanyOf 1stringOptional / item
  • minLength: 1
  • maxLength: 160
post.media[].mime_typeanyOf 2nullOptional / item—
post.media[].preview_urlstring | nullOptional / item

Temporary authorized read URL; keep url as persisted Scheduled Post media identity.

—
post.media[].preview_urlanyOf 1stringOptional / item
  • format: "uri"
post.media[].preview_urlanyOf 2nullOptional / item—
post.media[].cover_preview_urlstring | nullOptional / item

Temporary authorized cover read URL; keep cover_url as persisted media identity.

—
post.media[].cover_preview_urlanyOf 1stringOptional / item
  • format: "uri"
post.media[].cover_preview_urlanyOf 2nullOptional / item—
post.media[].preview_expires_atstring | nullOptional / item—
post.media[].preview_expires_atanyOf 1stringOptional / item
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
post.media[].preview_expires_atanyOf 2nullOptional / item—
post.link_urlstring | nullOptional / item—
post.link_urlanyOf 1stringOptional / item
  • format: "uri"
post.link_urlanyOf 2nullOptional / item—
post.publish_optionsobjectRequired in parent—
post.publish_options.post_typestringOptional / item
  • enum: ["TEXT","LINK","IMAGE","MULTI_IMAGE","VIDEO","CAROUSEL","REELS","STORY_IMAGE","STORY_VIDEO","REPOST","SHORT"]
post.publish_options.location_idstringOptional / item
  • minLength: 1
post.publish_options.share_to_feedbooleanOptional / item—
post.publish_options.collaboratorsarrayOptional / item
  • maxItems: 3
post.publish_options.collaborators[]stringOptional / item
  • minLength: 1
post.publish_options.first_commentstringOptional / item
  • minLength: 1
  • maxLength: 2200
post.publish_options.topic_tagstringOptional / item
  • minLength: 1
post.publish_options.thumb_offset_msintegerOptional / item
  • minimum: 0
  • maximum: 9007199254740991
post.publish_options.titlestringOptional / item
  • maxLength: 255
post.publish_options.youtube_privacy_statusstringOptional / item
  • enum: ["private","unlisted","public"]
post.publish_options.youtube_category_idstringOptional / item
  • pattern: "^\\d+$"
post.publish_options.youtube_contains_synthetic_mediabooleanOptional / item—
post.publish_options.descriptionstringOptional / item
  • maxLength: 5000
post.publish_options.category_idstringOptional / item
  • pattern: "^\\d+$"
post.publish_options.privacy_statusstringOptional / item
  • enum: ["private","unlisted","public"]
post.publish_options.cancellation_modestringOptional / item
  • enum: ["DELETE","UNSCHEDULE_KEEP_PRIVATE"]
post.publish_options.tagsarrayOptional / item—
post.publish_options.tags[]stringOptional / item—
post.publish_options.default_languagestringOptional / item—
post.publish_options.localizationsobjectOptional / item
  • additionalProperties: {}
post.publish_options.localizations.*any JSON valueOptional / item—
post.publish_options.licensestringOptional / item
  • enum: ["youtube","creativeCommon"]
post.publish_options.embeddablebooleanOptional / item—
post.publish_options.public_stats_viewablebooleanOptional / item—
post.publish_options.self_declared_made_for_kidsbooleanOptional / item—
post.publish_options.contains_synthetic_mediabooleanOptional / item—
post.publish_options.has_paid_product_placementbooleanOptional / item—
post.publish_options.recording_datestringOptional / item—
post.publish_options.notify_subscribersbooleanOptional / item—
post.publish_options.thumbnail_asset_idintegerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
post.publish_options.surface_expectationstringOptional / item
  • const: "SHORT"
post.publish_options.brand_partnerobjectOptional / item
  • additionalProperties: {}
post.publish_options.brand_partner.*any JSON valueOptional / item—
post.publish_options.cover_asset_idintegerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
post.publish_options.audio_namestringOptional / item—
post.publish_options.trial_paramsobjectOptional / item
  • additionalProperties: {}
post.publish_options.trial_params.*any JSON valueOptional / item—
post.publish_options.is_ai_generatedbooleanOptional / item—
post.publish_options.branded_content_sponsor_idsarrayOptional / item—
post.publish_options.branded_content_sponsor_ids[]stringOptional / item—
post.publish_options.is_paid_partnershipbooleanOptional / item—
post.publish_options.media_optionsarrayOptional / item—
post.publish_options.media_options[]objectOptional / item
  • additionalProperties: {}
post.publish_options.media_options[].*any JSON valueOptional / item—
post.publish_options.reply_to_idstringOptional / item—
post.publish_options.quote_post_idstringOptional / item—
post.publish_options.repost_target_idstringOptional / item—
post.publish_options.reply_controlstringOptional / item—
post.publish_options.enable_reply_approvalsbooleanOptional / item—
post.publish_options.link_attachmentstringOptional / item
  • format: "uri"
post.publish_options.poll_attachmentobjectOptional / item
  • additionalProperties: {}
post.publish_options.poll_attachment.*any JSON valueOptional / item—
post.publish_options.gif_attachmentobjectOptional / item
  • additionalProperties: {}
post.publish_options.gif_attachment.*any JSON valueOptional / item—
post.publish_options.text_attachmentobjectOptional / item
  • additionalProperties: {}
post.publish_options.text_attachment.*any JSON valueOptional / item—
post.publish_options.text_entitiesarrayOptional / item—
post.publish_options.text_entities[]objectOptional / item
  • additionalProperties: {}
post.publish_options.text_entities[].*any JSON valueOptional / item—
post.publish_options.is_spoiler_mediabooleanOptional / item—
post.publish_options.is_ghost_postbooleanOptional / item—
post.publish_options.allowlisted_country_codesarrayOptional / item—
post.publish_options.allowlisted_country_codes[]stringOptional / item—
post.publish_options.crossreshare_to_igbooleanOptional / item—
post.publish_options.crossreshare_to_ig_dark_modebooleanOptional / item—
post.publish_options.auto_publish_textbooleanOptional / item—
post.publish_options.publication_modestringOptional / item
  • enum: ["PUBLISH","DRAFT"]
post.publish_options.backdated_timenumberOptional / item—
post.publish_options.backdated_time_granularitystringOptional / item
  • enum: ["year","month","day","hour","minute"]
post.publish_options.placestringOptional / item—
post.publish_options.feed_targetingobjectOptional / item
  • additionalProperties: {}
post.publish_options.feed_targeting.*any JSON valueOptional / item—
post.publish_options.targetingobjectOptional / item
  • additionalProperties: {}
post.publish_options.targeting.*any JSON valueOptional / item—
post.publish_options.child_attachmentsarrayOptional / item—
post.publish_options.child_attachments[]objectOptional / item
  • additionalProperties: {}
post.publish_options.child_attachments[].*any JSON valueOptional / item—
post.publish_options.multi_share_end_cardbooleanOptional / item—
post.publish_options.multi_share_optimizedbooleanOptional / item—
post.publish_options.unpublished_content_typestringOptional / item—
post.publish_options.no_storybooleanOptional / item—
post.publish_options.crossposted_video_idstringOptional / item—
post.publish_options.sphericalbooleanOptional / item—
post.scheduled_atstringRequired in parent—
post.display_timezonestringRequired in parent
  • minLength: 1
  • maxLength: 80
post.local_scheduled_atstring | nullOptional / item—
post.local_scheduled_atanyOf 1stringOptional / item
  • pattern: "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
post.local_scheduled_atanyOf 2nullOptional / item—
post.schedule_timezonestring | nullOptional / item—
post.schedule_timezoneanyOf 1stringOptional / item
  • minLength: 1
  • maxLength: 80
post.schedule_timezoneanyOf 2nullOptional / item—
post.schedule_dst_disambiguationstring | nullOptional / item—
post.schedule_dst_disambiguationanyOf 1stringOptional / item
  • enum: ["exact","earlier","later"]
post.schedule_dst_disambiguationanyOf 2nullOptional / item—
post.schedule_intent_statestringOptional / item
  • enum: ["verified","legacy_unverified"]
post.expires_atstring | nullRequired in parent—
post.expires_atanyOf 1stringRequired in parent—
post.expires_atanyOf 2nullRequired in parent—
post.statusstringRequired in parent
  • enum: ["scheduled","publishing","published","failed","expired","needs_reschedule","cancelled","deleted"]
post.versionintegerRequired in parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
post.automatic_retry_enabledbooleanRequired in parent—
post.delete_requested_atstring | nullRequired in parent—
post.delete_requested_atanyOf 1stringRequired in parent—
post.delete_requested_atanyOf 2nullRequired in parent—
post.published_atstring | nullRequired in parent—
post.published_atanyOf 1stringRequired in parent—
post.published_atanyOf 2nullRequired in parent—
post.deleted_atstring | nullRequired in parent—
post.deleted_atanyOf 1stringRequired in parent—
post.deleted_atanyOf 2nullRequired in parent—
post.provider_post_idstring | nullRequired in parent—
post.provider_post_idanyOf 1stringRequired in parent—
post.provider_post_idanyOf 2nullRequired in parent—
post.permalinkstring | nullRequired in parent—
post.permalinkanyOf 1stringRequired in parent
  • format: "uri"
post.permalinkanyOf 2nullRequired in parent—
post.created_atstringRequired in parent—
post.updated_atstringRequired in parent—
deliveryobjectRequired in parent—
delivery.stagestringRequired in parent
  • enum: ["scheduled","preparing","delivering","reconciling","cancelling","terminal"]
delivery.messagestringRequired in parent
  • minLength: 1
  • maxLength: 500
actionsarrayRequired in parent
  • minItems: 5
  • maxItems: 5
actions[]objectOptional / item—
actions[].actionstringRequired in parent
  • enum: ["edit","publish_now","retry","cancel","delete"]
actions[].allowedbooleanRequired in parent—
actions[].reason_codestringRequired in parent
  • enum: ["allowed","terminal_state","provider_preparation_started","delivery_started","not_scheduled","not_failed","retry_evidence_missing","destination_disconnected","expiry_passed","cancellation_in_progress","delete_in_progress","not_published"]
actions[].messagestringRequired in parent
  • minLength: 1
  • maxLength: 500
attemptsarrayRequired in parent
  • maxItems: 200
attempts[]objectOptional / item—
attempts[].idstringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
attempts[].operationstringRequired in parent
  • enum: ["publish","delete"]
attempts[].attempt_numberintegerRequired in parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
attempts[].dispatched_atstringRequired in parent—
outcomesarrayRequired in parent
  • maxItems: 200
outcomes[]objectOptional / item—
outcomes[].idstringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
outcomes[].publication_attempt_idstring | nullRequired in parent—
outcomes[].publication_attempt_idanyOf 1stringRequired in parent
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
outcomes[].publication_attempt_idanyOf 2nullRequired in parent—
outcomes[].operationstringRequired in parent
  • enum: ["publish","delete"]
outcomes[].statusstringRequired in parent
  • enum: ["published","failed","deleted"]
outcomes[].provider_post_idstring | nullRequired in parent—
outcomes[].provider_post_idanyOf 1stringRequired in parent—
outcomes[].provider_post_idanyOf 2nullRequired in parent—
outcomes[].permalinkstring | nullRequired in parent—
outcomes[].permalinkanyOf 1stringRequired in parent
  • format: "uri"
outcomes[].permalinkanyOf 2nullRequired in parent—
outcomes[].messagestringRequired in parent
  • minLength: 1
  • maxLength: 500
outcomes[].observed_atstringRequired in parent—
outcomes[].terminal_suboperationobjectOptional / item—
outcomes[].terminal_suboperation.kindstringRequired in parent
  • const: "instagram_first_comment"
outcomes[].terminal_suboperation.statusstringRequired in parent
  • enum: ["succeeded","failed","attention"]
outcomes[].terminal_suboperation.external_idstring | nullRequired in parent—
outcomes[].terminal_suboperation.external_idanyOf 1stringRequired in parent
  • minLength: 1
  • maxLength: 500
outcomes[].terminal_suboperation.external_idanyOf 2nullRequired in parent—
Complete JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "post": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
        },
        "workspace_id": {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        "social_account_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid",
              "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
            },
            {
              "type": "null"
            }
          ]
        },
        "platform": {
          "type": "string",
          "enum": [
            "instagram",
            "threads",
            "facebook",
            "youtube",
            "x"
          ]
        },
        "destination": {
          "type": "object",
          "properties": {
            "social_account_id": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "platform": {
              "type": "string",
              "enum": [
                "instagram",
                "threads",
                "facebook",
                "youtube",
                "x"
              ]
            },
            "platform_user_id": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            "account_label": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "social_account_id",
            "platform",
            "platform_user_id",
            "account_label"
          ]
        },
        "caption": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "hashtags": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "media": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "image",
                  "video"
                ]
              },
              "url": {
                "type": "string",
                "format": "uri"
              },
              "cover_url": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cover_asset_id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "asset_id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "mime_type": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "preview_url": {
                "description": "Temporary authorized read URL; keep url as persisted Scheduled Post media identity.",
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cover_preview_url": {
                "description": "Temporary authorized cover read URL; keep cover_url as persisted media identity.",
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "preview_expires_at": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "kind",
              "url"
            ]
          }
        },
        "link_url": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "publish_options": {
          "type": "object",
          "properties": {
            "post_type": {
              "type": "string",
              "enum": [
                "TEXT",
                "LINK",
                "IMAGE",
                "MULTI_IMAGE",
                "VIDEO",
                "CAROUSEL",
                "REELS",
                "STORY_IMAGE",
                "STORY_VIDEO",
                "REPOST",
                "SHORT"
              ]
            },
            "location_id": {
              "type": "string",
              "minLength": 1
            },
            "share_to_feed": {
              "type": "boolean"
            },
            "collaborators": {
              "maxItems": 3,
              "type": "array",
              "items": {
                "type": "string",
                "minLength": 1
              }
            },
            "first_comment": {
              "type": "string",
              "minLength": 1,
              "maxLength": 2200
            },
            "topic_tag": {
              "type": "string",
              "minLength": 1
            },
            "thumb_offset_ms": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "title": {
              "type": "string",
              "maxLength": 255
            },
            "youtube_privacy_status": {
              "type": "string",
              "enum": [
                "private",
                "unlisted",
                "public"
              ]
            },
            "youtube_category_id": {
              "type": "string",
              "pattern": "^\\d+$"
            },
            "youtube_contains_synthetic_media": {
              "type": "boolean"
            },
            "description": {
              "type": "string",
              "maxLength": 5000
            },
            "category_id": {
              "type": "string",
              "pattern": "^\\d+$"
            },
            "privacy_status": {
              "type": "string",
              "enum": [
                "private",
                "unlisted",
                "public"
              ]
            },
            "cancellation_mode": {
              "type": "string",
              "enum": [
                "DELETE",
                "UNSCHEDULE_KEEP_PRIVATE"
              ]
            },
            "tags": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "default_language": {
              "type": "string"
            },
            "localizations": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "license": {
              "type": "string",
              "enum": [
                "youtube",
                "creativeCommon"
              ]
            },
            "embeddable": {
              "type": "boolean"
            },
            "public_stats_viewable": {
              "type": "boolean"
            },
            "self_declared_made_for_kids": {
              "type": "boolean"
            },
            "contains_synthetic_media": {
              "type": "boolean"
            },
            "has_paid_product_placement": {
              "type": "boolean"
            },
            "recording_date": {
              "type": "string"
            },
            "notify_subscribers": {
              "type": "boolean"
            },
            "thumbnail_asset_id": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "surface_expectation": {
              "type": "string",
              "const": "SHORT"
            },
            "brand_partner": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "cover_asset_id": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "audio_name": {
              "type": "string"
            },
            "trial_params": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "is_ai_generated": {
              "type": "boolean"
            },
            "branded_content_sponsor_ids": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "is_paid_partnership": {
              "type": "boolean"
            },
            "media_options": {
              "type": "array",
              "items": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              }
            },
            "reply_to_id": {
              "type": "string"
            },
            "quote_post_id": {
              "type": "string"
            },
            "repost_target_id": {
              "type": "string"
            },
            "reply_control": {
              "type": "string"
            },
            "enable_reply_approvals": {
              "type": "boolean"
            },
            "link_attachment": {
              "type": "string",
              "format": "uri"
            },
            "poll_attachment": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "gif_attachment": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "text_attachment": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "text_entities": {
              "type": "array",
              "items": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              }
            },
            "is_spoiler_media": {
              "type": "boolean"
            },
            "is_ghost_post": {
              "type": "boolean"
            },
            "allowlisted_country_codes": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "crossreshare_to_ig": {
              "type": "boolean"
            },
            "crossreshare_to_ig_dark_mode": {
              "type": "boolean"
            },
            "auto_publish_text": {
              "type": "boolean"
            },
            "publication_mode": {
              "type": "string",
              "enum": [
                "PUBLISH",
                "DRAFT"
              ]
            },
            "backdated_time": {
              "type": "number"
            },
            "backdated_time_granularity": {
              "type": "string",
              "enum": [
                "year",
                "month",
                "day",
                "hour",
                "minute"
              ]
            },
            "place": {
              "type": "string"
            },
            "feed_targeting": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "targeting": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "child_attachments": {
              "type": "array",
              "items": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              }
            },
            "multi_share_end_card": {
              "type": "boolean"
            },
            "multi_share_optimized": {
              "type": "boolean"
            },
            "unpublished_content_type": {
              "type": "string"
            },
            "no_story": {
              "type": "boolean"
            },
            "crossposted_video_id": {
              "type": "string"
            },
            "spherical": {
              "type": "boolean"
            }
          }
        },
        "scheduled_at": {
          "type": "string"
        },
        "display_timezone": {
          "type": "string",
          "minLength": 1,
          "maxLength": 80
        },
        "local_scheduled_at": {
          "anyOf": [
            {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
            },
            {
              "type": "null"
            }
          ]
        },
        "schedule_timezone": {
          "anyOf": [
            {
              "type": "string",
              "minLength": 1,
              "maxLength": 80
            },
            {
              "type": "null"
            }
          ]
        },
        "schedule_dst_disambiguation": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "exact",
                "earlier",
                "later"
              ]
            },
            {
              "type": "null"
            }
          ]
        },
        "schedule_intent_state": {
          "type": "string",
          "enum": [
            "verified",
            "legacy_unverified"
          ]
        },
        "expires_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "status": {
          "type": "string",
          "enum": [
            "scheduled",
            "publishing",
            "published",
            "failed",
            "expired",
            "needs_reschedule",
            "cancelled",
            "deleted"
          ]
        },
        "version": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "automatic_retry_enabled": {
          "type": "boolean"
        },
        "delete_requested_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "published_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "deleted_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "provider_post_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "permalink": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "created_at": {
          "type": "string"
        },
        "updated_at": {
          "type": "string"
        }
      },
      "required": [
        "id",
        "workspace_id",
        "social_account_id",
        "platform",
        "destination",
        "caption",
        "hashtags",
        "media",
        "publish_options",
        "scheduled_at",
        "display_timezone",
        "expires_at",
        "status",
        "version",
        "automatic_retry_enabled",
        "delete_requested_at",
        "published_at",
        "deleted_at",
        "provider_post_id",
        "permalink",
        "created_at",
        "updated_at"
      ]
    },
    "delivery": {
      "type": "object",
      "properties": {
        "stage": {
          "type": "string",
          "enum": [
            "scheduled",
            "preparing",
            "delivering",
            "reconciling",
            "cancelling",
            "terminal"
          ]
        },
        "message": {
          "type": "string",
          "minLength": 1,
          "maxLength": 500
        }
      },
      "required": [
        "stage",
        "message"
      ]
    },
    "actions": {
      "minItems": 5,
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "enum": [
              "edit",
              "publish_now",
              "retry",
              "cancel",
              "delete"
            ]
          },
          "allowed": {
            "type": "boolean"
          },
          "reason_code": {
            "type": "string",
            "enum": [
              "allowed",
              "terminal_state",
              "provider_preparation_started",
              "delivery_started",
              "not_scheduled",
              "not_failed",
              "retry_evidence_missing",
              "destination_disconnected",
              "expiry_passed",
              "cancellation_in_progress",
              "delete_in_progress",
              "not_published"
            ]
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500
          }
        },
        "required": [
          "action",
          "allowed",
          "reason_code",
          "message"
        ]
      }
    },
    "attempts": {
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
          },
          "operation": {
            "type": "string",
            "enum": [
              "publish",
              "delete"
            ]
          },
          "attempt_number": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "dispatched_at": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "operation",
          "attempt_number",
          "dispatched_at"
        ]
      }
    },
    "outcomes": {
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
          },
          "publication_attempt_id": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
              },
              {
                "type": "null"
              }
            ]
          },
          "operation": {
            "type": "string",
            "enum": [
              "publish",
              "delete"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "published",
              "failed",
              "deleted"
            ]
          },
          "provider_post_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "permalink": {
            "anyOf": [
              {
                "type": "string",
                "format": "uri"
              },
              {
                "type": "null"
              }
            ]
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500
          },
          "observed_at": {
            "type": "string"
          },
          "terminal_suboperation": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "instagram_first_comment"
              },
              "status": {
                "type": "string",
                "enum": [
                  "succeeded",
                  "failed",
                  "attention"
                ]
              },
              "external_id": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 500
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "kind",
              "status",
              "external_id"
            ]
          }
        },
        "required": [
          "id",
          "publication_attempt_id",
          "operation",
          "status",
          "provider_post_id",
          "permalink",
          "message",
          "observed_at"
        ]
      }
    }
  },
  "required": [
    "post",
    "delivery",
    "actions",
    "attempts",
    "outcomes"
  ]
}

Errors and safe retries

Check the HTTP status and response body. A 400 validation error may contain a ZodError; handler errors use error, message and code fields. Keep request_id or x-request-id for diagnosis, without credentials. Fix 401/403 access errors before retrying, and follow Retry-After for 429. If a write is uncertain or returns 5xx, read the existing result first. Reuse an idempotency key only where supported; retry behaviour varies by operation and does not guarantee exactly-once delivery.

Troubleshooting guide

Examples

These examples use fictional values checked against the schemas. Replace the IDs with ones you are authorized to use, the media with ready assets and the dates with your confirmed publishing time. Check the account’s eligibility before submitting a write. This page sends no API requests.

Set SOSOAPI_ACCESS_TOKEN on your server to a credential accepted by this operation, and keep it out of browser code. For an agent, use sosoapi auth login to sign in through the browser and let the CLI refresh its credentials.

request.json

{
  "id": "11111111-1111-4111-8111-111111111111"
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/scheduled-posts/get" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/scheduled-posts/get", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "id": "11111111-1111-4111-8111-111111111111"
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /studio-api/scheduled-posts/get < request.json

Synthetic response example

{
  "post": {
    "id": "11111111-1111-4111-8111-111111111111",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "social_account_id": null,
    "platform": "instagram",
    "destination": {
      "social_account_id": null,
      "platform": "instagram",
      "platform_user_id": null,
      "account_label": null
    },
    "caption": null,
    "hashtags": [],
    "media": [],
    "publish_options": {},
    "scheduled_at": "example",
    "display_timezone": "UTC",
    "expires_at": null,
    "status": "scheduled",
    "version": 1,
    "automatic_retry_enabled": false,
    "delete_requested_at": null,
    "published_at": null,
    "deleted_at": null,
    "provider_post_id": null,
    "permalink": null,
    "created_at": "example",
    "updated_at": "example"
  },
  "delivery": {
    "stage": "scheduled",
    "message": "example"
  },
  "actions": [
    {
      "action": "edit",
      "allowed": true,
      "reason_code": "allowed",
      "message": "Allowed in this example state."
    },
    {
      "action": "publish_now",
      "allowed": true,
      "reason_code": "allowed",
      "message": "Allowed in this example state."
    },
    {
      "action": "retry",
      "allowed": false,
      "reason_code": "not_failed",
      "message": "This example post has not failed."
    },
    {
      "action": "cancel",
      "allowed": true,
      "reason_code": "allowed",
      "message": "Allowed in this example state."
    },
    {
      "action": "delete",
      "allowed": true,
      "reason_code": "allowed",
      "message": "Allowed in this example state."
    }
  ],
  "attempts": [],
  "outcomes": []
}

MCP: sosoapi_get_scheduled_post