Audiences
Manage subscriber lists used by campaigns and sign-up forms.
Create an audience
Creates an empty audience.
/audiencesRequires a full API key. Add people with Add a subscriber, or by passing the audience ID in audiences when you create a contact. Fires an audience.created event. See Audiences.
Body parameters
namestringrequiredNewsletter. Must be unique in the workspace.Returns
Returns 201 with the new audience:
objectstringaudience.idstringnamestringtokenstringcreated_atstringupdated_atstring{
"object": "audience",
"id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
"name": "Newsletter",
"token": "4KXUJdXRVlVgbkWQm4GHLy8BleP",
"created_at": "2026-10-01T10:02:44.613207Z",
"updated_at": "2026-10-01T10:02:44.613207Z"
}{
"error": "Audience with this name already exists",
"existing": {
"object": "audience",
"id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
"name": "Newsletter",
"token": "4KXUJdXRVlVgbkWQm4GHLy8BleP",
"subscribers_count": 0,
"created_at": "2026-10-01T10:02:44.000000Z",
"updated_at": "2026-10-01T10:02:44.000000Z"
}
}Retrieve an audience
Retrieves an audience with its subscriber count and public token.
/audiences/{id}Requires a full API key.
Path parameters
idstringrequiredaud_…) or its exact name, URL-encoded.Returns
Returns the audience object.
objectstringaudience.idstringnamestringtokenstringsubscribers_countintegerusageobjectused (the same count), limit (the most subscribers an audience can have on your plan, or null for no limit) and plan. See Limits.
created_atstringupdated_atstring{
"object": "audience",
"id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
"name": "Newsletter",
"token": "4KXUJdXRVlVgbkWQm4GHLy8BleP",
"subscribers_count": 1284,
"usage": {
"used": 1284,
"limit": 50000,
"plan": "pro"
},
"created_at": "2026-10-01T10:02:44.000000Z",
"updated_at": "2026-10-01T10:02:44.000000Z"
}{
"error": "Audience not found"
}Update an audience
Renames an audience.
/audiences/{id}Requires a full API key. The ID, token and subscribers don’t change. Fires an audience.updated event.
Path parameters
idstringrequiredBody parameters
namestringrequiredReturns
Returns the audience with object, id, name, token, subscribers_count, created_at and updated_at. In this response subscribers_count is always 0; use Retrieve an audience for the real count.
{
"object": "audience",
"id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
"name": "Weekly newsletter",
"token": "4KXUJdXRVlVgbkWQm4GHLy8BleP",
"subscribers_count": 0,
"created_at": "2026-10-01T10:02:44.000000Z",
"updated_at": "2026-10-01T14:31:09.000000Z"
}{
"error": "No valid fields provided for update. Provide at least one of: name"
}{
"error": "Audience not found"
}{
"error": "Another audience with this name already exists"
}List audiences
Returns a page of audiences, newest first.
/audiencesRequires a full API key. List items don’t include the audience token; use Retrieve an audience for it.
Query parameters
pageintegerdefault: 1limitintegerdefault: 10searchstringmatchstringdefault: allall or or. How the filters below combine.orderstringname or created_at.directionstringasc or desc.Filters
Add filters as key.condition=value, for example name.contains=news. See Filtering.
| Key | Type |
|---|---|
name |
string |
created_at |
date |
Returns
dataobject[]object, id, name, subscribers_count, usage, created_at and updated_at. See Retrieve an audience.total_recordsintegernext_page_urlstring | nullnull. See Pagination.previous_page_urlstring | nullnull.{
"data": [
{
"object": "audience",
"id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
"name": "Newsletter",
"subscribers_count": 1284,
"usage": {
"used": 1284,
"limit": 50000,
"plan": "pro"
},
"created_at": "2026-10-01T10:02:44.000000Z",
"updated_at": "2026-10-01T10:02:44.000000Z"
},
{
"object": "audience",
"id": "aud_4KOlh9t2uw5od4qypqCtyrZyDq2",
"name": "Customers",
"subscribers_count": 312,
"usage": {
"used": 312,
"limit": 50000,
"plan": "pro"
},
"created_at": "2026-09-20T16:45:10.000000Z",
"updated_at": "2026-09-20T16:45:10.000000Z"
}
],
"total_records": 2,
"next_page_url": null,
"previous_page_url": null
}Delete an audience
Permanently deletes an audience and removes everyone from it.
/audiences/{id}Requires a full API key. The audience’s subscriber memberships are deleted with it, but the contacts stay in your workspace and in their other audiences. Its hosted subscribe URL stops working. Fires an audience.deleted event. No subscriber.deleted events are sent for the removed memberships.
Path parameters
idstringrequiredReturns
objectstringaudience.idstringnamestringdeletedbooleantrue.{
"object": "audience",
"id": "aud_4KOlh9t2uw5od4qypqCtyrZyDq2",
"name": "Customers",
"deleted": true
}{
"error": "Audience not found"
}