Ads · Ad Campaign Results

Upload your results per campaign

Uploads your results per campaign.

POSThttps://api.pozy.ai/v1/ads/campaign-results
Facebook and Instagram, Google Workspace, TikTok, LinkedIn, Pinterest and X and 1 moreuploadCampaignResults

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

Headers

NameTypeNotes
Idempotency-KeystringUp to 255 charactersRetries with the same key return the original result. See Idempotency

Request body

application/json, required

  • rowsarray of objectrequired

    At least 1 item. Up to 1000 items.

    • datestring (date)required
    • campaignIdstring
    • utmCampaignstring
    • campaignNamestring
    • adAccountIdstring
    • valuesmap of numberrequired

Example

curl -X POST "https://api.pozy.ai/v1/ads/campaign-results" \
  -H "Authorization: Bearer $POZY_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "rows": [
    {
      "date": "2026-10-02T09:00:00.000Z",
      "values": {
        "key": 12.5
      }
    }
  ]
}'

Response

202 on success

  • uploadIdstringrequired
  • rowsintegerrequired
  • statusstringrequired

    One of queued.

202 response
{
  "uploadId": "63236654bcc14def96dd5cc5",
  "rows": 1,
  "status": "queued"
}

Errors

Errors use one shape: { error, type, code, param?, details? }. The ones you are most likely to see here:

400invalid_request_errorA parameter or body field is missing or invalid. param names it.
401authentication_errorThe API key is missing, revoked or expired.
403permission_errorThe key is read-only, scoped to other profiles, or has this resource group disabled.
429rate_limit_errorToo many requests this minute. Wait for Retry-After seconds.

Every code is listed in Errors.

More in Ad Campaign Results