Create a Reach & Frequency prediction
Creates an R&F prediction — a QUOTE, nothing is bought and no ad entities are created.
Provide a date range plus exactly one of budgetAmount (Meta predicts reach) or reach
(Meta predicts the budget). The response carries the estimate and its allowed bounds
(min/max budget and reach). Predictions expire on their own; to buy, reserve one via
POST /v1/ads/rf-predictions/{predictionId}/reserve and pass the RESERVED id to
POST /v1/ads/create with buyingType: "RESERVED".
Reservation campaigns reject automatic placements, so omitted placements default to
Facebook feed (+ Instagram stream when a linked IG professional account resolves);
Instagram placements require that IG account.
API key authentication - use your Zernio API key as a Bearer token
In: header
Zernio SocialAccount id (posting or ads variant).
Meta ad account id (act_).
Whole currency units. Exactly one of budgetAmount / reach.
Target unique reach. Exactly one of budgetAmount / reach.
Campaign window start (must be in the future).
date-timedate-timeMax impressions per person over the window.
1 <= value <= 90Canonical camelCase TargetingSpec (same shape as /v1/ads/create's targeting). Defaults to countries: [US].
Meta placements object (same shape as /v1/ads/create's placements).
Response Body
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.reachandfrequency.createRfPrediction({ body: { accountId: 'account_abc123', adAccountId: 'adaccount_abc123', startDate: '2026-01-15T10:00:00Z', endDate: '2026-01-15T10:00:00Z', },});console.log(data);{
"adAccountId": "string",
"currency": "string",
"prediction": {
"predictionId": "string",
"status": "string",
"budget": 0,
"reach": 0,
"impressions": 0,
"minBudget": 0,
"maxBudget": 0,
"minReach": 0,
"maxReach": 0,
"frequencyCap": 0,
"startTime": 0,
"stopTime": 0,
"expiresAt": "string"
}
}{
"error": "Unauthorized"
}Create click-to-message ad (WhatsApp / Messenger / Instagram Direct) POST
Creates a click-to-message ad; `destination` selects where the tapped ad opens a conversation: WhatsApp, the Page's Messenger inbox or the linked Instagram account's Direct inbox. The ad set is created with the matching destination_type and CONVERSATIONS optimization; the campaign objective defaults to OUTCOME_ENGAGEMENT. Supports single-creative and multi-creative shapes. Supersedes POST /v1/ads/ctwa (deprecated, equivalent to `destination: whatsapp`).
Read a Reach & Frequency prediction GET
Next Page