Hoppa till innehåll
100% lokalt

Slack Block Kit Builder

Omvandla en textöversikt till användbar Slack Block Kit JSON.

Inmatning

Slack Block Kit Builder

Skriv ett meddelande som du skulle skriva ett dokument och det här verktyget omvandlar det till JSON-payload som Slacks Block Kit förväntar. Rubriker som börjar med # blir header-block, vanliga stycken blir section-block med mrkdwn-text, och en rad med tre eller fler streck blir en skiljelinje — utan att manuellt skriva kapslade block-objekt eller slå upp schemat för varje typ.

Punktlistor (börjar med - eller *) återges som en kombinerad sektion eller som ett separat block per objekt, kontrollerat av alternativet "Punktlistor" — användbart när objekt ska radbryta oberoende i ett smalt Slack-fönster. Rader i formen "Etikett: värde" blir ett fält-section, uppdelat i grupper om tio eftersom det är Slacks gräns per sektion. Markdown-länkar som [etikett](url) konverteras till Slacks <url|etikett>-syntax, och **fetstil** blir Slacks enstaka asterisk fetstil. En rad som börjar med "kontext:" lägger till ett context-block, och en som börjar med "knappar:" (etiketter separerade med ett rör, med valfri URL i parenteser) lägger till ett actions-block med verkliga knappar.

Byt "Payload för" mellan inkommande webhook och chat.postMessage — den senare lägger till ett kanalfält som du kan redigera direkt. Om någon sections text överskrider Slacks gräns på 3000 tecken, fortsätter verktyget att bygga giltig JSON men flaggar exakt vilket block som är för långt, både i direkträkningen och genom att markera relevanta rader i utmatningen, så du fångar det innan Slacks API avvisar meddelandet.

Allt körs i din webbläsare. Översikten du skriver och JSON:en som den producerar lämnar aldrig din enhet — ingenting laddas upp till någon server, inte heller till Slack. När payload ser rätt ut, kopierar du den, laddar ner den som en .txt-fil för att klistra in i din kod, eller skickar den till ett annat verktygs inmatning.

FAQ

Validerar den mot Slacks exakta Block Kit-schema?
Det genererar strukturellt korrekt JSON för de block-typer som stöds (header, section, divider, context, actions) och tillämpar gränsen på 3000 tecken per sektion, men gör inte något API-anrop till Slack för att validera den fullständiga payload.
Hur lägger jag till knappar?
Skriv en rad som börjar med "buttons:" följt av etiketter separerade med "|", t.ex. "buttons: Godkänn | Avvisa". Lägg till "(https://...)" efter en etikett för att göra den till en länk-knapp.
Vad är skillnaden mellan webhook och chat.postMessage payload?
En inkommande webhook-payload är bara { text, blocks }. Ett chat.postMessage-anrop behöver också ett "channel"-fält, som verktyget lägger till när du byter alternativet "Payload för".
Varför blev mina nyckel-värde-rader till "fält" istället för ett stycke?
Varje kort rad i formen "Etikett: värde" behandlas som ett fält. Om du menade det som prosa, lägg till en mening utan kolon eller omformulera raden.
Laddas min meddelandetext upp någonstans?
Nej. Översikten och JSON:en som den producerar är helt byggd i din webbläsare och skickas aldrig till någon server, inte heller till Slack.