Skip to main content
GET
/
api
/
campaigns
/
campaigns
/
{campaignId}
/
recipients
Get campaign recipients with pagination
curl --request GET \
  --url https://apiv1.delightloop.ai/api/campaigns/campaigns/{campaignId}/recipients \
  --header 'x-api-key: <x-api-key>'
{
  "recipients": [
    "<unknown>"
  ],
  "pagination": {
    "page": 123,
    "limit": 123,
    "total": 123,
    "totalPages": 123,
    "hasNext": true,
    "hasPrev": true
  },
  "campaignId": "camp-abcd1234",
  "organizationId": "org_123",
  "statusCounts": {
    "invite_sent": 15,
    "address_confirmed": 8,
    "processing": 3,
    "shipped": 2,
    "delivered": 1
  },
  "totalRecipientsInCampaign": 29,
  "filters": {
    "status": "invite_sent"
  },
  "organization": {
    "orgId": "org_123",
    "domain": "company.com",
    "displayName": "Company Inc.",
    "orgName": "company",
    "budget": {
      "currency": "USD",
      "amount": 10000
    },
    "products": [
      "product1",
      "product2"
    ],
    "createdAt": "2023-01-01T00:00:00Z",
    "updatedAt": "2023-12-01T00:00:00Z"
  },
  "campaign": {}
}

Headers

x-api-key
string
required

auth key

Path Parameters

campaignId
string
required

Campaign ID

Example:

"camp-abcd1234"

Query Parameters

page
number

Page number (starts from 1)

Example:

1

limit
number

Number of items per page

Example:

10

Search recipients by first name or last name

Example:

"John"

status
string

Filter by recipient status. Can be comma-separated for multiple statuses

Example:

"invite_sent,address_confirmed"

userId
string

Filter recipients by assigned user ID. Shows only recipients assigned to this user

Example:

"user-52ca8d67"

sortBy
string

Sort by field (createdAt, updatedAt, firstName, lastName, status, email, or company). Default sorts by ready status first, then createdAt descending.

Example:

"firstName"

sortOrder
string

Sort order (asc or desc)

Example:

"desc"

groupBy
boolean

Group results by status (true/false)

Example:

false

feedback
boolean

Filter by feedback presence (true for recipients with feedback, false for recipients without feedback)

Example:

true

Response

Campaign recipients retrieved successfully

recipients
required

Recipients array or grouped by status when groupBy parameter is used

pagination
object
required
campaignId
string
required

Campaign ID

Example:

"camp-abcd1234"

organizationId
string
required

auth key

Example:

"org_123"

statusCounts
object
required

Count of recipients by status

Example:
{
"invite_sent": 15,
"address_confirmed": 8,
"processing": 3,
"shipped": 2,
"delivered": 1
}
totalRecipientsInCampaign
number
required

Total number of recipients in campaign across all statuses

Example:

29

filters
object
required

Applied filters

Example:
{ "status": "invite_sent" }
organization
object

Organization details

campaign
object

Campaign details