> ## Documentation Index
> Fetch the complete documentation index at: https://docs.adsmcp.si/llms.txt
> Use this file to discover all available pages before exploring further.

# get_amazon_campaign_metrics

> Per-campaign Amazon performance (impressions, clicks, cost, purchases, sales, CTR, CPC, CVR, ACOS, ROAS) for SP, SB or SD over up to 93 days, with totals.

> [!NOTE]
>
> **Read-only.** Runs right away and changes nothing in your ad accounts. It still needs a connected platform (check `get_connections_status`) and counts as one tool call.

Per-campaign Amazon performance (impressions, clicks, cost, purchases, sales, CTR, CPC, CVR, ACOS, ROAS) for SP, SB or SD over up to 93 days, with totals. Reads live Reporting v3 reports (14-day attribution; status 'pending' with continue\_with when Amazon has not finished).

**Platform:** Amazon Ads · **Type:** Read

## How to call it

* **MCP:** on `https://mcp.adsmcp.si/mcp`, run it through the `amazon_ads_read` tool with `{"action": "execute", "tool_name": "get_amazon_campaign_metrics", "arguments": { ... }}`, or call `get_amazon_campaign_metrics` by name. `search_tools` finds it and `get_tool_schema` returns its arguments; `https://mcp.adsmcp.si/mcp/flat` lists every tool by name.
* **REST:** `POST https://mcp.adsmcp.si/api/v1/tools/get_amazon_campaign_metrics/execute` with `Authorization: Bearer sk_live_...` and a JSON body `{"platform": "amazon", "arguments": { ... }}`. The arguments are listed below; they are exactly the tool's input schema.


## OpenAPI

````yaml api-reference/openapi.json POST /api/v1/tools/get_amazon_campaign_metrics/execute
openapi: 3.1.0
info:
  title: ADSMCP REST API
  version: 0.1.0
  description: >-
    ADSMCP REST API: every public ADSMCP tool as POST
    /api/v1/tools/{name}/execute. Generated from the ADSMCP code (the service
    serves the same document at GET /api/v1/openapi.json). Changes to ad
    accounts are staged for approval by a person on the ADSMCP dashboard;
    nothing in this API can approve them.
servers:
  - url: https://mcp.adsmcp.si
    description: ADSMCP MCP and REST service
security: []
paths:
  /api/v1/tools/get_amazon_campaign_metrics/execute:
    post:
      tags:
        - amazon
      summary: >-
        Per-campaign Amazon performance (impressions, clicks, cost, purchases,
        sales, CTR, CPC, CVR, ACOS, ROAS) for SP, SB or SD over up to 93 days,
        with totals. Reads live Reporting v3 reports (14-day attribution; status
        'pending' with continue_with when Amazon has not finished).
      description: >-
        Per-campaign Amazon performance (impressions, clicks, cost, purchases,
        sales, CTR, CPC, CVR, ACOS, ROAS) for SP, SB or SD over up to 93 days,
        with totals. Reads live Reporting v3 reports (14-day attribution; status
        'pending' with continue_with when Amazon has not finished). Use this
        when you need that result and get_connections_status already shows the
        platform as connected. Read tools run without the approval queue.
      operationId: execute_get_amazon_campaign_metrics
      parameters:
        - name: Authorization
          in: header
          required: true
          schema:
            type: string
          description: Bearer token
        - name: Idempotency-Key
          in: header
          required: false
          schema:
            type: string
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                platform:
                  type: string
                  default: amazon
                arguments:
                  type: object
                  properties:
                    profile_id:
                      type: string
                      description: Amazon Ads profile id (see get_amazon_profiles).
                      minLength: 1
                      maxLength: 64
                    ad_product:
                      type: string
                      description: SP (default), SB or SD.
                      enum:
                        - SP
                        - SB
                        - SD
                    lookback_days:
                      type: integer
                      minimum: 1
                      maximum: 93
                      description: >-
                        Last N complete days (default 30, max 93; over 31 days
                        the window is read as up to 3 reports). Do not combine
                        with start_date/end_date.
                    start_date:
                      type: string
                      description: >-
                        First day, YYYY-MM-DD, inclusive. Give start_date and
                        end_date together, or use lookback_days.
                      pattern: ^\d{4}-\d{2}-\d{2}$
                    end_date:
                      type: string
                      description: >-
                        Last day, YYYY-MM-DD, inclusive. Give start_date and
                        end_date together, or use lookback_days.
                      pattern: ^\d{4}-\d{2}-\d{2}$
                    report_id:
                      type: string
                      description: >-
                        Continue a report that came back pending. Pass the same
                        other arguments again.
                      minLength: 1
                      maxLength: 128
                    report_ids:
                      type: array
                      minItems: 1
                      maxItems: 3
                      items:
                        type: string
                        description: Report id.
                        minLength: 1
                        maxLength: 128
                      description: >-
                        Continue a window over 31 days that came back pending:
                        pass continue_with.report_ids with the same
                        start_date/end_date.
                    campaign_ids:
                      type: array
                      minItems: 1
                      maxItems: 100
                      items:
                        type: string
                        description: Campaign id.
                        pattern: ^\d{1,20}$
                      description: Up to 100 campaign ids.
                    sort_by:
                      type: string
                      description: >-
                        Sort order (default cost; acos ascending, the rest
                        descending).
                      enum:
                        - cost
                        - sales
                        - clicks
                        - impressions
                        - purchases
                        - acos
                        - roas
                    limit:
                      type: integer
                      minimum: 1
                      maximum: 500
                      description: >-
                        Campaigns returned (default 100, max 500); totals always
                        cover every campaign kept.
                  required:
                    - profile_id
                  additionalProperties: false
              additionalProperties: false
      responses:
        '200':
          description: Tool execution result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecuteToolResponse'
        '400':
          description: Invalid JSON input.
        '401':
          description: Authentication error.
      security:
        - bearerAuth: []
components:
  schemas:
    ExecuteToolResponse:
      type: object
      properties:
        ok:
          type: boolean
        platform:
          type: string
        tool:
          type: string
        data: {}
        error:
          anyOf:
            - type: 'null'
            - $ref: '#/components/schemas/ErrorResponse'
        mcp_response: {}
      required:
        - ok
        - platform
        - tool
        - error
        - mcp_response
      additionalProperties: false
    ErrorResponse:
      type: object
      properties:
        code: {}
        message:
          type: string
        details: {}
      required:
        - message
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API token

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.