Zernio
Zernio
API Reference

Accounts & Ops

Accounts

List ad accountsGETUpdate ad account settingsPATCHAd account financesGET

Activity

Ad account change / audit logGETList comments on an adGET

Business Assets

Businesses listGETList TikTok Business CentersGETAd labelsGETA/B tests and lift studiesGET

Custom Conversions

List custom conversionsGETCreate or reuse a custom conversionPOST

Value Rules

List value rule setsGETCreate a value rule setPOSTRead a value rule setGETReplace a value rule setPUTDelete a value rule setDELETE

Budget Scheduling

High demand periods / budget schedulesGETSchedule a budget increasePOST

DSA Compliance

Get ad account DSA defaultsGETList DSA beneficiary/payor suggestionsGET

Other

Add account-level callout extensionsPOSTList account-level callout extensionsGETRemove an account-level callout extensionDELETE
Dashboard
llms.txtOpenAPI
OverviewPlatformsAPI ReferenceResources
Accounts & Ops

List ad accounts

Returns the platform ad accounts available for the given social account (e.g. Meta ad accounts, TikTok advertiser IDs, Google Ads customer IDs).

For TikTok agencies: enumerates every advertiser under every Business Center the token can read (paginated server-side), then chunks the lookup against TikTok's /advertiser/info/ endpoint (which has a per-call cap of ≤100 IDs). Solo advertisers without a BC fall back to the OAuth-time advertiser_ids list. Cached for 1h on the SocialAccount; lazy-refreshed on first call after expiry.

For Google Ads: responds 429 when Google's API quota is temporarily exhausted (instead of an empty list). Retry after a delay.


PlatformsMetaGoogleTikTokLinkedInPinterestX
GET
/v1/ads/accounts

Authorization

bearerAuth
AuthorizationBearer <token>

API key authentication - use your Zernio API key as a Bearer token

In: header

Query Parameters

accountId*string

Social account ID

adAccountId?string

Filter response to a single platform ad account ID (e.g. act_123 for Meta, advertiser_id for TikTok). Returns at most one item.

limit?integer

Clamp the returned accounts[] length. Useful for typeahead pickers on agency tokens with hundreds of advertisers.

Range1 <= value <= 1000

Response Body

application/json

application/json

application/json

{  "accounts": [    {      "id": "string",      "name": "string",      "currency": "string",      "status": "string",      "accountStatus": null,      "approvalStatus": "string",      "disableReason": 0,      "timezoneName": "string",      "timezoneOffsetHoursUtc": 0,      "minimumDailyBudget": 0,      "selectable": true,      "unusableReason": "string"    }  ],  "cachedAt": "2019-08-24T14:15:22Z",  "stale": true}
Was this page helpful?

Archive a lead form

Neither platform hard-deletes a form; this archives it (Meta status=ARCHIVED; LinkedIn state=ARCHIVED via PARTIAL_UPDATE).

Update ad account settings

Sets the default DSA beneficiary and payor on a Meta ad account (EU DSA, Article 26). Set them once and every EU-targeted call to `/v1/ads/create`, `/v1/ads/boost` and `/v1/ads/ctwa` on that ad account can omit `dsaBeneficiary`/`dsaPayor`: Meta applies the defaults automatically. The values are written to the ad account on Meta, the same setting Ads Manager edits. Nothing is stored in Zernio, and defaults already set in Ads Manager work identically. Zernio never guesses these values for you. Beneficiary and payor are legal disclosures shown to EU users, so you must provide the entity names explicitly. Use `GET /v1/ads/dsa-recommendations` to offer suggestions in your UI. If `defaultDsaPayor` is omitted, the beneficiary is also set as the payor, which covers the common case where the same entity benefits from and pays for the ads. Read the current values back with `GET /v1/ads/dsa-defaults`. Currently supported for Meta accounts only; other platforms return 400.