Activate creator campaign
Moves a draft or paused campaign to active, where creators can join and submit posts and
tracked views accrue earnings. Needs at least one platform and a budget above zero; any other
starting state answers 409.
Authorization
bearerAuth API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.
In: header
Path Parameters
Campaign ID.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.creatorcampaigns.activateCreatorCampaign({ path: { campaignId: 'campaign_abc123', },});console.log(data);{ "campaign": { "id": "string", "userId": "string", "profileId": "string", "kind": "string", "name": "string", "brandName": "string", "status": "draft", "type": "cpm", "currency": "string", "platforms": [ "tiktok" ], "contentRules": "string", "startsAt": "2019-08-24T14:15:22Z", "endsAt": "2019-08-24T14:15:22Z", "trackingDays": 0, "holdDays": 0, "maxPostAgeMinutes": 0, "settlement": "none", "economics": { "type": "cpm", "ratePer1kCents": 1, "minViewsToEarn": 0, "maxPayoutPerClipCents": 1, "budgetCents": 0 }, "caps": { "maxParticipants": 1, "maxSubmissionsPerParticipantPerDay": 1, "maxAccountsPerParticipant": 1, "authenticityThreshold": 0 }, "branding": { "brandName": "string", "primaryColor": "string", "logoUrl": "string", "theme": {} }, "budgetExhaustedAt": "2019-08-24T14:15:22Z", "closedAt": "2019-08-24T14:15:22Z", "payableScannedAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "hasOpenInvite": true, "consumedCents": 0, "participantCount": 0, "submissionCounts": { "received": 0, "tracking": 0, "pending_review": 0, "approved": 0, "rejected": 0, "expired": 0, "withdrawn": 0 } }}Update creator campaign
Updates any subset of the campaign's settings. `economics` (and with it the campaign type) can only change while the campaign is a draft; afterwards that answers 409, and a live campaign's budget is raised with `POST /v1/creator-campaigns/{campaignId}/budget`. An empty body answers 400.
Approve campaign submission
Approves a `tracking` or `pending_review` submission of an active campaign and fires `campaign_submission.approved`. The Zernio dashboard offers Approve only on `pending_review` (a post that needs a decision) and waits for `tracking` posts to get there; the API accepts `tracking` so an integration can approve early. What the post earned so far moves to owed and is held for the campaign's `holdDays`; later earnings post straight to owed. A per-post campaign pays `perApprovedPostCents` here. Any other state answers 409. The same post approved in another of your campaigns also answers 409 (`invalid_resource_state`, "This post is already approved in another campaign of yours."), so one post never earns twice.