Rascunho e agendado são estados de espera
draft aguarda aprovação manual. scheduled aguarda o instante ou o próximo horário de fila configurado. Nenhum dos dois tentou entregar nada ainda.
Um post criado pela API do PostGate não vira "publicado" no instante da chamada — ele passa por rascunho, agendamento, processamento e só então chega a um resultado final por destino: publicado, parcial ou falhou. Cada etapa fica visível, com evidência, em vez de um único status genérico que esconde o que aconteceu de verdade em cada rede social.
draft aguarda aprovação manual. scheduled aguarda o instante ou o próximo horário de fila configurado. Nenhum dos dois tentou entregar nada ainda.
processing significa que pelo menos um destino está em andamento. Cada perfil evolui por pending, media_ready, publishing e, às vezes, reconciling ou retry_scheduled.
Um post partial tem pelo menos um destino publicado e pelo menos um que falhou ou foi ignorado. Guarde os links de quem publicou e trate apenas os destinos que falharam — o post inteiro não precisa ser refeito.
A resposta da criação é a aceitação do pedido, não a prova de publicação. Consulte o post depois, ou melhor ainda, assine um webhook para ser avisado quando cada destino chegar a um estado terminal, sem precisar ficar consultando em loop.
Ver a referência de status/api/posts/{id}200 OKcurl https://postgate.studio/api/posts/post_01JXYZ \
-H "Authorization: Bearer $POSTGATE_API_KEY"
{
"id": "post_01JXYZ",
"status": "partial",
"targets": [
{ "profile_id": "pro_instagram123", "status": "published",
"permalink": "https://instagram.com/p/xyz" },
{ "profile_id": "pro_linkedin456", "status": "failed",
"error": { "code": "profile_disconnected", "retryable": false } }
]
}Estruture um fluxo onde o cliente aprova antes de ir ao ar. Veja aprovação de posts para cliente.
Use os logs de entrega para correlacionar tentativas com o X-Request-Id da resposta. Veja como criar o post em primeiro lugar na API para postar em redes sociais.
O ID retornado pela própria rede social é a prova, não apenas um HTTP 200 da API. Veja comprovante de publicação via API.