A busca carrega apenas quando você a usa. Explore todas as categorias abaixo.

Agendamento e publicação

Salvar fila de conteúdo do Threads

Salvar horários versionados, estado de pausa e IDs de rascunhos pendentes. A pausa preserva agendamentos aceitos.

POST /studio-api/threads-content-queues/save

Contrato revisado: · sha256:11debf801a5e6096

Visão geral

Salvar horários versionados, estado de pausa e IDs de rascunhos pendentes. A pausa preserva agendamentos aceitos.

Uma resposta HTTP bem-sucedida pode significar que uma requisição foi aceita, não concluída. Para trabalho em segundo plano, salve o ID retornado e consulte a mesma operação até terminar. Um post agendado ou aceito só está publicado quando a plataforma confirma; um timeout do cliente não comprova o resultado.

Autenticação e permissões

Classes de credenciais aceitas
user_session, delegated_oauth, personal_access_token
Capacidade delegada
agent:operate
Função mínima no workspace
editor
Escopo de acesso
Recursos que este usuário tem autorização para acessar
Consentimento para todos os workspaces obrigatório
Não
Altera o estado
Sim
Quando a operação estiver concluída
versioned queue configuration/pending references; pause and deletion preserve all accepted schedules and receipts

Um token só pode usar os direitos do seu proprietário. Cada requisição verifica participação no workspace, propriedade de recursos, workspaces selecionados e capacidades concedidas. Os perfis core e full mudam as ferramentas exibidas; não concedem acesso.

Campos da requisição

Obrigatório significa obrigatório dentro do objeto pai e da ramificação selecionada. Um filho obrigatório não torna obrigatório um pai opcional. As regras e nomes de campos abaixo são copiados do contrato.

Campos da requisição
Campo / ramificaçãoTipo / obrigatórioRestrições
$objectObrigatório no objeto pai
  • additionalProperties: false
workspace_idstringObrigatório no objeto pai
  • 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)$"
idstringObrigatório no objeto pai
  • 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_versionintegerObrigatório no objeto pai
  • minimum: 0
  • maximum: 9007199254740991
mutation_idstringObrigatório no objeto pai
  • 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_idstringObrigatório no objeto pai
  • 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)$"
namestringObrigatório no objeto pai
  • minLength: 1
  • maxLength: 120
display_timezonestringObrigatório no objeto pai
  • minLength: 1
  • maxLength: 80
weekly_slotsarrayObrigatório no objeto pai
  • minItems: 1
  • maxItems: 49
weekly_slots[]objectOpcional / item
  • additionalProperties: false
weekly_slots[].weekdayintegerObrigatório no objeto pai
  • minimum: 0
  • maximum: 6
weekly_slots[].local_timestringObrigatório no objeto pai
  • pattern: "^([01]\\d|2[0-3]):[0-5]\\d$"
pausedbooleanObrigatório no objeto pai—
pending_itemsarrayObrigatório no objeto pai
  • maxItems: 50
pending_items[]objectOpcional / item
  • additionalProperties: false
pending_items[].item_idstringObrigatório no objeto pai
  • 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)$"
pending_items[].draft_idstringObrigatório no objeto pai
  • 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)$"
pending_items[].draft_revisionintegerObrigatório no objeto pai
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
JSON Schema completo
{
  "$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",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "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)$"
    },
    "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)$"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "display_timezone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80
    },
    "weekly_slots": {
      "minItems": 1,
      "maxItems": 49,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "weekday": {
            "type": "integer",
            "minimum": 0,
            "maximum": 6
          },
          "local_time": {
            "type": "string",
            "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
          }
        },
        "required": [
          "weekday",
          "local_time"
        ],
        "additionalProperties": false
      }
    },
    "paused": {
      "type": "boolean"
    },
    "pending_items": {
      "maxItems": 50,
      "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)$"
          },
          "draft_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)$"
          },
          "draft_revision": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "item_id",
          "draft_id",
          "draft_revision"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "workspace_id",
    "id",
    "expected_version",
    "mutation_id",
    "social_account_id",
    "name",
    "display_timezone",
    "weekly_slots",
    "paused",
    "pending_items"
  ],
  "additionalProperties": false
}

Resposta e conclusão

Códigos HTTP de sucesso: 200. Quando a operação estiver concluída: versioned queue configuration/pending references; pause and deletion preserve all accepted schedules and receipts.

Uma resposta HTTP bem-sucedida pode significar que uma requisição foi aceita, não concluída. Para trabalho em segundo plano, salve o ID retornado e consulte a mesma operação até terminar. Um post agendado ou aceito só está publicado quando a plataforma confirma; um timeout do cliente não comprova o resultado.

Obrigatório significa obrigatório dentro do objeto pai e da ramificação selecionada. Um filho obrigatório não torna obrigatório um pai opcional. As regras e nomes de campos abaixo são copiados do contrato.

Resposta e conclusão
Campo / ramificaçãoTipo / obrigatórioRestrições
$objectObrigatório no objeto pai—
queueobjectObrigatório no objeto pai—
queue.idstringObrigatório no objeto pai
  • 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)$"
queue.workspace_idstringObrigatório no objeto pai
  • 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)$"
queue.social_account_idstringObrigatório no objeto pai
  • 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)$"
queue.namestringObrigatório no objeto pai
  • minLength: 1
  • maxLength: 120
queue.display_timezonestringObrigatório no objeto pai
  • minLength: 1
  • maxLength: 80
queue.weekly_slotsarrayObrigatório no objeto pai
  • minItems: 1
  • maxItems: 49
queue.weekly_slots[]objectOpcional / item—
queue.weekly_slots[].weekdayintegerObrigatório no objeto pai
  • minimum: 0
  • maximum: 6
queue.weekly_slots[].local_timestringObrigatório no objeto pai
  • pattern: "^([01]\\d|2[0-3]):[0-5]\\d$"
queue.pausedbooleanObrigatório no objeto pai—
queue.deletedbooleanObrigatório no objeto pai—
queue.versionintegerObrigatório no objeto pai
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
queue.created_atstringObrigatório no objeto pai
  • 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)))$"
queue.updated_atstringObrigatório no objeto pai
  • 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)))$"
queue.pending_itemsarrayObrigatório no objeto pai
  • maxItems: 50
queue.pending_items[]objectOpcional / item—
queue.pending_items[].item_idstringObrigatório no objeto pai
  • 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)$"
queue.pending_items[].draft_idstringObrigatório no objeto pai
  • 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)$"
queue.pending_items[].draft_revisionintegerObrigatório no objeto pai
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
queue.pending_items[].current_revisioninteger | nullObrigatório no objeto pai—
queue.pending_items[].current_revisionanyOf 1integerObrigatório no objeto pai
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
queue.pending_items[].current_revisionanyOf 2nullObrigatório no objeto pai—
queue.pending_items[].draft_statestring | nullObrigatório no objeto pai—
queue.pending_items[].draft_stateanyOf 1stringObrigatório no objeto pai
  • enum: ["draft","submitting","submitted"]
queue.pending_items[].draft_stateanyOf 2nullObrigatório no objeto pai—
queue.pending_items[].caption_previewstringObrigatório no objeto pai
  • maxLength: 500
queue.allocationsarrayObrigatório no objeto pai
  • maxItems: 50
queue.allocations[]objectOpcional / item—
queue.allocations[].idstringObrigatório no objeto pai
  • 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)$"
queue.allocations[].item_idstringObrigatório no objeto pai
  • 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)$"
queue.allocations[].draft_idstringObrigatório no objeto pai
  • 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)$"
queue.allocations[].draft_revisionintegerObrigatório no objeto pai
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
queue.allocations[].mutation_idstringObrigatório no objeto pai
  • 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)$"
queue.allocations[].slotobjectObrigatório no objeto pai—
queue.allocations[].slot.scheduled_atstringObrigatório no objeto pai
  • 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)))$"
queue.allocations[].slot.local_datestringObrigatório no objeto pai
  • pattern: "^\\d{4}-\\d{2}-\\d{2}$"
queue.allocations[].slot.local_timestringObrigatório no objeto pai
  • pattern: "^([01]\\d|2[0-3]):[0-5]\\d$"
queue.allocations[].slot.utc_offset_minutesintegerObrigatório no objeto pai
  • minimum: -840
  • maximum: 840
queue.allocations[].slot.display_timezonestringObrigatório no objeto pai
  • minLength: 1
  • maxLength: 80
queue.allocations[].post_idstringObrigatório no objeto pai
  • 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}$"
queue.allocations[].accepted_atstringObrigatório no objeto pai
  • 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)))$"
replayedbooleanObrigatório no objeto pai—
JSON Schema completo
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "queue": {
      "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)$"
        },
        "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)$"
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 120
        },
        "display_timezone": {
          "type": "string",
          "minLength": 1,
          "maxLength": 80
        },
        "weekly_slots": {
          "minItems": 1,
          "maxItems": 49,
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "weekday": {
                "type": "integer",
                "minimum": 0,
                "maximum": 6
              },
              "local_time": {
                "type": "string",
                "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
              }
            },
            "required": [
              "weekday",
              "local_time"
            ]
          }
        },
        "paused": {
          "type": "boolean"
        },
        "deleted": {
          "type": "boolean"
        },
        "version": {
          "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"
        },
        "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"
        },
        "pending_items": {
          "maxItems": 50,
          "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)$"
              },
              "draft_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)$"
              },
              "draft_revision": {
                "type": "integer",
                "exclusiveMinimum": 0,
                "maximum": 9007199254740991
              },
              "current_revision": {
                "anyOf": [
                  {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "draft_state": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "draft",
                      "submitting",
                      "submitted"
                    ]
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "caption_preview": {
                "type": "string",
                "maxLength": 500
              }
            },
            "required": [
              "item_id",
              "draft_id",
              "draft_revision",
              "current_revision",
              "draft_state",
              "caption_preview"
            ]
          }
        },
        "allocations": {
          "maxItems": 50,
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
              },
              "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)$"
              },
              "draft_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)$"
              },
              "draft_revision": {
                "type": "integer",
                "exclusiveMinimum": 0,
                "maximum": 9007199254740991
              },
              "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)$"
              },
              "slot": {
                "type": "object",
                "properties": {
                  "scheduled_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"
                  },
                  "local_date": {
                    "type": "string",
                    "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
                  },
                  "local_time": {
                    "type": "string",
                    "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
                  },
                  "utc_offset_minutes": {
                    "type": "integer",
                    "minimum": -840,
                    "maximum": 840
                  },
                  "display_timezone": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 80
                  }
                },
                "required": [
                  "scheduled_at",
                  "local_date",
                  "local_time",
                  "utc_offset_minutes",
                  "display_timezone"
                ]
              },
              "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}$"
              },
              "accepted_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"
              }
            },
            "required": [
              "id",
              "item_id",
              "draft_id",
              "draft_revision",
              "mutation_id",
              "slot",
              "post_id",
              "accepted_at"
            ]
          }
        }
      },
      "required": [
        "id",
        "workspace_id",
        "social_account_id",
        "name",
        "display_timezone",
        "weekly_slots",
        "paused",
        "deleted",
        "version",
        "created_at",
        "updated_at",
        "pending_items",
        "allocations"
      ]
    },
    "replayed": {
      "type": "boolean"
    }
  },
  "required": [
    "queue",
    "replayed"
  ]
}

Erros e repetições seguras

Confira o status HTTP e o corpo da resposta. Um erro de validação 400 pode conter ZodError; erros do handler usam os campos error, message e code. Guarde request_id ou x-request-id para diagnóstico, sem credenciais. Corrija erros de acesso 401/403 antes de tentar novamente e siga Retry-After para 429. Se uma gravação for incerta ou retornar 5xx, consulte primeiro o resultado existente. Reutilize uma chave de idempotência somente quando houver suporte; o comportamento de repetição varia por operação e não garante entrega exatamente uma vez.

Guia de solução de problemas

Exemplos

Estes exemplos usam valores fictícios verificados conforme os schemas. Substitua os IDs por aqueles que você tem autorização para usar, a mídia por ativos prontos e as datas pelo horário de publicação confirmado. Confira a elegibilidade da conta antes de enviar uma gravação. Esta página não envia requisições de API.

Defina SOSOAPI_ACCESS_TOKEN no servidor como uma credencial aceita por esta operação e mantenha-a fora do código do navegador. Para agentes de IA, use sosoapi auth login para entrar pelo navegador e deixe a CLI renovar suas credenciais.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "id": "44444444-4444-4444-8444-444444444444",
  "expected_version": 0,
  "mutation_id": "60000000-0000-4000-8000-000000000020",
  "social_account_id": "22222222-2222-4222-8222-222222222222",
  "name": "Fictional weekly ideas",
  "display_timezone": "UTC",
  "weekly_slots": [
    {
      "weekday": 4,
      "local_time": "09:00"
    }
  ],
  "paused": false,
  "pending_items": [
    {
      "item_id": "80000000-0000-4000-8000-000000000003",
      "draft_id": "70000000-0000-4000-8000-000000000003",
      "draft_revision": 1
    }
  ]
}

cURL

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

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/threads-content-queues/save", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "id": "44444444-4444-4444-8444-444444444444",
  "expected_version": 0,
  "mutation_id": "60000000-0000-4000-8000-000000000020",
  "social_account_id": "22222222-2222-4222-8222-222222222222",
  "name": "Fictional weekly ideas",
  "display_timezone": "UTC",
  "weekly_slots": [
    {
      "weekday": 4,
      "local_time": "09:00"
    }
  ],
  "paused": false,
  "pending_items": [
    {
      "item_id": "80000000-0000-4000-8000-000000000003",
      "draft_id": "70000000-0000-4000-8000-000000000003",
      "draft_revision": 1
    }
  ]
})
});
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-content-queues/save < request.json

Exemplo de resposta sintética

{
  "queue": {
    "id": "44444444-4444-4444-8444-444444444444",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "social_account_id": "22222222-2222-4222-8222-222222222222",
    "name": "Fictional weekly ideas",
    "display_timezone": "UTC",
    "weekly_slots": [
      {
        "weekday": 4,
        "local_time": "09:00"
      }
    ],
    "paused": false,
    "deleted": false,
    "version": 1,
    "created_at": "2099-01-14T09:00:00Z",
    "updated_at": "2099-01-14T09:00:00Z",
    "pending_items": [
      {
        "item_id": "80000000-0000-4000-8000-000000000003",
        "draft_id": "70000000-0000-4000-8000-000000000003",
        "draft_revision": 1,
        "current_revision": 1,
        "draft_state": "draft",
        "caption_preview": "A fictional announcement."
      }
    ],
    "allocations": []
  },
  "replayed": false
}

MCP: sosoapi_save_threads_content_queue