BlockKit elements are JSON objects that define the structure and behavior of UI components. Each element has a specific type property that identifies what kind of element it is, along with additional properties that configure its appearance and behavior.

Available Elements

The following BlockKit elements are available:
  • Alert - A block that displays an alert message with different severity levels
  • Block Replacement - A block that serves as a placeholder for dynamic content
  • Bullet List - A block that displays an unordered (bullet) list
  • Callout - A block that displays a callout with an icon, title, and content to highlight important information
  • Heading - A block that displays a heading with a specified level
  • List Item - A list item that can be used in bullet or ordered lists
  • Ordered List - A block that displays a numbered (ordered) list
  • Section - A container block that groups other block elements together
  • Step - A block that represents a step in a process or workflow
  • Step List - A block that displays a list of steps in a process or workflow
  • Text - A block that displays formatted text with optional replacements
  • Wizard - A block that displays a multi-step wizard with navigation controls
  • Wizard Step - A block that represents a single step in a wizard

Basic Structure

Every BlockKit element follows this basic structure:
{
  "type": "element-type",
  // Additional properties specific to the element type
}

Getting Started

  1. Choose the appropriate element type for your needs
  2. Review the element’s documentation for required and optional properties
  3. Compose your JSON structure using the element’s schema
  4. Test your BlockKit structure in your application
Use our BlockKit Builder to help you build and test your BlockKit structures.

Best Practices

  • Always include required properties for each element
  • Use meaningful text content that provides value to users
  • Consider accessibility when composing your BlockKit structures
  • Test your structures with different data to ensure they work as expected

Composition

BlockKit elements can often be nested or combined to create more complex structures. Refer to individual element documentation for details on how they can be composed together.