예약 및 게시
Threads 연속 게시물 취소
정확한 버전으로 게시되지 않은 연속 게시물 작업을 취소하고 초안, 접수 ID 및 게시된 콘텐츠를 유지합니다.
POST /studio-api/threads-sequences/cancel계약 검토: · sha256:11debf801a5e6096
개요
정확한 버전으로 게시되지 않은 연속 게시물 작업을 취소하고 초안, 접수 ID 및 게시된 콘텐츠를 유지합니다.
HTTP 성공 응답은 완료가 아닌 접수를 뜻할 수 있습니다. 백그라운드 작업은 반환 ID를 저장하고 완료까지 같은 작업을 확인하세요. 예약 또는 접수 게시물은 플랫폼이 확인해야 게시 완료입니다. 클라이언트 시간 초과로 결과를 판단할 수 없습니다.
인증 및 권한
토큰은 소유자의 권한만 사용할 수 있습니다. 각 요청은 Workspace 멤버십, 리소스 소유권, 선택 Workspace, 부여 기능을 확인합니다. core와 full 프로필은 표시 도구를 바꾸며 접근 권한은 부여하지 않습니다.
요청 필드
필수는 상위 객체와 선택 분기 안에서 필수라는 뜻입니다. 필수 자식이 선택적 상위 객체를 필수로 만들지는 않습니다. 아래 규칙과 필드명은 계약에서 복사했습니다.
| 필드 / 분기 | 유형 / 필수 여부 | 제약 조건 |
|---|---|---|
$ | object상위 객체에서 필수 |
|
workspace_id | string상위 객체에서 필수 |
|
id | string상위 객체에서 필수 |
|
expected_version | integer상위 객체에서 필수 |
|
expected_versions | object상위 객체에서 필수 |
|
expected_versions.* | integer선택 / 항목 |
|
전체 JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"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)$"
},
"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)$"
},
"expected_version": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"expected_versions": {
"type": "object",
"propertyNames": {
"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}$"
},
"additionalProperties": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
}
},
"required": [
"workspace_id",
"id",
"expected_version",
"expected_versions"
],
"additionalProperties": false
}응답 및 완료
성공 HTTP 상태: 200. 작업 완료 시: canonical per-Post terminal outcomes; atomic admission is not publication and successful prefixes are never recreated.
HTTP 성공 응답은 완료가 아닌 접수를 뜻할 수 있습니다. 백그라운드 작업은 반환 ID를 저장하고 완료까지 같은 작업을 확인하세요. 예약 또는 접수 게시물은 플랫폼이 확인해야 게시 완료입니다. 클라이언트 시간 초과로 결과를 판단할 수 없습니다.
필수는 상위 객체와 선택 분기 안에서 필수라는 뜻입니다. 필수 자식이 선택적 상위 객체를 필수로 만들지는 않습니다. 아래 규칙과 필드명은 계약에서 복사했습니다.
| 필드 / 분기 | 유형 / 필수 여부 | 제약 조건 |
|---|---|---|
$ | object상위 객체에서 필수 | — |
sequence | object상위 객체에서 필수 | — |
sequence.workspace_id | string상위 객체에서 필수 |
|
sequence.id | string상위 객체에서 필수 |
|
sequence.social_account_id | string상위 객체에서 필수 |
|
sequence.version | integer상위 객체에서 필수 |
|
sequence.state | string상위 객체에서 필수 |
|
sequence.item_count | integer상위 객체에서 필수 |
|
sequence.caption_preview | string상위 객체에서 필수 |
|
sequence.created_at | string상위 객체에서 필수 |
|
sequence.updated_at | string상위 객체에서 필수 |
|
sequence.items | array상위 객체에서 필수 |
|
sequence.items[] | object선택 / 항목 | — |
sequence.items[].item_id | string상위 객체에서 필수 |
|
sequence.items[].ordinal | integer상위 객체에서 필수 |
|
sequence.items[].draft | object상위 객체에서 필수 | — |
sequence.items[].draft.id | string상위 객체에서 필수 |
|
sequence.items[].draft.workspace_id | string상위 객체에서 필수 |
|
sequence.items[].draft.revision | integer상위 객체에서 필수 |
|
sequence.items[].draft.state | string상위 객체에서 필수 |
|
sequence.items[].draft.content | object상위 객체에서 필수 | — |
sequence.items[].draft.content.schemaVersion | number상위 객체에서 필수 |
|
sequence.items[].draft.content.accountIds | array상위 객체에서 필수 |
|
sequence.items[].draft.content.accountIds[] | string선택 / 항목 |
|
sequence.items[].draft.content.caption | string상위 객체에서 필수 |
|
sequence.items[].draft.content.hashtags | string상위 객체에서 필수 |
|
sequence.items[].draft.content.assetIds | array상위 객체에서 필수 |
|
sequence.items[].draft.content.assetIds[] | string선택 / 항목 |
|
sequence.items[].draft.content.threadsTextOnly | boolean상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.post_type | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.reply_to_id | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.quote_post_id | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.repost_target_id | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.reply_control | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.enable_reply_approvals | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.link_attachment | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.poll_attachment | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.poll_attachment.option_a | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.poll_attachment.option_b | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.poll_attachment.option_c | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.poll_attachment.option_d | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.gif_attachment | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.gif_attachment.gif_id | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.gif_attachment.provider | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_attachment | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.text_attachment.plaintext | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.link_attachment_url | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info | array선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info[] | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info[].offset | integer상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info[].length | integer상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info[].styling_info | array상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_attachment.text_with_styling_info[].styling_info[] | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.topic_tag | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.text_entities | array선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.text_entities[] | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.text_entities[].entity_type | string상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_entities[].offset | integer상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.text_entities[].length | integer상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.is_spoiler_media | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.is_ghost_post | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.location_id | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.allowlisted_country_codes | array선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.allowlisted_country_codes[] | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.crossreshare_to_ig | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.crossreshare_to_ig_dark_mode | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.auto_publish_text | boolean선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.media_options | array선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.media_options[] | object선택 / 항목 | — |
sequence.items[].draft.content.threadsOptions.media_options[].asset_id | integer상위 객체에서 필수 |
|
sequence.items[].draft.content.threadsOptions.media_options[].alt_text | string선택 / 항목 |
|
sequence.items[].draft.content.threadsOptions.media_options[].is_spoiler_media | boolean선택 / 항목 | — |
sequence.items[].draft.content.instagramMode | string상위 객체에서 필수 |
|
sequence.items[].draft.content.youtubeTitle | string상위 객체에서 필수 |
|
sequence.items[].draft.content.youtubePrivacy | string상위 객체에서 필수 |
|
sequence.items[].draft.content.youtubeSynthetic | boolean상위 객체에서 필수 |
|
sequence.items[].draft.content.youtubeCategoryId | string상위 객체에서 필수 |
|
sequence.items[].draft.content.youtubeShort | boolean상위 객체에서 필수 |
|
sequence.items[].draft.content.linkUrl | string상위 객체에서 필수 |
|
sequence.items[].draft.content.scheduledAt | string상위 객체에서 필수 |
|
sequence.items[].draft.content.displayTimezone | string상위 객체에서 필수 |
|
sequence.items[].draft.content.publishNow | boolean상위 객체에서 필수 |
|
sequence.items[].draft.content.destinationOverrides | object상위 객체에서 필수 |
|
sequence.items[].draft.content.destinationOverrides.* | object선택 / 항목 | — |
sequence.items[].draft.content.destinationOverrides.*.caption | string선택 / 항목 |
|
sequence.items[].draft.content.destinationOverrides.*.scheduledAt | string선택 / 항목 |
|
sequence.items[].draft.content.expiresAt | string상위 객체에서 필수 |
|
sequence.items[].draft.created_by | string | null상위 객체에서 필수 | — |
sequence.items[].draft.created_byanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.created_byanyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.updated_by | string | null상위 객체에서 필수 | — |
sequence.items[].draft.updated_byanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.updated_byanyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.created_at | string상위 객체에서 필수 |
|
sequence.items[].draft.updated_at | string상위 객체에서 필수 |
|
sequence.items[].draft.submission | object | null상위 객체에서 필수 | — |
sequence.items[].draft.submissionanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.submission.idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.expected_revisionanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.submission.started_atanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receiptanyOf 1 | object | null상위 객체에서 필수 | — |
sequence.items[].draft.submission.receiptanyOf 1 / anyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.submission.receipt.batch_idanyOf 1 / anyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].draft.submission.receipt.batch_idanyOf 1 / anyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.batch_idanyOf 1 / anyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.submission.receipt.successesanyOf 1 / anyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.successes[]anyOf 1 / anyOf 1 | object선택 / 항목 | — |
sequence.items[].draft.submission.receipt.successes[].social_account_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.successes[].post_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.failuresanyOf 1 / anyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.failures[]anyOf 1 / anyOf 1 | object선택 / 항목 | — |
sequence.items[].draft.submission.receipt.failures[].social_account_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.failures[].codeanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receipt.failures[].messageanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.submission.receiptanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.submissionanyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context | object | null선택 / 항목 | — |
sequence.items[].draft.brand_contextanyOf 1 | object선택 / 항목 | — |
sequence.items[].draft.brand_context.workspace_idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.selectionanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.selection.profile_idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.selection.version_idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.selection.revisionanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.selection.content_digestanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.selection.context_digestanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.availabilityanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.profile_stateanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.profile_stateanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.profile_stateanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.contentanyOf 1 | object | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.contentanyOf 1 / anyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.content.nameanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.audienceanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.voiceanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.languageanyOf 1 / anyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.content.languageanyOf 1 / anyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.languageanyOf 1 / anyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.content.preferred_termsanyOf 1 / anyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.preferred_terms[]anyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].draft.brand_context.content.prohibited_termsanyOf 1 / anyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.prohibited_terms[]anyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].draft.brand_context.content.locked_factsanyOf 1 / anyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.locked_facts[]anyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.contentanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.sourcesanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.sources.websiteanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.sources.logoanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.sources.own_postsanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].draft.brand_context.sources.own_posts.selectedanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.sources.own_posts.availableanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.sources.own_posts.unavailableanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_context.sources.own_posts.erasedanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_contextanyOf 2 | null선택 / 항목 | — |
sequence.items[].draft.brand_review | object | null선택 / 항목 | — |
sequence.items[].draft.brand_reviewanyOf 1 | object선택 / 항목 | — |
sequence.items[].draft.brand_review.rule_versionanyOf 1 | number상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.context_digestanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.content_digestanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.statusanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.issuesanyOf 1 | array상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.issues[]anyOf 1 | object선택 / 항목 | — |
sequence.items[].draft.brand_review.issues[].codeanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.issues[].targetanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.issues[].rule_indexanyOf 1 | integer | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_review.issues[].rule_indexanyOf 1 / anyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].draft.brand_review.issues[].rule_indexanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].draft.brand_review.issues[].messageanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].draft.brand_reviewanyOf 2 | null선택 / 항목 | — |
sequence.items[].predecessor_post_id | string | null상위 객체에서 필수 | — |
sequence.items[].predecessor_post_idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].predecessor_post_idanyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post | object | null상위 객체에서 필수 | — |
sequence.items[].postanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].post.idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.workspace_idanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.social_account_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.social_account_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.social_account_idanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.platformanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.destinationanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].post.destination.social_account_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.destination.social_account_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.destination.social_account_idanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.destination.platformanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.destination.platform_user_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.destination.account_labelanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.captionanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.hashtagsanyOf 1 | array상위 객체에서 필수 | — |
sequence.items[].post.hashtags[]anyOf 1 | string선택 / 항목 | — |
sequence.items[].post.mediaanyOf 1 | array상위 객체에서 필수 | — |
sequence.items[].post.media[]anyOf 1 | object선택 / 항목 | — |
sequence.items[].post.media[].kindanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.media[].urlanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.media[].cover_urlanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.media[].cover_urlanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.media[].cover_urlanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].cover_asset_idanyOf 1 | integer | null선택 / 항목 | — |
sequence.items[].post.media[].cover_asset_idanyOf 1 / anyOf 1 | integer선택 / 항목 |
|
sequence.items[].post.media[].cover_asset_idanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].asset_idanyOf 1 | integer | null선택 / 항목 | — |
sequence.items[].post.media[].asset_idanyOf 1 / anyOf 1 | integer선택 / 항목 |
|
sequence.items[].post.media[].asset_idanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].mime_typeanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.media[].mime_typeanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.media[].mime_typeanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].preview_urlanyOf 1 | string | null선택 / 항목 | 임시 승인 읽기 URL. url을 영속 Scheduled Post 미디어 ID로 유지하세요. — |
sequence.items[].post.media[].preview_urlanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.media[].preview_urlanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].cover_preview_urlanyOf 1 | string | null선택 / 항목 | 임시 승인 커버 읽기 URL. cover_url을 영속 미디어 ID로 유지하세요. — |
sequence.items[].post.media[].cover_preview_urlanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.media[].cover_preview_urlanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.media[].preview_expires_atanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.media[].preview_expires_atanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.media[].preview_expires_atanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.link_urlanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.link_urlanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.link_urlanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.publish_optionsanyOf 1 | object상위 객체에서 필수 | — |
sequence.items[].post.publish_options.post_typeanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.location_idanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.share_to_feedanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.collaboratorsanyOf 1 | array선택 / 항목 |
|
sequence.items[].post.publish_options.collaborators[]anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.first_commentanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.topic_taganyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.thumb_offset_msanyOf 1 | integer선택 / 항목 |
|
sequence.items[].post.publish_options.titleanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.youtube_privacy_statusanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.youtube_category_idanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.youtube_contains_synthetic_mediaanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.descriptionanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.category_idanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.privacy_statusanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.cancellation_modeanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.tagsanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.tags[]anyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.default_languageanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.localizationsanyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.localizations.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.licenseanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.embeddableanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.public_stats_viewableanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.self_declared_made_for_kidsanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.contains_synthetic_mediaanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.has_paid_product_placementanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.recording_dateanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.notify_subscribersanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.thumbnail_asset_idanyOf 1 | integer선택 / 항목 |
|
sequence.items[].post.publish_options.surface_expectationanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.brand_partneranyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.brand_partner.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.cover_asset_idanyOf 1 | integer선택 / 항목 |
|
sequence.items[].post.publish_options.audio_nameanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.trial_paramsanyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.trial_params.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.is_ai_generatedanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.branded_content_sponsor_idsanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.branded_content_sponsor_ids[]anyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.is_paid_partnershipanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.media_optionsanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.media_options[]anyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.media_options[].*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.reply_to_idanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.quote_post_idanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.repost_target_idanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.reply_controlanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.enable_reply_approvalsanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.link_attachmentanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.poll_attachmentanyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.poll_attachment.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.gif_attachmentanyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.gif_attachment.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.text_attachmentanyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.text_attachment.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.text_entitiesanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.text_entities[]anyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.text_entities[].*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.is_spoiler_mediaanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.is_ghost_postanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.allowlisted_country_codesanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.allowlisted_country_codes[]anyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.crossreshare_to_iganyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.crossreshare_to_ig_dark_modeanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.auto_publish_textanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.publication_modeanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.backdated_timeanyOf 1 | number선택 / 항목 | — |
sequence.items[].post.publish_options.backdated_time_granularityanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.publish_options.placeanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.feed_targetinganyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.feed_targeting.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.targetinganyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.targeting.*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.child_attachmentsanyOf 1 | array선택 / 항목 | — |
sequence.items[].post.publish_options.child_attachments[]anyOf 1 | object선택 / 항목 |
|
sequence.items[].post.publish_options.child_attachments[].*anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.publish_options.multi_share_end_cardanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.multi_share_optimizedanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.unpublished_content_typeanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.no_storyanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.publish_options.crossposted_video_idanyOf 1 | string선택 / 항목 | — |
sequence.items[].post.publish_options.sphericalanyOf 1 | boolean선택 / 항목 | — |
sequence.items[].post.scheduled_atanyOf 1 | string상위 객체에서 필수 | — |
sequence.items[].post.display_timezoneanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.local_scheduled_atanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.local_scheduled_atanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.local_scheduled_atanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.schedule_timezoneanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.schedule_timezoneanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.schedule_timezoneanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.schedule_dst_disambiguationanyOf 1 | string | null선택 / 항목 | — |
sequence.items[].post.schedule_dst_disambiguationanyOf 1 / anyOf 1 | string선택 / 항목 |
|
sequence.items[].post.schedule_dst_disambiguationanyOf 1 / anyOf 2 | null선택 / 항목 | — |
sequence.items[].post.schedule_intent_stateanyOf 1 | string선택 / 항목 |
|
sequence.items[].post.expires_atanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.statusanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.versionanyOf 1 | integer상위 객체에서 필수 |
|
sequence.items[].post.automatic_retry_enabledanyOf 1 | boolean상위 객체에서 필수 | — |
sequence.items[].post.delete_requested_atanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.deletionanyOf 1 | object선택 / 항목 | — |
sequence.items[].post.deletion.stateanyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.deletion.retry_atanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.deletion.retry_atanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.deletion.retry_atanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.published_atanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.deleted_atanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.provider_post_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.permalinkanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.permalinkanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.permalinkanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.created_atanyOf 1 | string상위 객체에서 필수 | — |
sequence.items[].post.updated_atanyOf 1 | string상위 객체에서 필수 | — |
sequence.items[].post.project_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.project_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.project_idanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.batch_idanyOf 1 | string | null상위 객체에서 필수 | — |
sequence.items[].post.batch_idanyOf 1 / anyOf 1 | string상위 객체에서 필수 |
|
sequence.items[].post.batch_idanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].post.source_refanyOf 1 | object | null상위 객체에서 필수 | — |
sequence.items[].post.source_refanyOf 1 / anyOf 1 | object상위 객체에서 필수 |
|
sequence.items[].post.source_ref.*anyOf 1 / anyOf 1 | any JSON value선택 / 항목 | — |
sequence.items[].post.source_refanyOf 1 / anyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].postanyOf 2 | null상위 객체에서 필수 | — |
sequence.items[].retry_allowed | boolean상위 객체에서 필수 | — |
sequence.expected_versions | object상위 객체에서 필수 |
|
sequence.expected_versions.* | integer선택 / 항목 |
|
sequence.actions | array상위 객체에서 필수 |
|
sequence.actions[] | object선택 / 항목 | — |
sequence.actions[].action | string상위 객체에서 필수 |
|
sequence.actions[].allowed | boolean상위 객체에서 필수 | — |
sequence.actions[].reason_code | string상위 객체에서 필수 |
|
sequence.actions[].message | string상위 객체에서 필수 |
|
replayed | boolean선택 / 항목 | — |
전체 JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"sequence": {
"type": "object",
"properties": {
"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)$"
},
"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": {
"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)$"
},
"version": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"state": {
"type": "string",
"enum": [
"draft",
"admitted",
"cancelled"
]
},
"item_count": {
"type": "integer",
"minimum": 2,
"maximum": 25
},
"caption_preview": {
"type": "string",
"maxLength": 500
},
"created_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"updated_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"items": {
"minItems": 2,
"maxItems": 25,
"type": "array",
"items": {
"type": "object",
"properties": {
"item_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)$"
},
"ordinal": {
"type": "integer",
"minimum": 1,
"maximum": 25
},
"draft": {
"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)$"
},
"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)$"
},
"revision": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"state": {
"type": "string",
"enum": [
"draft",
"submitting",
"submitted"
]
},
"content": {
"type": "object",
"properties": {
"schemaVersion": {
"default": 1,
"type": "number",
"const": 1
},
"accountIds": {
"default": [],
"maxItems": 50,
"type": "array",
"items": {
"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)$"
}
},
"caption": {
"default": "",
"type": "string",
"maxLength": 5000
},
"hashtags": {
"default": "",
"type": "string",
"maxLength": 5000
},
"assetIds": {
"default": [],
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 16,
"pattern": "^[1-9][0-9]*$"
}
},
"threadsTextOnly": {
"default": false,
"type": "boolean"
},
"threadsOptions": {
"type": "object",
"properties": {
"post_type": {
"type": "string",
"enum": [
"TEXT",
"IMAGE",
"VIDEO",
"CAROUSEL",
"REPOST"
]
},
"reply_to_id": {
"type": "string",
"maxLength": 128
},
"quote_post_id": {
"type": "string",
"maxLength": 128
},
"repost_target_id": {
"type": "string",
"maxLength": 128
},
"reply_control": {
"type": "string",
"enum": [
"everyone",
"accounts_you_follow",
"mentioned_only",
"parent_post_author_only",
"followers_only"
]
},
"enable_reply_approvals": {
"type": "boolean"
},
"link_attachment": {
"type": "string",
"maxLength": 2048
},
"poll_attachment": {
"type": "object",
"properties": {
"option_a": {
"type": "string",
"maxLength": 25
},
"option_b": {
"type": "string",
"maxLength": 25
},
"option_c": {
"type": "string",
"maxLength": 25
},
"option_d": {
"type": "string",
"maxLength": 25
}
},
"required": [
"option_a",
"option_b"
]
},
"gif_attachment": {
"type": "object",
"properties": {
"gif_id": {
"type": "string",
"maxLength": 128
},
"provider": {
"type": "string",
"const": "GIPHY"
}
},
"required": [
"gif_id",
"provider"
]
},
"text_attachment": {
"type": "object",
"properties": {
"plaintext": {
"type": "string",
"maxLength": 10000
},
"link_attachment_url": {
"type": "string",
"maxLength": 2048
},
"text_with_styling_info": {
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"length": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"styling_info": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"enum": [
"bold",
"italic",
"highlight",
"underline",
"strikethrough"
]
}
}
},
"required": [
"offset",
"length",
"styling_info"
]
}
}
},
"required": [
"plaintext"
]
},
"topic_tag": {
"type": "string",
"maxLength": 50
},
"text_entities": {
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"entity_type": {
"type": "string",
"enum": [
"SPOILER",
"spoiler"
]
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"length": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"entity_type",
"offset",
"length"
]
}
},
"is_spoiler_media": {
"type": "boolean"
},
"is_ghost_post": {
"type": "boolean"
},
"location_id": {
"type": "string",
"maxLength": 128
},
"allowlisted_country_codes": {
"minItems": 1,
"maxItems": 249,
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Z]{2}$"
}
},
"crossreshare_to_ig": {
"type": "boolean"
},
"crossreshare_to_ig_dark_mode": {
"type": "boolean"
},
"auto_publish_text": {
"type": "boolean"
},
"media_options": {
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"asset_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"alt_text": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"is_spoiler_media": {
"type": "boolean"
}
},
"required": [
"asset_id"
]
}
}
}
},
"instagramMode": {
"default": "REELS",
"type": "string",
"enum": [
"IMAGE",
"REELS",
"CAROUSEL",
"STORY_IMAGE",
"STORY_VIDEO"
]
},
"youtubeTitle": {
"default": "",
"type": "string",
"maxLength": 100
},
"youtubePrivacy": {
"default": "private",
"type": "string",
"enum": [
"private",
"unlisted",
"public"
]
},
"youtubeSynthetic": {
"default": false,
"type": "boolean"
},
"youtubeCategoryId": {
"default": "",
"type": "string",
"maxLength": 32
},
"youtubeShort": {
"default": false,
"type": "boolean"
},
"linkUrl": {
"default": "",
"type": "string",
"maxLength": 2048
},
"scheduledAt": {
"default": "",
"type": "string",
"maxLength": 64
},
"displayTimezone": {
"default": "UTC",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"publishNow": {
"default": false,
"type": "boolean"
},
"destinationOverrides": {
"default": {},
"type": "object",
"propertyNames": {
"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)$"
},
"additionalProperties": {
"type": "object",
"properties": {
"caption": {
"type": "string",
"maxLength": 5000
},
"scheduledAt": {
"type": "string",
"maxLength": 64
}
}
}
},
"expiresAt": {
"default": "",
"type": "string",
"maxLength": 64
}
},
"required": [
"schemaVersion",
"accountIds",
"caption",
"hashtags",
"assetIds",
"threadsTextOnly",
"instagramMode",
"youtubeTitle",
"youtubePrivacy",
"youtubeSynthetic",
"youtubeCategoryId",
"youtubeShort",
"linkUrl",
"scheduledAt",
"displayTimezone",
"publishNow",
"destinationOverrides",
"expiresAt"
]
},
"created_by": {
"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"
}
]
},
"updated_by": {
"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"
}
]
},
"created_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"updated_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"submission": {
"anyOf": [
{
"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)$"
},
"expected_revision": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"started_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"receipt": {
"anyOf": [
{
"type": "object",
"properties": {
"batch_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"
}
]
},
"successes": {
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"social_account_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)$"
},
"post_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": [
"social_account_id",
"post_id"
]
}
},
"failures": {
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"social_account_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)$"
},
"code": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"message": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"social_account_id",
"code",
"message"
]
}
}
},
"required": [
"batch_id",
"successes",
"failures"
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"expected_revision",
"started_at",
"receipt"
]
},
{
"type": "null"
}
]
},
"brand_context": {
"anyOf": [
{
"type": "object",
"properties": {
"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)$"
},
"selection": {
"type": "object",
"properties": {
"profile_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)$"
},
"version_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)$"
},
"revision": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"content_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"context_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"required": [
"profile_id",
"version_id",
"revision",
"content_digest",
"context_digest"
]
},
"availability": {
"type": "string",
"enum": [
"available",
"missing"
]
},
"profile_state": {
"anyOf": [
{
"type": "string",
"enum": [
"active",
"archived"
]
},
{
"type": "null"
}
]
},
"content": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 120
},
"audience": {
"type": "string",
"maxLength": 2000
},
"voice": {
"type": "string",
"maxLength": 2000
},
"language": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 64
},
{
"type": "null"
}
]
},
"preferred_terms": {
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"prohibited_terms": {
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"locked_facts": {
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"call_to_action": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"audience",
"voice",
"language",
"preferred_terms",
"prohibited_terms",
"locked_facts",
"call_to_action"
]
},
{
"type": "null"
}
]
},
"sources": {
"type": "object",
"properties": {
"website": {
"type": "string",
"enum": [
"available",
"not_available"
]
},
"logo": {
"type": "string",
"enum": [
"none",
"present",
"missing"
]
},
"own_posts": {
"type": "object",
"properties": {
"selected": {
"type": "integer",
"minimum": 0,
"maximum": 10
},
"available": {
"type": "integer",
"minimum": 0,
"maximum": 10
},
"unavailable": {
"type": "integer",
"minimum": 0,
"maximum": 10
},
"erased": {
"type": "integer",
"minimum": 0,
"maximum": 10
}
},
"required": [
"selected",
"available",
"unavailable",
"erased"
]
}
},
"required": [
"website",
"logo",
"own_posts"
]
}
},
"required": [
"workspace_id",
"selection",
"availability",
"profile_state",
"content",
"sources"
]
},
{
"type": "null"
}
]
},
"brand_review": {
"anyOf": [
{
"type": "object",
"properties": {
"rule_version": {
"type": "number",
"const": 1
},
"context_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"content_digest": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"status": {
"type": "string",
"enum": [
"clear",
"attention",
"unavailable"
]
},
"issues": {
"maxItems": 5151,
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"enum": [
"prohibited_term",
"locked_fact_missing",
"conflicting_rule",
"context_unavailable"
]
},
"target": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"rule_index": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 49
},
{
"type": "null"
}
]
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 240
}
},
"required": [
"code",
"target",
"rule_index",
"message"
]
}
}
},
"required": [
"rule_version",
"context_digest",
"content_digest",
"status",
"issues"
]
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"workspace_id",
"revision",
"state",
"content",
"created_by",
"updated_by",
"created_at",
"updated_at",
"submission"
]
},
"predecessor_post_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"
}
]
},
"post": {
"anyOf": [
{
"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": {
"type": [
"string",
"null"
]
},
"account_label": {
"type": [
"string",
"null"
]
}
},
"required": [
"social_account_id",
"platform",
"platform_user_id",
"account_label"
]
},
"caption": {
"type": [
"string",
"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",
"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))$",
"format": "date-time"
},
{
"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": {
"type": [
"string",
"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": {
"type": [
"string",
"null"
]
},
"deletion": {
"type": "object",
"properties": {
"state": {
"type": "string",
"enum": [
"pending",
"retry_scheduled",
"failed",
"unconfirmed",
"confirmed",
"unpublished_cancelled"
]
},
"retry_at": {
"anyOf": [
{
"type": "string",
"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))$",
"format": "date-time"
},
{
"type": "null"
}
]
}
},
"required": [
"state",
"retry_at"
]
},
"published_at": {
"type": [
"string",
"null"
]
},
"deleted_at": {
"type": [
"string",
"null"
]
},
"provider_post_id": {
"type": [
"string",
"null"
]
},
"permalink": {
"anyOf": [
{
"type": "string",
"format": "uri"
},
{
"type": "null"
}
]
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"project_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"
}
]
},
"batch_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"
}
]
},
"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"
]
},
{
"type": "null"
}
]
},
"retry_allowed": {
"type": "boolean"
}
},
"required": [
"item_id",
"ordinal",
"draft",
"predecessor_post_id",
"post",
"retry_allowed"
]
}
},
"expected_versions": {
"type": "object",
"propertyNames": {
"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}$"
},
"additionalProperties": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"actions": {
"minItems": 2,
"maxItems": 2,
"type": "array",
"items": {
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"resume",
"cancel"
]
},
"allowed": {
"type": "boolean"
},
"reason_code": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"message": {
"type": "string",
"maxLength": 1000
}
},
"required": [
"action",
"allowed",
"reason_code",
"message"
]
}
}
},
"required": [
"workspace_id",
"id",
"social_account_id",
"version",
"state",
"item_count",
"caption_preview",
"created_at",
"updated_at",
"items",
"expected_versions",
"actions"
]
},
"replayed": {
"type": "boolean"
}
},
"required": [
"sequence"
]
}오류 및 안전한 재시도
HTTP 상태와 응답 본문을 확인하세요. 400 검증 오류에는 ZodError가 포함될 수 있으며, 핸들러 오류는 error, message, code 필드를 사용합니다. 진단용 request_id 또는 x-request-id를 자격 증명 없이 보관하세요. 401/403 접근 오류는 재시도 전에 해결하고 429에는 Retry-After를 따르세요. 쓰기 결과가 불확실하거나 5xx를 반환하면 먼저 기존 결과를 읽으세요. 지원하는 작업에서만 멱등성 키를 재사용하세요. 재시도 동작은 작업마다 다르며 정확히 한 번 전송을 보장하지 않습니다.
문제 해결 안내예제
예제는 스키마로 확인한 가상 값을 사용합니다. ID를 사용 권한이 있는 값으로, 미디어를 준비된 에셋으로, 날짜를 확인된 게시 시각으로 바꾸세요. 쓰기 제출 전에 계정 적격성을 확인하세요. 이 페이지는 API 요청을 보내지 않습니다.
서버에서 SOSOAPI_ACCESS_TOKEN에 이 작업이 허용하는 자격 증명을 설정하고 브라우저 코드에 넣지 마세요. AI 에이전트는 sosoapi auth login으로 브라우저 로그인하며 CLI가 자격 증명을 갱신하게 하세요.
request.json
{
"workspace_id": "11111111-1111-4111-8111-111111111111",
"id": "33333333-3333-4333-8333-333333333333",
"expected_version": 2,
"expected_versions": {
"90000000-0000-4000-8000-000000000001": 2,
"90000000-0000-4000-8000-000000000002": 2
}
}cURL
curl --request POST \
"https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/threads-sequences/cancel" \
-H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
--data-binary @request.jsonJavaScript
// 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/threads-sequences/cancel", {
method: "POST",
headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
body: JSON.stringify({
"workspace_id": "11111111-1111-4111-8111-111111111111",
"id": "33333333-3333-4333-8333-333333333333",
"expected_version": 2,
"expected_versions": {
"90000000-0000-4000-8000-000000000001": 2,
"90000000-0000-4000-8000-000000000002": 2
}
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.CLI
npx sosoapi api post /studio-api/threads-sequences/cancel < request.json합성 응답 예제
{
"sequence": {
"id": "33333333-3333-4333-8333-333333333333",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"social_account_id": "22222222-2222-4222-8222-222222222222",
"version": 3,
"state": "cancelled",
"item_count": 2,
"caption_preview": "A fictional announcement.",
"created_at": "2099-01-14T09:00:00Z",
"updated_at": "2099-01-14T09:00:00Z",
"items": [
{
"item_id": "80000000-0000-4000-8000-000000000001",
"ordinal": 1,
"draft": {
"id": "70000000-0000-4000-8000-000000000001",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"revision": 3,
"state": "submitted",
"content": {
"schemaVersion": 1,
"accountIds": [
"22222222-2222-4222-8222-222222222222"
],
"caption": "A fictional announcement.",
"hashtags": "",
"assetIds": [],
"threadsTextOnly": false,
"threadsOptions": {
"post_type": "TEXT"
},
"instagramMode": "REELS",
"youtubeTitle": "",
"youtubePrivacy": "private",
"youtubeSynthetic": false,
"youtubeCategoryId": "",
"youtubeShort": false,
"linkUrl": "",
"scheduledAt": "2099-01-15T09:00:00Z",
"displayTimezone": "UTC",
"publishNow": false,
"destinationOverrides": {},
"expiresAt": ""
},
"created_by": null,
"updated_by": null,
"created_at": "2099-01-14T09:00:00Z",
"updated_at": "2099-01-14T09:00:00Z",
"submission": {
"id": "60000000-0000-4000-8000-000000000031",
"expected_revision": 1,
"started_at": "2099-01-14T09:00:00Z",
"receipt": {
"batch_id": "50000000-0000-4000-8000-000000000001",
"successes": [
{
"social_account_id": "22222222-2222-4222-8222-222222222222",
"post_id": "90000000-0000-4000-8000-000000000001"
}
],
"failures": []
}
}
},
"predecessor_post_id": null,
"post": {
"id": "90000000-0000-4000-8000-000000000001",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"social_account_id": "22222222-2222-4222-8222-222222222222",
"platform": "threads",
"destination": {
"social_account_id": "22222222-2222-4222-8222-222222222222",
"platform": "threads",
"platform_user_id": "12345",
"account_label": "Fictional Threads account"
},
"caption": "A fictional announcement.",
"hashtags": [],
"media": [],
"publish_options": {
"post_type": "TEXT"
},
"scheduled_at": "2099-01-15T09:00:00Z",
"display_timezone": "UTC",
"expires_at": null,
"status": "cancelled",
"version": 3,
"automatic_retry_enabled": false,
"delete_requested_at": null,
"published_at": null,
"deleted_at": null,
"provider_post_id": null,
"permalink": null,
"project_id": null,
"batch_id": "50000000-0000-4000-8000-000000000001",
"source_ref": null,
"created_at": "2099-01-14T09:00:00Z",
"updated_at": "2099-01-14T09:00:00Z"
},
"retry_allowed": false
},
{
"item_id": "80000000-0000-4000-8000-000000000002",
"ordinal": 2,
"draft": {
"id": "70000000-0000-4000-8000-000000000002",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"revision": 3,
"state": "submitted",
"content": {
"schemaVersion": 1,
"accountIds": [
"22222222-2222-4222-8222-222222222222"
],
"caption": "A fictional first reply.",
"hashtags": "",
"assetIds": [],
"threadsTextOnly": false,
"threadsOptions": {
"post_type": "TEXT"
},
"instagramMode": "REELS",
"youtubeTitle": "",
"youtubePrivacy": "private",
"youtubeSynthetic": false,
"youtubeCategoryId": "",
"youtubeShort": false,
"linkUrl": "",
"scheduledAt": "2099-01-15T09:00:00Z",
"displayTimezone": "UTC",
"publishNow": false,
"destinationOverrides": {},
"expiresAt": ""
},
"created_by": null,
"updated_by": null,
"created_at": "2099-01-14T09:00:00Z",
"updated_at": "2099-01-14T09:00:00Z",
"submission": {
"id": "60000000-0000-4000-8000-000000000032",
"expected_revision": 1,
"started_at": "2099-01-14T09:00:00Z",
"receipt": {
"batch_id": "50000000-0000-4000-8000-000000000002",
"successes": [
{
"social_account_id": "22222222-2222-4222-8222-222222222222",
"post_id": "90000000-0000-4000-8000-000000000002"
}
],
"failures": []
}
}
},
"predecessor_post_id": "90000000-0000-4000-8000-000000000001",
"post": {
"id": "90000000-0000-4000-8000-000000000002",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"social_account_id": "22222222-2222-4222-8222-222222222222",
"platform": "threads",
"destination": {
"social_account_id": "22222222-2222-4222-8222-222222222222",
"platform": "threads",
"platform_user_id": "12345",
"account_label": "Fictional Threads account"
},
"caption": "A fictional first reply.",
"hashtags": [],
"media": [],
"publish_options": {
"post_type": "TEXT"
},
"scheduled_at": "2099-01-15T09:00:00Z",
"display_timezone": "UTC",
"expires_at": null,
"status": "cancelled",
"version": 3,
"automatic_retry_enabled": false,
"delete_requested_at": null,
"published_at": null,
"deleted_at": null,
"provider_post_id": null,
"permalink": null,
"project_id": null,
"batch_id": "50000000-0000-4000-8000-000000000002",
"source_ref": null,
"created_at": "2099-01-14T09:00:00Z",
"updated_at": "2099-01-14T09:00:00Z"
},
"retry_allowed": false
}
],
"expected_versions": {
"90000000-0000-4000-8000-000000000001": 3,
"90000000-0000-4000-8000-000000000002": 3
},
"actions": [
{
"action": "resume",
"allowed": false,
"reason_code": "no_failed_items",
"message": "No safe failed suffix is present in this fictional snapshot."
},
{
"action": "cancel",
"allowed": false,
"reason_code": "already_cancelled",
"message": "Only unsent items can be cancelled; published content stays in place."
}
]
},
"replayed": false
}