Skip to content

List messages

GET
/api/v1/messages
after

Opaque cursor: pass the next_cursor of the previous page back unchanged. With sort it must come from a page with the same sort and order; without sort it is the id of the last record.

string

Opaque cursor: pass the next_cursor of the previous page back unchanged. With sort it must come from a page with the same sort and order; without sort it is the id of the last record.

limit
integer
>= 1 <= 200
thread_id
string format: uuid
channel
string
Allowed values: email
kind
string
Allowed values: message reaction
external_id
string
>= 1 characters <= 998 characters
in_reply_to
string
>= 1 characters <= 998 characters
sort

Sort by id or created_at or occurred_at. Stored columns need only this list’s read scope; derived fields need the scopes that show them. null sorts as the lowest value: first in asc, last in desc. Ties break on id in the same direction. Newest first: sort=created_at&order=desc; for mail use sort=occurred_at&order=desc. Without sort the list is in ascending id order with UUID cursors. Paging is by keyset, not a snapshot: values can rise between pages (or fall), so a record may repeat in asc or be missed in desc. In descending mail date order, newly arrived mail ahead of the cursor is not seen; backfilled older mail behind it is. A complete walk uses the default order. An incremental walk also uses the default ascending id order. Mail created_at uses a temporary sort over the workspace’s rows; id is indexed and follows capture order.

string
Allowed values: id created_at occurred_at

Sort by id or created_at or occurred_at. Stored columns need only this list’s read scope; derived fields need the scopes that show them. null sorts as the lowest value: first in asc, last in desc. Ties break on id in the same direction. Newest first: sort=created_at&order=desc; for mail use sort=occurred_at&order=desc. Without sort the list is in ascending id order with UUID cursors. Paging is by keyset, not a snapshot: values can rise between pages (or fall), so a record may repeat in asc or be missed in desc. In descending mail date order, newly arrived mail ahead of the cursor is not seen; backfilled older mail behind it is. A complete walk uses the default order. An incremental walk also uses the default ascending id order. Mail created_at uses a temporary sort over the workspace’s rows; id is indexed and follows capture order.

order

Sort direction: asc (default) or desc. Needs sort.

string
Allowed values: asc desc

Sort direction: asc (default) or desc. Needs sort.

Success

object
data
required
Array<object>
object
id
required
string format: uuid
thread_id
required
string format: uuid
channel
required
string
Allowed values: email
kind
required
string
Allowed values: message reaction
external_id
required
string
in_reply_to
required
string | null
author
required
object
user_id
required
string
user_name
required
string
full_name
required
string
is_bot
required
boolean
occurred_at
required
string
preview
required
string
version
required
integer
retracted_at
required
string | null
attachments
required
Array<object>
object
id
required
string format: uuid
position
required
integer
type
required
string
Allowed values: image file video audio
name
required
string | null
mime_type
required
string | null
size_bytes
required
integer | null
inline
required
boolean
content_id
required
string | null
fetch_status
required
string
Allowed values: stored pending failed skipped
file_id
required
string | null format: uuid
created_by
required
string format: uuid
created_at
required
string
next_cursor
required

Opaque cursor for the next page, or null at the end. Pass it back as after, with the same sort and order.

string | null