AdCrunch provides agentic media buying automation for Meta, TikTok, and Google Ads. It offers AI‑driven campaign management with real‑time guardrails, budgeting limits, and detailed activity logs. Users can set rules, monitor performance, and let the platform execute changes across ad accounts without writing code, while maintaining full audit trails and compliance.
AdCrunch publishes 20 API contracts indexed on the APIs.io network, including Ad groups API, Ads API, Asset groups API, and 17 more. Tagged areas include Advertising, Artificial Intelligence, Marketing, Automation, and Media Buying.
The AdCrunch catalog on APIs.io includes 1 Spectral governance ruleset.
AdCrunch’s developer surface includes authentication, getting-started guide, documentation, API reference, pricing, engineering blog, signup flow, and 18 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Horizontal (data, software, accessibility, platform) regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
Create-or-Update Ergonomics could not be measured. We hold no machine-readable contract for
this provider to read, so there is nothing to measure a write surface against. Excluded rather than scored zero:
never-measured and measured-empty are different facts. Publishing an OpenAPI is what makes this facet — and
several others — scorable at all.
The six quality facets above are damped to 85 points between them,
because the conditional facet above carries the other
15. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 85% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Show this score on your site.
It updates itself when the score changes. Paste this where you link to your API docs:
<a href="https://apis.io/providers/adcrunch-dev/"><img src="https://apis.io/badge/adcrunch-dev/card.svg" alt="AdCrunch on APIs.io — Kin Score by API Evangelist"></a>
Other styles, a README pill and a shields.io endpoint are on the badge page.
Raise your score.
Agent readiness — checks not met, largest first (exact, from this profile):
Idempotency+9 pts — OpenAPI mutating operations declare an idempotency key — a header, a request-body property, or a named de-duplication token whose own description says so (verified); else common[].type matches /idempoten/i (documented)
A2A Agent Card+8 pts — a2a/-a2a.yml manifest, graded on conformance.grade against A2A 1.0.0
Rate-Limit Signaling+7 pts — OpenAPI responses document X-RateLimit-* / RateLimit headers (verified), else a rate_limits artifact or RateLimits link (documented)
Standards this provider implements or carries. De facto ones are profiled and measured by the API Commons; formal ones come from the standards directory and are linked by the provider's own tags. The evidence column says how each claim was established — not that it was made.
The ad groups of your advertisers. The providers use different words for one concept. Meta calls it an **ad set**. TikTok and Google Ads call it an **ad group**. Each row keeps ...
The ads of your advertisers. Meta and TikTok call it an `ad`. Google Ads calls it an **`ad_group_ad`**. That is a link resource, and its id is the composite `{adGroupId}~{adId}`...
The asset groups of your advertisers. Performance Max’s delivery container, and Google Ads only. A Performance Max campaign has no ad groups and no ads — the asset group holds w...
An organization's source media. Reserve an upload, transfer the bytes directly to storage, then read the Asset — which is where what actually landed is validated.
Your organization's brand context: identity, voice, guidelines and messaging, written as markdown. A list gives you the name, the description, the logo and which of the four sec...
What your organization intends to run, before it buys: on which channels, for whom, for how much, and over what period. **A Campaign Plan is not a provider campaign.** It belong...
The campaigns of your advertisers. Every provider calls a campaign `campaign`. This tag holds the live reads and the changes of one advertiser. For the stored list of every adve...
The creatives of your advertisers. A provider assembles a creative for an ad: the image or video, the headline, the body copy and the call to action. A Creative belongs to the *...
The Meta Custom Audiences of an ad account: the groups of people that an ad set can include or exclude. A Custom Audience is configuration of the ad account, not an entity: it h...
The custom conversions of an ad account. A custom conversion is configuration of the ad account, not an entity: it has no Insight, and AdCrunch stores none. An ad set can optimi...
Files attached to a Brand, such as a logo or a guidelines PDF. The bytes do not go through this API: reserve the upload, send the bytes to the URL you get back, then finalize. A...
Aggregated metrics for any level: advertiser, campaign, ad group or ad. The metrics include spend, impressions, clicks, reach and conversions. Group the rows into days, weeks or...
The rows of a Campaign Plan. One Line Item is one thing you buy. It is coarser than an ad set: it holds the **envelope** of an intent, and it can produce more than one provider ...
Poll a Mutation that you started, and read the organization history. The route of each change sits under the tag of the object that it changes, beside the reads of that object. ...
The Facebook Pages that the Meta connection of an advertiser can advertise from. A Page is configuration of the connection, not an entity: it has no Insight, and AdCrunch stores...
The audiences a Brand speaks **to**, described as people. A Persona belongs to one Brand only, and you address it through that Brand. Its handle is thus the pair of slugs, and t...
The Meta Pixels of an ad account. A Pixel is configuration of the ad account, not an entity: it has no Insight, and AdCrunch stores none. An ad set that optimizes for a conversi...
Your organization's ad-ops playbooks. List them, read one, or write one. The slug is the handle an agent uses. You can also import a Catalog Skill from the Skill Catalog, the pl...
The stored lists of campaigns, ad groups, ads, creatives and asset groups. A stored read answers from what the AdCrunch ingestion stored. It reads every advertiser of your organ...
The Meta interests and job titles that an ad set can target. An option is configuration of Meta, not an entity: it has no Insight, and AdCrunch stores none. Search them by name,...
aid: adcrunch-dev
name: AdCrunch
accessModel:
pricing: paid
onboarding: unknown
trial: false
try_now: false
public: false
label: Paid
confidence: medium
source:
- plans
- authentication
- security
generated: '2026-11-06'
method: derived
image: https://adcrunch.dev/og.png
description: AdCrunch provides agentic media buying automation for Meta, TikTok, and Google Ads. It offers AI‑driven campaign
management with real‑time guardrails, budgeting limits, and detailed activity logs. Users can set rules, monitor performance,
and let the platform execute changes across ad accounts without writing code, while maintaining full audit trails and compliance.
url: https://artifacts.apis.io/adcrunch-dev/apis.yml
x-type: company
x-source: harvest:mcp-registry
x-tier: profiled
x-tier-reason: enrichment pass 2026-10-31 (modular-v1; was harvest)
specificationVersion: '0.20'
created: '2026-10-31'
modified: '2026-10-31'
tags:
- Advertising
- Artificial Intelligence
- Marketing
- Automation
- Media Buying
tags_raw:
- Advertising
- AI
- Marketing
- Automation
- Media Buying
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com
- FN: APIs.json
email: info@apis.io
common:
- type: AgenticAccess
url: agentic-access/adcrunch-dev-agentic-access.yml
- type: Plans
url: plans/adcrunch-dev-plans-pricing.yml
- type: Spectral
url: rules/adcrunch-dev-rules.yml
- type: Vocabulary
url: vocabulary/adcrunch-dev-vocabulary.yml
- type: AgentSkill
url: skills/_index.yml
- type: Authentication
url: authentication/adcrunch-dev-authentication.yml
- type: ErrorCatalog
url: errors/adcrunch-dev-problem-types.yml
- type: Conformance
url: conformance/adcrunch-dev-conformance.yml
- type: LLMsTxt
url: llms/adcrunch-dev-llms.txt
- type: MCPServer
url: mcp/adcrunch-dev-mcp.yml
- type: WellKnown
url: well-known/adcrunch-dev-well-known.yml
- type: Hosts
url: hosts/adcrunch-dev-hosts.yml
- type: Vendors
url: vendors/adcrunch-dev-vendors.yml
- type: GitHubOrganization
url: https://github.com/adcrunchdev
- type: GettingStarted
url: https://docs.adcrunch.dev/quickstart
- type: DomainSecurity
url: security/adcrunch-dev-domain-security.yml
- type: Website
url: https://adcrunch.dev/
- type: Documentation
url: https://docs.adcrunch.dev
- type: APIReference
url: https://docs.adcrunch.dev
- type: DeveloperPortal
url: https://console.adcrunch.dev
- type: Pricing
url: https://adcrunch.dev/pricing/
- type: Blog
url: https://adcrunch.dev/blog/
- type: TermsOfService
url: https://adcrunch.dev/terms/
- type: PrivacyPolicy
url: https://adcrunch.dev/privacy/
- type: SignUp
url: https://sign.adcrunch.dev/login?mode=signup
apis:
- aid: adcrunch-dev:adcrunch-dev-ad-groups-api
name: AdCrunch Ad groups API
description: The ad groups of your advertisers. The providers use different words for one concept. Meta calls it an **ad
set**. TikTok and Google Ads call it an **ad group**. Each row keeps the word of its provider in `type`. A Performance
Max campaign has no ad groups. Read its asset groups instead. This tag holds the live reads and the changes of one advertiser.
For the stored list of every advertiser of your organization, see **Stored reads**. On Meta, you can also change the status,
the name, the budget, the bidding and the schedule of an ad set. You can also create an ad set or copy one. A change is
asynchronous. The operation answers `202` and starts a Mutation. You poll the Mutation for its outcome.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Ad Groups
tags_raw:
- Ad groups
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-ad-groups-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-ads-api
name: AdCrunch Ads API
description: The ads of your advertisers. Meta and TikTok call it an `ad`. Google Ads calls it an **`ad_group_ad`**. That
is a link resource, and its id is the composite `{adGroupId}~{adId}`. Filter by `adGroupId` for the ads of one ad group.
Filter by `campaignId` for every ad of a campaign. A Performance Max campaign has no ads. This tag holds the live reads
and the changes of one advertiser. For the stored list of every advertiser of your organization, see **Stored reads**.
On Meta, you can also change the status and the name of an ad. You can also create an ad. A change is asynchronous. The
operation answers `202` and starts a Mutation. You poll the Mutation for its outcome.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Ads
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-ads-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-asset-groups-api
name: AdCrunch Asset groups API
description: The asset groups of your advertisers. Performance Max’s delivery container, and Google Ads only. A Performance
Max campaign has no ad groups and no ads — the asset group holds what its automation assembles into placements. A child
of a campaign and a sibling of an ad group.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Asset groups
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-asset-groups-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-assets-api
name: AdCrunch Assets API
description: An organization's source media. Reserve an upload, transfer the bytes directly to storage, then read the Asset
— which is where what actually landed is validated.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Assets
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-assets-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-brands-api
name: AdCrunch Brands API
description: 'Your organization''s brand context: identity, voice, guidelines and messaging, written as markdown. A list
gives you the name, the description, the logo and which of the four sections carry prose. Read one Brand to get its narrative.
The slug is the handle an agent uses.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Brands
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-brands-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-campaign-plans-api
name: AdCrunch Campaign Plans API
description: 'What your organization intends to run, before it buys: on which channels, for whom, for how much, and over
what period. **A Campaign Plan is not a provider campaign.** It belongs to AdCrunch, and it comes before any provider.
The campaigns that a Campaign Plan later produces are in the Observe API. Write each amount in whole units of the currency
of that Campaign Plan.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Campaign Plans
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-campaign-plans-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-campaigns-api
name: AdCrunch Campaigns API
description: The campaigns of your advertisers. Every provider calls a campaign `campaign`. This tag holds the live reads
and the changes of one advertiser. For the stored list of every advertiser of your organization, see **Stored reads**.
On Meta, you can also change the status, the name, the budget and the bidding of a campaign. You can also create a campaign
or copy one. A change is asynchronous. The operation answers `202` and starts a Mutation. You poll the Mutation for its
outcome.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Campaigns
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-campaigns-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-creatives-api
name: AdCrunch Creatives API
description: 'The creatives of your advertisers. A provider assembles a creative for an ad: the image or video, the headline,
the body copy and the call to action. A Creative belongs to the **account**. Meta is the only provider that has one. TikTok
puts its creative material in the Ad itself. Google Ads keeps its creative material on the `ad_group_ad` link resource.
A Creative is not an Asset. An Asset is a source media file that your organization owns. This tag holds the live reads
and the changes of one advertiser. For the stored list of every advertiser of your organization, see **Stored reads**.
On Meta, you can also create a creative from an Asset that you registered to the advertiser. A change is asynchronous.
The operation answers `202` and starts a Mutation. You poll the Mutation for its outcome.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Creative
tags_raw:
- Creatives
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-creatives-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-custom-audiences-api
name: AdCrunch Custom audiences API
description: 'The Meta Custom Audiences of an ad account: the groups of people that an ad set can include or exclude. A
Custom Audience is configuration of the ad account, not an entity: it has no Insight, and AdCrunch stores none, so this
tag has no stored read. Its live read asks Meta for the audiences of one advertiser. On Meta, you can also create a website
audience from the events of a Pixel, or a lookalike of another audience. A change is asynchronous. The operation answers
`202` and starts a Mutation. You poll the Mutation for its outcome.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Custom Audiences
tags_raw:
- Custom audiences
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-custom-audiences-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-custom-conversions-api
name: AdCrunch Custom conversions API
description: 'The custom conversions of an ad account. A custom conversion is configuration of the ad account, not an entity:
it has no Insight, and AdCrunch stores none. An ad set can optimize for one custom conversion.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Custom conversions
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-custom-conversions-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-documents-api
name: AdCrunch Documents API
description: 'Files attached to a Brand, such as a logo or a guidelines PDF. The bytes do not go through this API: reserve
the upload, send the bytes to the URL you get back, then finalize. A Document is reference material that an agent reads.
It never leaves AdCrunch, and this is what makes it different from an Asset.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Documents
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-documents-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-insights-api
name: AdCrunch Insights API
description: 'Aggregated metrics for any level: advertiser, campaign, ad group or ad. The metrics include spend, impressions,
clicks, reach and conversions. Group the rows into days, weeks or months, and break them down by provider, by advertiser
or by entity type. A date range is required.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Insights
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-insights-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-line-items-api
name: AdCrunch Line Items API
description: 'The rows of a Campaign Plan. One Line Item is one thing you buy. It is coarser than an ad set: it holds the
**envelope** of an intent, and it can produce more than one provider object. Therefore it holds only what is the same
for all of them. A Line Item has no handle of its own. Address it through its Campaign Plan.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Line Items
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-line-items-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-mutations-api
name: AdCrunch Mutations API
description: Poll a Mutation that you started, and read the organization history. The route of each change sits under the
tag of the object that it changes, beside the reads of that object. `POST /mutations` is deprecated.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Mutations
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-mutations-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-pages-api
name: AdCrunch Pages API
description: 'The Facebook Pages that the Meta connection of an advertiser can advertise from. A Page is configuration of
the connection, not an entity: it has no Insight, and AdCrunch stores none. Each creative names one Page.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Pages
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-pages-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-personas-api
name: AdCrunch Personas API
description: The audiences a Brand speaks **to**, described as people. A Persona belongs to one Brand only, and you address
it through that Brand. Its handle is thus the pair of slugs, and two Brands can each hold a `loyalists`. Two Brands that
describe the same real person hold two Personas, and not one shared Persona.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Personas
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-personas-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-pixels-api
name: AdCrunch Pixels API
description: 'The Meta Pixels of an ad account. A Pixel is configuration of the ad account, not an entity: it has no Insight,
and AdCrunch stores none. An ad set that optimizes for a conversion names one Pixel.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Pixels
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-pixels-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-skills-api
name: AdCrunch Skills API
description: Your organization's ad-ops playbooks. List them, read one, or write one. The slug is the handle an agent uses.
You can also import a Catalog Skill from the Skill Catalog, the playbooks that AdCrunch writes, and re-import it when
AdCrunch publishes a later version.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Skills
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-skills-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-stored-reads-api
name: AdCrunch Stored reads API
description: The stored lists of campaigns, ad groups, ads, creatives and asset groups. A stored read answers from what
the AdCrunch ingestion stored. It reads every advertiser of your organization in one request. Send `advertiserId` to read
one advertiser. A stored read does not call the provider. To ask the provider now, use the live read under the tag of
the resource.
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Stored reads
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-stored-reads-api-openapi.yml
- aid: adcrunch-dev:adcrunch-dev-targeting-options-api
name: AdCrunch Targeting options API
description: 'The Meta interests and job titles that an ad set can target. An option is configuration of Meta, not an entity:
it has no Insight, and AdCrunch stores none. Search them by name, and send their ids when you create an ad set.'
humanURL: https://docs.adcrunch.dev/api
baseURL: https://api.adcrunch.dev
tags:
- Targeting options
properties:
- type: OpenAPI
url: openapi/adcrunch-dev-targeting-options-api-openapi.yml
x-enrichment:
date: '2026-10-31'
status: enriched
artifacts_added: 30
pass: modular-v1
engine: identity=local,contract=local,surfaces=local,docs=local,regulatory=local
AdCrunch API — frequently asked questions
Does AdCrunch have an API?
Yes. APIs.io lists 20 APIs from AdCrunch, including AdCrunch Ad groups API, AdCrunch Ads API and AdCrunch Asset groups API, and 17 more.
Is there an OpenAPI specification for the AdCrunch API?
Yes. APIs.io indexes 20 OpenAPI specifications for AdCrunch, each linked for download from this page.
How do I authenticate with the AdCrunch API?
AdCrunch documents its authentication (1 scheme). The details are profiled on APIs.io as Adcrunch Dev Authentication.
How much does the AdCrunch API cost?
AdCrunch publishes its prices; its Pro plan is $99/ month as of 2026-10-31. APIs.io lists 2 pricing plans for AdCrunch, with each plan's price, limits and inclusions under Pricing on this page.
Does AdCrunch have an MCP server?
Yes. APIs.io lists 1 MCP server for AdCrunch: Remote MCP server at api.adcrunch.dev.
Is the AdCrunch API ready for AI agents?
AdCrunch has a Kin Score of 38.7 out of 100 (thin) and an Agent Readiness score of 45.3 (agent-ready), scored by API Evangelist on 2026-11-06.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.