• Express checkout for returning customers
• Saved delivery preferences
• Clearer payment recovery messages
No migration is required.
Engineering / BLOCK KIT JSON
Announce a release with a concise changelog, rollout status, and full release notes.
Blank optional fields are omitted. Fallback text updates with your fields.
Approximate Slack rendering. Buttons are visual previews; no actions are sent.
Local validation checks the supported schema. It does not guarantee Slack API acceptance.
Manual editing and validation run in your browser. Opening Slack’s Builder shares the message with Slack.
Northstar 2.8 is here A faster path from cart to checkout • Express checkout for returning customers • Saved delivery preferences • Clearer payment recovery messages No migration is required. Release: v2.8.0 Availability: Available to all workspaces Released 20 Oct 2026 · Built by the Commerce team Release notes: https://example.com/releases/2.8 Read the docs: https://example.com/docs/express-checkout
Download the payload or use this command in your own terminal. Replace the placeholder URL with your Slack incoming webhook. Keep the real URL secret. This tool never sends a Slack message.
curl --request POST \
--header 'Content-Type: application/json' \
--data-binary @- \
'https://hooks.slack.com/services/YOUR/WEBHOOK/URL' <<'SLACK_MESSAGE_JSON'
{
"text": "Northstar 2.8 is here\nA faster path from cart to checkout\n• Express checkout for returning customers\n• Saved delivery preferences\n• Clearer payment recovery messages\n\nNo migration is required.\nRelease: v2.8.0\nAvailability: Available to all workspaces\nReleased 20 Oct 2026 · Built by the Commerce team\nRelease notes: https://example.com/releases/2.8\nRead the docs: https://example.com/docs/express-checkout",
"blocks": [
{
"type": "header",
"text": {
"type": "plain_text",
"text": "Northstar 2.8 is here"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*A faster path from cart to checkout*\n• Express checkout for returning customers\n• Saved delivery preferences\n• Clearer payment recovery messages\n\nNo migration is required."
}
},
{
"type": "section",
"fields": [
{
"type": "mrkdwn",
"text": "*Release*\nv2.8.0"
},
{
"type": "mrkdwn",
"text": "*Availability*\nAvailable to all workspaces"
}
]
},
{
"type": "context",
"elements": [
{
"type": "mrkdwn",
"text": "Released 20 Oct 2026 · Built by the Commerce team"
}
]
},
{
"type": "divider"
},
{
"type": "actions",
"elements": [
{
"type": "button",
"text": {
"type": "plain_text",
"text": "Release notes"
},
"action_id": "notes",
"url": "https://example.com/releases/2.8",
"style": "primary"
},
{
"type": "button",
"text": {
"type": "plain_text",
"text": "Read the docs"
},
"action_id": "docs",
"url": "https://example.com/docs/express-checkout"
}
]
}
]
}
SLACK_MESSAGE_JSONGive product, support, and engineering a shared release summary. The message calls out customer-visible improvements before implementation details, with a release notes link for anyone who needs the full changelog.
Keep the summary to a few meaningful changes. Include migration or compatibility notes when a release requires action. Update availability to distinguish a gradual rollout from a generally available feature.
Publish after release verification. Link to documentation your audience can access, and communicate any required migration separately from the announcement.
To post this JSON, create a Slack app with an incoming webhook for your channel, or use chat.postMessage with the appropriate bot token and permissions. Keep credentials on your server.
For buttons, enable Interactivity and handle Slack’s interaction requests, including URL buttons. Acknowledge requests promptly. This preview does not execute actions, authorize users, or save decisions.
Use the top-level fallback text for notifications and accessibility. Test your final payload in Slack; local validation covers the declared subset, and visual details vary by client.
Slack interaction setup ↗