For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dashboard
User GuideDeveloper GuidesAPI Reference
User GuideDeveloper GuidesAPI Reference
  • Getting Started
    • What is Runtype?
    • Creating your account
    • Platform keys vs. BYOK
    • Understanding the Runtype UI
    • Quickstart: Social Media Post Generator
    • Quickstart: From Agent to Chat Widget
  • Dashboard
    • What is the Dashboard?
    • Daily executions
  • Playground
    • What is the Playground?
  • Products & Surfaces
    • What are Products?
    • What are Surfaces?
    • Creating a product
    • Setting up a chat surface
    • Setting up an API surface
    • Setting up an MCP surface
    • Setting up an A2A surface
    • Setting up a Slack surface
    • Setting up a webhook surface
    • MCP authentication
    • Authenticating with product API keys
    • Embedding the chat widget (script tag)
    • Embedding the chat widget (React)
    • Surface orchestration modes
    • Product views
    • Adding capabilities to a product
    • Connecting external agents
    • How A2A works
    • Connecting to MCP clients
    • Scoping API keys to capabilities
    • Auto-generated OpenAPI spec
    • Calling your API endpoints
    • Client tokens and domain restrictions
    • AI-powered theme generation
    • Widget theming and customization
    • Product versioning and status
  • Flows
    • What are Flows?
    • Creating and editing flows
    • Flow step types overview
    • Agent and flow templates
    • Using prompt steps
    • Using transform-data steps
    • Using conditional steps
    • Using fetch-url and api-call steps
    • Using record steps (upsert/retrieve)
    • Flow variables and templates
    • Flow versioning and publishing
    • Running flows in batch
    • Handling batch failures
    • Debugging flows
  • Agents
    • What are Agents?
    • Creating and configuring agents
    • Agent tools
  • Records
    • What are Records?
    • Creating and managing records
    • Using records in flows
    • Filtering and searching records
  • Tools
    • What are Tools?
    • Built-in tools
    • Creating custom tools
    • Creating external tools
    • Runtime tools
  • Evals
    • What are Evals?
    • Running an eval
    • Interpreting eval results
  • Schedules
    • What are Schedules?
    • Automating batch processing
  • Logs
    • What are Logs?
    • Working with logs
  • Integrations
    • Connecting AI model providers
    • Slack integration
    • Google Workspace integration
    • GitHub integration
    • Linear integration
    • Weaviate (vector search)
    • Firecrawl (web scraping)
    • Exa (web search)
    • Braintrust (tracing)
  • Settings
    • What's in Settings?
    • Available AI models
    • What are Organizations?
    • Managing AI models
    • Managing API keys
    • Managing secrets
    • Billing and plans
    • Usage data
    • Team members and permissions
    • Appearance and preferences
    • Integrations (PostHog, Weaviate, Daytona)
  • Troubleshooting & FAQ
    • FAQ
    • Rate limits and usage
    • Managing Runtype with Claude
    • Agent skills
    • Flow execution failures
    • Common errors and solutions
    • Authentication issues
Dashboard
LogoLogo
On this page
  • Create the Slack Surface
  • Connect the Slack app
  • Choose how the Surface responds
  • Test the connection
  • Next steps
Products & Surfaces

Setting up a Slack Surface

Was this page helpful?
Previous

Setting up a webhook Surface

Next
Built with

Use a Slack Surface to let people interact with a Product from Slack. It works well for direct messages, mentions, channels, and threaded replies.

Before you begin, create a Product and decide which Capability will handle Slack messages. You will also need access to your Slack workspace so you can create and install a Slack app.

Create the Slack Surface

  1. Open the Product you want to connect to Slack.
  2. Go to Surfaces and click Add Surface.
  3. Select Slack.
  4. Enter a name for the Slack app.
  5. Review the manifest preview and create the app in Slack.

The setup wizard guides you through the Slack app fields Runtype needs to connect the Surface.

Connect the Slack app

  1. In Slack, open the app you created and copy the App ID from Basic Information.
  2. Copy the Signing Secret from the same page.
  3. Return to Runtype and paste both values into the Slack setup wizard.
  4. Install the app to your workspace in Slack.
  5. Copy the Bot User OAuth Token and paste it into Runtype.

Runtype validates the connection and shows the connected workspace when setup is complete.

Choose how the Surface responds

A Slack Surface can receive direct messages, channel messages, mentions, and replies in threads. After the Surface is connected, attach the right Capability so incoming Slack messages route to the Flow or Agent you want to run.

If you have not attached a Capability yet, see Adding Capabilities to a Product.

Test the connection

  1. Send a direct message to the Slack app or mention it in a channel where it is available.
  2. Confirm the message reaches your Product.
  3. Check that the response appears in Slack.

If verification succeeds, your Slack Surface is ready to use.

Start with direct messages while you test. Once the response looks right, expand to channels or mention-based workflows.

Next steps

To understand how Surfaces work across Products, read What are Surfaces?. If you are still deciding how to expose your Product, compare this setup with Setting up a chat Surface and Setting up an API Surface.