BulkPublish
Publique em massa para várias redes sociais de uma vez.
Documentação
BulkPublish API
A API gratuita de mídias sociais criada para automação, agentes de IA e LLMs.
Comece agora » · Documentação da API · Site · Servidor MCP
Publique programaticamente em 15 plataformas com uma única chamada de API. Criado para desenvolvedores, agentes de IA, LLMs e fluxos de trabalho agênticos que precisam de automação confiável de mídias sociais sem sessões de navegador ou interação manual.
from bulkpublish import BulkPublish
bp = BulkPublish("bp_your_key_here")
bp.posts.create(
content="Launching our new product today!",
channels=[{"channelId": 1, "platform": "x"}, {"channelId": 2, "platform": "linkedin"}],
status="scheduled",
scheduled_at="2026-04-10T09:00:00Z",
)
Por que BulkPublish?
A maioria das ferramentas de mídias sociais é feita para humanos clicando em botões. O BulkPublish é feito para código — seja esse código escrito por um desenvolvedor, um agente de IA, um LLM com uso de ferramentas ou um fluxo de trabalho autônomo.
- Headless por design — Sem navegador, sem interface, sem pop-ups de OAuth em tempo de execução. Conecte contas uma vez no painel e automatize tudo via API.
- Nativo para IA — Servidor MCP para Claude, definições de ferramentas para GPT e LangChain, respostas JSON estruturadas que LLMs analisam de forma confiável.
- Pronto para agentes — API determinística com códigos de erro claros. Agentes de IA podem criar posts, verificar status, repetir falhas e ler análises de forma autônoma.
- 15 plataformas, um endpoint — Facebook, Instagram, X/Twitter, TikTok, YouTube, Threads, Bluesky, Pinterest, Google Business Profile, LinkedIn, Mastodon, Discord, Telegram, Tumblr, Snapchat.
Casos de uso
- Gestores de mídias sociais com IA — Deixe Claude, GPT ou agentes personalizados agendarem e publicarem posts de forma autônoma
- Pipelines de conteúdo — Automação de RSS para redes sociais, blog para redes sociais, newsletter para redes sociais
- Agendamento em massa — Envie um CSV ou alimente um calendário de conteúdo e agende semanas de posts programaticamente
- Sindicação entre plataformas — Publique uma vez em todas as plataformas com otimização de conteúdo por plataforma
- Painéis de análise — Traga dados de engajamento para suas próprias ferramentas, planilhas ou análise com IA
- Alternativas ao Zapier/n8n/Make — Acesso direto à API sem middleware, menor latência, mais controle
- Criação de conteúdo com LLM — Gere conteúdo com IA, publique com BulkPublish, acompanhe o desempenho e itere
Início rápido
1. Cadastre-se
Crie uma conta gratuita em app.bulkpublish.com.
2. Obtenha sua chave de API
Vá em Configurações > Desenvolvedor no painel e crie uma chave de API. As chaves começam com bp_ e são exibidas apenas uma vez — salve-a com segurança.
3. Conecte as plataformas
Conecte suas contas de mídias sociais no painel em Canais. A API usa seus canais conectados para publicar.
4. Instale um SDK
Python
pip install bulkpublish
Node.js
npm install bulkpublish
Homebrew (macOS/Linux)
brew tap azeemkafridi/bulkpublish && brew install bulkpublish
Ou chame a API REST diretamente com curl, fetch, requests ou qualquer cliente HTTP.
5. Faça sua primeira chamada de API
curl -X POST https://app.bulkpublish.com/api/posts \
-H "Authorization: Bearer bp_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"content": "Hello from the BulkPublish API!",
"channels": [{"channelId": 1, "platform": "linkedin"}],
"status": "draft"
}'
Integração com agentes de IA
Servidor MCP (Claude, Cursor, Windsurf, Claude Code)
O BulkPublish inclui um servidor MCP para que assistentes de IA possam gerenciar suas mídias sociais diretamente:
{
"mcpServers": {
"bulkpublish": {
"command": "npx",
"args": ["-y", "@bulkpublish/mcp-server"],
"env": {
"BULKPUBLISH_API_KEY": "bp_your_key_here"
}
}
}
}
79 ferramentas no servidor local (stdio): create_post, list_channels, upload_media, get_analytics, o compositor interativo compose_post (aplicativos MCP) e mais. O servidor hospedado em https://mcp.bulkpublish.com/mcp (OAuth 2.1) oferece o perfil core com 20 ferramentas: canais, posts, mídia, análises e os painéis interativos. O perfil inbox com 27 ferramentas adiciona leitura e resposta a mensagens diretas, avaliações e comentários. Consulte mcp-server/README.md.
Habilidades de conteúdo para mídias sociais
O BulkPublish inclui uma biblioteca de 24 habilidades para agentes de IA planejarem, adaptarem, revisarem, agendarem e publicarem conteúdo de mídias sociais: Habilidades de conteúdo para mídias sociais.
Uso de ferramentas LLM / Function Calling
Definições de ferramentas prontas para agentes de IA autônomos:
- Exemplo de tool_use do Claude — SDK da Anthropic com definições de ferramentas para agendar posts
- Exemplo de function calling do OpenAI — GPT-4 com funções para gerenciamento de posts
- Exemplo de ferramenta LangChain — Agente LangChain com ferramentas BulkPublish
Todos os exemplos são scripts completos e executáveis com tratamento de erros.
Exemplos de código
Criar um post
| Python | Node.js |
|---|---|
|
|
Agendar um post
post = bp.posts.create(
content="This will go out tomorrow morning.",
channels=[{"channelId": 1, "platform": "instagram"}],
status="scheduled",
scheduled_at="2026-04-10T09:00:00Z",
timezone="America/New_York",
)
Enviar mídia e publicar
media = bp.media.upload("./product-photo.jpg")
post = bp.posts.create(
content="Our newest product is here.",
channels=[{"channelId": 1, "platform": "instagram"}],
media_files=[media["file"]["id"]],
status="scheduled",
scheduled_at="2026-04-10T12:00:00Z",
)
Exemplo de automação: agendamento em massa a partir de CSV
import csv
from bulkpublish import BulkPublish
bp = BulkPublish("bp_your_key_here")
channels = bp.channels.list()["channels"]
with open("content-calendar.csv") as f:
for row in csv.DictReader(f):
bp.posts.create(
content=row["content"],
channels=[{"channelId": ch["id"], "platform": ch["platform"]} for ch in channels],
status="scheduled",
scheduled_at=row["scheduled_at"],
timezone="America/New_York",
)
Mais exemplos em examples/ — incluindo scripts de automação em Python, exemplos em Node.js, referência curl e integrações com agentes de IA.
Recursos
- 15 plataformas — Facebook, Instagram, X/Twitter, TikTok, YouTube, Threads, Bluesky, Pinterest, Google Business Profile, LinkedIn, Mastodon, Discord, Telegram, Tumblr, Snapchat
- Agendamento — Agende posts para qualquer horário futuro com suporte a fusos horários, ou deixe os slots da fila escolherem horários ideais
- Envio de mídia — Imagens (JPEG, PNG, WebP, GIF) e vídeos (MP4, MOV, WebM) de até 100 MB
- Agendamentos recorrentes — Repita posts diariamente, semanalmente, quinzenalmente ou mensalmente em um horário definido
- Análises — Acompanhe impressões, curtidas, comentários, compartilhamentos e engajamento. Cada plataforma reporta um subconjunto diferente de métricas, e a resposta indica quais (
supportedMetrics/supportedTotals) para que um0nunca seja confundido com uma medição — consulte Métricas por plataforma - Rastreamento de links — Opte por organização ou por post via
linkTrackingOverridepara reescrever links através debulkpubli.she contar os cliques. Reportado comolinkClicks/totalLinkClickse medido pelo BulkPublish em vez da plataforma, funcionando mesmo onde a plataforma não reporta nada — consulte Limites de caracteres - Etiquetas — Organize posts e mídia com etiquetas coloridas
- Grupos de hashtags — Salve conjuntos de hashtags e insira-os em um post com uma única chamada
- Modelos — Salve o texto de um post e comece novos posts a partir dele
- Links de revisão — Compartilhe uma página somente leitura de um post com alguém que não tem conta
- Notas no calendário — Fixe campanhas, feriados e lembretes em dias do calendário
- Operações em massa — Exclua ou repita vários posts em uma única solicitação
- Threads — Posts em várias partes para X, Threads, Bluesky e Mastodon
- Primeiro comentário automático — Adicione automaticamente um comentário após publicar em qualquer plataforma
- Todos os tipos de post — Reels, Stories, Carousels, Threads, Shorts, Vídeo — definidos por plataforma via
postTypeOverrides - Conteúdo por plataforma — Personalize texto e opções por plataforma em um único post
- Opções específicas de plataforma — Colaboradores do Instagram, privacidade do TikTok, categorias do YouTube, quadros do Pinterest e mais
Referência da API
Documentação interativa completa da API: app.bulkpublish.com/docs
URL base
https://app.bulkpublish.com
Autenticação
Authorization: Bearer bp_your_key_here
Endpoints principais
| Método | Endpoint | Descrição |
|---|---|---|
POST | /api/posts | Criar uma postagem (rascunho, agendada ou imediata) |
GET | /api/posts | Listar postagens (paginado, filtrável por status/data/canal/etiqueta) |
GET | /api/posts/:id | Obter uma postagem com status de plataforma e métricas |
PUT | /api/posts/:id | Atualizar um rascunho ou postagem agendada |
DELETE | /api/posts/:id | Excluir uma postagem |
POST | /api/posts/:id/publish | Publicar um rascunho imediatamente |
POST | /api/posts/:id/retry | Tentar novamente plataformas com falha |
POST | /api/posts/:id/approve | Aprovar uma postagem aguardando aprovação da equipe (funções com post:approve) |
POST | /api/posts/:id/reject | Rejeitar uma postagem pendente de volta para rascunho, com um motivo opcional |
POST | /api/posts/bulk | Exclusão em massa ou nova tentativa |
GET | /api/channels | Listar canais de mídia social conectados |
GET | /api/channels/:id/health | Verificar a saúde do token do canal |
GET | /api/channels/:id/options | Obter opções de plataforma (quadros do Pinterest, playlists do YouTube, blogs do Tumblr, canais do Discord, ?q=/?subreddit= do Reddit, pesquisa de local ?q= do Threads) |
GET | /api/channels/:id/mentions | Pesquisar contas para @menção (X, Bluesky, Mastodon, Páginas do LinkedIn — resultados do LinkedIn são @[Name](urn:li:organization:ID) tokens mais o slug vanityName em que corresponderam) |
GET/POST | /api/templates | Modelos de postagem salvos (obter/atualizar/excluir via /api/templates/:id) |
GET/POST | /api/calendar-notes | Notas fixadas em dias do calendário, intervalo ?from&to (atualizar/excluir via /api/calendar-notes/:id) |
POST/DELETE | /api/posts/:id/share | Criar ou revogar o link de revisão somente leitura da postagem (/p/<token>) |
GET/POST | /api/hashtag-groups | Grupos de hashtags salvos, 1-30 hashtags cada (obter/atualizar/excluir via /api/hashtag-groups/:id) |
GET/POST | /api/channel-sets | Grupos de canais salvos para segmentação com um clique (atualizar/excluir via /api/channel-sets/:id) |
GET/POST | /api/rss-feeds | Feeds de autopostagem RSS/Atom — novos itens se tornam postagens (atualizar/excluir via /api/rss-feeds/:id) |
POST | /api/media | Enviar um arquivo de mídia (formulário multipart, até 100MB) |
POST | /api/media/multipart/create | Iniciar um upload em partes para mídia grande (vídeos até 1GB, partes de 10MB) |
POST | /api/media/multipart/complete | Montar partes enviadas e registrar o arquivo de mídia |
GET | /api/media | Listar mídias enviadas |
GET | /api/analytics/summary | Resumo de análises para um intervalo de datas |
GET | /api/analytics/engagement | Totais de engajamento, detalhamentos por dia / por plataforma / por canal, listas classificadas e completas de postagens — filtrável por canais, plataformas, etiquetas, formato e tipo de mídia; compare=1 adiciona o período anterior |
GET | /api/analytics/post-history | Cada snapshot de métricas armazenado para uma postagem, por plataforma (tendência desde a publicação) |
GET | /api/analytics/links | Links rastreados do bulkpubli.sh com contagens de cliques |
POST | /api/schedules | Criar um agendamento recorrente |
GET | /api/quotas/usage | Verificar limites e uso do plano atual |
GET | /api/inbox/conversations | Caixa de entrada: mensagens diretas, avaliações e threads de comentários, com filtros e paginação por cursor (Pro e Business) |
GET/POST | /api/inbox/conversations/:id/messages | Ler uma conversa, ou enviar uma resposta para a pessoa na plataforma |
PATCH | /api/inbox/conversations/:id | Marcar como lida, arquivar, adiar ou atribuir uma conversa |
GET | /api/posts/:id/engagement | Comentários e reações em uma postagem publicada, por canal |
POST | /api/posts/:id/comments/reply | Responder a um comentário em uma postagem publicada |
POST | /api/posts/:id/comments/moderate | Curtir, descurtir, ocultar, reexibir ou excluir um comentário |
Consulte a especificação OpenAPI para a lista completa de endpoints.
Plataformas Suportadas
| Plataforma | Tipos de Postagem | Mídia |
|---|---|---|
| Postagem, História | Imagens, Vídeos | |
| Feed, Reel, História, Carrossel | Imagens (JPEG), Vídeos (MP4, MOV) | |
| X / Twitter | Tweet, Thread | Imagens, Vídeos, GIFs |
| TikTok | Vídeo, Apresentação de Fotos | Vídeos (MP4, MOV), Imagens |
| YouTube | Vídeo, Short | Vídeos (MP4, MOV, WebM, AVI, WMV, FLV) |
| Threads | Postagem, Thread, Postagem com Citação | Imagens, Vídeos |
| Bluesky | Postagem, Thread | Imagens |
| Pin | Imagens, Vídeos | |
| Google Business Profile | Postagem, Evento, Oferta | Imagens |
| Postagem, Multi-imagem, Carrossel PDF, Artigo | Imagens (JPEG, PNG, GIF), Vídeos (MP4) | |
| Mastodon | Postagem, Thread | Imagens, Vídeos |
| Snapchat | História, História Salva, Spotlight | Exatamente 1 imagem (JPG, PNG) ou vídeo (MP4, MOV, vertical, máx. 1GB; vídeo de história 5–60s, Spotlight 6–60s) |
SDKs
Python
pip install bulkpublish
Suporta síncrono e assíncrono. Docstrings ricas em cada método para consumo por IDE e LLM.
Node.js / TypeScript
npm install bulkpublish
Tipos TypeScript completos, zero dependências, fetch nativo (Node 18+).
Homebrew (macOS/Linux)
brew tap azeemkafridi/bulkpublish && brew install bulkpublish
Instala o SDK Node via Homebrew.
API REST
Nenhum SDK necessário — qualquer cliente HTTP funciona:
curl https://app.bulkpublish.com/api/channels \
-H "Authorization: Bearer bp_your_key_here"
Limites de Taxa
| Limite | Grátis | Pro | Business |
|---|---|---|---|
| Gravações/min | 60 | 60 | 60 |
| Leituras/min | 300 | 300 | 300 |
| Solicitações diárias de API | 100 | 5.000 | 50.000 |
| Chaves de API | 1 | 5 | 10 |
| Agendamentos recorrentes | — | 10 | Ilimitado |
Consulte o guia de limites de taxa para cabeçalhos, estratégias de backoff e melhores práticas.
Guias
- Autenticação — Chaves de API, autorização, gerenciamento de chaves
- Agendamento — Postagens agendadas, slots de fila, agendamentos recorrentes, fusos horários
- Uploads de Mídia — Uploads de arquivos, formatos suportados, uso de mídia em postagens
- Opções de Plataforma — Configuração e peculiaridades por plataforma
- Limites de Taxa — Limites de rajada, cotas diárias, melhores práticas
- Caixa de Entrada e Comentários — Ler e responder mensagens diretas, avaliações e comentários
Integrações
| Plataforma | Pacote | Instalação |
|---|---|---|
| Zapier | BulkPublish no Zapier | Pesquise "BulkPublish" no Zapier |
| n8n | n8n-nodes-bulkpublish | Configurações > Nós da Comunidade > n8n-nodes-bulkpublish |
| Homebrew | homebrew-bulkpublish | brew tap azeemkafridi/bulkpublish && brew install bulkpublish |
Links
| Recurso | URL |
|---|---|
| Painel | app.bulkpublish.com |
| Documentação da API | app.bulkpublish.com/docs |
| Site | bulkpublish.com |
| support@bulkpublish.com |
Licença
MIT