Skip to content

Fetch Contacts

POST
/contacts/fetch

Page through contacts, projecting only the columns you name.

A POST because the filter is a body, not because it writes: this reads and mutates nothing, and is tiered as a read so a read-only key can call it.

Prefer this over GET /contacts when you want a narrow column set - naming the columns lets the planner drop joins the full row forces.

Authorizations

Parameters

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

Page through contacts, optionally projecting a narrow column set.

mapping_columns is not only a smaller payload: naming a narrow set lets the planner drop joins the full row would force, so it is materially cheaper on a wide org.

object
filter
Any of:
string
limit

Records per page.

integer
default: 50 >= 1 <= 1000
mapping_columns
Any of:
Array<string>
page

Page number (1-indexed).

integer
default: 1 >= 1

Responses

200

Successful Response

object
data
required

An open envelope for a LIST result, so a bare list keeps its shape.

object
items
Array
key
additional properties
any
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
notes
Any of:
Array<string>
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer
total_available
Any of:
integer
total_is_lower_bound
Any of:
boolean

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string