# Hosted Chat

Publish one deployed workflow as a chat page that people open in a browser

A Hosted Chat is a generated chat interface for one deployed workflow. SteelEngine serves it at a public URL, sends each message to the workflow, and streams the selected block outputs back as the reply.

Hosted Chat is not the workspace [Chat](/chat). Chat is the assistant you use inside SteelEngine. A Hosted Chat runs one workflow for people outside the editor. It is one of the [deployment surfaces](/product-surfaces) alongside the API, MCP, and A2A.

## When to Use It

Use a Hosted Chat when one workflow should answer people directly and you do not want to build a front end. The workflow reads the message from `<start.input>` and can read attached files from `<start.files>`. Every reply comes from the block outputs you select when you create the chat.

For a programmatic client, call the [Execute Workflow](/execution/api#execute-workflow) endpoint instead. For other AI agents, publish an [A2A agent](/mcp/a2a).

## Creating a Hosted Chat

1. Open the workflow and click **Deploy**.
2. Open the **Hosted Chat** tab.
3. Enter the **URL** slug. It becomes `https://steelengine.com/chat/<identifier>`.
4. Enter a **Title**.
5. Under **Output**, select the block outputs that the chat shows as the reply.
6. Choose an **Access control** option (see below).
7. Edit the **Welcome message** if you want. The default is "Hi there! How can I help you today?".
8. Click **Launch Chat**.

SteelEngine deploys the workflow as part of this step, so the workflow does not need to be deployed first. The chat opens in a new tab as soon as it is live. Only users who can administer the workflow can create, edit, or delete its Hosted Chat.

The slug may contain lowercase letters, numbers, and hyphens, up to 100 characters. It must be unique across all Hosted Chats. The field checks availability as you type.

## Access Control

**Access control** decides who can open the chat:

* **Public**: Anyone with the URL can chat.
* **Password**: Visitors enter a password before the chat loads. Click **Generate** to create a 24-character password, then **Copy** it to share. When you edit the chat later, leave the field empty to keep the current password.
* **Email**: Visitors enter an email address. If it is in your **Allowed emails** list, SteelEngine emails them a 6-digit code. The code expires after 15 minutes and allows 5 attempts. Add full addresses or whole domains such as `@example.com`.
* **SSO**: Visitors sign in with your organization's SSO and must match the **Allowed SSO emails** list. This option appears only when your operator has enabled SSO.

A public Hosted Chat runs the workflow with the publisher's permissions and bills the workspace for every message. Treat the URL like a credential, or add a password or email check.

## What Visitors See

The chat page shows your title and welcome message. Visitors type a message or attach files up to 10 MB each. The reply streams in as the workflow runs. Each page load starts a new conversation. Reloading the page clears the history on screen.

Visitors can also use voice input. A voice session lasts up to 1 minute and is billed to the publisher. See [Voice Input](/execution/costs#voice-input) for costs. Voice controls are hidden when the operator has not configured speech-to-text.

Every message is a `chat` run in the workflow's logs. Filter the [Logs](/execution/logging) page by the `chat` trigger to review them.

## Updating and Deleting

Open the **Hosted Chat** tab again to change any setting. Click **Update** to save. Updating also redeploys the workflow, so visitors get the latest version. The **Live at** link under the URL field opens the running chat.

Click **Delete** to remove the chat. The URL stops working for everyone immediately. The workflow itself stays deployed.

## Limits

* One Hosted Chat per workflow.
* Attachments are limited to 10 MB per file.
* Each message runs as a synchronous execution, so the plan's sync [execution time limit](/execution/costs#execution-time-limits) applies.
* Each message counts against the workspace's execution rate limit and credit usage.

## Common Questions

**What is the URL of my Hosted Chat?**

It is your SteelEngine URL followed by /chat/<identifier>, where <identifier> is the URL slug you entered in the Hosted Chat tab. The slug uses lowercase letters, numbers, and hyphens, and must be unique across all Hosted Chats.

**Which workflow version does the chat run?**

The live deployment version. Launching or updating the chat deploys the workflow, so the chat always runs the version that was current when you last clicked Launch Chat or Update. Later canvas edits do not reach the chat until you deploy again or click Update.

**How does the workflow receive the message?**

The message text arrives as <start.input>. Attached files arrive as <start.files>. The reply is built from the block outputs you selected under Output, so select at least one output that contains the answer.

**Can I restrict who uses the chat?**

Yes. Choose Password to require a shared password, Email to send a one-time code to addresses or domains you allow, or SSO (when enabled) to require an organization sign-in that matches your allowed list. Public chats have no check.

**Who pays for messages sent to a Hosted Chat?**

The workspace that owns the workflow. Every message is a chat-triggered execution billed like any other run, and voice sessions add their own charge. Public chats can be used by anyone with the URL, so protect chats whose usage you cannot control.

**Why does the visitor see 'This chat is currently unavailable. Please try again later.'?**

The chat page could not load its configuration. The chat was deleted, or it is no longer active. Open the workflow's Hosted Chat tab, confirm the chat still exists, and click Update to relaunch it.
