Campaign imports#
Turn campaign source files into source-cited review drafts before creating live records.
Authentication required
Authorization header. See the Authentication guide for setup instructions.POST /v1/campaign-imports#
Create a workspace for importing source documents, either as a new campaign or as added sources for an existing campaign (targetCampaignId).
POST /v1/campaign-imports
Authorization: Bearer {token}
Content-Type: application/json
{
"organization_id": "1c7743a8-6410-4a9e-9f3b-2c1d5e8a4b01"
}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| organizationId | string (UUID) | Required | Organization identifier. |
| targetCampaignId | string (UUID) | null | — |
Response#
Returns { data, _meta } with the result.
GET /v1/campaign-imports/:id#
Get a campaign import with durable processing status, artifacts, evidence claims, review draft, conflicts, source coverage, and confirmation readiness.
GET /v1/campaign-imports/:id
Authorization: Bearer {token}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
Response#
Returns { data, _meta } with the result.
POST /v1/campaign-imports/:id/start#
Start durable conversion, OCR, extraction, reconciliation, and matching.
POST /v1/campaign-imports/:id/start
Authorization: Bearer {token}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
Response#
Returns { data, _meta } with the result.
PATCH /v1/campaign-imports/:id/draft#
Update included candidates, corrected values, match decisions, and conflict resolutions before confirmation.
PATCH /v1/campaign-imports/:id/draft
Authorization: Bearer {token}
Content-Type: application/json
{
"draft": "..."
}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
| draft | object | Required |
Response#
Returns { data, _meta } with the result.
POST /v1/campaign-imports/:id/preview#
Retrieve exact create counts, source coverage, unresolved review issues, and confirmation readiness without writing live records.
POST /v1/campaign-imports/:id/preview
Authorization: Bearer {token}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
Response#
Returns { data, _meta } with the result.
POST /v1/campaign-imports/:id/confirm#
Create one campaign and every approved activity, spend, creator link, context entry, reported outcome, source artifact, and confirmed evidence claim atomically.
POST /v1/campaign-imports/:id/confirm
Authorization: Bearer {token}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
Response#
Returns { data, mutation, _meta } with the result and a customer-facing mutation receipt.
POST /v1/campaign-imports/:id/cancel#
Update an uncommitted campaign import to cancelled while preserving it for retention cleanup.
POST /v1/campaign-imports/:id/cancel
Authorization: Bearer {token}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| id | string (UUID) | Required | Unique identifier (UUID v4). |
Response#
Returns { data, _meta } with the result.