REST APIPOST

Verificar Agendamento em Massa

Faça um teste de um agendamento em massa: envie o mesmo corpo de Agendamento em Massa e receba um relatório por publicação, na ordem da requisição, sem criar nenhuma publicação.

POSThttps://post.adaptlypost.com/post/api/v1/social-posts/bulk/validate

Verifica um agendamento em massa inteiro sem criar nenhuma publicação. Envie o mesmo corpo de Agendamento em Massa e receba um relatório por publicação, na ordem da requisição.

Chave API (Bearer token)
Permissão:posts.draftPapéis e permissões

posts.draft basta para executar a verificação. requiredPermissions em cada relatório indica o que agendar aquela publicação exigiria.

Corpo da requisição

O mesmo corpo de Agendamento em Massa, com até 100 publicações. As configurações do lote valem para cada publicação e as de cada publicação as substituem, como no agendamento. Nada é criado ou salvo.

Campos da resposta

CampoDescrição
validtrue só quando todas as publicações são válidas
totalValidQuantas publicações não têm nenhum problema ERROR
totalInvalidQuantas publicações têm pelo menos um problema ERROR
resultsUma entrada por publicação como { index, report }. index é a posição da publicação em posts, começando em 0. report tem os mesmos campos da resposta de Verificar Publicação

Verifique antes de agendar

Agendamento em Massa agenda cada publicação válida mesmo quando outras falham. Corrija primeiro as publicações cujo relatório não é válido, e o lote inteiro sai como planejado.
Verificar um agendamento em massa
curl --request POST \
  --url https://post.adaptlypost.com/post/api/v1/social-posts/bulk/validate \
  --header 'Authorization: Bearer <api-key>' \
  --header 'Content-Type: application/json' \
  --data '{
    "platforms": ["TWITTER"],
    "timezone": "America/New_York",
    "twitterConnectionIds": ["conn_abc123"],
    "posts": [
      {
        "contentType": "TEXT",
        "text": "Tip of the week: batch your posts on Mondays.",
        "scheduledAt": "2026-11-02T14:00:00Z"
      },
      {
        "contentType": "TEXT",
        "text": "<a 320-character announcement>",
        "scheduledAt": "2026-11-04T14:00:00Z"
      }
    ]
  }'
200
{
  "valid": false,
  "totalValid": 1,
  "totalInvalid": 1,
  "results": [
    {
      "index": 0,
      "report": {
        "valid": true,
        "outcome": "SCHEDULED",
        "scheduledAt": "2026-11-02T14:00:00.000Z",
        "requiredPermissions": ["posts.schedule"],
        "issues": [],
        "accounts": [
          {
            "platform": "TWITTER",
            "connectionId": "conn_abc123",
            "accountName": "@yourhandle",
            "status": "READY",
            "issues": []
          }
        ],
        "notChecked": []
      }
    },
    {
      "index": 1,
      "report": {
        "valid": false,
        "outcome": "SCHEDULED",
        "scheduledAt": "2026-11-04T14:00:00.000Z",
        "requiredPermissions": ["posts.schedule"],
        "issues": [],
        "accounts": [
          {
            "platform": "TWITTER",
            "connectionId": "conn_abc123",
            "accountName": "@yourhandle",
            "status": "BLOCKED",
            "issues": [
              {
                "code": "TEXT_TOO_LONG",
                "severity": "ERROR",
                "message": "Text exceeds maximum length for Twitter/X. Maximum is 280 characters",
                "platform": "TWITTER",
                "connectionId": "conn_abc123"
              }
            ]
          }
        ],
        "notChecked": []
      }
    }
  ]
}