Agendamento em Massa
Agende até 100 publicações de redes sociais de uma vez com configurações específicas por plataforma na API.
https://post.adaptlypost.com/post/api/v1/social-posts/bulkAgende até 100 publicações de uma vez. Cada publicação pode ter seu próprio conteúdo, mídia e horário agendado, compartilhando as mesmas conexões de plataforma.
posts.schedule quando cada item tem um scheduledAt futuro. Se algum item tiver data atual ou passada, ele é publicado na hora e a chave exige também posts.publish. Chaves de Colaborador e Visualizador não conseguem agendar em massa.
Parâmetros do Corpo
| Parâmetro | Tipo | Descrição |
|---|---|---|
platformsOBRIGATÓRIO | PlatformType[] | Plataformas alvo para todas as publicações |
timezoneOBRIGATÓRIO | string | Fuso horário IANA para agendamento |
postsOBRIGATÓRIO | PostItem[] | Array de publicações a agendar (1-100) |
twitterConnectionIds | string[] | IDs de conexão da conta do Twitter |
linkedinConnectionIds | string[] | IDs de conexão da conta do LinkedIn |
instagramConnectionIds | string[] | IDs de conexão da conta do Instagram |
tiktokConnectionIds | string[] | IDs de conexão da conta do TikTok |
youtubeConnectionIds | string[] | IDs de conexão do canal do YouTube |
pinterestConnectionIds | string[] | IDs de conexão da conta do Pinterest |
blueskyConnectionIds | string[] | IDs de conexão da conta do Bluesky |
mastodonConnectionIds | string[] | IDs de conexão da conta do Mastodon |
googleBusinessConnectionIds | string[] | IDs de conexão dos locais do Perfil da Empresa no Google |
tumblrConnectionIds | string[] | IDs de conexão dos blogs do Tumblr |
telegramConnectionIds | string[] | IDs de conexão dos canais e grupos do Telegram |
threadsConnectionIds | string[] | IDs de conexão da conta do Threads |
pageIds | string[] | Páginas do Facebook onde publicar. Aceita o id da conta ou o pageId de /social-accounts |
pinterestConfigs | PinterestConfig[] | Configurações do Pinterest no nível do lote aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
tiktokConfigs | TikTokConfig[] | Configurações do TikTok no nível do lote aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
instagramConfigs | InstagramConfig[] | Configurações do Instagram no nível do lote aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
facebookConfigs | FacebookConfig[] | Configurações do Facebook no nível do lote aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
youtubeConfigs | YouTubeConfig[] | Configurações do YouTube no nível do lote aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
googleBusinessConfigs | GoogleBusinessConfig[] | Configurações do Perfil da Empresa no Google no nível do lote, aplicadas a todas as publicações. Consulte Configurações de Plataforma para o esquema |
tumblrConfigs | TumblrConfig[] | Configurações do Tumblr no nível do lote aplicadas a todos os posts. Veja Configurações de plataforma para o esquema |
Campos do Item de Publicação
Cada publicação no array pode ter seu próprio conteúdo, mídia e horário de agendamento.
Parâmetros do item de publicação
| Parâmetro | Tipo | Descrição |
|---|---|---|
contentTypeOBRIGATÓRIO | ContentType | Tipo de conteúdo (obrigatório) |
text | string | Conteúdo de texto da publicação. No LinkedIn, mencione uma página de empresa com @[Nome da página](urn:li:organization:<id>), escrevendo o nome exatamente como o LinkedIn o mostra. O LinkedIn só permite mencionar páginas de empresa, não pessoas |
platformTexts | PlatformText[] | Substituições de texto por plataforma |
mediaUrls | string[] | URLs de arquivos de mídia |
mediaAltTexts | string[] | Texto alternativo de cada imagem, na mesma ordem que mediaUrls. Máximo de 1000 caracteres cada; use uma string vazia para ignorar uma imagem. Enviado para X, Bluesky, Mastodon, LinkedIn, Facebook, Instagram e Threads. O Pinterest usa o primeiro, cortado a 500 caracteres. TikTok, YouTube, o Perfil da Empresa no Google e vídeos o ignoram. |
thumbnailUrl | string | URL da miniatura para publicações em vídeo |
thumbnailTimestampMs | number | Quadro do vídeo a usar como miniatura, em milissegundos desde o início |
platformThumbnails | PlatformThumbnail[] | Uma miniatura diferente para uma plataforma de uma publicação de vídeo, como { platform, thumbnailUrl?, thumbnailTimestampMs? }. YOUTUBE, FACEBOOK, LINKEDIN e TELEGRAM aceitam uma imagem, INSTAGRAM e PINTEREST uma imagem ou um quadro, TIKTOK só um quadro. Plataformas sem entrada usam thumbnailUrl e thumbnailTimestampMs |
platformAspectRatios | PlatformAspectRatio[] | Ajusta todas as imagens de uma publicação IMAGE ou CAROUSEL a um formato em uma plataforma, como { platform, aspectRatio, fit? }. aspectRatio é SQUARE, PORTRAIT, VERTICAL ou LANDSCAPE: INSTAGRAM aceita SQUARE, PORTRAIT ou LANDSCAPE, TIKTOK os quatro. fit é CROP (padrão) ou PAD. Veja Criar publicação |
firstComments | PlatformFirstComment[] | Um comentário publicado abaixo da publicação pela mesma conta, como { platform, text }. Uma entrada por plataforma. LINKEDIN aceita até 1250 caracteres, TWITTER 280, THREADS 500, BLUESKY 300, MASTODON 500, YOUTUBE 10000 (não em vídeos privados ou feitos para crianças), FACEBOOK 8000 e INSTAGRAM 2200 (não em stories). Outras plataformas retornam um 400. Uma página do Facebook ou conta do Instagram conectada antes da chegada dos primeiros comentários precisa ser reconectada uma vez; até lá, o comentário falha com firstCommentError |
threadReplies | PlatformThreadReplies[] | Transforma a publicação num fio, como { platform, texts }: a publicação abre-o e cada texto sai como resposta ao anterior, da mesma conta. Uma entrada por plataforma, até 25 textos. TWITTER aceita 280 caracteres por resposta (mais com X Premium), THREADS 500, BLUESKY 300 e MASTODON 500 (ou o limite da instância). Outras plataformas, uma resposta vazia ou longa demais e uma plataforma que também tem primeiro comentário devolvem um 400 |
scheduledAtOBRIGATÓRIO | string | Data de agendamento (obrigatório, ISO 8601) |
pinterestConfigs | PinterestConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
tiktokConfigs | TikTokConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
instagramConfigs | InstagramConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
facebookConfigs | FacebookConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
youtubeConfigs | YouTubeConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
googleBusinessConfigs | GoogleBusinessConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
tumblrConfigs | TumblrConfig[] | Substituição por publicação. Quando definida, tem prioridade sobre a configuração no nível do lote para esta publicação |
Substituições de configuração de plataforma por publicação
As configurações de plataforma podem ser definidas em dois níveis: nível do lote (aplicadas a todas as publicações como padrão) e por publicação (substituem o nível do lote para essa publicação específica). Se uma publicação incluir sua própria configuração de plataforma, ela substitui completamente a configuração no nível do lote para essa plataforma.Limite de taxa
Máximo de 100 publicações por solicitação. Cada publicação é processada de forma independente. Se uma falhar na validação, as outras ainda serão agendadas.Uma conta por plataforma
Apenas uma conta por plataforma é permitida. Todas as publicações do lote compartilham as mesmas conexões, portanto você não pode incluir múltiplos IDs de conexão para a mesma plataforma. Esta restrição é aplicada para cumprir os Termos de Serviço das plataformas.Verifique o lote primeiro
Envie o mesmo corpo para Verificar Agendamento em Massa (POST /api/v1/social-posts/bulk/validate) para receber um relatório de cada publicação antes de agendar qualquer coisa.curl --request POST \
--url https://post.adaptlypost.com/post/api/v1/social-posts/bulk \
--header 'Authorization: Bearer <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"platforms": ["YOUTUBE", "PINTEREST"],
"timezone": "America/New_York",
"youtubeConnectionIds": ["conn_yt123"],
"pinterestConnectionIds": ["conn_pin456"],
"youtubeConfigs": [{
"connectionId": "conn_yt123",
"postType": "SHORTS",
"privacyStatus": "public"
}],
"pinterestConfigs": [{
"connectionId": "conn_pin456",
"boardId": "board_abc",
"title": "Default pin title"
}],
"posts": [
{
"contentType": "VIDEO",
"text": "First video!",
"mediaUrls": ["https://cdn.adaptlypost.com/uploads/video1.mp4"],
"scheduledAt": "2026-03-15T10:00:00Z"
},
{
"contentType": "VIDEO",
"text": "Second video with custom config",
"mediaUrls": ["https://cdn.adaptlypost.com/uploads/video2.mp4"],
"scheduledAt": "2026-03-15T14:00:00Z",
"youtubeConfigs": [{
"connectionId": "conn_yt123",
"postType": "VIDEO",
"videoTitle": "Full tutorial",
"privacyStatus": "unlisted"
}]
}
]
}'{
"totalScheduled": 2,
"totalFailed": 0,
"results": [
{
"postId": "post_abc001",
"success": true,
"isScheduled": true,
"scheduledAt": "2026-03-15T10:00:00Z",
"errorMessage": null
},
{
"postId": "post_abc002",
"success": true,
"isScheduled": true,
"scheduledAt": "2026-03-15T14:00:00Z",
"errorMessage": null
}
]
}