List contacts
/contactsList all contacts for the organization with optional search and pagination.
Headers
AuthorizationRequiredstringYour API key, sent as a bearer token: Authorization: Bearer <api_key>. Editing this stays in sync with the API key box on the right.
Query parameters
limitoptionalintegerMaximum number of items to return in a single response. Must be between 1 and 200; defaults to 50. Use together with offset to page through large result sets.
offsetoptionalintegerNumber of items to skip before returning results. Combine with limit for page-based pagination (e.g. offset=50&limit=50 returns the second page). Defaults to 0.
qoptionalstringSearch query (matches identifier or name)
sortoptionalstringSort order
"recent""oldest""name_asc""name_desc"Returns
contactsoptionalContact[]
contactsoptionalContact[]Array of Contact
idoptionalstringContact identifier (phone or email)
contact_idoptionalstringInternal contact ID
identifieroptionalstringPhone number (E.164) or email
nameoptionalstring | nulltypeoptionalstring"phone""email"created_atoptionalintegerlast_message_timeoptionalinteger | nulltagsoptionalstring[]paginationoptionalPagination
paginationoptionalPaginationlimitoptionalintegeroffsetoptionalintegertotaloptionalintegerResponse codes
Sends a live request with your values and shows the real response below. Your key is stored only in this browser.
curl -X GET https://api.blooio.com/v2/api/contacts?limit=50&offset=0&q=string&sort=recent \ -H "Authorization: Bearer bl_live_..."{ "contacts": [ { "id": "ct_a1b2c3d4", "contact_id": "ct_a1b2c3d4", "identifier": "+15551234567", "name": "Jane Doe", "type": "phone", "created_at": 0, "last_message_time": 0, "tags": [ "string" ] } ], "pagination": { "limit": 50, "offset": 1, "total": 3 }}