Documentação para desenvolvedores

Nó do n8n

Publique no Instagram, TikTok, YouTube, X, Facebook, LinkedIn e Bluesky a partir de qualquer workflow do n8n.

n8n-nodes-chat33
npm

1. Instale

Na sua instância do n8n, vá em Settings → Community Nodes → Install e digite o nome do pacote:

nome do pacote
n8n-nodes-chat33

Exige um n8n com nós da comunidade ativados (auto-hospedado ou n8n Cloud com nós da comunidade verificados).

2. Crie a credencial

  1. No Chat33, abra Configurações → Chaves de API e crie uma chave (os escopos padrão bastam: accounts:read, posts:read, posts:write, media:write).
  2. No n8n, adicione uma credencial Chat33 API: deixe a Base URL como https://chat33.io e cole a chave de API.
  3. Clique em Test. Ele valida a chave com GET /api/v1/accounts.

3. Recursos e operações

RecursoOperaçõesObservações
ContaGet ManyLista seus canais conectados; também alimenta os menus de contas
Publicação (Post)Create, Validate, Get, Get Many, Delete, Duplicate, Get LogsCreate/Validate escolhem as contas num menu em tempo real; Validate é um teste (nada é publicado)
Mídia (Media)UploadArquivo binário do workflow (até 500MB) ou importação por URL pública (vídeos de até 4GB para o TikTok; YouTube 2GB, X 512MB, Instagram/Facebook 1GB, LinkedIn 200MB, Bluesky 300MB)

Configure Platform Settings (nó 0.2.0+): o menu de contas guarda IDs de canal, então o nó não sabe quais plataformas você escolheu. Marque-as aqui e só essas coleções aparecem. Toda plataforma também aceita uma Caption que substitui o texto compartilhado só naquela rede, então um único nó pode enviar uma mensagem diferente para cada uma.

YouTube Settings: marque o YouTube em toda publicação do YouTube. Made for Kids é exigido pelo YouTube/FTC e a publicação é rejeitada sem ele. A privacidade vem como public por padrão, então defina-a se quiser não listado ou privado. Também leva título, descrição, tags, categoria e notificação aos inscritos. Publicações agendadas ignoram a escolha de privacidade: elas sobem como privadas e o YouTube as muda no horário agendado.

TikTok Settings: deixe o TikTok sem marcar e o vídeo vai para os rascunhos da conta em vez de ser publicado. Defina Publish Mode como Direct Post para publicar, o que também exige um nível de privacidade. Opções que você não define ficam como estão, então comentários, duetos e costuras continuam ativados, a menos que você os desative. A divulgação comercial e o rótulo de conteúdo gerado por IA são mapeados para os campos de conformidade da Content Posting API do TikTok.

Instagram Settings: o First Comment é publicado logo depois da publicação, onde as hashtags costumam ir para ficar fora da legenda.

X Settings: Post as Thread divide o texto num separador e encadeia cada trecho como resposta, além das permissões de resposta.

LinkedIn Settings: visibilidade (qualquer pessoa no LinkedIn ou só conexões), uma URL de artigo para compartilhar como card de link e título/descrição da mídia. As publicações vão para o perfil do próprio membro. Páginas de empresa ainda não são compatíveis.

Toda opção que a API aceita agora tem um campo tipado, então Additional Options → Platform Config (JSON) só é necessário para o que a API ganhar depois do nó; o schema está no explorador do OpenAPI.

4. Exemplo: publicar um vídeo a partir de um webhook

Três nós: Webhook → Chat33 (Media Upload) → Chat33 (Post Create).

  1. Webhook: método POST, recebe o JSON { "videoUrl": "...", "caption": "..." }.
  2. Chat33 → Media → Upload: Input Type URL, File URL ={{ $json.body.videoUrl }}. Retorna uma URL de mídia hospedada.
  3. Chat33 → Post → Create: escolha as contas no menu, Text ={{ $('Webhook').item.json.body.caption }}, Media URLs ={{ $json.url }}, Additional Options → Media Type video, mais as configurações do TikTok/YouTube conforme a necessidade.

Dispare:

bash
curl -X POST https://your-n8n.example.com/webhook/my-path \
  -H "Content-Type: application/json" \
  -d '{"videoUrl": "https://example.com/video.mp4", "caption": "Hello from n8n 🚀"}'

A resposta traz as publicações criadas com o status QUEUED. O Chat33 publica em até um minuto. Adicione um nó Post → Get ou defina um callbackUrl para acompanhar o status final.

Limites de mídia

  • Vídeos: até 4GB por importação de URL para o TikTok (mp4, mov, webm); as outras plataformas têm limite menor na hora de publicar: YouTube 2GB, X 512MB, Instagram/Facebook 1GB, LinkedIn 200MB, Bluesky 300MB
  • Arquivos acima de 500MB destinados ao TikTok são enviados automaticamente em partes, sem envolver URL/domínio, só com uma publicação mais lenta.
  • Imagens: até 20MB (jpeg, png, webp, gif). Instagram/Facebook têm limite de 8MB, LinkedIn de 10MB, X de 5MB, Bluesky de 2MB
  • Envios binários do próprio workflow: até 500MB (nó 0.1.2+, que envia direto para o armazenamento em vez de passar pela API). Acima disso, hospede o arquivo em qualquer lugar público (https) e use o modo URL.
  • Publicações agendadas guardam uma cópia. Quando você agenda uma publicação cuja mídia está no seu próprio host, o Chat33 copia o arquivo para o armazenamento dele pouco depois de criar a publicação, então uma publicação agendada para daqui a semanas ainda sai mesmo que o link original expire ou o arquivo seja excluído. Publicações imediatas não fazem isso: saem em cerca de dois minutos, então o link é buscado quando certamente ainda existe.

Solução de problemas

Insufficient scope: recrie a chave de API com os escopos padrão ou adicione o escopo que falta em Configurações → Chaves de API.

TikTok DIRECT_POST requires a privacy level: adicione TikTok Settings no nó Post Create e escolha um nível de privacidade que a conta permita.

File too large: veja os limites de mídia acima; comprima o vídeo ou use o modo URL.