Saltar al contenido
Totalmente local

Constructor Slack Block Kit

Convierte un esquema de texto plano en JSON de Slack Block Kit listo para enviar.

Entrada

Constructor Slack Block Kit

Escribe un mensaje como si escribieras un documento y esta herramienta lo convierte en el payload JSON que Slack Block Kit espera. Los encabezados que comienzan con # se convierten en bloques de encabezado, los párrafos simples se convierten en bloques de sección con texto mrkdwn, y una línea de tres o más guiones se convierte en un divisor — sin necesidad de escribir manualmente objetos de bloque anidados o consultar el esquema para cada tipo.

Las líneas con viñetas (que comienzan con - o *) se renderizan como una sección combinada o como un bloque separado por elemento, controlado por la opción "Listas con viñetas" — útil cuando los elementos deben ajustarse independientemente en un panel Slack estrecho. Las líneas con formato "Etiqueta: valor" se convierten en una sección de campos, dividida en grupos de diez ya que ese es el límite de Slack por sección. Los enlaces Markdown como [etiqueta](url) se convierten a la sintaxis <url|etiqueta> de Slack, y **negrita** se convierte en negrita de asterisco único de Slack. Una línea que comienza con "context:" añade un bloque de contexto de pie de página, y una que comienza con "buttons:" (etiquetas separadas por barra vertical, con una URL opcional entre paréntesis) añade un bloque de acciones con botones reales.

Alterna "Payload para" entre un webhook entrante y una llamada a chat.postMessage — la segunda añade un campo de canal que puedes editar directamente. Si el texto de cualquier sección supera el límite de 3000 caracteres de Slack, la herramienta sigue construyendo JSON válido pero marca exactamente qué bloque es demasiado largo, tanto en el recuento en vivo como destacando las líneas ofensivas en la salida, para que lo detectes antes de que la API de Slack rechace el mensaje.

Todo se ejecuta en tu navegador. El esquema que escribes y el JSON que produce nunca salen de tu dispositivo — nada se carga en ningún servidor, ni siquiera en el propio Slack. Cuando el payload se vea correcto, cópialo, descárgalo como archivo .txt para pegar en tu código, o envíalo a otra herramienta para seguir trabajando.

Preguntas frecuentes

¿Lo valida contra el esquema exacto de Block Kit de Slack?
Construye JSON estructuralmente correcto para los tipos de bloque que soporta (encabezado, sección, divisor, contexto, acciones) e implementa el límite de sección de 3000 caracteres, pero no llama a la API de Slack para validar el payload completo.
¿Cómo agrego botones?
Escribe una línea que comience con "buttons:" seguida de etiquetas separadas por "|", p. ej. "buttons: Aprobar | Rechazar". Añade "(https://...)" después de una etiqueta para convertirla en un botón de estilo enlace.
¿Cuál es la diferencia entre el webhook entrante y el payload de chat.postMessage?
Un payload de webhook entrante es simplemente { text, blocks }. Una llamada a chat.postMessage también necesita un campo "channel", que la herramienta añade cuando cambias la opción "Payload para".
¿Por qué mis líneas clave-valor se convirtieron en "fields" en lugar de un párrafo?
Cualquier línea corta con formato "Etiqueta: valor" se trata como un campo. Si lo querías como prosa, añade una oración sin dos puntos o reformula la línea.
¿Se carga mi texto de mensaje en algún lugar?
No. El esquema y el JSON que produce se construyen completamente en tu navegador y nunca se envían a un servidor, ni siquiera a Slack.