HookLogic (Criteo) Analytics API

The Analytics API from HookLogic (Criteo) — 12 operation(s) for analytics.

Operations 12

GET /2026-07/retail-media/reports/{reportId}/output /2026-07/retail-media/reports/{reportId}/output #
GET /2026-07/retail-media/reports/{reportId}/status /2026-07/retail-media/reports/{reportId}/status #
POST /2026-07/retail-media/reports/attributed-transactions /2026-07/retail-media/reports/attributed-transactions #
POST /2026-07/retail-media/reports/fillrate /2026-07/retail-media/reports/fillrate #
POST /2026-07/retail-media/reports/missed-opportunities /2026-07/retail-media/reports/missed-opportunities #
POST /2026-07/retail-media/reports/performance /2026-07/retail-media/reports/performance #
POST /2026-07/retail-media/reports/revenue /2026-07/retail-media/reports/revenue #
POST /2026-07/retail-media/reports/sync/attributed-transactions /2026-07/retail-media/reports/sync/attributed-transactions #
POST /2026-07/retail-media/reports/sync/campaigns /2026-07/retail-media/reports/sync/campaigns #
POST /2026-07/retail-media/reports/sync/line-items /2026-07/retail-media/reports/sync/line-items #
POST /2026-07/retail-media/reports/sync/real-time-performance /2026-07/retail-media/reports/sync/real-time-performance #
POST /2026-07/retail-media/reports/unfilled-placements /2026-07/retail-media/reports/unfilled-placements #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/hooklogic-criteo-analytics-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

hooklogic-criteo-analytics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Criteo Accounts Analytics API
  description: Criteo API - RetailMedia
  version: 2026-07
servers:
- url: https://api.criteo.com
security:
- oauth: []
tags:
- name: Analytics
paths:
  /2026-07/retail-media/reports/{reportId}/output:
    get:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/{reportId}/output
      description: Returns the output of an async report
      operationId: GetAsyncExportOutput
      parameters:
      - name: reportId
        in: path
        description: The ID of the report to retrieve
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: string
                format: binary
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/{reportId}/status:
    get:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/{reportId}/status
      description: Returns the status of an async report
      operationId: GetAsyncExportStatus
      parameters:
      - name: reportId
        in: path
        description: The ID of the report to retrieve
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/attributed-transactions:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/attributed-transactions
      description: 'Creates an attributed-transactions async report. The request accepts explicit attributed-transaction dimensions, metrics, and filters.

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncAttributedTransactionsReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncAttributedTransactionsReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/fillrate:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/fillrate
      description: 'Returns an asynchronous Fill Rate Report

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncFillRateReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncFillRateReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/missed-opportunities:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/missed-opportunities
      description: 'Creates a missed-opportunities async report. The request accepts explicit missed-opportunities dimensions, metrics, and filters.

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncMissedOpportunitiesReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncMissedOpportunitiesReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/performance:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/performance
      description: 'Creates a performance DSP analytics async report. Dimensions and metrics select the output schema, and filters constrain eligible data.

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncPerformanceReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncPerformanceReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/revenue:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/revenue
      description: 'Returns an asynchronous Revenue Report

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncRevenueReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncRevenueReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/sync/attributed-transactions:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/sync/attributed-transactions
      description: Returns a synchronous Attributed Transactions Report
      operationId: GenerateSyncAttributedTransactionsReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SyncAttributedTransactionsReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/sync/campaigns:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/sync/campaigns
      description: Returns a synchronous Campaigns Report
      operationId: GenerateSyncCampaignsReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SyncCampaignsReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/sync/line-items:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/sync/line-items
      description: Returns a synchronous Line Items Report
      operationId: GenerateSyncLineItemsReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SyncLineItemsReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/sync/real-time-performance:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/sync/real-time-performance
      description: 'Returns a synchronous Real Time Performance Report. Returns empty rows; metadata includes dataCompleteThrough (latest time from streaming table in the request timezone).

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateSyncRealTimePerformanceReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SyncRealTimePerformanceReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
  /2026-07/retail-media/reports/unfilled-placements:
    post:
      tags:
      - Analytics
      summary: /2026-07/retail-media/reports/unfilled-placements
      description: 'Returns an asynchronous Unfilled Placements Report

        <br />

        This endpoint is subject to specific rate limits.'
      operationId: GenerateAsyncUnfilledPlacementsReport
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AsyncUnfilledPlacementsReportRequest'
        required: true
        x-bodyName: request
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncReportResponse'
      security:
      - oauth:
        - RetailMedia_Analytics_Read
components:
  schemas:
    AttributedTransactionsReportFilters:
      type: object
      properties:
        accountIds:
          type: array
          items:
            type: string
        campaignIds:
          type: array
          items:
            type: string
        lineItemIds:
          type: array
          items:
            type: string
        mediaTypes:
          type: array
          items:
            enum:
            - unknown
            - video
            - display
            - all
            type: string
      description: Array-valued constraints for attributed-transactions reporting. At least one of accountIds, campaignIds, or lineItemIds is required.
    StatusResponse:
      type:
      - object
      - 'null'
      properties:
        createdAt:
          type:
          - string
          - 'null'
        expiresAt:
          type:
          - string
          - 'null'
        fileSizeBytes:
          type:
          - integer
          - 'null'
          format: int64
        id:
          type:
          - string
          - 'null'
        md5CheckSum:
          type:
          - string
          - 'null'
        message:
          type:
          - string
          - 'null'
        rowCount:
          type:
          - integer
          - 'null'
          format: int32
        status:
          enum:
          - pending
          - success
          - failure
          - expired
          type:
          - string
          - 'null'
      description: Status of an async report request
      x-criteo-canonical:
        infoType: entity
    SyncCampaignsReport:
      required:
      - accountId
      - endDate
      - startDate
      type: object
      properties:
        accountId:
          type: string
          description: Account id to report on
        campaignIds:
          type: array
          items:
            type: string
          description: Campaign ids to filter
        campaignType:
          enum:
          - all
          - sponsoredProducts
          - onSiteDisplays
          type: string
          description: 'Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays'
          default: all
        clickAttributionWindow:
          enum:
          - none
          - 7D
          - 14D
          - 30D
          type: string
          description: Click attribution window
          default: none
        dimensions:
          type: array
          items:
            enum:
            - date
            - hour
            - accountId
            - accountName
            - campaignId
            - campaignName
            - campaignTypeName
            - lineItemId
            - lineItemName
            - retailerId
            - retailerName
            - brandId
            - brandName
            - advProductCategory
            - advProductId
            - advProductName
            - salesChannel
            - environment
            - pageTypeName
            - pageCategory
            - servedCategory
            - taxonomyBreadcrumb
            type: string
          description: List of dimensions to report on
        endDate:
          type: string
          description: End date
          format: date-time
        metrics:
          type: array
          items:
            enum:
            - impressions
            - clicks
            - spend
            - attributedSales
            - attributedUnits
            - attributedOrders
            - assistedSales
            - assistedUnits
            - ctr
            - cpc
            - cpo
            - cpm
            - roas
            - uniqueVisitors
            - frequency
            type: string
          description: List of metrics to report on
        reportType:
          enum:
          - summary
          - pageType
          - productCategory
          - product
          - environment
          - servedCategory
          type: string
          description: Type of report, if no dimensions and metrics are provided, falls back to summary reportType
          default: summary
        salesChannel:
          enum:
          - online
          - offline
          - all
          type: string
          description: 'Filter on specific sales channel: offline or online'
          default: all
        startDate:
          type: string
          description: Start date
          format: date-time
        timezone:
          type: string
          description: 'Time zone : see criteo developer portal for supported time zones'
          default: UTC
        viewAttributionWindow:
          enum:
          - none
          - 1D
          - 7D
          - 14D
          - 30D
          type: string
          description: View attribution window
          default: none
      description: Campaigns report body request
    AsyncMissedOpportunitiesReportResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/AsyncMissedOpportunitiesReport'
        type:
          type: string
      description: A top-level object that encapsulates a Criteo API response for a single value
    AsyncFillRateReport:
      required:
      - dimensions
      - endDate
      - metrics
      - startDate
      - supplyAccountIds
      type: object
      properties:
        adServerType:
          enum:
          - all
          - gam
          - criteo
          type: string
          description: 'Filter on the type of the ad server: criteo, gam, all'
          default: all
        dimensions:
          minItems: 1
          type: array
          items:
            enum:
            - date
            - retailerId
            - retailerName
            - placementId
            - placementName
            - pageTypeName
            - environment
            - servedCategory
            - retailerCategoryId
            - retailerCategoryName
            - adServerType
            type: string
          description: List of dimensions to report on
        endDate:
          type: string
          description: End date
          format: date-time
        format:
          enum:
          - json
          - json-compact
          - json-newline
          - csv
          type: string
          description: Format of the output
          default: json
        metrics:
          minItems: 1
          type: array
          items:
            enum:
            - pageViews
            - availablePlacements
            - unfilledPlacements
            - fillRate
            - placementImpressions
            - productImpressions
            - impressions
            - placementClicks
            - productClicks
            - clicks
            - placementImpressionsCTR
            - productImpressionsCTR
            - cpm
            - cpc
            - placementImpressionsRevenue
            - productClicksRevenue
            - revenue
            - workingMedia
            - netRevenue
            - nonDeliverablePlacements
            - deliverablePlacements
            - placementsWithCandidates
            - coveredPlacements
            - coverageRate
            type: string
          description: List of metrics to report on
        startDate:
          type: string
          description: Start date
          format: date-time
        supplyAccountIds:
          type: array
          items:
            type: string
          description: Supply account ids to report on
        timezone:
          type: string
          description: 'Time zone : see criteo developer portal for supported time zones'
          default: UTC
      description: Async FillRate report body request
    AsyncRevenueReportResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/AsyncRevenueReport'
        type:
          type: string
      description: A top-level object that encapsulates a Criteo API response for a single value
    DataCompleteThrough:
      type:
      - object
      - 'null'
      properties:
        dateTime:
          type:
          - string
          - 'null'
          description: The instant through which data is complete, in the format "yyyy-MM-dd HH:mm:ss" in the timezone given by the {timezone} field.
        timezone:
          type:
          - string
          - 'null'
          description: IANA timezone for the {dateTime} field (e.g. "UTC", "America/New_York"). Matches the query timezone.
      description: 'Data freshness: the instant through which report data is complete, expressed in the report''s request timezone.'
    ExportReportColumn:
      required:
      - name
      - role
      - type
      type: object
      properties:
        currency:
          type:
          - string
          - 'null'
          description: Currency of the column
        deprecated:
          type:
          - boolean
          - 'null'
          description: Flag for deprecated column
        description:
          type:
          - string
          - 'null'
          description: Description of the exported column
        duration:
          type:
          - string
          - 'null'
          description: Duration of the column
        name:
          type: string
          description: Name of the exported column
        role:
          enum:
          - Dimension
          - Property
          - Interval
          - Metric
          type: string
          description: Role of the column
        timezone:
          type:
          - string
          - 'null'
          description: Timezone of the column
        title:
          type:
          - string
          - 'null'
          description: Title of the exported column
        type:
          enum:
          - Boolean
          - Number
          - Money
          - String
          - Date
          - DateTime
          - Interval
          - Duration
          type: string
          description: Type of the column
      description: Description of a column from an async report request
    AsyncRevenueReport:
      required:
      - endDate
      - startDate
      type: object
      properties:
        accountIds:
          type: array
          items:
            type: string
          description: Account ids to filter
        activationPlatforms:
          type: array
          items:
            enum:
            - CommerceMax
            - PrivateMarket
            type: string
          description: 'Filter on the activation platform: CommerceMax, PrivateMarket'
        advertiserTypes:
          type: array
          items:
            enum:
            - retailer
            - brand
            - seller
            type: string
          description: 'Filter on the type of advertiser: retailer, brand, seller'
        budgetModels:
          type: array
          items:
            enum:
            - CriteoBudget
            - RetailerBudget
            type: string
          description: 'Filter on the budget model: CriteoBudget, RetailerBudget'
        buyType:
          enum:
          - auction
          - preferredDeals
          - sponsorship
          type: string
          description: 'Filter on buy type: Auction, Preferred Deals or Sponsorship'
        campaignIds:
          type: array
          items:
            type: string
          description: Campaign ids to filter
        campaignType:
          enum:
          - all
          - sponsoredProducts
          - onSiteDisplays
          type: string
          description: 'Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays'
          default: all
        clickAttributionWindow:
          enum:
          - none
          - 7D
          - 14D
          - 30D
          type: string
          description: Click attribution window
          default: none
        clickMatchLevel:
          enum:
          - sameSku
          - sameCategory
          - sameBrand
          - campaign
          type: string
          description: 'Click Match Level: Campaign, Same SKU, Same Category or Same Brand'
          default: campaign
        dimensions:
          type: array
          items:
            enum:
            - date
            - hour
            - parentAccount
            - accountId
            - accountName
            - accountTypeName
            - advertiserType
            - campaignId
            - campaignName
            - campaignTypeName
            - campaignStartDate
            - campaignEndDate
            - lineItemId
            - lineItemName
            - lineItemStartDate
            - lineItemEndDate
            - lineItemStatus
            - retailerId
            - retailerName
            - brandId
            - brandName
            - placementId
            - placementName
            - pageTypeName
            - environment
            - pageCategory
            - advProductId
            - advProductName
            - advProductGtin
            - advProductMpn
            - buyType
            - budgetModel
            - activationPlatform
            - soldBy
            - saleChannel
            - salesChannel
            - mediaType
            - attributionSettings
            - activityType
            - keyword
            - skuRelation
            - retailerCategoryId
            - retailerCategoryName
            - taxonomyBreadcrumb
            - taxonomy1Id
            - taxonomy1Name
            - taxonomy2Id
            - taxonomy2Name
            - taxonomy3Id
            - taxonomy3Name
            - taxonomy4Id
            - taxonomy4Name
            - taxonomy5Id
            - taxonomy5Name
            - taxonomy6Id
            - taxonomy6Name
            - taxonomy7Id
            - taxonomy7Name
            - targetedKeywordType
            type: string
          description: List of dimensions to report on
        endDate:
          type: string
          description: End date
          format: date-time
        format:
          enum:
          - json
          - json-compact
          - json-newline
          - csv
          type: string
          description: Format of the output
          default: json
        id:
          type: string
          description: Supply account id to report on
        ids:
          type: array
          items:
            type: string
          description: Supply account ids to report on
        lineItemIds:
          type: array
          items:
            type: string
          description: Line item ids to filter
        mediaType:
          enum:
          - unknown
          - video
          - display
          - all
          type: string
          description: 'Filter on the type of media: unknown, display, video'
          default: all
        metrics:
          type: array
          items:
            enum:
            - numberOfCampaigns
            - numberOfLineItems
            - numberOfSkus
            - skuPrice
            - pageViews
            - impressions
            - productClicks
            - placementClicks
            - clicks
            - sales
            - units
            - transactions
            - assistedSales
            - assistedUnits
            - revenue
            - openAuctionRevenue
            - preferredDealsRevenue
            - ctr
            - cr
            - cpc
            - cpm
            - roas
            - workingMedia
            - netRevenue
            - videoViews
            - videosStarted
            - videosPlayedTo25
            - videosPlayedTo50
            - videosPlayedTo75
            - videosPlayedTo100
            - videoPlayingRate
            - videoCompletionRate
            - videoImpressions
            - videoMuted
            - videoUnmuted
            - videoResumed
            - videoPaused
            - videoAvgInteractionRate
            - videoViewability
            - videoStartingRate
            - videoCPC
            - videoCPCV
            - uniqueVisitors
            - frequency
            type: string
          description: List of metrics to report on
        reportType:
          enum:
          - advertiser
          - environment
          - pageType
          - productCategory
          - brand
          type: string
          description: Type of report, if no dimensions and metrics are provided, falls back to advertiser reportType
        retailerIds:
          type: array
          items:
            type: string
          description: Retailer ids to filter
        revenueType:
          enum:
          - auction
          - preferred
          type: string
          description: Type of revenue
        salesChannel:
          enum:
          - online
          - offline
          - all
          type: string
          description: 'Filter on specific sales channel: offline or online'
          default: all
        skuRelations:
          type: array
          items:
            enum:
            - sameSku
            - sameParentSku
            - sameCategory
            - sameBrand
            - sameSeller
            type: string
          description: 'Filter on sku relations: Same SKU, Same Parent SKU, Same Category, Same Brand or Same Seller'
        soldBy:
          enum:
          - directSold
          - indirectSold
          - privateMarket
          - authorizedBuyer
          type: string
          description: 'Filter on the seller: Indirect Sold, Direct Sold, Authorized Buyer or Private Market'
        startDate:
          type: string
          description: Start date
          format: date-time
        targetedKeywordTypes:
          type: array
          items:
            enum:
            - unknown
            - generic
            - branded
            - conquesting
            type: string
          description: 'Filter on targeted keyword type: unknown, generic, branded, conquesting'
        timezone:
          type: string
          description: 'Time zone : see criteo developer portal for supported time zones'
          default: UTC
        viewAttributionWindow:
          enum:
          - none
          - 1D
          - 7D
          - 14D
          - 30D
          type: string
          description: View attribution window
          default: none
        viewMatchLevel:
          enum:
          - sameSku
          - sameCategory
          - sameBrand
          - campaign
          type: string
          description: 'View Match Level: Campaign, Same SKU, Same Category or Same Brand'
          default: campaign
      description: Async Revenue report body request
    AsyncFillRateReportResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/AsyncFillRateReport'
        type:
          type: string
      description: A top-level object that encapsulates a Criteo API response for a single value
    ReportDataResponseResource:
      type:
      - object
      - 'null'
      properties:
        attributes:
          type:
          - array
          - 'null'
          items:
            type: array
            items:
              type: object
          description: Data response format
        type:
          type:
          - string
          - 'null'
      description: A top-level object that encapsulates a Criteo API response for a single value
    SyncLineItemsReport:
      required:
      - accountId
      - endDate
      - startDate
      type: object
      properties:
        accountId:
          type: string
          description: Account id to report on
        campaignIds:
          type: array
          items:
            type: string
          description: Campaign ids to filter
        campaignType:
          enum:
          - all
          - sponsoredProducts
          - onSiteDisplays
          type: string
          description: 'Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays'
          default: all
        clickAttributionWindow:
          enum:
          - none
          - 7D
          - 14D
          - 30D
          type: string
          description: Click attribution window
          default: none
        dimensions:
          type: array
          items:
            enum:
            - date
            - hour
            - accountId
            - accountName
            - campaignId
            - campaignName
            - campaignTypeName
            - lineItemId
            - lineItemName
            - retailerId
            - retailerName
            - brandId
            - brandName
            - advProductCategory
            - advProductId
            - advProductName
            - salesChannel
            - environment
            - pageTypeName
            - pageCategory
            - servedCategory
            - taxonomyBreadcrumb
            type: string
          description: List of dimensions to report on
        endDate:
          type: string
          description: End date
          format: date-time
        lineItemIds:
          type: array
          items:
            type: string
          description: Line Item ids to filter
        metrics:
          type: array
          items:
            enum:
            - impressions
            - clicks
            - spend
            - attributedSales
            - attributedUnits
            - attributedOrders
            - assistedSales
            - assistedUnits
            - ctr
            - cpc
            - cpo
            - cpm
            - roas
            - uniqueVisitors
            - frequency
            type: string
          description: List of metrics to report on
        reportType:
          enum:
          - summary
          - pageType
          - productCategory
          - product
          - environment
          - servedCategory
          type: string
          description: Type of report, if no dimensions and metrics are provided, falls back to summary reportType
          default: summary
        salesChannel:
          enum:
          - online
          - offline
          - all
          type: string
          description: 'Filter on specific sales channel: offline or online'
          default: all
        startDate:
          type: string
          description: Start date
          format: date-time
        timezone:
          type: string
          description: 'Time zone : see criteo developer portal for supported time zones'
          default: UTC
        viewAttributionWindow:
          enum:
          - none
          - 1D
          - 7D
          - 14D
          - 30D
          type: string
          description: View attribution window
          default: none
      description: Line Items report body request
    SyncRealTimePerformanceReportRequest:
      type: object
      properties:

# --- truncated at 32 KB (60 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hooklogic-criteo/refs/heads/main/openapi/hooklogic-criteo-analytics-api-openapi.yml