Skip to main content
GET
List bots
Auth: TokenAccount or TokenInstanceRate limit: Global (100/min) • Idempotent: yes

Description

Returns the Typebot bots registered on the instance, along with the status and last_error of the integration. Pass ?botId= to return a single bot instead of the whole list. The local status is complemented (best-effort) with the live integration state, with a 10s timeout; if the live state is unavailable, the local values are kept.
Each bot now carries live enrichment: active_sessions (count of opened + paused sessions for that bot) and last_activity_at (timestamp of the last activity, RFC3339, absent when the bot never ran).
This endpoint does not return 503 when the integration is unavailable: it responds with local data and, if any, a last_error. The 503 integration gateway not configured only appears in set, update and start.

Example

All bots
A single bot

Success response

200 OK

Bot fields

Path parameters

string
required
Instance name (e.g., suporte).

Query parameters

string
UUID of a single bot to return. Omitted, all the instance’s bots are listed.

Headers

string
required
TokenAccount or TokenInstance.

Behavior

1

Read the local bots

Queries the instance’s typebot_bots table (filtered by botId when supplied). This step is fast and always works.
2

Enrich with live session data

For each bot, RyzeAPI counts the opened + paused sessions (active_sessions) and resolves the last_activity_at.
3

Read the integration link

Fetches the row in typebot_integrations to get the local status and last_error.
4

Complement with the live integration state (best-effort)

If there is an active integration, RyzeAPI queries the current state with a 10s timeout and overwrites status / last_error with the live values. On network failure, it keeps the local ones.

Errors

Next

Live sessions

List and control ongoing conversations with GET /api/typebot/sessions/:instance.

Edit bot

Change a bot’s fields with PATCH /api/typebot/update/:instance.