messages-v2

List messages for the account with cursor pagination

Default order is newest-first by timestamp (browse / initial full load). When updated_since is set it is an incremental change feed: rows are filtered, sorted, and paginated by the updated_at watermark ASCENDING, so a row changed mid-pagination is never skipped — pre-updated_at legacy rows are not part of the feed (capture those once via the initial full list).

An external_location_id the caller does not own yields an empty page, never another tenant's rows; params are validated first so that path still rejects a bad limit / cursor / date.

get/v2/messages

Request

  • Base URL: https://api.tracklysms.com/api
  • URL: https://api.tracklysms.com/api/v2/messages
  • Auth: API key in header X-Api-Key

Query parameters

limitstring

Page size (default 50, max 200)

cursorstring

Opaque pagination cursor from a previous response

external_location_idstring

Scope to the owned account (self or a child) with this external location id — a parent's per-location message lookup

updated_sincestring

Incremental re-sync: only rows changed after this ISO8601 datetime

date_tostring

Filter timestamp <= this ISO8601 datetime

date_fromstring

Filter timestamp >= this ISO8601 datetime

statusstring

Filter by lifecycle status

tostring

Filter by recipient phone number (E.164)

list_numberstring

Filter by sending list phone number (E.164); ignored if sending_list_id is set

sending_list_idstring

Filter by sending list ID

api_key'me'

Use 'me' to filter messages sent by the calling API key

Response

Success

Changes

No recorded changes to this operation across all 1 revision of this API.