List contacts
get
https://api.expiryedge.com/v1/getAllContactsany role (admin, editor or viewer)60/min
Request
curl 'https://api.expiryedge.com/v1/getAllContacts?selectedTeam=0&contactGroup=Vendors&contactType=Client' \
-H "Authorization: Bearer $EXPIRYEDGE_API_KEY"Response
[
{
"id": "c_8Hk2pQ",
"user_id": "u_71bXq",
"organization_id": "org_northwind",
"firstName": "Priya",
"lastName": "Shah",
"email": "priya.shah@northwinddental.example",
"smsPhone": "+15550123456",
"whatsappPhone": null,
"contactType": "Staff",
"jobTitle": "Practice Manager",
"timezone": "America/New_York",
"contactGroup": "Licensing",
"is_default": true,
"email_opt_in": true,
"sms_opt_in": true,
"whatsapp_opt_in": false,
"sendNotifications": true,
"createdAt": "2026-09-27T14:05:00.000Z",
"updatedAt": "2026-09-27T14:05:00.000Z"
}
]Returns the organization's contacts as a bare array (camelCase fields). No pagination or ordering:
limit defaults to 5000 and no maximum is enforced. Filters are equality-only.
selectedTeamstringOnly contacts with thisteam_id.0or omitted means all teams.contactGroupstringOnly contacts in this group (group name). Ignored whenungroupedis true.contactTypestringOnly contacts with thiscontactType.ungroupedbooleanWhentrue, only contacts with no group.limitintegerMaximum contacts returned. Default 5000; not clamped.Default5000min: 1
200
Array of contacts (empty array when none match).
firstNamestringlastNamestringSend''when unknown (create stores it as given).emailstring | nullUnique per organization (case-insensitive) on create.format: emailsmsPhonestring | nullE.164 phone for SMS, e.g.+15550123456.whatsappPhonestring | nullcontactTypestring | nullFree-text category, e.g.Client,Staff,Vendor.jobTitlestring | nulltimezonestringIANA timezone. Defaults toEurope/Londonon create.contactGroupstring | nullGroup name (not id). A new name creates the group.is_defaultbooleanDefault contact added to new expiries. Defaults to false.isDefaultis also accepted on create.email_opt_inbooleanDefaults to true.sms_opt_inbooleanDefaults to false.whatsapp_opt_inbooleanDefaults to false.sendNotificationsbooleanMaster switch for reminders to this contact. Defaults to true.idstringread-onlyuser_idstringread-onlyCreator's user id.organization_idstringread-onlycreatedAtstringUTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).format: date-timeupdatedAtstringUTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).format: date-time
401 | Missing, expired or invalid bearer token. |
404 | The record does not exist or is not in your organization. |
429 | Too many requests for this endpoint from your IP. Wait Retry-After seconds. |
500 | Unexpected server error. Retry later; quote requestId to support. |
