Compile
What it does: Compile takes your template and the data you provide (in the API request) and returns the JSON blocks for the Slack message. It does not post to Slack. You then send the compiled message from your own system or your own Slack connections. Configure delivery and interaction handling in your own Slack app when using compiled output. Where it’s available: The versioned Compile API (POST /v1/templates/compile). Compilation consumes credits and usage is logged per your organization.
Validate while authoring
POST /v1/templates/validate checks raw template blocks against optional sample_data
without saving a template or spending credits. It returns normalized input blocks,
request_format, validity, errors, and any warnings, truncation counts, or interactivity
diagnostics. It does not return rendered Slack blocks or text.
The compiled_preview response field has been removed. Integrations that used it for
rendering should save a template with a current version and call
POST /v1/templates/compile with template_id and data. Compile requires
templates:read and messages:create and spends one credit on success.
The MCP validate_template tool likewise returns diagnostics; its include_preview
option has been removed. Use compile_template for rendering, with include_blocks: true
when you need the full Block Kit JSON.
Send
What it does: Send uses the LithoBlocks Slack app to compile the template with your data and post the message to Slack. LithoBlocks owns the delivery and the Slack app connection. Where it’s available: The versioned send API (POST /v1/templates/send), send from the builder (testing), and send from the slash command flow.
You get full functionality of the LithoBlocks platform and services: actions, interactivity, modals, message updates, and webhook delivery. Connect the Slack workspace and configure the template’s button, modal, and destination actions.
When to use which
Operational differences
For a free authoring check, use the validate endpoint rather than compile.
Further reading
- API reference — Compile and send endpoints
- Connecting Slack — Connect the LithoBlocks Slack app for send
- Architecture overview — How data flows through LithoBlocks

