@todoforai/amazon-ads-api
v0.1.0
Published
JSON-first CLI for the Amazon Ads API (Sponsored Products campaigns, keywords, bids, budgets, reports)
Readme
amazon-ads-api
JSON CLI for the Amazon Ads API: profiles, Sponsored Products v3
(campaigns, ad groups, keywords, negative keywords, product ads, targets — list/create/update/archive, bids and
budgets), async reports v3 (create → poll → gunzipped rows), SB/SD campaign lists, and a raw
api <METHOD> <path> [--media-type …] escape hatch. Independent; not an official Amazon CLI. Zero dependencies.
echo '{"client_id":"amzn1.application-oa2-client.…","client_secret":"…","refresh_token":"Atzr|…","region":"na"}' | amazon-ads-api auth --stdin
amazon-ads-api profiles list && amazon-ads-api auth profile <profileId>
amazon-ads-api campaigns list --json '{"stateFilter":{"include":["ENABLED"]}}' --all
amazon-ads-api keywords update --json '{"keywords":[{"keywordId":"…","bid":1.25}]}'
amazon-ads-api campaigns update --json '{"campaigns":[{"campaignId":"…","budget":{"budgetType":"DAILY","budget":25}}]}'
amazon-ads-api reports create --json @report.json && amazon-ads-api reports download <reportId>Auth: a Login with Amazon client (approved for the Amazon Ads API) + the advertiser's refresh token; access
tokens refresh automatically. Every call except profiles list needs a profile (--profile,
AMAZON_ADS_PROFILE_ID, or auth profile). Regions: na (default), eu, fe.
Credentials: ~/.config/amazon-ads-api/credentials.json (0600).
bun test && bun run test:node