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
  • How Surfaces work
  • Available Surface types
  • Chat Widget
  • REST API
  • MCP Server
  • A2A Agent
  • Slack
  • Email Channel
  • Webhook
  • Surfaces and Capabilities
  • Next steps
Products & Surfaces

What are Surfaces?

Was this page helpful?
Previous

Creating a Product

Next
Built with

Surfaces are the ways your Product reaches users. Each Surface is a deployment channel such as a chat widget on your website, a REST API for developers, an MCP server for AI IDEs, or an email integration. You build your AI Capabilities once, then add Surfaces to make them available wherever your users are. If you are new to the platform, start with What is Runtype? for a quick overview.

How Surfaces work

A Surface connects your Product to a specific interface. When someone interacts with a Surface, such as sending a chat message, calling an API endpoint, or emailing your AI, the Surface routes the request to the right Capability in your Product.

One Product can have multiple Surfaces, so the same Capabilities can be accessed through a chat widget on your website, a REST API for your mobile app, and an MCP server for developer tools without duplicating logic.

Each Surface has its own status, draft, active, or paused, and its own API keys, so you can roll out new channels at your own pace. To learn how Surface availability fits into releases, see Product versioning and status.

Available Surface types

Chat Widget

An embeddable chat interface for your website or web app. You can customize the theme, welcome message, and branding to match your site. Users interact with your AI through a familiar conversational experience.

Great for: Customer support, sales assistants, onboarding guides, interactive demos. To set one up, see Setting up a chat Surface.

REST API

HTTP endpoints that let developers integrate your AI Capabilities into any application. Runtype auto-generates OpenAPI specs for your API Surface, and you can configure rate limits and API keys to control access.

Great for: Mobile apps, backend services, third-party integrations, programmatic access. For setup steps, see Setting up an API Surface.

MCP Server

A Model Context Protocol server that connects to AI-powered IDEs like Claude Desktop, Cursor, and VS Code. Your Capabilities appear as tools that AI assistants can discover and call directly.

Great for: Developer tools, code generation, IDE integrations, AI-assisted workflows. For setup steps, see Setting Up an MCP Surface.

A2A Agent

An open protocol that lets AI Agents communicate with each other. External Agents can discover your Product’s Capabilities and invoke them, which enables multi-Agent collaboration across platforms.

Great for: Multi-Agent systems, AI orchestration, cross-platform Agent workflows. For setup steps, see Setting up an A2A surface.

Slack

Connect your Product to a Slack workspace so users can interact with your AI through direct messages, mentions, channels, and threaded replies.

Great for: Internal tools, team assistants, support workflows within Slack. For setup steps, see Setting up a Slack Surface.

Email Channel

Connect your Product to email so users can interact with your AI by sending and receiving messages. Configure inbound and outbound settings to handle conversations automatically.

Great for: Customer communication, support workflows, automated email responses.

Webhook

Receive push-based events from external systems over HTTP and route them to your Capabilities. A Webhook Surface learns the payload shape from sample events, verifies provider signatures, and maps fields to your Flow inputs.

Great for: Reacting to Stripe payments, Shopify orders, GitHub events, CRM updates, and other event-driven integrations. For setup steps, see Setting up a webhook Surface.

Not sure where to start? A Chat Widget is the fastest way to see your Product in action. You can add more Surfaces later. Your Capabilities stay the same regardless of how many Surfaces you add.

Surfaces and Capabilities

Each Surface exposes the Capabilities you choose. By default, all of your Product’s Capabilities are available on a Surface, but you can enable or disable individual Capabilities per Surface for more control. For setup details, see Adding Capabilities to a Product.

When a user interacts with a Surface, routing depends on the orchestration mode:

  • Single Orchestrator — One Capability handles all incoming requests.
  • Multi-Capability Router — An LLM-powered router classifies the user’s intent and sends it to the most relevant Capability.

A2A Surfaces have their own orchestration options, including delegate and managed modes, to control how skills are coordinated. For more detail, see Surface orchestration modes.

Next steps

  • If you are new to Runtype, start with Creating a Product.
  • For a guided walkthrough, follow Quickstart: From Flow to Live Surface.
  • To choose which Flows or Agents a Surface can expose, see Adding Capabilities to a Product.
  • To launch a website experience, see Setting up a chat Surface.
  • To add developer access, see Setting up an API Surface.
  • To connect AI IDEs, see Setting Up an MCP Surface.