List the contacts of a campaign
GET
Paginated contacts of a campaign with their status in the campaign. page is ZERO based. perPage below 10 is replaced by 20; maximum 10,000.
Authorization
apiKey Authorization<token>
Your 48 character API key, sent as is (a Bearer prefix is tolerated). Create it at https://v3.emelia.io/settings/api.
In: header
Query Parameters
id*string
Campaign id.
Match
^[0-9a-fA-F]{24}$page*integer
Zero based page index.
Range
0 <= valueperPage?integer
Range
10 <= value <= 10000Default
20event?|array<string>
Filter on contact status (for example SENT, MAIL_REPLIED; NO_ACTIVITY = no activity yet). Send it as an array: event[]=SENT or repeat the parameter. A single plain event=SENT is accepted by validation but currently fails with a 400 error.
query?string
Exact email, or words matched against email, names, phone and LinkedIn URL.
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/advanced/campaign/contacts?id=6650f1a2b839d80011c5a0f1&page=0" \ -H "Authorization: YOUR_API_KEY"{ "success": true, "list": [ { "_id": "6650f1a2b839d80011c5a0f1", "email": "claire.fontaine@nexora.io", "firstName": "Claire", "lastName": "Fontaine", "phone": "+33 6 12 34 56 78", "linkedinUrlProfile": "https://www.linkedin.com/in/claire-fontaine", "status": "SENT", "lastContacted": "2026-10-06T09:30:00.000Z", "lastReplied": "2026-10-06T09:30:00.000Z", "integrationContactId": "6650f1a2b839d800ba9811eb", "sentiment": "INTERESTED", "custom": {} } ], "count": 250, "_id": "6650f1a2b839d800dcab1309"}