Skip to content

Workflows

List chat deployments

List hosted chats and their URLs with workspace read access and cursor pagination. Filter by `workflowId` for one workflow's chat. The admin-only detail read also includes visitor access settings and customizations. Passwords are never returned; organization permission groups can restrict chat deployment access. OAuth scope: `api:read`.

GET/api/v2/chat-deployments

List hosted chats and their URLs with workspace read access and cursor pagination. Filter by workflowId for one workflow's chat. The admin-only detail read also includes visitor access settings and customizations. Passwords are never returned; organization permission groups can restrict chat deployment access.

OAuth scope: api:read.

Authentication

Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.

Send X-API-Key in the request header.

Alternatively

Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.

Authorization: Bearer YOUR_ACCESS_TOKEN

Required scopes: api:read

OAuth flows
json
{
  "authorizationCode": {
    "authorizationUrl": "https://www.sim.ai/api/auth/oauth2/authorize",
    "tokenUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "refreshUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "scopes": {
      "api:read": "Read your workspaces, workflows, files, tables, and logs",
      "api:write": "Read, create, change, run, and delete resources in your workspaces",
      "offline_access": "Stay signed in without asking again"
    }
  }
}

OAuth scope: api:read.

Query parameters

workspaceIdstringRequired

Workspace whose chat deployments to list.

minLength
1
maxLength
128
workflowIdstring

Restrict to deployments of one workflow.

minLength
1
isActiveboolean

Restrict to active or inactive deployments.

sortBystring

Field used to sort the result.

default
createdAt
enum
["identifier","createdAt","updatedAt"]
sortOrderstring

Sort direction.

default
desc
enum
["asc","desc"]
limitinteger

Maximum chat deployments to return per page. Must be a whole number from 1 to 100. Defaults to 50.

default
50
minimum
1
maximum
100
cursorstring

Opaque cursor from the previous page. Send it back with the same sort and filters; only limit may change. Change anything else and pagination must restart without a cursor.

minLength
1

Responses

200

A page of chat deployments.

object

A cursor-paginated page of chat deployments.

2 fields
dataarrayRequired

Items in the current page.

Schema details
Array itemobject

A workflow published as a hosted chat, without the fields the detail read gates.

14 fields
idstringRequired

Unique chat deployment identifier.

workflowIdstringRequired

Workflow this deployment publishes.

workspaceIdstringRequired

Workspace the deployment belongs to, derived from its workflow.

identifierstringRequired

URL slug the deployed chat answers on. Unique across live deployments.

urlstringRequired

Public URL of the deployed chat. There is no chat subdomain — the identifier is a path segment.

titlestringRequired

Title shown to visitors.

descriptionstringRequired

Description shown to visitors. Empty when unset.

isActivebooleanRequired

Whether the deployment answers requests.

authTypestringRequired

How visitors are gated: public (no gate), password, email, or sso.

enum
["public","password","email","sso"]
outputConfigsarrayRequired

Block outputs surfaced to visitors.

Schema details
Array itemobject

One block output currently surfaced to chat visitors.

3 fields
workflowIdstring

Child workflow containing the selected block. Omitted for the deployed workflow.

blockIdstringRequired

Block whose output the chat streams.

pathstringRequired

Path within that block output. Empty means the whole output.

Additional properties are not allowed.

includeThinkingbooleanRequired

Whether visitors may receive provider thinking events. They must also opt into the streaming protocol.

includeToolCallsbooleanRequired

Whether visitors may receive tool lifecycle events. They must also opt into the streaming protocol.

createdAtstringRequired

ISO 8601 timestamp when the deployment was created.

format
date-time
updatedAtstringRequired

ISO 8601 timestamp when the deployment was last modified.

format
date-time

Additional properties are not allowed.

nextCursorvalueRequired

Opaque cursor for the next page. Send it back as cursor; null means there are no more pages. Do not construct a cursor yourself.

Schema details

Any of

Option 1string
Option 2null

Additional properties are not allowed.

Response example 1

json
{
  "data": [
    {
      "id": "chat_01J8ZK3QW4M6X2R9T7B5C0V2",
      "workflowId": "3b1f7c92-8d4e-4a6b-9c0d-5e2f8a714b36",
      "workspaceId": "9f4c2a10-3b7e-4d58-8f6a-2c1d0e5b7a94",
      "identifier": "support",
      "url": "https://sim.ai/chat/support",
      "title": "Support chat",
      "description": "Ask about billing, onboarding, or outages.",
      "isActive": true,
      "authType": "public",
      "outputConfigs": [
        {
          "blockId": "block_01J8ZK3QW4M6X2R9T7B5C0V4",
          "path": "content"
        }
      ],
      "includeThinking": false,
      "includeToolCalls": false,
      "createdAt": "2026-06-12T10:30:00.000Z",
      "updatedAt": "2026-06-12T10:30:00.000Z"
    }
  ],
  "nextCursor": null
}

Response headers

X-RateLimit-Limitinteger

Maximum requests allowed in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Remaininginteger

Requests remaining in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Resetstring

ISO 8601 timestamp when the current rate-limit window resets.

format
date-time
pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Was this helpful?
Suggest an edit