Skip to main content
GET
/
v1
/
campaigns
/
{id}
/
contacts
List Campaign Contacts
curl --request GET \
  --url https://api.example.com/v1/campaigns/{id}/contacts
{
  "data": {
    "contacts": [
      {
        "contact_id": "<string>",
        "full_name": "<string>",
        "email": "<string>",
        "status": "<string>",
        "current_step": 123,
        "added_at": "<string>",
        "last_sent_at": "<string>"
      }
    ]
  },
  "meta": {
    "page": 123,
    "per_page": 123,
    "total": 123
  }
}

Request

Path Parameters

id
string
required
The campaign’s unique ID (UUID)

Query Parameters

page
integer
default:"1"
Page number for pagination
per_page
integer
default:"50"
Number of contacts per page (max: 100)
status
string
Filter by enrollment status: pending, active, paused, completed, bounced, unsubscribed, or replied

Headers

Authorization: Bearer wbk_your_api_key_here
Requires an API key with the campaigns:read permission.

Response

data
object
meta
object
curl "https://data.leadlex.com/functions/v1/api-gateway/v1/campaigns/cmp_abc123/contacts?status=active" \
  -H "Authorization: Bearer wbk_your_api_key_here"

Example Response

{
  "data": {
    "contacts": [
      {
        "contact_id": "123e4567-e89b-12d3-a456-426614174000",
        "full_name": "Jane Doe",
        "email": "jane@example.com",
        "status": "active",
        "current_step": 2,
        "added_at": "2026-04-01T09:00:00Z",
        "last_sent_at": "2026-04-15T09:00:00Z"
      }
    ]
  },
  "meta": { "page": 1, "per_page": 50, "total": 147 }
}

Errors

StatusCodeDescription
401invalid_keyInvalid or expired API key
403insufficient_permissionsMissing campaigns:read permission
404campaign_not_foundNo campaign with this ID
429rate_limitedRate limit exceeded