/v1/brands/{brand_id}/campaigns/{campaign_id} Retrieve a campaign
One campaign with its settings, what its emails did and the next email due. A client seat cannot reach campaigns.
Path parameters
-
Campaign id.
-
Brand UUID.
Query parameters
-
Preview the call without executing it. Runs auth, scope, eligibility and body validation, then returns
200with adry_runobject reporting the request-unit and credit cost plus a non-consuming quota snapshot. Nothing is debited, reserved, dispatched or mutated. An invalid body still returns422.default: false
Responses
-
Owning brand id.
-
Campaign id.
-
Name.
-
A contact already emailed by another campaign:
skip,continueorrestart. -
Minutes between two sends; 0 sends as fast as allowed.
-
The window's IANA time zone.
-
Whether it sends on weekends.
-
What its emails did.
Show fields
-
Bounced over sent, in percent.
-
Bounced.
-
Opened.
-
Replied to.
-
Sent.
-
Opened over sent, in percent.
-
Replied over sent, in percent.
-
Emails the campaign created.
-
-
draft,active(sending),paused,completed(ended for good) orarchived. - completed_at string (nullable) nullable
When it was ended.
- contact_list_id string (nullable) nullable
The contact list it emails.
- created_at string (nullable) nullable
When it was created.
- daily_limit integer (nullable) nullable
The most it sends a day; the mailbox's cap also holds.
- description string (nullable) nullable
Description.
- mailbox_id string (nullable) nullable
The Gmail mailbox it sends from.
- next_scheduled_email CampaignNextEmail (nullable) nullable
The next email due, while it is active or paused.
- object string
- paused_at string (nullable) nullable
When it was last paused.
- send_window_end string (nullable) nullable
End of the daily window (
HH:MM). - send_window_start string (nullable) nullable
Start of the daily window (
HH:MM). - sequence_id string (nullable) nullable
A sequence it runs, sending on its own.
- started_at string (nullable) nullable
When it was launched.
- template_id string (nullable) nullable
A single email it sends, as drafts to review.
- updated_at string (nullable) nullable
Last change.
Example response
{
"brand_id": "3f9c7e8a-1b6a-4d8e-92cf-7d9c8b1e2a04",
"contact_list_id": "9b8a7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d",
"created_at": "2026-09-21T10:00:00+00:00",
"daily_limit": 30,
"id": "8192a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"mailbox_id": "5e6f7081-92a3-4b4c-8d5e-6f708192a3b4",
"name": "Best running shoes lists",
"object": "campaign",
"re_enrollment_behavior": "skip",
"send_interval_minutes": 10,
"send_window_end": "17:00",
"send_window_start": "09:00",
"send_window_timezone": "America/New_York",
"sequence_id": "4d5e6f70-8192-4a3b-9c4d-5e6f7a8b9c0d",
"skip_unsubscribe_footer": true,
"skip_weekends": true,
"started_at": "2026-09-22T09:00:00+00:00",
"stats": {
"bounce_rate": 3.3,
"emails_bounced": 1,
"emails_opened": 18,
"emails_replied": 4,
"emails_sent": 30,
"open_rate": 60,
"reply_rate": 13.3,
"total_emails": 42
},
"status": "active",
"updated_at": "2026-09-22T09:00:00+00:00"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "validation_error",
"message": "Request validation failed"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "unauthorized",
"message": "Missing or invalid credentials"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "forbidden",
"message": "You do not have permission to access this resource"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "not_found",
"message": "Resource not found"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "conflict",
"message": "Resource conflict"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "rate_limit_exceeded",
"message": "Per-minute rate limit exceeded"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}-
Show fields
-
Stable machine-readable error code from the catalog.
-
Human-readable description suitable for logging.
- details object
Optional, code-specific context (e.g.
errorsarray forvalidation_error,retry_afterforservice_unavailable). Shape depends onerror.code; treat as opaque otherwise.Show fields
Empty object (no properties).
-
- request_id string
Server-generated correlation id for the request. Mirrors the
X-Correlation-IDresponse header. Include this when contacting support.
Example response
{
"error": {
"code": "service_unavailable",
"message": "Service temporarily unavailable, please retry"
},
"request_id": "9f6c4e8a-1d3b-4c8b-9f1e-7a3b1c2d3e4f"
}