Aller au contenu
Tout en local

Constructeur Slack Block Kit

Convertissez un plan en texte brut en JSON Slack Block Kit prêt à envoyer.

Entrée
Sortie

Constructeur Slack Block Kit

Écrivez un message comme vous écririez un document et cet outil le transforme en le payload JSON que Slack Block Kit attend. Les en-têtes commençant par # deviennent des blocs d'en-tête, les paragraphes simples deviennent des blocs de section avec du texte mrkdwn, et une ligne de trois tirets ou plus devient un séparateur — pas besoin d'écrire manuellement des objets de bloc imbriqués ou de consulter le schéma pour chaque type.

Les lignes à puces (commençant par - ou *) s'affichent comme une section combinée ou comme un bloc séparé par élément, contrôlé par l'option "Listes à puces" — utile quand les éléments doivent s'enrouler indépendamment dans un volet Slack étroit. Les lignes en forme "Étiquette : valeur" deviennent une section de champs, divisée en groupes de dix puisque c'est la limite de Slack par section. Les liens Markdown tels que [étiquette](url) se convertissent à la syntaxe <url|étiquette> de Slack, et **gras** devient le gras à astérisque unique de Slack. Une ligne commençant par "context:" ajoute un bloc de contexte de pied de page, et une commençant par "buttons:" (étiquettes séparées par un pipe, avec une URL facultative entre parenthèses) ajoute un bloc d'actions avec de vrais boutons.

Basculez "Payload pour" entre un webhook entrant et un appel chat.postMessage — le second ajoute un champ de canal que vous pouvez éditer directement. Si le texte d'une section dépasse la limite de 3000 caractères de Slack, l'outil continue de construire du JSON valide mais signale exactement quel bloc est trop long, à la fois dans le décompte en direct et en mettant en évidence les lignes contrevenantes dans la sortie, afin que vous le détectiez avant que l'API de Slack rejette le message.

Tout s'exécute dans votre navigateur. Le plan que vous tapez et le JSON qu'il produit ne quittent jamais votre appareil — rien n'est téléchargé sur aucun serveur, y compris celui de Slack. Quand le payload semble correct, copiez-le, téléchargez-le en tant que fichier .txt pour le coller dans votre code, ou envoyez-le à l'entrée d'un autre outil pour continuer à travailler.

FAQ

Valide-t-il par rapport au schéma Block Kit exact de Slack?
Il construit du JSON structurellement correct pour les types de bloc qu'il supporte (en-tête, section, séparateur, contexte, actions) et applique la limite de section de 3000 caractères, mais n'appelle pas l'API de Slack pour valider le payload complet.
Comment ajouter des boutons?
Écrivez une ligne commençant par "buttons:" suivie d'étiquettes séparées par "|", p. ex. "buttons: Approuver | Refuser". Ajoutez "(https://...)" après une étiquette pour en faire un bouton de style lien.
Quelle est la différence entre le webhook entrant et le payload chat.postMessage?
Un payload de webhook entrant est simplement { text, blocks }. Un appel chat.postMessage a également besoin d'un champ "channel", que l'outil ajoute quand vous basculez l'option "Payload pour".
Pourquoi mes lignes clé-valeur se sont-elles transformées en "champs" au lieu d'un paragraphe?
Toute ligne courte en forme "Étiquette : valeur" est traitée comme un champ. Si vous le vouliez comme du texte, ajoutez une phrase sans deux-points ou reformulez la ligne.
Mon texte de message est-il téléchargé quelque part?
Non. Le plan et le JSON qu'il produit sont construits entièrement dans votre navigateur et ne sont jamais envoyés à un serveur, y compris à Slack.