Skip to main content
GET
Retrieve campaign stats

Authorizations

Authorization
string
header
required

A workspace API token (sk_live_...) or an OAuth access token (oat_live_...). Create workspace tokens in Settings > API. Send either as Authorization: Bearer <token>.

Path Parameters

campaign_id
string
required

Unique identifier for a campaign.

Pattern: ^camp_[0-9a-f]{32}$
Example:

"camp_9f2ac41d8b7e4a51b0d3e6f7a1c2d3e4"

Query Parameters

since
string<date-time> | null

Start of the window, inclusive. Needs a timezone offset.

until
string<date-time> | null

End of the window, exclusive. Defaults to now.

Response

Successful Response

How a campaign performed over a time window.

Counts cover participants the campaign messaged in [window_start, window_end) — except enrolled, which covers the whole campaign, and not_contacted, which counts participants whose status last changed in the window. Rates are fractions: 0.25 means 25%.

campaign_id
string
required

Unique identifier for a campaign.

Pattern: ^camp_[0-9a-f]{32}$
Example:

"camp_9f2ac41d8b7e4a51b0d3e6f7a1c2d3e4"

contacted
integer
required

Participants the campaign messaged successfully.

Required range: x >= 0
converted
integer
required

Distinct contacts the campaign messaged who were marked as won afterwards.

Required range: x >= 0
enrolled
integer
required

Participants ever added to the campaign, in any status.

Required range: x >= 0
not_contacted
NotContactedCount · object[]
required

Every reason, in a fixed order, including those with zero.

replied
integer
required

Contacted participants who replied. Replies that look automated (away messages, bots) are not counted here.

Required range: x >= 0
replied_automated
integer
required

Contacted participants whose reply looks automated.

Required range: x >= 0
window_end
string<date-time>
required
window_start
string<date-time>
required
conversion_rate
number | null

converted / contacted. Null when nobody was contacted.

Required range: x >= 0
object
string
default:campaign_stats
Allowed value: "campaign_stats"
reply_rate
number | null

replied / contacted. Null when nobody was contacted.

Required range: x >= 0