Ir para o conteúdo
Totalmente local

Construtor de Slack Block Kit

Converta um esboço de texto simples em JSON de Slack Block Kit pronto para enviar.

Entrada

Construtor de Slack Block Kit

Escreva uma mensagem como escreveria um documento e esta ferramenta transforma-a no payload JSON que o Block Kit do Slack espera. Os cabeçalhos começando com # tornam-se blocos de cabeçalho, parágrafos simples tornam-se blocos de secção com texto mrkdwn, e uma linha com três ou mais travessões torna-se um separador — sem necessidade de escrever manualmente objetos de bloco aninhados ou consultar o esquema para cada tipo.

Linhas de marcadores (começando com - ou *) renderizam como uma secção combinada ou como um bloco separado por item, controlado pela opção "Listas numeradas" — útil quando os itens devem quebrar independentemente num painel estreito do Slack. Linhas em forma de "Rótulo: valor" tornam-se uma secção de campos, divididas em grupos de dez, pois esse é o limite do Slack por secção. Ligações Markdown como [rótulo](url) convertem para a sintaxe <url|rótulo> do Slack, e **negrito** torna-se negrito de asterisco único do Slack. Uma linha começando com "contexto:" adiciona um bloco de contexto de rodapé, e uma começando com "botões:" (rótulos separados por barra vertical, com uma URL opcional entre parênteses) adiciona um bloco de ações com botões reais.

Mude "Carga para" entre um webhook de entrada e uma chamada chat.postMessage — o segundo adiciona um campo de canal que pode editar diretamente. Se o texto de qualquer secção ultrapassar o limite de 3000 caracteres do Slack, a ferramenta continua a construir JSON válido mas assinala exatamente qual bloco é demasiado comprido, tanto na contagem em direto como destacando as linhas ofensivas no resultado, para que o apanhe antes de a API do Slack rejeitar a mensagem.

Tudo é executado no seu browser. O esboço que digita e o JSON que produz nunca saem do seu dispositivo — nada é enviado para qualquer servidor, incluindo o próprio Slack. Quando a carga parece correta, copie-a, transfira-a como ficheiro .txt para colar no seu código, ou envie-a para a entrada de outra ferramenta para continuar a trabalhar.

FAQ

Valida contra o esquema exato do Block Kit do Slack?
Constrói JSON estruturalmente correto para os tipos de bloco que suporta (cabeçalho, secção, separador, contexto, ações) e impõe o limite de 3000 caracteres da secção, mas não chama a API do Slack para validar a carga completa.
Como adiciono botões?
Escreva uma linha começando com "buttons:" seguida de rótulos separados por "|", por exemplo "buttons: Aprovar | Rejeitar". Adicione "(https://...)" depois de um rótulo para o tornar um botão no estilo de ligação.
Qual é a diferença entre o payload do webhook e do chat.postMessage?
Um payload de webhook recebido é apenas { text, blocks }. Uma chamada chat.postMessage também precisa de um campo "channel", que a ferramenta adiciona quando muda a opção "Carga para".
Porque é que as minhas linhas chave-valor se tornaram "campos" em vez de um parágrafo?
Qualquer linha curta em forma de "Rótulo: valor" é tratada como um campo. Se o pretendeu como prosa, adicione uma frase sem dois pontos ou reformule a linha.
Meu texto de mensagem é enviado para algum lugar?
Não. O esboço e o JSON que produz são construídos inteiramente no seu browser e nunca são enviados para um servidor, incluindo para o Slack.