Skip to Content
Docs are being rebuilt — start at Introduction → How it works.

Interface

An interface is a pre-built input form that sits on top of an agent’s chat surface. Instead of asking the user to type a free-form question, the agent gives them named fields to fill in — and the agent receives the answers in a structured, predictable shape.

Real example: an “Incident report” interface for the IT team. Fields: Severity (dropdown: P1 / P2 / P3 / P4), System affected (dropdown of known systems), Description (text area), Screenshot (optional file upload). The user fills in the form, hits Submit, and the IT agent receives a single, structured message containing all four fields. The agent then opens a ticket, posts to the right Slack channel, and notifies the on-call engineer.

Why interfaces exist

Chat is free-form by design — and that’s great when the user knows exactly what they want. But for repeated, predictable tasks where the user keeps forgetting which field matters, a form is faster and more reliable than typing:

  • Less variance in what gets sent (no “I forgot the severity”).
  • Faster for the user (typing > clicking through a form? rarely).
  • Easier for downstream automation (the agent gets a known schema).
  • Better for non-technical users who don’t know how to phrase the question.

How an interface connects to an agent

In the agent builder, the Interfaces tab. Each interface has:

  • A name shown to users (e.g. “Report an incident”, “Request a translation”, “Onboard a new employee”).
  • A list of fields — each field has a label, type (text, number, date, dropdown, file, etc.), and whether it’s required.
  • An agent action — what to do with the submitted form. Usually that’s “send to this agent as a chat message”. The agent’s instructions explain how to handle each field.

Users see the form on the agent’s chat surface as one of the conversation-starter buttons. Clicking it opens the form; submitting sends the structured message into the chat as if the user had typed it.

Interface vs channel

These overlap conceptually, so the distinction matters:

  • A channel is where the user is (Slack, Teams, web chat, voice).
  • An interface is a structured input on top of chat. It works in the web chat surface — and, depending on the channel, may also work in Slack or Teams as slash-command forms.

An agent can have both: it lives on Slack (channel) and has a “Report an incident” form (interface). The user can either type freely or fill in the form. Either way the agent receives a usable message.

When to use an interface

  • The task happens often enough that a form pays off.
  • The required fields are stable (changing them requires a re-publish).
  • Users are non-technical, or the variance in free-form requests has been a problem.
  • You want analytics — interface submissions can be tagged and aggregated.

When not to use an interface

  • The task is one-off or ad-hoc.
  • The required fields aren’t stable yet — write down what works in chat first, then freeze it as a form.
  • The user already knows what to say.