Postagem Programada no Mastodon Falha com Anexo de Mídia: Solução
🔍 WiseChecker

Postagem Programada no Mastodon Falha com Anexo de Mídia: Solução

Você escreveu uma postagem no Mastodon, anexou uma imagem ou vídeo, definiu uma data e hora específicas para publicar e clicou em Agendar. Em vez de confirmar que a postagem está na fila, a interface mostra um erro ou o botão Agendar permanece cinza. Esse problema ocorre porque o Mastodon atualmente não suporta agendar postagens que incluam anexos de mídia — o recurso é bloqueado no nível da API e na interface web. Este artigo explica o motivo técnico por trás da limitação e fornece uma solução prática que permite agendar postagens com mídia sem encontrar o erro.

Principais Conclusões: Agendando Postagens com Mídia no Mastodon

  • Comportamento do botão Agendar: O botão Agendar fica desabilitado quando qualquer arquivo de mídia é anexado a uma postagem.
  • Limitação da API: A API do Mastodon rejeita status agendados que incluam media_ids no payload.
  • Solução alternativa — enviar mídia separadamente: Envie seu arquivo de mídia como rascunho, copie a URL e cole essa URL em uma postagem agendada apenas com texto.

ADVERTISEMENT

Por que o Mastodon Bloqueia Postagens Agendadas com Anexos de Mídia

O recurso de agendamento do Mastodon depende do endpoint POST /api/v1/statuses com o parâmetro scheduled_at. Quando você anexa um arquivo de mídia, o cliente envia um array media_ids junto com o conteúdo da postagem. A API do Mastodon rejeita explicitamente qualquer requisição que contenha tanto scheduled_at quanto media_ids — o servidor retorna um erro 422 Unprocessable Entity.

A equipe de desenvolvimento do Mastodon não declarou publicamente por que essa restrição existe. O motivo mais provável é que o processamento de mídia — geração de miniaturas, transcodificação e armazenamento — introduz atrasos imprevisíveis. Se o servidor não puder garantir que a mídia será totalmente processada até o horário agendado, a postagem pode ser publicada sem o anexo ou falhar completamente. Para evitar esses casos extremos, a API simplesmente não permite a combinação.

Essa limitação se aplica a todos os clientes oficiais do Mastodon, incluindo a interface web, o aplicativo oficial para iOS e o aplicativo oficial para Android. Clientes de terceiros como Tusky, Fedilab e Mona também respeitam a mesma restrição do lado do servidor. Nenhum cliente pode contorná-la porque a verificação ocorre no servidor.

Solução Alternativa: Agendar uma Postagem que Inclui Mídia

Como o Mastodon não agenda uma postagem com anexo de mídia diretamente, você deve separar o upload da mídia da etapa de agendamento. A solução envolve enviar o arquivo de mídia para o armazenamento de mídia do Mastodon, obter uma URL direta para esse arquivo e então compor uma postagem agendada que inclua a URL. Os leitores verão a mídia inline quando a postagem for publicada, exatamente como se tivesse sido anexada nativamente.

  1. Envie o arquivo de mídia como rascunho
    Abra o Mastodon no seu navegador. Clique no botão Compor para abrir o editor de nova postagem. Anexe sua imagem ou vídeo clicando no ícone de mídia ou arrastando o arquivo para o editor. Não escreva nenhum texto ainda. Clique fora do editor ou navegue para outra página — o Mastodon salva o anexo como rascunho. O arquivo de mídia agora está armazenado no servidor de mídia da sua instância.
  2. Copie a URL direta da mídia
    Recarregue a página do Mastodon. Abra o rascunho que você acabou de criar. Clique com o botão direito na miniatura da mídia anexada e selecione Copiar Endereço da Imagem ou Copiar Link no menu de contexto do navegador. A URL será semelhante a https://sua-instancia.exemplo.com/media_attachments/files/000/123/456/original/foto.jpg. Salve esta URL em um arquivo de texto ou cole em uma nota temporária.
  3. Exclua o rascunho sem publicar
    Limpe o editor clicando no ícone X no rascunho ou descartando o rascunho da seção de rascunhos. Este passo é importante — você não deve publicar o rascunho, pois ele seria publicado imediatamente. Você só precisou do rascunho para gerar a URL da mídia.
  4. Componha uma postagem agendada com a URL da mídia
    Abra uma nova janela de composição. Escreva o texto da sua postagem. No local onde deseja que a mídia apareça, cole a URL da mídia que você copiou no passo 2. O Mastodon renderizará a URL como uma prévia de mídia inline quando a postagem for publicada. Defina a data e hora desejadas usando o botão Agendar. Clique em Agendar para confirmar. A postagem será publicada no horário agendado e a mídia aparecerá inline.

ADVERTISEMENT

Se a Postagem Agendada Ainda Tiver Problemas Após a Solução

A URL da mídia não renderiza inline após o agendamento

Se a postagem for publicada, mas mostrar a URL bruta em vez da prévia da mídia, a causa mais comum é que o arquivo de mídia foi excluído ou a URL foi truncada. Verifique se a URL que você copiou está completa e se o arquivo ainda existe na sua instância. Você pode testar a URL colando-a na barra de endereços do navegador — se a mídia carregar, a URL é válida.

O botão Agendar permanece cinza mesmo com conteúdo apenas texto

Isso geralmente significa que sua instância do Mastodon tem o agendamento desabilitado ou possui um atraso mínimo de agendamento. Alguns administradores desabilitam completamente o recurso de agendamento. Verifique com o administrador da sua instância ou olhe a página “Sobre” da instância. O Mastodon também exige que o horário agendado seja pelo menos cinco minutos no futuro. Se você definir o horário com menos de cinco minutos de antecedência, o botão Agendar permanece desabilitado.

O arquivo de mídia não aparece na prévia da postagem

A prévia de mídia inline só aparece após a postagem ser publicada. Enquanto a postagem está agendada, o editor mostra a URL como texto simples. Isso é normal — a prévia é gerada pelo servidor no momento da publicação. Não espere ver a miniatura da mídia na lista de postagens agendadas.

URL Direta da Mídia vs. Anexo Nativo: Principais Diferenças

Item URL Direta da Mídia (Solução) Anexo Nativo de Mídia
Como o Mastodon processa o arquivo Armazenado como rascunho, depois a URL é extraída Enviado e processado no momento da composição
Aparência na linha do tempo Prévia inline gerada a partir da URL Anexo de mídia completo com miniatura
Suporte a texto alternativo O texto alternativo não é transferido — você deve descrever a mídia no texto da postagem O texto alternativo é anexado diretamente ao arquivo de mídia
Integração com aviso de conteúdo Funciona normalmente — a URL fica oculta atrás do aviso de conteúdo Funciona normalmente
Confiabilidade Depende do arquivo de mídia permanecer no servidor Garantida porque o arquivo está anexado à postagem

O recurso de postagem agendada do Mastodon é uma ferramenta útil para planejar seu conteúdo, mas a restrição de anexo de mídia força você a ajustar seu fluxo de trabalho. Ao enviar o arquivo de mídia como rascunho, copiar sua URL direta e incluir essa URL em uma postagem agendada apenas com texto, você pode obter o mesmo resultado de um anexo de mídia nativo. Lembre-se de que o texto alternativo não pode ser atribuído à URL — sempre inclua uma legenda descritiva no texto da postagem para manter a acessibilidade. Se você agenda postagens com frequência, considere usar uma ferramenta de terceiros como Buffer ou Hootsuite, que suportam anexos de mídia em postagens agendadas através da API do Mastodon.

ADVERTISEMENT