A visual workspace for your team
Design messages and forms with reusable blocks. See the Slack preview as you build, without burying every copy change in your application code.
The building engine for Slack
Design visually. Bring your data. Make it interactive.
LithoBlocks brings the builder, the engine, and the delivery tools together—so you can focus on the experience.
A button gives the team a useful next step.
Open a form with the release already attached.
Send the response to your service via webhook and update the original message.
The submitted note travels with the release context.
Compose your message with reusable blocks while the rendered Slack experience stays alongside it.
Use sample data to see how your placeholders become real content before you send.
Connect form submissions to your webhook to send the answers and release context to your service, and update the original message so the team stays in the loop. Try it above.
More than a message builder.
Slack gives you the building blocks. LithoBlocks brings them together in a product your whole team can build with.
Design messages and forms with reusable blocks. See the Slack preview as you build, without burying every copy change in your application code.
Turn structured data into rich Slack experiences with placeholders, conditions, repeating content and tables. Reuse one template across your workflows.
Connect buttons to webhooks, open forms, and update the original message as someone responds. Keep the selected item in context through the next action.
Send immediately, schedule a reminder, or combine events into a digest. Choose the delivery pattern that makes sense for what you’re building.
Built for your stack
LithoBlocks holds the template and handles the rendering. Your application sends the data. Your team can improve the experience without rewriting the integration.
Create and version templates programmatically. Validate your authoring with free diagnostics, then compile or deliver through metered operations.
// On your server; replace the sample IDs.
const response = await fetch(
'https://api.lithoblocks.com/v1/templates/send',
{
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.LB_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
template_id: '11111111-1111-4111-8111-111111111111',
channel_id: 'C0123456',
data: { count: 14 }
})
}
);
if (!response.ok) throw new Error(await response.text());Replace the example IDs with your template and destination. Keep API keys on your server.
One connected product
From authoring to the next actionBring design, development and operations into the same workflow.
Share templates across your team, inspect versions, and keep changes under your control.
Explore templates →Use MCP to discover, author and validate templates, with access tied to your permissions.
Meet the MCP integration →Follow message usage, delivery attempts, interactions and webhook outcomes from the dashboard.
Explore the interaction loop →Build the next step
Give your team a form that collects the right details. Design the input, preview the experience, and keep it connected to the work.
Open LithoBlocks ↗
Plans that grow with you
Pricing & credit estimator →Choose a shared credit allowance for your organization, with clear usage rates for each operation.
$20 / month
500 monthly credits →Team$50 / month
1,000 monthly credits →Business$250 / month
10,000 monthly credits →Credits cover rendering and delivery operations. Scheduled sends, bulk sends and digests have distinct charging rules. Understand usage →
Slack + LithoBlocks
The visual workspace and engine for your next Slack experience.