List the people in a campaign
The people in a campaign with where each one is: pending (being checked), queued, active, replied, bounced, completed or suppressed. Each person has added_at, added_by (who added them, when known), source (the saved list or add they came from), custom_fields (your own columns, personal lines and tags) and sort_key. Page with after set to next_after from the answer before: the order is fixed (newest first, or order=oldest), so nobody is skipped or shown twice while people are added. fields picks what comes back per person. q also searches custom field values; on a very large campaign a search looks through a part at a time and answers more_to_search: true with next_after to search on (total is then null). status=held lists the people waiting at an email because a variable it uses has no value for them; each one carries hold with the variables, the email and a sentence.
| Cost | What it does | Key scopes |
|---|---|---|
| Free | Reads only | argorant:read_counts |
Authorization
BearerAuth Your API key from app.argorant.com/profile, sent as Authorization: Bearer <key>. A connector sign-in token (ag_mcp_...) works the same way.
In: header
Path Parameters
The campaign id from create or list.
uuidQuery Parameters
Only this status.
Value in
- "pending"
- "queued"
- "active"
- "replied"
- "bounced"
- "completed"
- "suppressed"
- "held"
Search name, email, company or custom field values.
Only people with this tag.
next_after from the answer before: the next page in the same order.
newest (default) or oldest first.
Value in
- "newest"
- "oldest"
Comma-separated fields per person from email, first_name, last_name, company, title, status, email_grade, current_step, next_send_at, last_sent_at, replied_at, bounced_at, added_at, added_by, source, custom_fields, sort_key. The id always comes back.
Rows per page, 1 to 500 (default 50).
1 <= value <= 50050The next_cursor of the previous page. Leave out for the first page.
Rows to skip, as an alternative to cursor.
0 <= value0Header Parameters
Your own id for this request, 8 to 64 letters, digits, dot, dash or underscore. Returned as X-Request-Id; one is made for you when you send none.
^[A-Za-z0-9._-]{8,64}$Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://app.argorant.com/api/v1/campaigns/7f3a2c1e-9b4d-4e8a-a1c2-5d6e7f8a9b0c/leads?limit=50"{ "leads": [ { "id": "0c9d8e7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f", "email": "jane.doe@example-acme.com", "first_name": "Jane", "last_name": "Doe", "company": "Acme", "title": "CFO", "status": "replied", "current_step": 2, "next_send_at": null, "email_grade": "valid", "added_at": "2026-10-23T13:03:41+00:00", "added_by": "ops@example-acme.com", "source": { "kind": "list", "label": "saved list", "list_id": 312, "job_id": "4b1d2c3e-5f60-4a7b-8c9d-0e1f2a3b4c5d" }, "custom_fields": { "plan": "pro", "tags": [ "q4" ] }, "sort_key": "WyIyMDI2LTEwLTIzVDEzOjAzOjQxKzAwOjAwIiwiamFuZS5kb2VAZXhhbXBsZS1hY21lLmNvbSJd" } ], "total": 1188, "limit": 50, "next_after": "WyIyMDI2LTEwLTIzVDEzOjAzOjQxKzAwOjAwIiwiamFuZS5kb2VAZXhhbXBsZS1hY21lLmNvbSJd"}