Skip to content
AdCrunch
Esc
↑↓navigate↵open⌘Jpreview
On this page

list_entities

List ad entities (campaigns, ad sets, ad groups, ads, creatives, …) under one advertiser, filtered by type or parent.

Lists ad entities of any level under a single advertiser. One generic tool covers every entity type across providers — filter by the provider-native type (campaign, adset, ad_group, ad, creative, …) and/or by parentId to walk the tree. Use list_advertisers first to get the advertiserId.

Input

Field Type Required Description
advertiserId acc_* yes The advertiser to list under. Must belong to your organization.
type string no Provider-native entity type, e.g. campaign, adset, ad_group, ad, creative.
parentId string (type:id) no Return only direct children of this entity, e.g. campaign:123.
status 'ACTIVE' | 'PAUSED' | 'DELETED' | 'ARCHIVED' no Filter by normalized status.
ids string[] no Restrict to specific entity IDs.
limit number (1–500) no The greatest number of entities in the answer. The default is 100.
cursor string no The nextCursor of the previous answer. Omit it to get the first page.

Output

{ entities: [...], nextCursor? } — an array of entity metadata rows, the entity AdCrunch stored last first. When nextCursor is present, more entities exist: call list_entities again with the same arguments and cursor set to that value. Each carries provider, type, id (bare, provider-native), name, status, advertiserId, parentId (type:id), path (the ancestor chain), and currency (the account currency, ISO 4217). This is lean metadata; for the full provider-native payload of one entity, use get_entity.

A campaign and an ad group also carry their budget:

Field Description
budget The entity’s own budget, in whole units of currency: 50 is 50.00. Null when the entity has no budget of its own.
budgetType daily or lifetime.
budgetLevel campaign when the campaign carries the budget, ad_group when each ad group carries its own.
objective The campaign’s objective, as the provider writes it. Null at Google Ads, which has none.

Example

“List the active campaigns for that advertiser.”

Claude calls list_entities({ advertiserId: 'acc_123', type: 'campaign', status: 'ACTIVE' }) and reads back the campaigns with their IDs, then can drill into one with parentId: 'campaign:<id>'.

Errors

  • invalid_cursor — the cursor is not a nextCursor of this query. Send it with no change and with the same arguments, or omit it.
  • 401 or 403 — see Errors, which every tool shares. This one needs observe:read.

Was this page helpful?