Ads · Ad Insights
Submits an async insights report. Works with Meta Ads.
POST
https://api.pozy.ai/v1/ads/insights/reportsFacebook and InstagramcreateAdInsightsReport
Guides: Meta Ads, Ads reporting
Request
Send your API key as Authorization: Bearer pz_live_.... Read-only keys cannot call it. Keys with the ads resource group disabled get 403 resource_group_disabled. Authentication
Request body
application/json, required
accountIdstringrequiredobjectIdstringrequiredlevelstringOne of
ad,adset,campaign,account.fieldsstringbreakdownsstringactionBreakdownsstringactionAttributionWindowsarray of stringactionReportTimestringuseUnifiedAttributionSettingbooleanfilteringarray of objectfieldstringrequiredoperatorstringrequiredvalueany
datePresetstringfromDatestring (date)toDatestring (date)timeIncrementinteger or string
Example
curl -X POST "https://api.pozy.ai/v1/ads/insights/reports" \
-H "Authorization: Bearer $POZY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"accountId": "696e0b682d0a31188e7a2ba9",
"objectId": "6cd1b53a19a7e157d2d46b68"
}'const res = await fetch("https://api.pozy.ai/v1/ads/insights/reports", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.POZY_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
accountId: "696e0b682d0a31188e7a2ba9",
objectId: "6cd1b53a19a7e157d2d46b68"
}),
});
const data = await res.json();
if (!res.ok) throw new Error(data?.error ?? `Request failed with status ${res.status}`);
console.log(data);import os
import requests
resp = requests.post(
"https://api.pozy.ai/v1/ads/insights/reports",
headers={"Authorization": f"Bearer {os.environ['POZY_API_KEY']}"},
json={
"accountId": "696e0b682d0a31188e7a2ba9",
"objectId": "6cd1b53a19a7e157d2d46b68",
},
timeout=30,
)
resp.raise_for_status()
print(resp.json())Response
202 on success
reportRunIdstringstatusstring
202 response
{
"reportRunId": "6e2f00f0f0d4fc8864437ccf",
"status": "active"
}Errors
Errors use one shape: { error, type, code, param?, details? }. The ones you are most likely to see here:
| 400 | invalid_request_error | A parameter or body field is missing or invalid. param names it. |
| 401 | authentication_error | The API key is missing, revoked or expired. |
| 403 | permission_error | The key is read-only, scoped to other profiles, or has this resource group disabled. |
| 429 | rate_limit_error | Too many requests this minute. Wait for Retry-After seconds. |
Every code is listed in Errors.
More in Ad Insights
GETGoogle Ads search terms reportGETGoogle Local Services Ads leadsGETList lead conversationsGETGet campaign analyticsPOSTGenerate keyword ideasPOSTGet historical keyword metricsGETFlexible live insights queryGETPoll an async insights report runGETGet ad analyticsGETPer-creative performance inside TikTok Smart+ ads