List contacts (cursor-paginated)
Vorschauget
https://api.expiryedge.com/v2/contactsany member of an organization60/min
Anfrage
curl 'https://api.expiryedge.com/v2/contacts?updated_since=2026-09-01T00%3A00%3A00Z&limit=50' \
-H "Authorization: Bearer $EXPIRYEDGE_API_KEY"Antwort
{
"data": [
{
"id": "c_8Hk2pQ",
"organization_id": "org_northwind",
"user_id": "u_71bXq",
"first_name": "Priya",
"last_name": "Shah",
"email": "priya.shah@northwinddental.example",
"sms_phone": "+15550123456",
"whatsapp_phone": null,
"contact_type": "Staff",
"job_title": "Practice Manager",
"timezone": "America/New_York",
"contact_group": "Licensing",
"is_default": false,
"email_opt_in": true,
"sms_opt_in": true,
"whatsapp_opt_in": false,
"sendNotifications": true,
"created_at": "2026-09-27T14:05:00.000Z",
"updated_at": "2026-09-27T14:05:00.000Z"
}
],
"next_cursor": "string",
"has_more": true
}Returns { data, next_cursor, has_more }, up to 100 per page (default 50), ordered by id unless sort
is given. status is not supported on contacts (400).
typestringExactcontact_type.updated_sincestringISO 8601 timestamp; only records withupdated_atat or after it.format: date-timesortstringid(default),updated_at,-updated_at. Withupdated_since:updated_ator-updated_at.Erlaubtidupdated_at-updated_atcursorstringOpaquenext_cursorfrom the previous page. Only valid with the samesort.limitintegerPage size, 1-100 (values above 100 are clamped; default 50).Standard50min: 1 · max: 100
200
A page of contacts.
dataarray of objectserforderlichnext_cursorstring | nullerforderlichNull on the last page.has_morebooleanerforderlich
400 | Invalid parameters or body ( VALIDATION_FAILED; details names the fields). |
401 | Missing, invalid or expired token ( UNAUTHORIZED). |
403 | Your role can't do this, or your account has no organization ( FORBIDDEN). |
405 | Wrong HTTP method for this path; the Allow header lists the valid ones. |
429 | Too many requests for this endpoint from your IP. Wait Retry-After seconds. |
