amazon_unified_api

Amazon Ads Write

POWER TOOL — direct access to Amazon's modern unified Ads API (/adsApi/v1 create|query|update|delete on campaigns|adGroups|ads|targets across ALL ad products)

Endpoint

POST https://api.adspirer.ai/api/v1/tools/amazon_unified_api/execute

Headers

Description

POWER TOOL — direct access to Amazon's modern unified Ads API (/adsApi/v1 create|query|update|delete on campaigns|adGroups|ads|targets across ALL ad products). Use for: Sponsored Display entities, cross-product targets (targetType KEYWORD|PRODUCT|PRODUCT_CATEGORY|AUDIENCE|THEME|LOCATION + negative boolean), and anything the focused tools don't cover. create/update items MUST each carry adProduct. Prefer the focused tools for common SP/SB operations.

Request body

All tool arguments are wrapped in an arguments object.

FieldTypeDescription
profile_idstring optionalAmazon Ads profile ID (advertiser account). Omit to use the user's selected account. Find IDs with list_amazon_profiles.
resourcestring required'campaigns' | 'adGroups' | 'ads' | 'targets'
verbstring required'create' | 'query' | 'update' | 'delete'
ad_productstring optionalRequired for query/delete: SPONSORED_DISPLAY | SPONSORED_PRODUCTS | SPONSORED_BRANDS | SPONSORED_TELEVISION
itemsarray optionalcreate/update: entity objects, each MUST carry adProduct. Targets example: {adProduct: 'SPONSORED_DISPLAY', campaignId, adGroupId, targetType: 'AUDIENCE'|'KEYWORD'|'PRODUCT'|'PRODUCT_CATEGORY'|'THEME', negative: false, state: 'ENABLED', targetDetails: {...}, bid?}
idsarray optionaldelete: entity IDs
filtersarray optionalquery: extra filters, e.g. [{'campaignIdFilter': {'include': ['123']}}]
max_resultsinteger optionalquery page size default: 100

Example request

{
  "arguments": {
    "resource": "string",
    "verb": "string",
    "profile_id": "string",
    "ad_product": "string",
    "items": [
      {}
    ],
    "ids": [
      "string"
    ],
    "filters": [
      {}
    ],
    "max_results": 100
  }
}

Example responses

200 — Success

{
  "success": true,
  "data": {
    "text": "(tool-specific textual output for amazon_unified_api)",
    "quota": {
      "used": 42,
      "limit": 150,
      "tier": "plus",
      "period_end": "2026-05-01"
    }
  },
  "tool": "amazon_unified_api"
}

400 — Tool-level error (bad arguments / multi-account selection)

{
  "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": "amazon_unified_api"
}

402 — Quota exhausted

{
  "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": "amazon_unified_api",
  "quota": {
    "used": 150,
    "limit": 150,
    "tier": "plus",
    "period_end": "2026-05-01",
    "upgrade_url": "https://adspirer.ai"
  }
}

Try it live


Adspirer REST API — get an API key at adspirer.ai/keys · adspirer.ai