Guia

Como Fazer Upload em Massa de Videos para Redes Sociais

Voce tem 50 videos em uma pasta. Talvez sejam demos de produtos, reels de clientes ou clips gerados por IA. Fazer upload de cada um manualmente em cada plataforma levaria horas. Veja como fazer isso em minutos usando um script, o sistema de fila ou ferramentas de automacao visual.

A abordagem: loop, upload, fila

A ideia e simples. Voce pega uma lista de arquivos de video, faz um loop neles e envia cada um para a API de redes sociais. Para evitar inundar seu publico com 50 posts de uma vez, voce usa o sistema de fila para que eles sejam distribuidos ao longo da semana nos melhores horarios.

Existem tres formas de fazer isso, dependendo do seu nivel tecnico:

  1. A Python or Bash script para controle total
  2. n8n com Google Drive para um workflow visual, sem codigo
  3. Make.com para automacao similar com uma interface diferente

Vamos ver os três.

Método 1: Script Python para upload em lote

Esta e a opcao mais flexivel. Voce aponta o script para uma pasta de videos e ele faz upload de cada um com a fila habilitada. Instale o SDK primeiro:

pip install upload-post

Depois execute este script:

import os
import glob
from upload_post import UploadPostClient

client = UploadPostClient(api_key="your-api-key-here")

video_folder = "/path/to/your/videos"
videos = glob.glob(os.path.join(video_folder, "*.mp4"))

print(f"Encontrados {len(videos)} vídeos para fazer upload")

for i, video_path in enumerate(videos):
    filename = os.path.basename(video_path)
    title = filename.replace(".mp4", "").replace("-", " ").replace("_", " ")

    try:
        response = client.upload_video(
            video_path=video_path,
            title=title,
            user="mybrand",
            platforms=["tiktok", "instagram", "youtube"],
            add_to_queue=True,
            async_upload=True
        )
        job_id = response.get("job_id", "async")
        print(f"[{i+1}/{len(videos)}] Queued: {filename} (Job: {job_id})")
    except Exception as e:
        print(f"[{i+1}/{len(videos)}] Failed: {filename} - {e}")

print("Todos os vídeos na fila!")

Algumas coisas importantes sobre esse script. A flag add_to_queue=True significa que cada video e atribuido ao proximo slot disponivel na sua agenda de fila. E async_upload=True faz cada chamada retornar imediatamente em vez de esperar todas as plataformas terminarem o processamento. Isso e importante para operacoes em massa porque um upload sincrono que demora mais de 59 segundos vai mudar automaticamente para assincrono.

Método 1b: Script Bash com cURL

Se voce prefere a linha de comando e nao quer instalar Python, um loop Bash simples faz a mesma coisa:

#!/bin/bash
API_KEY="your-api-key-here"
VIDEO_DIR="/path/to/your/videos"

for video in "$VIDEO_DIR"/*.mp4; do
    filename=$(basename "$video" .mp4)
    echo "Uploading: $filename"

    curl -s -X POST https://api.upload-post.com/api/upload \
      -H "Autorização: Apikey $API_KEY" \
      -F "video=@$video" \
      -F "user=mybrand" \
      -F "title=$filename" \
      -F "platform[]=tiktok" \
      -F "platform[]=instagram" \
      -F "add_to_queue=true" \
      -F "async_upload=true"

    echo ""
done

echo "Pronto! Todos os vídeos na fila."

Método 2: n8n com Google Drive (sem código)

Esta e a melhor opcao se voce quer um workflow visual que roda automaticamente sempre que novos videos aparecem em uma pasta. O fluxo e: Google Drive detecta um novo arquivo, faz download, envia para o Upload-Post e enfileira para publicacao.

Temos um template pronto para Google Drive para redes sociais que voce pode importar na sua instancia do n8n com um clique. Tambem existe uma versao mais avancada que usa descricoes geradas por IA e rastreamento via Airtable.

Se quiser construir do zero, confira o guia de integracao com n8n para o passo a passo. O segredo e configurar o node HTTP Request com multipart form data e passar o arquivo binario do node do Google Drive.

Para conteudo com IA, existe ate um template que publica videos automaticamente com legendas geradas por IA em massa.

Método 3: Automação com Make.com

O Make.com (antigo Integromat) funciona de forma similar. Voce cria um cenario com um trigger do Google Drive ou Dropbox, conecta a um modulo HTTP configurado para a API do Upload-Post, e define para rodar em um cronograma ou sempre que novos arquivos forem detectados.

O modulo HTTP precisa ser configurado com tipo de conteudo multipart/form-data, com sua chave de API como header personalizado. Navegue pelos nossos templates Make.com para cenarios prontos.

Processing videos before upload

As vezes seus videos de origem nao estao no formato certo. Talvez sejam muito longos, na proporcao errada ou codificados em um codec que o TikTok nao aceita. Em vez de processa-los localmente, voce pode usar a API FFmpeg do Upload-Post para transformar videos na nuvem antes de publicar.

Por exemplo, voce pode cortar um video paisagem para vertical 9:16, aparar para 60 segundos para YouTube Shorts ou re-encodar para H.264 para maxima compatibilidade:

curl -X POST https://api.upload-post.com/api/uploadposts/ffmpeg/jobs/upload \
  -H "Autorização: Apikey sua-api-key-aqui" \
  -F "[email protected]" \
  -F 'full_command=ffmpeg -i {input} -vf "crop=ih*9/16:ih,scale=1080:1920" -c:v libx264 -preset medium -t 60 {output}' \
  -F "output_extension=mp4"

A API FFmpeg esta inclusa em todos os planos (30 minutos gratuitos por mes no plano free, ate 10.000 minutos no Business).

Monitorando seus uploads em massa

Quando voce esta fazendo upload de dezenas de videos, precisa acompanhar o que passou e o que falhou. Existem duas formas:

Consultando o endpoint de status

curl https://api.upload-post.com/api/uploadposts/status?request_id=abc123 \
  -H "Autorização: Apikey sua-api-key-aqui"

A resposta inclui contagens de completed e total para que voce possa ver o progresso em tempo real.

Setting up webhooks

Para uma abordagem hands-off, configure uma URL de webhook e o Upload-Post vai notificar seu servidor toda vez que um upload em uma plataforma terminar. Cada notificacao inclui a plataforma, URL do post e status de sucesso/erro.

Histórico de uploads

Voce tambem pode revisar tudo que foi enviado com o endpoint de historico:

curl "https://api.upload-post.com/api/uploadposts/history?page=1&limit=50" \
  -H "Autorização: Apikey sua-api-key-aqui"

Cada entrada mostra a plataforma, timestamp, status de sucesso, URL do post, tamanho do arquivo e mensagens de erro. Otimo para gerar relatorios ou auditar seus uploads.

Dicas para upload em massa em escala

  • Sempre use async_upload=true para operacoes em massa. Uploads sincronos funcionam bem para posts individuais, mas voce nao quer esperar 10 plataformas processarem antes de enviar o proximo arquivo.
  • Use uma fila em vez de datas fixas a menos que voce tenha requisitos especificos de timing. A fila distribui conteudo de forma uniforme e respeita os limites diarios das plataformas.
  • Fique de olho nos limites diários. O TikTok permite 15 uploads por dia por conta, o YouTube permite 10. Se voce enfileirar 50 videos do TikTok, eles serao distribuidos automaticamente ao longo de varios dias.
  • Nomeie seus arquivos de forma descritiva. Se voce usa o nome do arquivo como titulo do post (como nos scripts acima), "colecao-verao-lookbook.mp4" fica muito melhor que "VID_20250615_001.mp4".
  • Use títulos específicos por plataforma quando as legendas precisam ser diferentes. Defina tiktok_title para uma legenda mais curta e youtube_description para uma mais longa com palavras-chave de SEO.

Perguntas frequentes

Existe um limite de quantos vídeos posso enviar de uma vez?

Nao ha limite fixo de quantas requisicoes de API voce pode enviar. Porem, cada plataforma tem limites diarios de upload (15 para TikTok, 10 para YouTube, etc.). O sistema de fila lida com isso automaticamente distribuindo os posts ao longo dos dias.

Posso fazer upload de vídeos a partir de uma URL em vez de um arquivo local?

Sim. Em vez de passar um arquivo com -F "[email protected]", voce pode passar uma URL publica como parametro de video. O Upload-Post vai fazer o download e processar para voce.

Qual é o tamanho máximo do arquivo?

Depende da plataforma. O YouTube aceita ate 256GB, o TikTok ate 4GB e o Instagram ate 300MB. Confira a pagina de requisitos de video para o detalhamento completo.

Envie todos os seus vídeos de uma vez

Pare de gastar horas com uploads manuais. Organize seu conteudo em lote, chame a API e deixe a fila cuidar do resto. A configuracao leva 5 minutos.

Sem cartão de crédito. 10 uploads gratuitos inclusos.