Skip to main content

CampaignRead

An A/B campaign for an agent. While active and within its time window, it splits matching leads into weighted buckets that override prompts, model config and/or outreach settings, so variants can be compared. (For outbound dispatch programs see outreach-campaigns.)

idIdrequired

Unique numeric identifier of the record.

nameNamerequired

Human-readable campaign name.

product_idProduct Idrequired

ID of the product (workspace) that owns this record. Most endpoints scope access by product.

agent_idAgent Idrequired

ID of the agent (a configured AI assistant / bot persona) this record belongs to.

created_atdate-timerequired

Creation time (UTC, ISO 8601).

starts_at objectrequired

When the campaign becomes active (UTC); null means no lower bound.

anyOf
date-time
expires_at objectrequired

When the campaign stops being active (UTC); null means no upper bound.

anyOf
date-time
is_activeIs Activerequired

Whether the campaign is enabled. Active campaigns require bucket weights summing to 100.

batch_names objectrequired

Comma-separated, normalized batch tokens this campaign targets; empty/null targets leads generically.

anyOf
string
config objectrequired

Free-form campaign configuration (JSON).

property name*any

Free-form campaign configuration (JSON).

CampaignRead
{
"id": 0,
"name": "string",
"product_id": 0,
"agent_id": 0,
"created_at": "2024-07-29T15:51:28.071Z",
"starts_at": "2024-07-29T15:51:28.071Z",
"expires_at": "2024-07-29T15:51:28.071Z",
"is_active": true,
"batch_names": "string",
"config": {}
}