PPC: Campaigns
ppc_campaignsQuery campaign performance data with optional filters. Returns campaigns sorted by spend (descending) with metrics: cost, sales, ACoS, clicks, impressions, purchases, CTR, CVR, CPC. Supports filtering by ad type (SP/SB/SD), campaign name, and metric thresholds (acos_min, acos_max, spend_min, etc.). IMPORTANT: When the user asks for campaigns above/below a metric threshold, ALWAYS use the appropriate min/max filter parameter — do NOT just sort and return all campaigns.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sku | No | Scope by seller SKU (mapped to ASINs for SB coverage; matches SP/SD ad rows directly). | |
| asin | No | Scope to campaigns advertising this ASIN (SP advertised products, SB ad creatives, SD promoted products). | |
| skus | No | Scope by multiple seller SKUs. | |
| sort | No | Sort field. Default: cost. | |
| asins | No | Scope to campaigns advertising ANY of these ASINs. | |
| limit | No | Campaigns per page. Default: 25, max: 500. | |
| offset | No | Pagination offset — use next_offset from the previous response to page through ALL campaigns. | |
| ad_type | No | Filter to a specific ad type. Omit for all types. | |
| acos_max | No | Maximum ACoS as decimal (e.g. 0.30 for 30%). Only return campaigns with ACoS <= this value. | |
| acos_min | No | Minimum ACoS as decimal (e.g. 0.50 for 50%). Only return campaigns with ACoS >= this value. | |
| end_date | No | End date (YYYY-MM-DD). Defaults to today. | |
| roas_min | No | Minimum ROAS (e.g. 3.0 for 3x return). | |
| sales_min | No | Minimum sales in dollars. | |
| spend_max | No | Maximum spend in dollars. | |
| spend_min | No | Minimum spend in dollars. Only return campaigns spending at least this amount. | |
| clicks_min | No | Minimum clicks. | |
| parent_sku | No | Scope to the full family by parent SKU. | |
| profile_id | No | Which advertising profile (see account_profiles). Optional when the token has exactly one. | |
| start_date | No | Start date (YYYY-MM-DD). Defaults to 30 days ago. | |
| campaign_id | No | Filter to a specific campaign ID. | |
| parent_asin | No | Scope to the FULL parent family: resolves every child ASIN (product library / Category Listing) and matches campaigns advertising any of them. The response's scope block shows the resolved ASINs. | |
| period_days | No | Lookback period in days. Alternative to start_date/end_date. Default: 30. | |
| impressions_min | No | Minimum impressions. | |
| campaign_name_contains | No | Filter campaigns whose name contains this substring (case-insensitive). |