Skip to main content
GET
/
api
/
chatwoot
/
list
/
:instance
Status / info
curl --request GET \
  --url https://api.example.com/api/chatwoot/list/:instance \
  --header 'token: <token>'

Documentation Index

Fetch the complete documentation index at: https://docs.ryzeapi.cloud/llms.txt

Use this file to discover all available pages before exploring further.

Auth: TokenAccount or TokenInstanceRate limit: Global (100/min) • Idempotent: yes

Description

Returns the local status of the Chatwoot integration and tries to enrich it with live data from the RyzeIntegrations bridge (best-effort). The chatwootApiToken is never exposed in this response.

Example

curl -X GET "https://ryzeapi.cloud/api/chatwoot/list/suporte" \
  -H "token: $Token_Account"

Success response

200 OK
{
  "instance_name": "suporte",
  "status": "active",
  "bridge_integration_id": "int_xyz789abc",
  "chatwoot_base_url": "https://chatwoot.example.com",
  "chatwoot_account_id": 5,
  "chatwoot_inbox_id": 42,
  "chatwoot_inbox_name": "WhatsApp - Orion",
  "last_error": "",
  "created_at": "2026-04-20T10:15:30Z"
}
FieldDescription
instance_nameInstance name.
statusactive / paused / error. When the bridge responds, this value is live.
bridge_integration_idID returned by RyzeIntegrations at set time.
chatwoot_base_urlURL of the Chatwoot installation.
chatwoot_account_idNumeric ID of the Chatwoot account.
chatwoot_inbox_idID of the inbox created by the bridge (filled in after the first list that successfully reaches the bridge).
chatwoot_inbox_nameInbox name.
last_errorLast error message reported by the bridge. Empty when healthy.
created_atRFC 3339 timestamp when the integration was created.
The chatwootApiToken field is serialized with the tag json:"-", it never appears in the response, even for the owning account’s TokenAccount.

Path parameters

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

Headers

token
string
required
TokenAccount or TokenInstance.

Behavior

1

Read local data

Queries the chatwoot_integrations table. This step is fast and always works.
2

Live enrichment (best-effort)

If the bridge is enabled, calls GET /v1/integrations/<bridge_integration_id> with a 10s timeout. On network failure, it falls back to local data.
3

Overwrite volatile fields

If the bridge responded, status and last_error are replaced with the live values.
4

Backfill of inbox_id

If the bridge returned an inbox_id and the local one is still 0, the database is updated (SetInboxID), useful for eventual-consistency cases right after set.
5

Bridge 404 is tolerated

When the bridge responds 404 for the bridge_integration_id, it is treated as eventual consistency (not an error): we proceed with the local data.

Errors

HTTPerror.message
404instance not found
404no chatwoot integration for this instance
503integration gateway not configured (set BRIDGE_URL and BRIDGE_TOKEN)
If last_error is non-empty, inspect the message, it usually indicates that Chatwoot dropped the session (token rotated, inbox manually removed, etc.). Reactivating with POST /api/chatwoot/set/:instance usually fixes it.

Next

Reactivate / update

Use POST /api/chatwoot/set/:instance to fix credentials or flags.

Deactivate

Remove the local + bridge integration.