Meta Ads Write
User wants to edit/change an existing catalog AD SET — deep control: budget, bid amount/strategy, optimization goal, full targeting (geo/age/gender/interests/behaviors/custom audiences/placements), sc
POST https://api.adspirer.ai/api/v1/tools/update_meta_catalog_ad_set/execute
Authorization: Bearer sk_live_... — your Adspirer API key (required)Content-Type: application/json (required)Idempotency-Key: <uuid> — recommended for write operations to make retries safeAll tool arguments are wrapped in an arguments object.
| Field | Type | Description |
|---|---|---|
ad_set_id | string required | The catalog ad set ID to update (required). |
name | string optional | New ad set name. |
status | string optional | ACTIVE, PAUSED, or ARCHIVED. |
daily_budget | number optional | Daily budget in account currency. |
lifetime_budget | number optional | Lifetime budget (can't switch budget type after creation). |
bid_amount | number optional | Bid amount in account currency (for bid-cap/cost-cap strategies). |
bid_strategy | string optional | LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, LOWEST_COST_WITH_MIN_ROAS, COST_CAP. |
daily_min_spend_target | number optional | CBO: min daily spend for this ad set. |
daily_spend_cap | number optional | CBO: max daily spend for this ad set. |
lifetime_min_spend_target | number optional | CBO: min lifetime spend for this ad set. |
lifetime_spend_cap | number optional | CBO: max lifetime spend for this ad set. |
pacing_type | array optional | e.g. ['standard']. |
optimization_goal | string optional | OFFSITE_CONVERSIONS (default for catalog sales), VALUE (ROAS), LINK_CLICKS, LANDING_PAGE_VIEWS, etc. |
billing_event | string optional | IMPRESSIONS (default) or LINK_CLICKS. |
attribution_spec | array optional | Conversion attribution windows. |
start_time | string optional | Ad set start time (ISO 8601). |
end_time | string optional | Ad set end time (ISO 8601). |
adset_schedule | array optional | Dayparting schedule (list of day/hour windows). |
frequency_control_specs | array optional | Frequency caps. |
targeting | object optional | Full Meta targeting spec to REPLACE current targeting (geo_locations, age_min/max, genders, interests, behaviors, custom_audiences, excluded_custom_audiences, publisher_platforms, etc.). |
destination_type | string optional | WEBSITE or FACEBOOK. |
product_set_id | string optional | Swap the product set this ad set promotes. |
pixel_id | string optional | Change/set the pixel in the promoted object. |
pixel_event_name | string optional | Change the conversion event (custom_event_type), e.g. PURCHASE, ADD_TO_CART. |
retargeting_preset | string optional | Rebuild the retargeting audience: viewed_not_purchased | carted_not_purchased | all_engaged_not_purchased | cross_sell_purchasers | custom. |
retention_days | integer optional | Change the retargeting lookback window (days). |
include_events | array optional | custom preset: pixel events to include. |
exclude_events | array optional | custom preset: pixel events to exclude. |
dsa_beneficiary | string optional | EU DSA beneficiary. |
dsa_payor | string optional | EU DSA payor. |
ad_account_id | string optional | Meta ad account ID. Auto-detected if omitted. |
{
"arguments": {
"ad_set_id": "string",
"name": "string",
"status": "string",
"daily_budget": 1.0,
"lifetime_budget": 1.0,
"bid_amount": 1.0,
"bid_strategy": "string"
}
}
{
"success": true,
"data": {
"text": "(tool-specific textual output for update_meta_catalog_ad_set)",
"quota": {
"used": 42,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01"
}
},
"tool": "update_meta_catalog_ad_set"
}
{
"success": false,
"error": "You have 25 meta_ads accounts connected. Please specify which account to use by passing the ad_account_id parameter:\n - Acme Holdings (ad_account_id=\"act_123456789\")\n - Acme EU (ad_account_id=\"act_987654321\")",
"is_error": true,
"tool": "update_meta_catalog_ad_set"
}
{
"success": false,
"error": "\ud83d\udea8 Monthly limit reached (150/150 tool calls on Plus tier).\nUpgrade to Pro at https://adspirer.ai to keep building.",
"is_error": true,
"tool": "update_meta_catalog_ad_set",
"quota": {
"used": 150,
"limit": 150,
"tier": "plus",
"period_end": "2026-05-01",
"upgrade_url": "https://adspirer.ai"
}
}
Interactive: Swagger UI
Machine-readable: OpenAPI 3.1 spec · llms-full.txt
Adspirer REST API — get an API key at adspirer.ai/keys · adspirer.ai