How does Admaxxer connect to Meta Ads?
Admaxxer connects to Meta Ads through the Meta Marketing API v21.0. You can paste a long-lived user access token from Meta Business, or use the standard OAuth 2.0 flow. All tokens are encrypted with AES-256-GCM before storage.
install
Admaxxer is a DTC analytics platform with built-in Meta + Google ad ops. A natural integration question: how does Admaxxer connect to Meta Ads? The short version is that we use the official Meta Marketing API, version v21.0, with two supported authentication paths so you can choose whichever fits your setup: paste a long-lived user access token, or run the OAuth 2.0 flow from inside Admaxxer.
## The short answer
Admaxxer connects to Meta Ads through the Meta Marketing API v21.0. You can paste a long-lived user access token from Meta Business, or use the standard OAuth 2.0 flow. All tokens are encrypted with AES-256-GCM before storage.
## Full answer
### Two connection modes
We support both modes because ad teams work differently:
- **Paste-token mode** — for teams that want to start without going through Meta App Review. You generate a long-lived user token in Meta Business, paste it into Admaxxer's Connections page, and we validate the scopes (`ads_read`, `ads_management`, `business_management`) before saving.
- **OAuth 2.0 mode** — for teams that prefer the standard click-through flow. Admaxxer redirects you to Meta's consent screen, you pick the ad accounts to authorize, and Meta returns a short-lived token that we exchange for a long-lived one.
### What Admaxxer can do with your token
Read-side: pull campaigns, ad sets, ads, creatives, insights, pixels, and custom audiences. We hit insights endpoints for every configured account daily (and more often for accounts flagged as high-priority), then cache the results to keep you under Meta's rate limit.
Write-side: pause and resume campaigns, adjust budgets, and launch new campaigns — but only when you explicitly confirm via the Claude agent or the UI. Nothing destructive fires without an in-session `confirmed: true`.
### Rate limit handling
Meta enforces roughly **200 calls per hour per user token**. Admaxxer spreads requests across the hour, batches insight reads, and backs off on 429 and X-Ad-Account-Usage headers. If we detect you are close to a throttle, syncs queue and resume when the window resets. This is intentional — a flagged user token hurts every app you have connected, so we stay well below the cap.
### Token lifetime and refresh
Long-lived Meta user tokens last ~60 days. A background cron rotates tokens before expiry and emails you if a rotation fails so you can repaste a fresh token.
## Related questions
- [How does Admaxxer connect to Google Ads?](/faq/how-does-admaxxer-connect-to-google-ads)
- [How does Admaxxer store my credentials?](/faq/how-does-admaxxer-store-my-credentials)
- [Can the AI agent pause or launch campaigns?](/faq/can-the-ai-agent-pause-or-launch-campaigns)
Related Questions
Which Meta Marketing API version does Admaxxer use?
Admaxxer uses Meta Marketing API version v21.0 by default, configurable via the META_API_VERSION environment variable for self-hosted deployments.
What Meta permissions does Admaxxer request?
Admaxxer requests ads_read, ads_management, and business_management scopes, which cover reading insights and pausing or launching campaigns.
How does Admaxxer avoid Meta rate limits?
Admaxxer stays under Meta's ~200 calls per hour per user-token limit by batching insight reads, spreading requests across the hour, and backing off on 429 responses.
Still have questions?
See the full documentation or start a 7-day free trial — no credit card required.
Try Admaxxer Free