---
name: pp-amazon-ads
description: "Printing Press CLI for Amazon Ads reports, profitability analytics, keyword optimization, and guarded automation."
author: "Cathryn Lavery"
license: "Apache-2.0"
argument-hint: "<command> [args] | install cli|mcp"
allowed-tools: "Read Bash"
metadata:
  openclaw:
    requires:
      bins:
        - amazon-ads-pp-cli
    install:
      - kind: go
        bins: [amazon-ads-pp-cli]
        module: github.com/mvanhorn/printing-press-library/library/commerce/amazon-ads/cmd/amazon-ads-pp-cli
---

# Amazon Ads — Printing Press CLI

## Prerequisites: Install the CLI

This skill drives the `amazon-ads-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first:

1. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows:
   ```bash
   npx -y @mvanhorn/printing-press-library install amazon-ads --cli-only
   ```
2. Verify: `amazon-ads-pp-cli --version`
3. Ensure the reported install directory is on `$PATH` for the agent/runtime that will invoke this skill.

If the `npx` install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer):

```bash
go install github.com/mvanhorn/printing-press-library/library/commerce/amazon-ads/cmd/amazon-ads-pp-cli@latest
```

If `--version` reports "command not found" after install, the runtime cannot see the binary directory on `$PATH`. Do not proceed with skill commands until verification succeeds.

## Start here: profitability

For a seller focused on organic + advertising profitability, start with these commands before browsing the full API surface:

1. `amazon-ads-pp-cli break-even-acos` — Calculate the maximum ACOS a product can carry before it loses money.
2. `amazon-ads-pp-cli true-profit` — Calculate product profit after COGS, estimated Amazon fees, and ad spend.
3. `amazon-ads-pp-cli acos-vs-tacos --report product-performance.csv --seller-store ~/.config/amazon-seller-pp-cli/store.db` — Join ad spend to seller-store sales for ACOS and TACOS by ASIN when the seller store has matching data.
4. `amazon-ads-pp-cli portfolio-dashboard --report campaign-performance.csv` — Summarize spend, sales, orders, ACOS, CPC, CTR, and CVR.
5. `amazon-ads-pp-cli product-ad-profitability --report product-performance.csv --cogs-file products.toml` — Estimate per-ASIN profit from ad performance and COGS.
6. `amazon-ads-pp-cli campaign-comparison --report campaign-performance.csv` — Compare campaigns by spend, sales, ACOS, CPC, CTR, and CVR.

Use `amazon-ads-pp-cli reports recipe <command>` when a command asks for `--report`; it prints the exact report kind, required columns, export path, and sample header. The schema-aware flows support console CSV/TSV exports and Ads API JSON/GZIP report artifacts.

`acos-vs-tacos` covers ad spend joined to seller-store sales and TACOS by ASIN when the seller store overlaps the ads report. It does not yet cover organic sessions, conversion rate, parent/child ASIN rollups, refunds, COGS unless `--cogs-file` is provided to profit commands, or TACOS by portfolio. For the seller-side dashboard workflow, cross-check `amazon-seller-pp-cli sales-intel dashboard`.

## Command Reference

**amazon-ads-dsp-dsp** — Manage amazon ads dsp dsp

- `amazon-ads-pp-cli amazon-ads-dsp-dsp get` — Returns advertiser information based on given advertiser id.
- `amazon-ads-pp-cli amazon-ads-dsp-dsp list` — Returns a list of advertisers with information which satisfy the filtering criteria.

**amazon-ads-profiles-profiles** — Manage amazon ads profiles profiles

- `amazon-ads-pp-cli amazon-ads-profiles-profiles get-by-id` — This operation does not return a response unless the current account has created at least one campaign using the
- `amazon-ads-pp-cli amazon-ads-profiles-profiles list` — Note that this operation does not return a response unless the current account has created at least one campaign using
- `amazon-ads-pp-cli amazon-ads-profiles-profiles update` — Note that this operation is only used for Sellers using Sponsored Products.

**amazon-ads-sponsored-reports** — Manage amazon ads sponsored reports

- `amazon-ads-pp-cli amazon-ads-sponsored-reports <reportId>` — Uses the `reportId` value from the response of a report previously requested via `POST` method of the

**assets** — Manage assets

- `amazon-ads-pp-cli assets get` — Retrieves an asset along with the metadata
- `amazon-ads-pp-cli assets get-upload-location` — Creates an ephemeral resource (upload location) to upload Assets to Creative Assets tool.
- `amazon-ads-pp-cli assets register` — The API should be called once the asset is uploaded to the location provided by the /asset/upload API endpoint.
- `amazon-ads-pp-cli assets search` — Search assets

**attribution** — Manage attribution

- `amazon-ads-pp-cli attribution get-advertisers-by-profile` — For sellers, an attribution profile has one associated advertiser.
- `amazon-ads-pp-cli attribution get-publisher-macro-tag` — Some third-party publishers do not support tags that include macro parameters.
- `amazon-ads-pp-cli attribution get-publisher-tag-template` — Third-party publishers, such as Google Ads, Facebook, Microsoft Ads
- `amazon-ads-pp-cli attribution get-publishers` — Use the response to determine whether to use either the macroTags or nonMacroTemplateTags resource to get tags for a
- `amazon-ads-pp-cli attribution get-tags-by-campaign` — Gets an attribution report for a specified list of advertisers.

**audiences** — Manage audiences

- `amazon-ads-pp-cli audiences fetch-taxonomy` — Returns a list of audience categories for a given category path **Requires one of these permissions**
- `amazon-ads-pp-cli audiences list` — Returns a list of audience segments for an advertiser.

**benchmarks** — Manage benchmarks

- `amazon-ads-pp-cli benchmarks get-brands` — Gets a list of brands that the advertising account has promoted in their SB campaigns **Requires one of these
- `amazon-ads-pp-cli benchmarks get-report-data` — Provides overview of metrics for all brands and categories that the entity has access to.
- `amazon-ads-pp-cli benchmarks get-time-series` — Provides time series data for the specified brand and category filtered by optional parameters **Requires one of these

**billing** — Manage billing

- `amazon-ads-pp-cli billing bulk-get-notifications` — Gets an array of all currently valid billing notifications associated for each advertising account.
- `amazon-ads-pp-cli billing bulk-get-status` — Gets the current billing status associated for each advertising account.

**brands** — Manage brands

- `amazon-ads-pp-cli brands` — Gets an array of Brand data objects for the Brand associated with the profile ID passed in the header.

**currencies** — Manage currencies

- `amazon-ads-pp-cli currencies` — Gets an array of localized currencies in their target marketplaces using advertiser identifier in header

**dp** — Manage dp

- `amazon-ads-pp-cli dp create` — Creates a new data provider audience. Note that the API call rate is limited to 1 transaction per second (TPS).
- `amazon-ads-pp-cli dp get` — Gets metadata for an audience specified by identifier.
- `amazon-ads-pp-cli dp update` — Associates or disassociates a record with an audience.
- `amazon-ads-pp-cli dp update-audiencemetadata` — Updates metadata of an existing audience specified by identifier.
- `amazon-ads-pp-cli dp update-users` — Deletes user data originally sourced from the client. The API call rate is limited to 1 transactions per second (TPS).

**dsp** — Manage dsp

- `amazon-ads-pp-cli dsp associate-line-items-to-creatives` — Create/delete association between line item and creative. Callout - Do not pass in startDate, endDate and weight.
- `amazon-ads-pp-cli dsp create-file-uploads-policy` — Create file upload policy that used to upload file to AWS S3. File upload policy will expire in 15 minutes.
- `amazon-ads-pp-cli dsp create-image-creative` — Create an image creative. Callout - A future update will add support to create multiple Image creatives at a time.
- `amazon-ads-pp-cli dsp create-line-items` — Create line item. Callout - A future update will add support for multiple at a time.
- `amazon-ads-pp-cli dsp create-orders` — Create an order. Callout - A future update will add support for multiple at a time.
- `amazon-ads-pp-cli dsp create-rec-creatives` — Create a new Responsive eCommerce Creatives(REC).
- `amazon-ads-pp-cli dsp create-third-party-creative` — Create a third party creative.
- `amazon-ads-pp-cli dsp create-video-creatives` — Create a video creative Callout - A future update will add support to create multiple Video creatives at a time.
- `amazon-ads-pp-cli dsp export-products-by-order-id` — Export conversion tracking products as a file by identifier. The file URL will expire in 15 minutes.
- `amazon-ads-pp-cli dsp get-apps` — Gets apps based on app Ids or text querys. Either one of app Ids or text query may be supplied, but not both.
- `amazon-ads-pp-cli dsp get-conversion-trackings` — Get conversion tracking information for given order.
- `amazon-ads-pp-cli dsp get-creative-moderation` — Get creative moderation summary by creativeId.
- `amazon-ads-pp-cli dsp get-creatives` — Gets one or more creatives.
- `amazon-ads-pp-cli dsp get-domain-targeting` — Gets one or more line items domain targeting information.
- `amazon-ads-pp-cli dsp get-domains` — Gets the list of domain lists for inclusion/exclusion based on entity. Lists are sorted by creation time.
- `amazon-ads-pp-cli dsp get-dv-custom-contextual-segments` — Retrieves custom contextual segments pre-bid targeting data for an account that is already linked to Double Verify.
- `amazon-ads-pp-cli dsp get-geo-locations` — Gets locationTargeting objects based on locationTargetingId or text query, such as city name, zip code
- `amazon-ads-pp-cli dsp get-goal-configurations` — Gets a list of configurations that can be applied to orders to optimize for a desired campaign goal
- `amazon-ads-pp-cli dsp get-iab-content-categories` — Gets the hierarchy of IAB content categories as a list sorted by ID in ascending order.
- `amazon-ads-pp-cli dsp get-image-creatives` — Get an image creative matching criteria provided in request.
- `amazon-ads-pp-cli dsp get-line-item` — Gets line item with complete information specified by identifier.
- `amazon-ads-pp-cli dsp get-line-items` — Gets one or more line items with basic information.
- `amazon-ads-pp-cli dsp get-odc-custom-predicts` — Retrieves custom predict pre-bid targeting data for an account that is already linked to Oracle Data Cloud.
- `amazon-ads-pp-cli dsp get-odc-standard-predicts` — Gets Oracle Data Cloud provided standard predicts for pre-bid targeting.
- `amazon-ads-pp-cli dsp get-order` — Gets an order with complete information specified by an identifier.
- `amazon-ads-pp-cli dsp get-orders` — Gets one or more orders with basic information.
- `amazon-ads-pp-cli dsp get-pixels` — Gets a list of pixels based on filters. AdvertiserIdFilter must be provided.
- `amazon-ads-pp-cli dsp get-pixels-by-order-id` — Get conversion tracking pixels by identifier.
- `amazon-ads-pp-cli dsp get-product-categories` — Gets the hierarchy of product category objects as a list sorted by ID in ascending order.
- `amazon-ads-pp-cli dsp get-products-by-order-id` — Get conversion tracking products by identifier.
- `amazon-ads-pp-cli dsp get-rec-creatives` — Get an Responsive eCommerce Creative (REC) matching criteria provided in request.
- `amazon-ads-pp-cli dsp get-supply-sources` — Gets the supply sources based on line item type, advertiser and supply source type.
- `amazon-ads-pp-cli dsp get-third-party-creatives` — Get a third party creative matching criteria provided in request.
- `amazon-ads-pp-cli dsp get-video-creatives` — Get a video creative matching criteria provided in request.
- `amazon-ads-pp-cli dsp list-line-item-creative-associations` — Gets an array of creative associations, filtered by specified criteria.
- `amazon-ads-pp-cli dsp preview-image-creative` — Preview an image creative.
- `amazon-ads-pp-cli dsp preview-rec-creative` — Preview a Responsive eCommerce Creative(REC).
- `amazon-ads-pp-cli dsp preview-third-party-creative` — Preview a third party creative.
- `amazon-ads-pp-cli dsp preview-video-creative` — Preview a video creative
- `amazon-ads-pp-cli dsp set-line-item-status` — Setting delivery activation status for the given line item id. Version 2.x line items accept `application/vnd.
- `amazon-ads-pp-cli dsp set-order-status` — Setting delivery activation status for the given order id.
- `amazon-ads-pp-cli dsp update` — Add or remove conversion tracking products from the order.
- `amazon-ads-pp-cli dsp update-conversion-tracking` — Add or remove conversion tracking information from the order.
- `amazon-ads-pp-cli dsp update-domain-targeting` — Replaces the DomainTargeting for the specified line items with the ones provided in the request body.
- `amazon-ads-pp-cli dsp update-image-creative` — Update an image creative. Callout - A future update will add support to update multiple Image creatives at a time.
- `amazon-ads-pp-cli dsp update-line-item-creative-associations` — Update association details. This API will be used to update startDate, endDate and weight parameters.
- `amazon-ads-pp-cli dsp update-line-items` — This is a full update, not partial patch.
- `amazon-ads-pp-cli dsp update-orders` — This is a full update, not partial patch.
- `amazon-ads-pp-cli dsp update-pixels-by-order-id` — Add or remove conversion tracking pixels from the order. The maximum size of pixel list is 100.
- `amazon-ads-pp-cli dsp update-rec-creatives` — Update existing Responsive eCommerce Creatives(REC). Callout - A future update will add support for multiple at a time.
- `amazon-ads-pp-cli dsp update-third-party-creative` — Update a third party creative.
- `amazon-ads-pp-cli dsp update-video-creatives` — Update a video creative Callout - A future update will add support to update multiple Video creatives at a time.

**dsp-reports-dsp** — Manage dsp reports dsp

- `amazon-ads-pp-cli dsp-reports-dsp create-report-v3` — Use this operation to request creation of a report that includes metrics about your Amazon DSP campaigns.
- `amazon-ads-pp-cli dsp-reports-dsp get-campaign-report-v3` — Pass the identifier of a previously requested report in the `reportId` field to get the current status of the report.

**eligibility** — Manage eligibility

- `amazon-ads-pp-cli eligibility product` — Gets a list of advertising eligibility objects for a set of products.
- `amazon-ads-pp-cli eligibility program` — Checks the advertiser's eligibility to ad programs.

**history** — Manage history

- `amazon-ads-pp-cli history` — Returns history of changes for provided event sources that match the filters and time ranges specified.

**hsa** — Manage hsa


**insights** — Manage insights

- `amazon-ads-pp-cli insights generate-brand-metrics-report` — Generates the Brand Metrics report in CSV or JSON format.
- `amazon-ads-pp-cli insights get-brand-metrics-report` — Fetch the location and status of the report for the brands for which the metrics are available.

**invoices** — Manage invoices

- `amazon-ads-pp-cli invoices get` — **Requires one of these permissions**: ['nemo_transactions_view','nemo_transactions_edit']
- `amazon-ads-pp-cli invoices get-advertiser` — **Requires one of these permissions**: ['nemo_transactions_view','nemo_transactions_edit']

**keywords** — Manage keywords

- `amazon-ads-pp-cli keywords` — Returns localized keywords within specified marketplaces or locales.

**manager-accounts** — Manage manager accounts

- `amazon-ads-pp-cli manager-accounts create` — Creates a new Amazon Advertising [Manager account](https://advertising.amazon.com/help?
- `amazon-ads-pp-cli manager-accounts get-for-user` — Returns all [Manager accounts](https://advertising.amazon.com/help?

**measurement** — Manage measurement

- `amazon-ads-pp-cli measurement cancel-studies` — Cancel existing studies. Once a study is cancelled it can not be resumed again.
- `amazon-ads-pp-cli measurement check-planning-eligibility` — Checks eligibility against all vendor products. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement create-surveys` — Create new study surveys. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement get-dspbrand-lift-study-result` — Get result of a DSP BRAND_LIFT study. Returns 200 successful response if json resource is requested in Accept header.
- `amazon-ads-pp-cli measurement get-studies` — Gets base study objects given a list of studyIds or a list of advertiserIds. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement get-surveys` — Gets one or more study surveys with requested survey identifiers or a study identifier.
- `amazon-ads-pp-cli measurement omnichannel-metrics-brand-search` — Search for brands to be used in the OMNICHANNEL_METRICS vendor product. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement update-surveys` — Update measurement surveys. This will be a full update. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement vendor-product` — Lists the supported measurement vendors products. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement vendor-product-policy` — Gets the policies for the specific vendor product(s). **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement vendor-product-survey-question-templates` — Gets the survey question templates for the specific vendor product(s). **Requires one of these permissions**: []

**measurement-dsp** — Manage measurement dsp

- `amazon-ads-pp-cli measurement-dsp check-dspaudience-research-eligibility` — Checks the DSP AUDIENCE_RESEARCH study type eligibility status against vendor products.
- `amazon-ads-pp-cli measurement-dsp check-dspbrand-lift-eligibility` — Checks the DSP BRAND_LIFT study type eligibility status against vendor products.
- `amazon-ads-pp-cli measurement-dsp check-dspcreative-testing-eligibility` — Checks the DSP CREATIVE_TESTING study type eligibility status against vendor products.
- `amazon-ads-pp-cli measurement-dsp check-dspomnichannel-metrics-eligibility` — Checks the DSP OMNICHANNEL_METRICS study type eligibility status against vendor products.
- `amazon-ads-pp-cli measurement-dsp create-dspaudience-research-study` — Create new DSP AUDIENCE_RESEARCH study. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement-dsp create-dspbrand-lift-studies` — Create new DSP BRAND_LIFT studies. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement-dsp create-dspcreative-testing-study` — Create new DSP CREATIVE_TESTING study. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement-dsp create-dspomnichannel-metrics-studies` — Create new DSP OMNICHANNEL_METRICS studies. **Requires one of these permissions**: []
- `amazon-ads-pp-cli measurement-dsp get-dspaudience-research-studies` — Gets one or more DSP AUDIENCE_RESEARCH studies with requested study identifiers or an advertiser identifier.
- `amazon-ads-pp-cli measurement-dsp get-dspaudience-research-study-result` — Get result of a DSP AUDIENCE_RESEARCH study.
- `amazon-ads-pp-cli measurement-dsp get-dspbrand-lift-studies` — Gets one or more DSP BRAND_LIFT studies with requested study identifiers or an advertiser identifier.
- `amazon-ads-pp-cli measurement-dsp get-dspcreative-testing-studies` — Gets one or more DSP CREATIVE_TESTING studies with requested study identifiers or an advertiser identifier.
- `amazon-ads-pp-cli measurement-dsp get-dspcreative-testing-study-result` — Get result of a DSP CREATIVE_TESTING study.
- `amazon-ads-pp-cli measurement-dsp get-dspomnichannel-metrics-studies` — Gets one or more DSP OMNICHANNEL_METRICS 