Skip to navigation

List webchat messages

View as Markdown

Returns the first 50 messages of a conversation in chronological order, in a compact camelCase shape for chat UIs. It works for any conversation id of the workspace, not only webchat ones. For the full snake_case rows with attachments and the conversation fields, use GET /api/conversations/{conversationId}.

An id that does not exist in the workspace returns an empty list, not 404. Content is returned as stored: delimiter tags are not stripped here.

Consistency. Cached for up to 30 seconds per conversation. Messages added in that window, including operator replies, can be missing until the entry expires.

Access

  • Required scope: read (or write).
  • Rate limit: General API — 120 requests/min per workspace (Starter), 200 (Growth), 300 (Business), 600 (Enterprise). The router applies it a second time on this route. The two counters are separate, so the effective ceiling is still the plan number. See Rate limits.
  • Plan: Available on every plan.

Authentication

AuthorizationBearer

Workspace API key: jl_ followed by 64 lowercase hex characters, created by the workspace owner in the dashboard (Settings → API Keys) and sent as Authorization: Bearer jl_.... The plaintext is shown once, at creation; Jelliu stores only a SHA-256 hash. A workspace can hold up to 25 active keys.

ScopeGET / HEADPOST / PUT / PATCH / DELETEAdmin-only routes
readYesNoNo
writeYesYesNo
fullYesYesYes

Operations restricted to admins or owners reject keys without the full scope with 403, and say so in their description. No key, whatever its scope, can mint or revoke API keys or rotate a webhook secret — that requires a signed-in owner session. A revoked key stops authenticating within about 10 seconds. See Authentication.

Path parameters

conversationIdstringRequiredformat: "uuid"

Id of the conversation, as returned by POST /api/webchat/message. A value that is not a UUID returns 400.

Response

Up to 50 messages, oldest first.
datalist of objects

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
429
Too Many Requests Error