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

MCP tool

Post one image from a URL

sosoapi_post_image_url

Submit the complete image URL post once, with empty media. The backend prepares and publishes it even after disconnect. Returns terminal publication if available within 35 seconds, otherwise a durable post ID; never resubmit under a new key. Needs operate and publish grants. Local time/DST fields go together. import_id is for resuming older clients only.

Read as Markdown

Profiles and transports

Profiles: core, full · Transports: stdio, http

Choose core or full to control which tools your client sees; this does not change its permissions. Local file upload requires stdio and is unavailable over HTTP. Set SOSOAPI_OUTPUT_SCHEMAS=1 to include output schemas in discovery. Tools return structured results with or without that setting.

Permissions and side effects

Annotations help clients describe a tool. Each call still checks the user’s authentication, role, resource access and capability grants.

{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": true,
  "openWorldHint": true
}

Input 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.

Input fields
Field / branchType / requiredConstraints
$objectRequired in parent
  • additionalProperties: false
source_urlstringRequired in parent
  • format: "uri"
  • maxLength: 2048
postobjectRequired in parent
  • additionalProperties: false
post.workspace_idstringRequired in parent
  • format: "uuid"
post.project_idstring | nullOptional / item—
post.project_idanyOf 1stringOptional / item
  • format: "uuid"
post.project_idanyOf 2nullOptional / item—
post.social_account_idstringRequired in parent
  • format: "uuid"
post.captionstring | nullOptional / item—
post.captionanyOf 1stringOptional / item
  • maxLength: 5000
post.captionanyOf 2nullOptional / item—
post.hashtagsarrayOptional / item
  • maxItems: 100
post.hashtags[]stringOptional / item
  • maxLength: 100
post.mediaarrayOptional / item
  • maxItems: 0
post.media[]objectOptional / item
  • additionalProperties: false
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.link_urlstring | nullOptional / item—
post.link_urlanyOf 1stringOptional / item
  • format: "uri"
post.link_urlanyOf 2nullOptional / item—
post.provider_payloadobjectRequired in parent
  • additionalProperties: false
post.provider_payload.platformstringRequired in parent
  • enum: ["threads","instagram","facebook"]
post.provider_payload.publish_optionsobjectRequired in parent
  • additionalProperties: {}
post.provider_payload.publish_options.post_typestringRequired in parent
  • enum: ["IMAGE","STORY_IMAGE"]
post.provider_payload.publish_options.*any JSON valueOptional / item—
post.scheduled_atstringRequired in parent
  • 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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
post.display_timezonestringOptional / item
  • minLength: 1
  • maxLength: 80
post.local_scheduled_atstringOptional / item
  • pattern: "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
post.schedule_dst_disambiguationstringOptional / item
  • enum: ["exact","earlier","later"]
post.expires_atstring | nullOptional / item—
post.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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
post.expires_atanyOf 2nullOptional / item—
post.source_refobject | nullOptional / item—
post.source_refanyOf 1objectOptional / item
  • additionalProperties: {}
post.source_ref.*anyOf 1any JSON valueOptional / item—
post.source_refanyOf 2nullOptional / item—
post.automatic_retry_enabledbooleanOptional / item—
post.idempotency_keystringRequired in parent
  • minLength: 8
  • maxLength: 160
import_idstringOptional / item

Use only the import_id returned for this same URL, Workspace and user intent.

  • format: "uuid"
Complete JSON Schema
{
  "type": "object",
  "properties": {
    "source_url": {
      "type": "string",
      "maxLength": 2048,
      "format": "uri"
    },
    "post": {
      "type": "object",
      "properties": {
        "workspace_id": {
          "type": "string",
          "format": "uuid"
        },
        "project_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ]
        },
        "social_account_id": {
          "type": "string",
          "format": "uuid"
        },
        "caption": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 5000
            },
            {
              "type": "null"
            }
          ]
        },
        "hashtags": {
          "maxItems": 100,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 100
          }
        },
        "media": {
          "maxItems": 0,
          "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"
                  }
                ]
              }
            },
            "required": [
              "kind",
              "url"
            ],
            "additionalProperties": false
          }
        },
        "link_url": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "provider_payload": {
          "type": "object",
          "properties": {
            "platform": {
              "type": "string",
              "enum": [
                "threads",
                "instagram",
                "facebook"
              ]
            },
            "publish_options": {
              "type": "object",
              "properties": {
                "post_type": {
                  "type": "string",
                  "enum": [
                    "IMAGE",
                    "STORY_IMAGE"
                  ]
                }
              },
              "required": [
                "post_type"
              ],
              "additionalProperties": {}
            }
          },
          "required": [
            "platform",
            "publish_options"
          ],
          "additionalProperties": false
        },
        "scheduled_at": {
          "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        },
        "display_timezone": {
          "type": "string",
          "minLength": 1,
          "maxLength": 80
        },
        "local_scheduled_at": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
        },
        "schedule_dst_disambiguation": {
          "type": "string",
          "enum": [
            "exact",
            "earlier",
            "later"
          ]
        },
        "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
            },
            {
              "type": "null"
            }
          ]
        },
        "source_ref": {
          "anyOf": [
            {
              "type": "object",
              "additionalProperties": {}
            },
            {
              "type": "null"
            }
          ]
        },
        "automatic_retry_enabled": {
          "type": "boolean"
        },
        "idempotency_key": {
          "type": "string",
          "minLength": 8,
          "maxLength": 160
        }
      },
      "required": [
        "workspace_id",
        "social_account_id",
        "provider_payload",
        "scheduled_at",
        "idempotency_key"
      ],
      "additionalProperties": false
    },
    "import_id": {
      "description": "Use only the import_id returned for this same URL, Workspace and user intent.",
      "type": "string",
      "format": "uuid"
    }
  },
  "required": [
    "source_url",
    "post"
  ],
  "additionalProperties": false
}

Structured output

This schema describes structuredContent in a successful tool result. The MCP response also includes content and may set isError when a call fails. For publishing, read the post’s final result rather than treating an accepted request or text response as confirmation. The linked API operation explains permissions and retry rules.

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.

Structured output
Field / branchType / requiredConstraints
$objectRequired in parent
  • additionalProperties: false
stagestringRequired in parent
  • enum: ["media_pending","media_failed","scheduled"]
import_idstringRequired in parent
  • format: "uuid"
completionstringOptional / item
  • enum: ["pending","terminal"]
scheduled_postobject | nullRequired in parent—
scheduled_postanyOf 1objectRequired in parent
  • additionalProperties: false
scheduled_post.postanyOf 1objectRequired in parent
  • additionalProperties: false
scheduled_post.post.idanyOf 1stringRequired 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}$"
scheduled_post.post.workspace_idanyOf 1stringRequired in parent
  • format: "uuid"
scheduled_post.post.social_account_idanyOf 1string | nullRequired in parent—
scheduled_post.post.social_account_idanyOf 1 / anyOf 1stringRequired in parent
  • format: "uuid"
scheduled_post.post.social_account_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.platformanyOf 1stringRequired in parent
  • enum: ["instagram","threads","facebook","youtube","x"]
scheduled_post.post.destinationanyOf 1objectRequired in parent
  • additionalProperties: false
scheduled_post.post.destination.social_account_idanyOf 1string | nullRequired in parent—
scheduled_post.post.destination.social_account_idanyOf 1 / anyOf 1stringRequired in parent
  • format: "uuid"
scheduled_post.post.destination.social_account_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.destination.platformanyOf 1stringRequired in parent
  • enum: ["instagram","threads","facebook","youtube","x"]
scheduled_post.post.destination.platform_user_idanyOf 1string | nullRequired in parent—
scheduled_post.post.destination.platform_user_idanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.destination.platform_user_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.destination.account_labelanyOf 1string | nullRequired in parent—
scheduled_post.post.destination.account_labelanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.destination.account_labelanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.captionanyOf 1string | nullRequired in parent—
scheduled_post.post.captionanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.captionanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.hashtagsanyOf 1arrayRequired in parent—
scheduled_post.post.hashtags[]anyOf 1stringOptional / item—
scheduled_post.post.mediaanyOf 1arrayRequired in parent—
scheduled_post.post.media[]anyOf 1objectOptional / item
  • additionalProperties: false
scheduled_post.post.media[].kindanyOf 1stringRequired in parent
  • enum: ["image","video"]
scheduled_post.post.media[].urlanyOf 1stringRequired in parent
  • format: "uri"
scheduled_post.post.media[].cover_urlanyOf 1string | nullOptional / item—
scheduled_post.post.media[].cover_urlanyOf 1 / anyOf 1stringOptional / item
  • format: "uri"
scheduled_post.post.media[].cover_urlanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].cover_asset_idanyOf 1integer | nullOptional / item—
scheduled_post.post.media[].cover_asset_idanyOf 1 / anyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
scheduled_post.post.media[].cover_asset_idanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].asset_idanyOf 1integer | nullOptional / item—
scheduled_post.post.media[].asset_idanyOf 1 / anyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
scheduled_post.post.media[].asset_idanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].mime_typeanyOf 1string | nullOptional / item—
scheduled_post.post.media[].mime_typeanyOf 1 / anyOf 1stringOptional / item
  • minLength: 1
  • maxLength: 160
scheduled_post.post.media[].mime_typeanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].preview_urlanyOf 1string | nullOptional / item

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

—
scheduled_post.post.media[].preview_urlanyOf 1 / anyOf 1stringOptional / item
  • format: "uri"
scheduled_post.post.media[].preview_urlanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].cover_preview_urlanyOf 1string | nullOptional / item

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

—
scheduled_post.post.media[].cover_preview_urlanyOf 1 / anyOf 1stringOptional / item
  • format: "uri"
scheduled_post.post.media[].cover_preview_urlanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.media[].preview_expires_atanyOf 1string | nullOptional / item—
scheduled_post.post.media[].preview_expires_atanyOf 1 / anyOf 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))$"
scheduled_post.post.media[].preview_expires_atanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.link_urlanyOf 1string | nullOptional / item—
scheduled_post.post.link_urlanyOf 1 / anyOf 1stringOptional / item
  • format: "uri"
scheduled_post.post.link_urlanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.publish_optionsanyOf 1objectRequired in parent
  • additionalProperties: false
scheduled_post.post.publish_options.post_typeanyOf 1stringOptional / item
  • enum: ["TEXT","LINK","IMAGE","MULTI_IMAGE","VIDEO","CAROUSEL","REELS","STORY_IMAGE","STORY_VIDEO","REPOST","SHORT"]
scheduled_post.post.publish_options.location_idanyOf 1stringOptional / item
  • minLength: 1
scheduled_post.post.publish_options.share_to_feedanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.collaboratorsanyOf 1arrayOptional / item
  • maxItems: 3
scheduled_post.post.publish_options.collaborators[]anyOf 1stringOptional / item
  • minLength: 1
scheduled_post.post.publish_options.first_commentanyOf 1stringOptional / item
  • minLength: 1
  • maxLength: 2200
scheduled_post.post.publish_options.topic_taganyOf 1stringOptional / item
  • minLength: 1
scheduled_post.post.publish_options.thumb_offset_msanyOf 1integerOptional / item
  • minimum: 0
  • maximum: 9007199254740991
scheduled_post.post.publish_options.titleanyOf 1stringOptional / item
  • maxLength: 255
scheduled_post.post.publish_options.youtube_privacy_statusanyOf 1stringOptional / item
  • enum: ["private","unlisted","public"]
scheduled_post.post.publish_options.youtube_category_idanyOf 1stringOptional / item
  • pattern: "^\\d+$"
scheduled_post.post.publish_options.youtube_contains_synthetic_mediaanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.descriptionanyOf 1stringOptional / item
  • maxLength: 5000
scheduled_post.post.publish_options.category_idanyOf 1stringOptional / item
  • pattern: "^\\d+$"
scheduled_post.post.publish_options.privacy_statusanyOf 1stringOptional / item
  • enum: ["private","unlisted","public"]
scheduled_post.post.publish_options.cancellation_modeanyOf 1stringOptional / item
  • enum: ["DELETE","UNSCHEDULE_KEEP_PRIVATE"]
scheduled_post.post.publish_options.tagsanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.tags[]anyOf 1stringOptional / item—
scheduled_post.post.publish_options.default_languageanyOf 1stringOptional / item—
scheduled_post.post.publish_options.localizationsanyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.localizations.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.licenseanyOf 1stringOptional / item
  • enum: ["youtube","creativeCommon"]
scheduled_post.post.publish_options.embeddableanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.public_stats_viewableanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.self_declared_made_for_kidsanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.contains_synthetic_mediaanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.has_paid_product_placementanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.recording_dateanyOf 1stringOptional / item—
scheduled_post.post.publish_options.notify_subscribersanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.thumbnail_asset_idanyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
scheduled_post.post.publish_options.surface_expectationanyOf 1stringOptional / item
  • const: "SHORT"
scheduled_post.post.publish_options.brand_partneranyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.brand_partner.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.cover_asset_idanyOf 1integerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
scheduled_post.post.publish_options.audio_nameanyOf 1stringOptional / item—
scheduled_post.post.publish_options.trial_paramsanyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.trial_params.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.is_ai_generatedanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.branded_content_sponsor_idsanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.branded_content_sponsor_ids[]anyOf 1stringOptional / item—
scheduled_post.post.publish_options.is_paid_partnershipanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.media_optionsanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.media_options[]anyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.media_options[].*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.reply_to_idanyOf 1stringOptional / item—
scheduled_post.post.publish_options.quote_post_idanyOf 1stringOptional / item—
scheduled_post.post.publish_options.repost_target_idanyOf 1stringOptional / item—
scheduled_post.post.publish_options.reply_controlanyOf 1stringOptional / item—
scheduled_post.post.publish_options.enable_reply_approvalsanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.link_attachmentanyOf 1stringOptional / item
  • format: "uri"
scheduled_post.post.publish_options.poll_attachmentanyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.poll_attachment.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.gif_attachmentanyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.gif_attachment.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.text_attachmentanyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.text_attachment.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.text_entitiesanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.text_entities[]anyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.text_entities[].*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.is_spoiler_mediaanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.is_ghost_postanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.allowlisted_country_codesanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.allowlisted_country_codes[]anyOf 1stringOptional / item—
scheduled_post.post.publish_options.crossreshare_to_iganyOf 1booleanOptional / item—
scheduled_post.post.publish_options.crossreshare_to_ig_dark_modeanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.auto_publish_textanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.publication_modeanyOf 1stringOptional / item
  • enum: ["PUBLISH","DRAFT"]
scheduled_post.post.publish_options.backdated_timeanyOf 1numberOptional / item—
scheduled_post.post.publish_options.backdated_time_granularityanyOf 1stringOptional / item
  • enum: ["year","month","day","hour","minute"]
scheduled_post.post.publish_options.placeanyOf 1stringOptional / item—
scheduled_post.post.publish_options.feed_targetinganyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.feed_targeting.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.targetinganyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.targeting.*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.child_attachmentsanyOf 1arrayOptional / item—
scheduled_post.post.publish_options.child_attachments[]anyOf 1objectOptional / item
  • additionalProperties: {}
scheduled_post.post.publish_options.child_attachments[].*anyOf 1any JSON valueOptional / item—
scheduled_post.post.publish_options.multi_share_end_cardanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.multi_share_optimizedanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.unpublished_content_typeanyOf 1stringOptional / item—
scheduled_post.post.publish_options.no_storyanyOf 1booleanOptional / item—
scheduled_post.post.publish_options.crossposted_video_idanyOf 1stringOptional / item—
scheduled_post.post.publish_options.sphericalanyOf 1booleanOptional / item—
scheduled_post.post.scheduled_atanyOf 1stringRequired in parent—
scheduled_post.post.display_timezoneanyOf 1stringRequired in parent
  • minLength: 1
  • maxLength: 80
scheduled_post.post.local_scheduled_atanyOf 1string | nullOptional / item—
scheduled_post.post.local_scheduled_atanyOf 1 / anyOf 1stringOptional / item
  • pattern: "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
scheduled_post.post.local_scheduled_atanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.schedule_timezoneanyOf 1string | nullOptional / item—
scheduled_post.post.schedule_timezoneanyOf 1 / anyOf 1stringOptional / item
  • minLength: 1
  • maxLength: 80
scheduled_post.post.schedule_timezoneanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.schedule_dst_disambiguationanyOf 1string | nullOptional / item—
scheduled_post.post.schedule_dst_disambiguationanyOf 1 / anyOf 1stringOptional / item
  • enum: ["exact","earlier","later"]
scheduled_post.post.schedule_dst_disambiguationanyOf 1 / anyOf 2nullOptional / item—
scheduled_post.post.schedule_intent_stateanyOf 1stringOptional / item
  • enum: ["verified","legacy_unverified"]
scheduled_post.post.expires_atanyOf 1string | nullRequired in parent—
scheduled_post.post.expires_atanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.expires_atanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.statusanyOf 1stringRequired in parent
  • enum: ["scheduled","publishing","published","failed","expired","needs_reschedule","cancelled","deleted"]
scheduled_post.post.versionanyOf 1integerRequired in parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
scheduled_post.post.automatic_retry_enabledanyOf 1booleanRequired in parent—
scheduled_post.post.delete_requested_atanyOf 1string | nullRequired in parent—
scheduled_post.post.delete_requested_atanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.delete_requested_atanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.published_atanyOf 1string | nullRequired in parent—
scheduled_post.post.published_atanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.published_atanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.deleted_atanyOf 1string | nullRequired in parent—
scheduled_post.post.deleted_atanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.deleted_atanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.provider_post_idanyOf 1string | nullRequired in parent—
scheduled_post.post.provider_post_idanyOf 1 / anyOf 1stringRequired in parent—
scheduled_post.post.provider_post_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.permalinkanyOf 1string | nullRequired in parent—
scheduled_post.post.permalinkanyOf 1 / anyOf 1stringRequired in parent
  • format: "uri"
scheduled_post.post.permalinkanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.created_atanyOf 1stringRequired in parent—
scheduled_post.post.updated_atanyOf 1stringRequired in parent—
scheduled_post.post.project_idanyOf 1string | nullRequired in parent—
scheduled_post.post.project_idanyOf 1 / anyOf 1stringRequired in parent
  • format: "uuid"
scheduled_post.post.project_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.batch_idanyOf 1string | nullRequired in parent—
scheduled_post.post.batch_idanyOf 1 / anyOf 1stringRequired in parent
  • format: "uuid"
scheduled_post.post.batch_idanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.post.source_refanyOf 1object | nullRequired in parent—
scheduled_post.post.source_refanyOf 1 / anyOf 1objectRequired in parent
  • additionalProperties: {}
scheduled_post.post.source_ref.*anyOf 1 / anyOf 1any JSON valueOptional / item—
scheduled_post.post.source_refanyOf 1 / anyOf 2nullRequired in parent—
scheduled_post.dedupedanyOf 1booleanRequired in parent—
scheduled_postanyOf 2nullRequired in parent—
retry_after_secondsintegerOptional / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
resume_argumentsobjectOptional / item
  • additionalProperties: {}
resume_arguments.*any JSON valueOptional / item—
Complete JSON Schema
{
  "type": "object",
  "properties": {
    "stage": {
      "type": "string",
      "enum": [
        "media_pending",
        "media_failed",
        "scheduled"
      ]
    },
    "import_id": {
      "type": "string",
      "format": "uuid"
    },
    "completion": {
      "type": "string",
      "enum": [
        "pending",
        "terminal"
      ]
    },
    "scheduled_post": {
      "anyOf": [
        {
          "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"
                },
                "social_account_id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "format": "uuid"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "platform": {
                  "type": "string",
                  "enum": [
                    "instagram",
                    "threads",
                    "facebook",
                    "youtube",
                    "x"
                  ]
                },
                "destination": {
                  "type": "object",
                  "properties": {
                    "social_account_id": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "uuid"
                        },
                        {
                          "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"
                  ],
                  "additionalProperties": false
                },
                "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"
                    ],
                    "additionalProperties": false
                  }
                },
                "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"
                    }
                  },
                  "additionalProperties": false
                },
                "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"
                },
                "project_id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "format": "uuid"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "batch_id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "format": "uuid"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "source_ref": {
                  "anyOf": [
                    {
                      "type": "object",
                      "propertyNames": {
                        "type": "string"
                      },
                      "additionalProperties": {}
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              },
              "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",
                "project_id",
                "batch_id",
                "source_ref"
              ],
              "additionalProperties": false
            },
            "deduped": {
              "type": "boolean"
            }
          },
          "required": [
            "post",
            "deduped"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "retry_after_seconds": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "resume_arguments": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "stage",
    "import_id",
    "scheduled_post"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Example tool call

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.

{
  "name": "sosoapi_post_image_url",
  "arguments": {
    "source_url": "https://example.com/media.png",
    "post": {
      "workspace_id": "11111111-1111-4111-8111-111111111111",
      "social_account_id": "11111111-1111-4111-8111-111111111111",
      "provider_payload": {
        "platform": "threads",
        "publish_options": {
          "post_type": "IMAGE"
        }
      },
      "scheduled_at": "2099-01-15T09:00:00Z",
      "idempotency_key": "example-intent-0001",
      "media": []
    }
  }
}

structuredContent

{
  "stage": "media_pending",
  "import_id": "11111111-1111-4111-8111-111111111111",
  "scheduled_post": null
}
Install or connect MCP