List campaign recipients
Returns the people enrolled in a campaign as an offset-paginated JSON:API collection, each with their per-recipient engagement — whether they opened, clicked, replied, or unsubscribed, and when each last happened. Filter by engagement with filter[event] (for example filter[event]=clicked to build a retargeting audience), by delivery state with filter[status], or by name/email with filter[q]. Recipients are collapsed to one row per person, preferring their active run.
API key authentication. Send your key in the Authorization header as: api-key <your-api-key>.
In: header
Path Parameters
The workspace slug — the {slug} segment of your Clarify workspace URL.
The unique ID of the campaign.
Query Parameters
Offset pagination, e.g. page[offset]=0&page[limit]=100.
Default
{ "offset": 0, "limit": 500}Sort order, e.g. sortOrder[column]=_created_at&sortOrder[dir]=DESC.
Nested filter object, e.g. filter[event]=clicked&filter[status]=completed.
Header Parameters
The API version for this request. Send 2026-10 to get the behavior documented here. Omit it to use your API key's version, which this header can raise but not lower.
Response Body
application/json
curl -X GET "https://example.com/workspaces/string/campaigns/string/recipients" \ -H "clarify-version: 2026-10"{ "links": { "next": null, "prev": null }, "meta": { "total_records": 1, "total_pages": 1, "total_unfiltered": 12, "campaign_enabled": true, "list_evaluation_status": "idle", "list_member_count": 12, "list_recipient_count": 1 }, "data": [ { "type": "campaign_recipient", "id": "b41d8f62-0e35-4a7c-9d18-6f2a3c5e8b74", "attributes": { "workflow_run_id": "b41d8f62-0e35-4a7c-9d18-6f2a3c5e8b74", "person": { "_id": "5f8b7d2e-9c4a-4e1b-8f3d-2a6c9e0b4d71", "name": { "first_name": "Jane", "last_name": "Doe", "full_name": "Jane Doe" }, "email_addresses": { "items": [ "jane@acme.com" ] }, "avatar_url": null, "job_title": "VP of Marketing", "company_id": "c0a80121-7ac0-4b1c-8b6d-3e5f9a2d4c88", "linkedin": "janedoe" }, "status": "success", "resume_at": null, "current_block_id": null, "linkedin_wait": null, "held_by_daily_limit": false, "started_at": "2026-01-15T09:30:00.000Z", "ended_at": "2026-02-01T17:45:00.000Z", "exit_reason": null, "exit_block_id": null, "is_bespoke": false, "has_opened": true, "has_clicked": true, "has_replied": false, "has_unsubscribed": false, "has_accepted": false, "last_opened_at": "2026-01-16T11:02:41.000Z", "last_clicked_at": "2026-01-16T11:03:12.000Z", "last_replied_at": null, "last_accepted_at": null, "_created_at": "2026-01-15T09:30:00.000Z", "_updated_at": "2026-02-01T17:45:00.000Z" } } ]}Get CLI sign-in settings
Returns the OAuth 2.0 device flow settings a command-line client uses to sign a user in. The response is plain JSON, not a JSON:API document, and the endpoint needs no authentication.
Create a comment
Creates a comment on a record. The comment body is rich text, and `owner_id` plus `entity` identify the record it is attached to. Returns the created comment row.