Preferensi privasi

Fitur wajib

Diperlukan untuk keamanan dan fungsi dasar situs.

Selalu aktif

Analitik penggunaan opsional

Izinkan analitik penggunaan PostHog? Ubah pilihan Anda kapan saja di footer.

Izinkan juga pemutaran ulang sesi di situs web publik ini

Pemutaran ulang menampilkan halaman publik dan interaksi, dengan input serta konten pribadi disamarkan. Pemutaran ulang di App merupakan pilihan terpisah.

Memerlukan analitik; pemutaran ulang situs nonaktif secara default.

Analitik browser tidak mengaktifkan analitik akun.

Pencarian hanya dimuat saat digunakan. Jelajahi semua kategori di bawah.

Research dan ringkasan bersitasi

Baca asal-usul serah terima riset

Baca tanda terima serah terima Draf berdasarkan mutation_id; asal-usul bukan kewenangan publikasi atau hasil publikasi. Memerlukan agent:research.

POST /research-api/briefs/handoff/get

Kontrak ditinjau: · sha256:ab393e91e9b7f18a

Ringkasan

Baca tanda terima serah terima Draf berdasarkan mutation_id; asal-usul bukan kewenangan publikasi atau hasil publikasi. Memerlukan agent:research.

Respons HTTP berhasil dapat berarti permintaan diterima, bukan selesai. Untuk pekerjaan latar belakang, simpan ID yang dikembalikan dan periksa operasi yang sama sampai selesai. Postingan terjadwal atau diterima baru dipublikasikan setelah platform mengonfirmasi; timeout klien tidak membuktikan hasilnya.

Autentikasi dan izin

Jenis kredensial yang diterima
user_session, delegated_oauth, personal_access_token
Kemampuan yang didelegasikan
agent:research
Peran ruang kerja minimum
viewer
Cakupan akses
Sumber daya yang boleh diakses pengguna ini
Persetujuan seluruh ruang kerja diperlukan
Tidak
Mengubah status
Tidak
Saat operasi selesai
current authorized exact reviewed output/provenance; source changes can make it stale or unavailable

Token hanya dapat menggunakan hak pemiliknya. Setiap permintaan memeriksa keanggotaan ruang kerja, kepemilikan sumber daya, ruang kerja terpilih, dan kemampuan yang diberikan. Profil core dan full mengubah alat yang ditampilkan; tidak memberikan akses.

Kolom permintaan

Wajib berarti wajib dalam objek induk dan cabang yang dipilih. Anak wajib tidak membuat induk opsional menjadi wajib. Aturan dan nama kolom di bawah disalin dari kontrak.

Kolom permintaan
Kolom / cabangJenis / wajibBatasan
$objectWajib dalam induk
  • additionalProperties: false
workspace_idstringWajib dalam induk
  • 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)$"
mutation_idstringWajib dalam induk
  • 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)$"
JSON Schema lengkap
{
  "$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)$"
    },
    "mutation_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)$"
    }
  },
  "required": [
    "workspace_id",
    "mutation_id"
  ],
  "additionalProperties": false
}

Respons dan penyelesaian

Status HTTP berhasil: 200. Saat operasi selesai: current authorized exact reviewed output/provenance; source changes can make it stale or unavailable.

Respons HTTP berhasil dapat berarti permintaan diterima, bukan selesai. Untuk pekerjaan latar belakang, simpan ID yang dikembalikan dan periksa operasi yang sama sampai selesai. Postingan terjadwal atau diterima baru dipublikasikan setelah platform mengonfirmasi; timeout klien tidak membuktikan hasilnya.

Wajib berarti wajib dalam objek induk dan cabang yang dipilih. Anak wajib tidak membuat induk opsional menjadi wajib. Aturan dan nama kolom di bawah disalin dari kontrak.

Respons dan penyelesaian
Kolom / cabangJenis / wajibBatasan
$objectWajib dalam induk—
handoffobjectWajib dalam induk—
handoff.idstringWajib dalam induk
  • 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)$"
handoff.workspace_idstringWajib dalam induk
  • 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)$"
handoff.mutation_idstringWajib dalam induk
  • 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)$"
handoff.brief_idstringWajib dalam induk
  • 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)$"
handoff.brief_revisionintegerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
handoff.variantobjectWajib dalam induk—
handoff.variant.idstringWajib dalam induk
  • 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)$"
handoff.variant.revisionintegerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
handoff.variant.localestringWajib dalam induk
  • enum: ["en","zh-HK"]
handoff.draft_idstring | nullWajib dalam induk—
handoff.draft_idanyOf 1stringWajib dalam induk
  • 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)$"
handoff.draft_idanyOf 2nullWajib dalam induk—
handoff.draft_revisionintegerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
handoff.created_atstringWajib dalam induk
  • 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)))$"
handoff.evidencearrayWajib dalam induk
  • maxItems: 500
handoff.evidence[]objectOpsional / item—
handoff.evidence[].evidence_idstringWajib dalam induk
  • 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)$"
handoff.evidence[].revisionintegerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
handoff.locked_finding_idsarrayWajib dalam induk
  • maxItems: 100
handoff.locked_finding_ids[]stringOpsional / item
  • 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)$"
handoff.availabilitystringWajib dalam induk
  • enum: ["available","stale","unavailable"]
handoff.reasonsarrayWajib dalam induk
  • maxItems: 6
handoff.reasons[]stringOpsional / item
  • enum: ["source_unavailable","source_changed","brief_changed","variant_changed","draft_changed","draft_unavailable","not_reviewed"]
handoff.methodstringWajib dalam induk
  • const: "reviewed_manual_handoff/v1"
draftobject | nullWajib dalam induk—
draftanyOf 1objectWajib dalam induk—
draft.idanyOf 1stringWajib dalam induk
  • 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)$"
draft.workspace_idanyOf 1stringWajib dalam induk
  • 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)$"
draft.revisionanyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.stateanyOf 1stringWajib dalam induk
  • enum: ["draft","submitting","submitted"]
draft.contentanyOf 1objectWajib dalam induk—
draft.content.schemaVersionanyOf 1numberWajib dalam induk
  • const: 1
  • default: 1
draft.content.accountIdsanyOf 1arrayWajib dalam induk
  • maxItems: 50
  • default: []
draft.content.accountIds[]anyOf 1stringOpsional / item
  • 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)$"
draft.content.captionanyOf 1stringWajib dalam induk
  • maxLength: 5000
  • default: ""
draft.content.hashtagsanyOf 1stringWajib dalam induk
  • maxLength: 5000
  • default: ""
draft.content.assetIdsanyOf 1arrayWajib dalam induk
  • maxItems: 20
  • default: []
draft.content.assetIds[]anyOf 1stringOpsional / item
  • maxLength: 16
  • pattern: "^[1-9][0-9]*$"
draft.content.threadsTextOnlyanyOf 1booleanWajib dalam induk
  • default: false
draft.content.threadsOptionsanyOf 1objectOpsional / item—
draft.content.threadsOptions.post_typeanyOf 1stringOpsional / item
  • enum: ["TEXT","IMAGE","VIDEO","CAROUSEL","REPOST"]
draft.content.threadsOptions.reply_to_idanyOf 1stringOpsional / item
  • maxLength: 128
draft.content.threadsOptions.quote_post_idanyOf 1stringOpsional / item
  • maxLength: 128
draft.content.threadsOptions.repost_target_idanyOf 1stringOpsional / item
  • maxLength: 128
draft.content.threadsOptions.reply_controlanyOf 1stringOpsional / item
  • enum: ["everyone","accounts_you_follow","mentioned_only","parent_post_author_only","followers_only"]
draft.content.threadsOptions.enable_reply_approvalsanyOf 1booleanOpsional / item—
draft.content.threadsOptions.link_attachmentanyOf 1stringOpsional / item
  • maxLength: 2048
draft.content.threadsOptions.poll_attachmentanyOf 1objectOpsional / item—
draft.content.threadsOptions.poll_attachment.option_aanyOf 1stringWajib dalam induk
  • maxLength: 25
draft.content.threadsOptions.poll_attachment.option_banyOf 1stringWajib dalam induk
  • maxLength: 25
draft.content.threadsOptions.poll_attachment.option_canyOf 1stringOpsional / item
  • maxLength: 25
draft.content.threadsOptions.poll_attachment.option_danyOf 1stringOpsional / item
  • maxLength: 25
draft.content.threadsOptions.gif_attachmentanyOf 1objectOpsional / item—
draft.content.threadsOptions.gif_attachment.gif_idanyOf 1stringWajib dalam induk
  • maxLength: 128
draft.content.threadsOptions.gif_attachment.provideranyOf 1stringWajib dalam induk
  • const: "GIPHY"
draft.content.threadsOptions.text_attachmentanyOf 1objectOpsional / item—
draft.content.threadsOptions.text_attachment.plaintextanyOf 1stringWajib dalam induk
  • maxLength: 10000
draft.content.threadsOptions.text_attachment.link_attachment_urlanyOf 1stringOpsional / item
  • maxLength: 2048
draft.content.threadsOptions.text_attachment.text_with_styling_infoanyOf 1arrayOpsional / item
  • maxItems: 100
draft.content.threadsOptions.text_attachment.text_with_styling_info[]anyOf 1objectOpsional / item—
draft.content.threadsOptions.text_attachment.text_with_styling_info[].offsetanyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 9007199254740991
draft.content.threadsOptions.text_attachment.text_with_styling_info[].lengthanyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.content.threadsOptions.text_attachment.text_with_styling_info[].styling_infoanyOf 1arrayWajib dalam induk
  • minItems: 1
draft.content.threadsOptions.text_attachment.text_with_styling_info[].styling_info[]anyOf 1stringOpsional / item
  • enum: ["bold","italic","highlight","underline","strikethrough"]
draft.content.threadsOptions.topic_taganyOf 1stringOpsional / item
  • maxLength: 50
draft.content.threadsOptions.text_entitiesanyOf 1arrayOpsional / item
  • maxItems: 10
draft.content.threadsOptions.text_entities[]anyOf 1objectOpsional / item—
draft.content.threadsOptions.text_entities[].entity_typeanyOf 1stringWajib dalam induk
  • enum: ["SPOILER","spoiler"]
draft.content.threadsOptions.text_entities[].offsetanyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 9007199254740991
draft.content.threadsOptions.text_entities[].lengthanyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.content.threadsOptions.is_spoiler_mediaanyOf 1booleanOpsional / item—
draft.content.threadsOptions.is_ghost_postanyOf 1booleanOpsional / item—
draft.content.threadsOptions.location_idanyOf 1stringOpsional / item
  • maxLength: 128
draft.content.threadsOptions.allowlisted_country_codesanyOf 1arrayOpsional / item
  • minItems: 1
  • maxItems: 249
draft.content.threadsOptions.allowlisted_country_codes[]anyOf 1stringOpsional / item
  • pattern: "^[A-Z]{2}$"
draft.content.threadsOptions.crossreshare_to_iganyOf 1booleanOpsional / item—
draft.content.threadsOptions.crossreshare_to_ig_dark_modeanyOf 1booleanOpsional / item—
draft.content.threadsOptions.auto_publish_textanyOf 1booleanOpsional / item—
draft.content.threadsOptions.media_optionsanyOf 1arrayOpsional / item
  • maxItems: 20
draft.content.threadsOptions.media_options[]anyOf 1objectOpsional / item—
draft.content.threadsOptions.media_options[].asset_idanyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.content.threadsOptions.media_options[].alt_textanyOf 1stringOpsional / item
  • minLength: 1
  • maxLength: 1000
draft.content.threadsOptions.media_options[].is_spoiler_mediaanyOf 1booleanOpsional / item—
draft.content.instagramModeanyOf 1stringWajib dalam induk
  • enum: ["IMAGE","REELS","CAROUSEL","STORY_IMAGE","STORY_VIDEO"]
  • default: "REELS"
draft.content.youtubeTitleanyOf 1stringWajib dalam induk
  • maxLength: 100
  • default: ""
draft.content.youtubePrivacyanyOf 1stringWajib dalam induk
  • enum: ["private","unlisted","public"]
  • default: "private"
draft.content.youtubeSyntheticanyOf 1booleanWajib dalam induk
  • default: false
draft.content.youtubeCategoryIdanyOf 1stringWajib dalam induk
  • maxLength: 32
  • default: ""
draft.content.youtubeShortanyOf 1booleanWajib dalam induk
  • default: false
draft.content.linkUrlanyOf 1stringWajib dalam induk
  • maxLength: 2048
  • default: ""
draft.content.scheduledAtanyOf 1stringWajib dalam induk
  • maxLength: 64
  • default: ""
draft.content.displayTimezoneanyOf 1stringWajib dalam induk
  • minLength: 1
  • maxLength: 128
  • default: "UTC"
draft.content.publishNowanyOf 1booleanWajib dalam induk
  • default: false
draft.content.destinationOverridesanyOf 1objectWajib dalam induk
  • default: {}
  • additionalProperties: {"type":"object","properties":{"caption":{"type":"string","maxLength":5000},"scheduledAt":{"type":"string","maxLength":64}}}
draft.content.destinationOverrides.*anyOf 1objectOpsional / item—
draft.content.destinationOverrides.*.captionanyOf 1stringOpsional / item
  • maxLength: 5000
draft.content.destinationOverrides.*.scheduledAtanyOf 1stringOpsional / item
  • maxLength: 64
draft.content.expiresAtanyOf 1stringWajib dalam induk
  • maxLength: 64
  • default: ""
draft.created_byanyOf 1string | nullWajib dalam induk—
draft.created_byanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.created_byanyOf 1 / anyOf 2nullWajib dalam induk—
draft.updated_byanyOf 1string | nullWajib dalam induk—
draft.updated_byanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.updated_byanyOf 1 / anyOf 2nullWajib dalam induk—
draft.created_atanyOf 1stringWajib dalam induk
  • 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)))$"
draft.updated_atanyOf 1stringWajib dalam induk
  • 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)))$"
draft.submissionanyOf 1object | nullWajib dalam induk—
draft.submissionanyOf 1 / anyOf 1objectWajib dalam induk—
draft.submission.idanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.submission.expected_revisionanyOf 1 / anyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.submission.started_atanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)))$"
draft.submission.receiptanyOf 1 / anyOf 1object | nullWajib dalam induk—
draft.submission.receiptanyOf 1 / anyOf 1 / anyOf 1objectWajib dalam induk—
draft.submission.receipt.batch_idanyOf 1 / anyOf 1 / anyOf 1string | nullWajib dalam induk—
draft.submission.receipt.batch_idanyOf 1 / anyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.submission.receipt.batch_idanyOf 1 / anyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.submission.receipt.successesanyOf 1 / anyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 50
draft.submission.receipt.successes[]anyOf 1 / anyOf 1 / anyOf 1objectOpsional / item—
draft.submission.receipt.successes[].social_account_idanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.submission.receipt.successes[].post_idanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • 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}$"
draft.submission.receipt.failuresanyOf 1 / anyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 50
draft.submission.receipt.failures[]anyOf 1 / anyOf 1 / anyOf 1objectOpsional / item—
draft.submission.receipt.failures[].social_account_idanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.submission.receipt.failures[].codeanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • minLength: 1
  • maxLength: 160
draft.submission.receipt.failures[].messageanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • maxLength: 2000
draft.submission.receiptanyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.submissionanyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_contextanyOf 1object | nullOpsional / item—
draft.brand_contextanyOf 1 / anyOf 1objectOpsional / item—
draft.brand_context.workspace_idanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.brand_context.selectionanyOf 1 / anyOf 1objectWajib dalam induk—
draft.brand_context.selection.profile_idanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.brand_context.selection.version_idanyOf 1 / anyOf 1stringWajib dalam induk
  • 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)$"
draft.brand_context.selection.revisionanyOf 1 / anyOf 1integerWajib dalam induk
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
draft.brand_context.selection.content_digestanyOf 1 / anyOf 1stringWajib dalam induk
  • pattern: "^[a-f0-9]{64}$"
draft.brand_context.selection.context_digestanyOf 1 / anyOf 1stringWajib dalam induk
  • pattern: "^[a-f0-9]{64}$"
draft.brand_context.availabilityanyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["available","missing"]
draft.brand_context.profile_stateanyOf 1 / anyOf 1string | nullWajib dalam induk—
draft.brand_context.profile_stateanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["active","archived"]
draft.brand_context.profile_stateanyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_context.contentanyOf 1 / anyOf 1object | nullWajib dalam induk—
draft.brand_context.contentanyOf 1 / anyOf 1 / anyOf 1objectWajib dalam induk—
draft.brand_context.content.nameanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • maxLength: 120
draft.brand_context.content.audienceanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • maxLength: 2000
draft.brand_context.content.voiceanyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • maxLength: 2000
draft.brand_context.content.languageanyOf 1 / anyOf 1 / anyOf 1string | nullWajib dalam induk—
draft.brand_context.content.languageanyOf 1 / anyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • minLength: 1
  • maxLength: 64
draft.brand_context.content.languageanyOf 1 / anyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_context.content.preferred_termsanyOf 1 / anyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 50
draft.brand_context.content.preferred_terms[]anyOf 1 / anyOf 1 / anyOf 1stringOpsional / item
  • minLength: 1
  • maxLength: 120
draft.brand_context.content.prohibited_termsanyOf 1 / anyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 50
draft.brand_context.content.prohibited_terms[]anyOf 1 / anyOf 1 / anyOf 1stringOpsional / item
  • minLength: 1
  • maxLength: 120
draft.brand_context.content.locked_factsanyOf 1 / anyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 50
draft.brand_context.content.locked_facts[]anyOf 1 / anyOf 1 / anyOf 1stringOpsional / item
  • minLength: 1
  • maxLength: 500
draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 / anyOf 1string | nullWajib dalam induk—
draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 / anyOf 1 / anyOf 1stringWajib dalam induk
  • maxLength: 1000
draft.brand_context.content.call_to_actionanyOf 1 / anyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_context.contentanyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_context.sourcesanyOf 1 / anyOf 1objectWajib dalam induk—
draft.brand_context.sources.websiteanyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["available","not_available"]
draft.brand_context.sources.logoanyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["none","present","missing"]
draft.brand_context.sources.own_postsanyOf 1 / anyOf 1objectWajib dalam induk—
draft.brand_context.sources.own_posts.selectedanyOf 1 / anyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 10
draft.brand_context.sources.own_posts.availableanyOf 1 / anyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 10
draft.brand_context.sources.own_posts.unavailableanyOf 1 / anyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 10
draft.brand_context.sources.own_posts.erasedanyOf 1 / anyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 10
draft.brand_contextanyOf 1 / anyOf 2nullOpsional / item—
draft.brand_reviewanyOf 1object | nullOpsional / item—
draft.brand_reviewanyOf 1 / anyOf 1objectOpsional / item—
draft.brand_review.rule_versionanyOf 1 / anyOf 1numberWajib dalam induk
  • const: 1
draft.brand_review.context_digestanyOf 1 / anyOf 1stringWajib dalam induk
  • pattern: "^[a-f0-9]{64}$"
draft.brand_review.content_digestanyOf 1 / anyOf 1stringWajib dalam induk
  • pattern: "^[a-f0-9]{64}$"
draft.brand_review.statusanyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["clear","attention","unavailable"]
draft.brand_review.issuesanyOf 1 / anyOf 1arrayWajib dalam induk
  • maxItems: 5151
draft.brand_review.issues[]anyOf 1 / anyOf 1objectOpsional / item—
draft.brand_review.issues[].codeanyOf 1 / anyOf 1stringWajib dalam induk
  • enum: ["prohibited_term","locked_fact_missing","conflicting_rule","context_unavailable"]
draft.brand_review.issues[].targetanyOf 1 / anyOf 1stringWajib dalam induk
  • minLength: 1
  • maxLength: 80
draft.brand_review.issues[].rule_indexanyOf 1 / anyOf 1integer | nullWajib dalam induk—
draft.brand_review.issues[].rule_indexanyOf 1 / anyOf 1 / anyOf 1integerWajib dalam induk
  • minimum: 0
  • maximum: 49
draft.brand_review.issues[].rule_indexanyOf 1 / anyOf 1 / anyOf 2nullWajib dalam induk—
draft.brand_review.issues[].messageanyOf 1 / anyOf 1stringWajib dalam induk
  • minLength: 1
  • maxLength: 240
draft.brand_reviewanyOf 1 / anyOf 2nullOpsional / item—
draftanyOf 2nullWajib dalam induk—
JSON Schema lengkap
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "handoff": {
      "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)$"
        },
        "mutation_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)$"
        },
        "brief_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)$"
        },
        "brief_revision": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "variant": {
          "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)$"
            },
            "revision": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "locale": {
              "type": "string",
              "enum": [
                "en",
                "zh-HK"
              ]
            }
          },
          "required": [
            "id",
            "revision",
            "locale"
          ]
        },
        "draft_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"
            }
          ]
        },
        "draft_revision": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "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"
        },
        "evidence": {
          "maxItems": 500,
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "evidence_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
              }
            },
            "required": [
              "evidence_id",
              "revision"
            ]
          }
        },
        "locked_finding_ids": {
          "maxItems": 100,
          "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)$"
          }
        },
        "availability": {
          "type": "string",
          "enum": [
            "available",
            "stale",
            "unavailable"
          ]
        },
        "reasons": {
          "maxItems": 6,
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "source_unavailable",
              "source_changed",
              "brief_changed",
              "variant_changed",
              "draft_changed",
              "draft_unavailable",
              "not_reviewed"
            ]
          }
        },
        "method": {
          "type": "string",
          "const": "reviewed_manual_handoff/v1"
        }
      },
      "required": [
        "id",
        "workspace_id",
        "mutation_id",
        "brief_id",
        "brief_revision",
        "variant",
        "draft_id",
        "draft_revision",
        "created_at",
        "evidence",
        "locked_finding_ids",
        "availability",
        "reasons",
        "method"
      ]
    },
    "draft": {
      "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)$"
            },
            "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"
          ]
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "handoff",
    "draft"
  ]
}

Kesalahan dan percobaan ulang aman

Periksa status HTTP dan isi respons. Kesalahan validasi 400 mungkin berisi ZodError; kesalahan handler menggunakan kolom error, message, dan code. Simpan request_id atau x-request-id untuk diagnosis, tanpa kredensial. Atasi kesalahan akses 401/403 sebelum mencoba lagi, dan ikuti Retry-After untuk 429. Jika penulisan belum pasti atau mengembalikan 5xx, baca hasil yang sudah ada terlebih dahulu. Gunakan kembali kunci idempotensi hanya jika didukung; perilaku percobaan ulang berbeda menurut operasi dan tidak menjamin pengiriman tepat satu kali.

Panduan pemecahan masalah

Contoh

Contoh ini menggunakan nilai fiktif yang diperiksa terhadap skema. Ganti ID dengan yang diizinkan bagi Anda, media dengan aset siap, dan tanggal dengan waktu publikasi yang dikonfirmasi. Periksa kelayakan akun sebelum mengirim penulisan. Halaman ini tidak mengirim permintaan API.

Atur SOSOAPI_ACCESS_TOKEN di server Anda ke kredensial yang diterima operasi ini, dan jauhkan dari kode browser. Untuk agen AI, gunakan sosoapi auth login untuk masuk melalui browser dan biarkan CLI memperbarui kredensialnya.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "mutation_id": "11111111-1111-4111-8111-111111111111"
}

cURL

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

JavaScript

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

CLI

npx sosoapi api post /research-api/briefs/handoff/get < request.json

Contoh respons sintetis

{
  "handoff": {
    "id": "11111111-1111-4111-8111-111111111111",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "mutation_id": "11111111-1111-4111-8111-111111111111",
    "brief_id": "11111111-1111-4111-8111-111111111111",
    "brief_revision": 1,
    "variant": {
      "id": "11111111-1111-4111-8111-111111111111",
      "revision": 1,
      "locale": "en"
    },
    "draft_id": null,
    "draft_revision": 1,
    "created_at": "2099-01-15T09:00:00Z",
    "evidence": [],
    "locked_finding_ids": [],
    "availability": "available",
    "reasons": [],
    "method": "reviewed_manual_handoff/v1"
  },
  "draft": null
}

MCP: sosoapi_research_briefs_handoff_get