> ## 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_chatgpt_insights

> Raw ChatGPT Ads delivery insights (impressions, clicks, spend, CTR, CPC, CPM) at account, campaign, ad group or ad level.

> [!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.

Raw ChatGPT Ads delivery insights (impressions, clicks, spend, CTR, CPC, CPM) at account, campaign, ad group or ad level. Conversions are not available here; use get\_chatgpt\_conversion\_insights.

**Platform:** ChatGPT Ads · **Type:** Read

## How to call it

* **MCP:** on `https://mcp.adsmcp.si/mcp`, run it through the `chatgpt_ads_read` tool with `{"action": "execute", "tool_name": "get_chatgpt_insights", "arguments": { ... }}`, or call `get_chatgpt_insights` 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_chatgpt_insights/execute` with `Authorization: Bearer sk_live_...` and a JSON body `{"platform": "chatgpt", "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_chatgpt_insights/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_chatgpt_insights/execute:
    post:
      tags:
        - chatgpt
      summary: >-
        Raw ChatGPT Ads delivery insights (impressions, clicks, spend, CTR, CPC,
        CPM) at account, campaign, ad group or ad level. Conversions are not
        available here; use get_chatgpt_conversion_insights.
      description: >-
        Raw ChatGPT Ads delivery insights (impressions, clicks, spend, CTR, CPC,
        CPM) at account, campaign, ad group or ad level. Conversions are not
        available here; use get_chatgpt_conversion_insights. 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_chatgpt_insights
      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: chatgpt
                arguments:
                  type: object
                  properties:
                    account_id:
                      type: string
                      pattern: ^adacct_[A-Za-z0-9_-]{1,120}$
                      description: >-
                        ChatGPT Ads account id (adacct_...). Optional when
                        exactly one account is connected; with several, call
                        list_chatgpt_accounts first.
                    since:
                      type: string
                      pattern: ^\d{4}-\d{2}-\d{2}$
                      description: >-
                        First day, YYYY-MM-DD, in the account time zone. Use
                        with until; do not combine with days.
                    until:
                      type: string
                      pattern: ^\d{4}-\d{2}-\d{2}$
                      description: >-
                        Last day (inclusive), YYYY-MM-DD, in the account time
                        zone. Must be a complete day (before today).
                    days:
                      type: integer
                      minimum: 1
                      maximum: 90
                      description: >-
                        Last N complete days in the account time zone (default
                        14, max 90). Do not combine with since/until.
                    level:
                      type: string
                      enum:
                        - account
                        - campaign
                        - ad_group
                        - ad
                      description: Row level (default campaign).
                    id:
                      type: string
                      pattern: ^[A-Za-z0-9_-]{1,120}$
                      description: >-
                        Restrict to one entity of the chosen level (campaign, ad
                        group or ad id). Not for level account.
                    fields:
                      type: array
                      items:
                        type: string
                        pattern: ^[a-z_]+(\.[a-z_]+)?$
                      maxItems: 40
                      description: >-
                        Canonical insight field names, e.g. campaign.name,
                        ad.title, impressions, spend. Default: id, name,
                        impressions, clicks, spend, ctr, cpc, cpm.
                    segment:
                      type: string
                      enum:
                        - country
                        - device
                      description: Split rows by country or device.
                    filters:
                      type: array
                      maxItems: 10
                      items:
                        type: object
                        properties:
                          field:
                            type: string
                          operator:
                            type: string
                            enum:
                              - IN
                              - GREATER_THAN
                              - LESS_THAN
                          value: {}
                        required:
                          - field
                          - operator
                          - value
                        additionalProperties: false
                      description: Row filters, all ANDed.
                    sort:
                      type: array
                      maxItems: 3
                      items:
                        type: object
                        properties:
                          field:
                            type: string
                          direction:
                            type: string
                            enum:
                              - asc
                              - desc
                        required:
                          - field
                          - direction
                        additionalProperties: false
                      description: Sort order.
                    include_zero_impressions:
                      type: boolean
                      description: >-
                        Include entities with zero impressions. Not allowed
                        together with segment.
                    limit:
                      type: integer
                      minimum: 1
                      maximum: 500
                      description: >-
                        Maximum rows to return (default 100). The result says
                        when it was truncated.
                  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.