List patient conversations
/patient-conversationsLists patient conversations with messages in a time range, most recently active first, each with its latest message and how many messages fell in the range. Filter to one patient with patient_id. Every request passes after or patient_id, so a read is always bounded; there’s no search by patient name.
Run in Postman: import the collection, set api_key, and find this request in its folder.
Query parameters
org_idUUIDThe organization the call acts on, from List organizations. Required when an account API key reaches more than one organization; an organization key or a key limited to one organization can leave it out.
afterstringOnly messages sent at or after this time. An RFC 3339 timestamp, or a date for midnight in the organization’s time zone.
beforestringOnly messages sent before this time. Same format as after.
patient_idUUIDOnly conversations with this patient, on any phone number.
page[limit]integerNumber of records to return. Defaults to 50, maximum 100.
page[after]stringCursor from the previous page’s pagination.next_cursor.
Returns
Returns 200 OK with a data array of Conversation objects and a pagination object. See pagination.
Errors
Failed requests return application/problem+json problem details. The errors specific to this endpoint:
| Status | Code | Meaning |
|---|---|---|
| 400 | invalid_request | The request is malformed, such as invalid JSON. |
| 400 | org_id_required | The key reaches more than one organization: pass org_id. |
| 400 | range_required | Pass after or patient_id, so every read is bounded. |
| 401 | invalid_token | The API key is missing or malformed, or isn’t a BloomText key. |
| 401 | key_revoked | The API key was revoked. |
| 401 | key_expired | The API key’s expiry has passed. |
| 403 | insufficient_scope | The key doesn’t have the scope this endpoint needs. |
| 403 | org_not_reachable | The key can’t reach the organization in org_id. |
| 429 | rate_limited | Too many requests. Retry after Retry-After seconds. |