Campaigns in your Meta ad account — status, budget
meta-ads.campaignsList the campaigns in your Meta ad account with status, objective and budget
- Price
- freeAt provider cost
- Success rate
- —No success-rate data yetNo success-rate data yet
- Latency p50
- ——
- Last verified
- Jul 28, 2026Verified working
GEThttps://toolswitch.dev/v1/tools/meta-ads.campaigns?limit=2Preview- Uses platform quota
- Synchronous response
- Reads public data
Parameters
budgets are strings in the account currency's MINOR unit — daily_budget "5000" is $50.00. Budget can live on the campaign (CBO) or on each ad set, so a null daily_budget here is normal, not missing data. Ad sets and ads are the same pattern on /{ad_account_id}/adsets and /ads
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
| Path parameters | ||||
ad_account_id | string | Required | the act_-prefixed id from facebook.ads.accounts | act_1234567890 |
| Query parameters | ||||
after | string | Optional | paging.cursors.after from the previous response | |
limit | integer | Optional | 50 | |
fields | string | Required | id,name,status,effective_status,objective,daily_budget,lifetime_budget,start_time,stop_time,created_time | |
effective_status | string | Optional | JSON array as a string, e.g. ["ACTIVE","PAUSED"] — without it Meta also returns archived campaigns | ["ACTIVE"] |
- Path parameters
ad_account_idstringRequiredthe act_-prefixed id from facebook.ads.accounts
Example:
act_1234567890- Query parameters
afterstringOptionalpaging.cursors.after from the previous response
limitintegerOptionalExample:
50fieldsstringRequiredExample:
id,name,status,effective_status,objective,daily_budget,lifetime_budget,start_time,stop_time,created_timeeffective_statusstringOptionalJSON array as a string, e.g. ["ACTIVE","PAUSED"] — without it Meta also returns archived campaigns
Example:
["ACTIVE"]
Code samples
Replace $TOOLSWITCH_KEY with the key you created in the console.
curl -X GET 'https://toolswitch.dev/v1/tools/meta-ads.campaigns?limit=2' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/meta-ads.campaigns?limit=2",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/meta-ads.campaigns?limit=2", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());This gateway API is in preview; its URL and authentication may change. The example parameters are sample data. Calls are billed at free, including the service fee.