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

# Creative Report

> Get creative performance data aggregated by creative name.

<Warning>Maximum date range 365 days</Warning>

<Note>
  This endpoint is protected and requires an agency API key for access.
</Note>

<RequestExample>
  ```bash Request theme={null}
    curl --request GET \
      --url https://api.growthchannel.io/creative/?date_from=2024-01-01&date_to=2024-01-07&advertiser_id=544
  ```
</RequestExample>

<CardGroup>
  <Card title="Method" icon="puzzle-piece">
    `GET`
  </Card>

  <Card title="Endpoint" icon="link">
    `/creative/`
  </Card>
</CardGroup>

## Headers

<ParamField header="X-Api-Key" type="string" required>
  The agency's API key for authorization. Contact an admin to get one.
</ParamField>

## Parameters

<ParamField path="date_from" type="string" required>
  Start date in YYYY-MM-DD format.
</ParamField>

<ParamField path="date_to" type="string" required>
  End date in YYYY-MM-DD format.
</ParamField>

<ParamField path="advertiser_id" type="integer" required>
  The unique identifier for the advertiser.
</ParamField>

<ParamField path="page" type="integer" default="0">
  Page number for pagination.
</ParamField>

<ParamField path="sort_column" type="string" default="impressions">
  Column to sort by.
</ParamField>

<ParamField path="sort_order" type="string" default="DESC">
  Sort order (ASC/DESC).
</ParamField>

<ParamField path="campaign_id" type="integer">
  Filter by a specific campaign ID.
</ParamField>

<ParamField path="with_campaign" type="string" default="false">
  Include campaign information (true/false).
</ParamField>

<ParamField path="search" type="string">
  Search filter for creative names.
</ParamField>

## Responses

<Tabs>
  <Tab title="200 OK">
    ```json theme={null}
    {
      "data": [
        {
          "date": "2025-04-30",
          "campaign_name": "Name | Name2 | 11111",
          "impressions": 208,
          "reach": 0,
          "frequency": 0.0,
          "clicks": 1,
          "total_conversions": 0,
          "engagements": 0,
          "video_audio_views": 0,
          "video_audio_complete": 0,
          "total_revenue": 0.0,
          "total_spend": 0.909,
          "cpm": 4.368,
          "cpc": 0.909,
          "cpa": 0.0,
          "cpv": 0.004,
          "cpv_video": 0.0,
          "cpcv_video": 0.0,
          "roas": 0.0,
          "matched_bid_opp": 393941000,
          "vcr": 0.0,
          "ctr": 0.48,
          "campaign_ids": {
              "growth": [
                  11111
              ]
          },
          "advertiser_ids": {
              "growth": [
                  11111
              ]
          },
          "dsp": "Beeswax"
        },
      ],
      "pagination": {
        "current_page": 0,
        "total_pages": 5,
        "total_count": 100
      },
      "with_campaign": true,
      "search": "banner"
    }
    ```

    <ResponseField name="data" type="array">
      An array of creative performance objects.
    </ResponseField>
  </Tab>

  <Tab title="400 Bad Request">
    Returned if required query parameters like `date_from` or `date_to` are missing.

    ```json theme={null}
    {
      "error": {
        "code": "VALIDATION_ERROR",
        "message": "Missing required parameters",
        "details": {
          "missing_fields": ["date_from", "date_to"]
        },
        "request_id": "..."
      }
    }
    ```
  </Tab>

  <Tab title="401 Unauthorized">
    Returned if the `X-Api-Key` header is missing or invalid.
  </Tab>

  <Tab title="500 Internal Server Error">
    Returned if there is an unexpected error on the server while fetching data.
  </Tab>
</Tabs>
