Boost an existing post as a paid ad
Creates a paid ad campaign from an existing published post. Creates the full platform campaign hierarchy (campaign, ad set, ad).
API key authentication - use your Zernio API key as a Bearer token
In: header
Zernio post ID (provide this or platformPostId)
Platform post ID (alternative to postId)
Social account ID
Platform ad account ID
length <= 255"engagement" | "traffic" | "awareness" | "video_views"Max bid cap (Meta only)
Meta only. Tracking specs (pixel, URL tags).
Meta only. Required for housing, employment, credit, or political ads.
Response Body
application/json
application/json
curl -X POST "https://zernio.com/api/v1/ads/boost" \ -H "Content-Type: application/json" \ -d '{ "accountId": "string", "adAccountId": "string", "name": "string", "goal": "engagement", "budget": { "amount": 0, "type": "daily" } }'{
"ad": {
"_id": "string",
"name": "string",
"platform": "facebook",
"status": "active",
"adType": "boost",
"goal": "engagement",
"isExternal": true,
"budget": {
"amount": 0,
"type": "daily"
},
"metrics": {
"spend": 0,
"impressions": 0,
"reach": 0,
"clicks": 0,
"ctr": 0,
"cpc": 0,
"cpm": 0,
"engagement": 0,
"lastSyncedAt": "2019-08-24T14:15:22Z"
},
"platformAdId": "string",
"platformAdAccountId": "string",
"platformCampaignId": "string",
"platformAdSetId": "string",
"campaignName": "string",
"adSetName": "string",
"creative": {},
"targeting": {},
"schedule": {
"startDate": "2019-08-24T14:15:22Z",
"endDate": "2019-08-24T14:15:22Z"
},
"rejectionReason": "string",
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
},
"message": "string"
}{
"error": "Unauthorized"
}Cancel an ad DELETE
Cancels the ad on the platform and marks it as cancelled in the database. The ad is preserved for history.
Sync external ads from platform ad managers POST
Discovers and imports ads created outside Zernio (e.g. in Meta Ads Manager, Google Ads). Upserts new ads and updates metrics/status for existing ones. Also runs automatically every 30 minutes.