Criteo Accounts API

The Accounts API from Criteo — 12 operation(s) for accounts.

Operations 12

POST /2026-07/retail-media/account-management/accounts/{accountId}/brands/add /2026-07/retail-media/account-management/accounts/{accountId}/brands/add #
POST /2026-07/retail-media/account-management/accounts/{accountId}/brands/remove /2026-07/retail-media/account-management/accounts/{accountId}/brands/remove #
POST /2026-07/retail-media/account-management/accounts/{accountId}/create-brand-account /2026-07/retail-media/account-management/accounts/{accountId}/create-brand-account #
POST /2026-07/retail-media/account-management/accounts/{accountId}/create-seller-account /2026-07/retail-media/account-management/accounts/{accountId}/create-seller-account #
GET /2026-07/retail-media/account-management/accounts/{accountId}/private-market-child-accounts /2026-07/retail-media/account-management/accounts/{accountId}/private-market-child-accounts #
PUT /2026-07/retail-media/account-management/accounts/{accountId}/sellers /2026-07/retail-media/account-management/accounts/{accountId}/sellers #
GET /2026-07/retail-media/accounts /2026-07/retail-media/accounts #
POST /2026-07/retail-media/accounts/{accountId}/grant-consent /2026-07/retail-media/accounts/{accountId}/grant-consent #
POST /2026-07/retail-media/accounts/fees/search /2026-07/retail-media/accounts/fees/search #
POST /2026-07/retail-media/accounts/fees/update /2026-07/retail-media/accounts/fees/update #
POST /2026-07/retail-media/accounts/sellers/search /2026-07/retail-media/accounts/sellers/search #
POST /2026-07/retail-media/brands/search /2026-07/retail-media/brands/search #

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/criteo-accounts-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

criteo-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Criteo Accounts API
  description: Criteo API - RetailMedia
  version: 2026-07
servers:
- url: https://api.criteo.com
security:
- oauth: []
tags:
- name: Accounts
paths:
  /2026-07/retail-media/account-management/accounts/{accountId}/brands/add:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/brands/add
      description: Add brands to an account
      operationId: AddBrands
      parameters:
      - name: accountId
        in: path
        description: the account id to update
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputOfRetailMediaBrands'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValueResourceOutcomeOfRetailMediaBrands'
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/account-management/accounts/{accountId}/brands/remove:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/brands/remove
      description: Remove brands from an account
      operationId: RemoveBrands
      parameters:
      - name: accountId
        in: path
        description: the account id to update
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputOfRetailMediaBrands'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValueResourceOutcomeOfRetailMediaBrands'
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/account-management/accounts/{accountId}/create-brand-account:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/create-brand-account
      description: Creates a new child Demand Brand account for the provided parent Private Market account
      operationId: CreatePrivateMarketDemandBrandAccount
      parameters:
      - name: accountId
        in: path
        description: The given account id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputOfRetailMediaBrandAccountCreation'
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityResourceOutcomeOfRetailMediaAccount'
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/account-management/accounts/{accountId}/create-seller-account:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/create-seller-account
      description: Creates a new child Demand Seller account for the provided parent Private Market account
      operationId: CreatePrivateMarketDemandSellerAccount
      parameters:
      - name: accountId
        in: path
        description: The given account id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputOfRetailMediaSellerAccountCreation'
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityResourceOutcomeOfRetailMediaAccount'
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/account-management/accounts/{accountId}/private-market-child-accounts:
    get:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/private-market-child-accounts
      description: Gets Private Market child accounts that are associated with the given account
      operationId: GetPrivateMarketChildAccountsByAccountId
      parameters:
      - name: accountId
        in: path
        description: Account Id
        required: true
        schema:
          type: string
      - name: limit
        in: query
        description: The number of accounts to be returned. The default is 25.
        schema:
          type: integer
          format: int32
          default: 25
      - name: offset
        in: query
        description: The (zero-based) offset into the collection of accounts. The default is 0.
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityResourceCollectionOutcomeOfRetailMediaChildAccountAndMetadata'
      security:
      - oauth:
        - RetailMedia_Accounts_Read
  /2026-07/retail-media/account-management/accounts/{accountId}/sellers:
    put:
      tags:
      - Accounts
      summary: /2026-07/retail-media/account-management/accounts/{accountId}/sellers
      description: Replace the sellers associated with an account
      operationId: UpdateSellers
      parameters:
      - name: accountId
        in: path
        description: The given account id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceCollectionInputOfRetailMediaSeller'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValueResourceCollectionOutcomeOfRetailMediaSeller'
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/accounts:
    get:
      tags:
      - Accounts
      summary: /2026-07/retail-media/accounts
      description: Gets page of account objects that the current user can access
      operationId: GetAccounts
      parameters:
      - name: limitToId
        in: query
        description: The ids that you would like to limit your result set to
        schema:
          type: array
          items:
            type: string
      - name: pageIndex
        in: query
        description: The 0 indexed page index you would like to receive given the page size
        schema:
          type: integer
          format: int32
          default: 0
      - name: pageSize
        in: query
        description: The maximum number of items you would like to receive in this request
        schema:
          type: integer
          format: int32
          default: 25
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonApiPageResponseOfAccount'
      security:
      - oauth:
        - RetailMedia_Accounts_Read
  /2026-07/retail-media/accounts/{accountId}/grant-consent:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/accounts/{accountId}/grant-consent
      description: Grant consent to a business application on behalf of a Private Market demand account
      operationId: GrantConsent
      parameters:
      - name: accountId
        in: path
        description: The demand account ID on which to grant consent
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GrantConsentInput'
        x-bodyName: grantConsentInput
      responses:
        '204':
          description: Success
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/accounts/fees/search:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/accounts/fees/search
      description: Get fees for provided accounts
      operationId: AccountFeesSearch
      parameters:
      - name: limit
        in: query
        description: used for paging, number of results returned per request, Maximum of 500
        schema:
          maximum: 500
          minimum: 1
          type: integer
          format: int32
          default: 50
      - name: offset
        in: query
        description: used for paging, number of records to skip
        schema:
          maximum: 2147483647
          minimum: 0
          type: integer
          format: int32
          default: 0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputAccountFeesSearchRequest'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValueResourceCollectionOutcomePrivateMarketAccountFeesAndMetadata'
      security:
      - oauth:
        - RetailMedia_Accounts_Read
  /2026-07/retail-media/accounts/fees/update:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/accounts/fees/update
      description: Set fees for provided accounts
      operationId: UpdateAccountFees
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputAccountFeesUpdateRequest'
        required: true
      responses:
        '204':
          description: Success
      security:
      - oauth:
        - RetailMedia_Accounts_Manage
  /2026-07/retail-media/accounts/sellers/search:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/accounts/sellers/search
      description: Get the sellers mapped to provided accounts
      operationId: SearchSellers
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputOfSellerSearch'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValueResourceCollectionOutcomeOfSellerSearchResult'
      security:
      - oauth:
        - RetailMedia_Accounts_Read
  /2026-07/retail-media/brands/search:
    post:
      tags:
      - Accounts
      summary: /2026-07/retail-media/brands/search
      description: Search for brands given a retailer ID and search term.
      operationId: SearchBrands
      parameters:
      - name: limit
        in: query
        description: the number of brands to return
        schema:
          maximum: 100
          minimum: 1
          type: integer
          format: int32
          default: 25
      - name: offset
        in: query
        description: offset of paginated results
        schema:
          maximum: 2147483647
          minimum: 0
          type: integer
          format: int32
          default: 0
      requestBody:
        description: BrandIdSearchRequest which contains the request parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValueResourceInputBrandIdSearchRequest'
        x-bodyName: brandIdSearchRequest
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityResourceCollectionOutcomeBrandIdSearchResultPagingOffsetLimitMetadata'
      security:
      - oauth:
        - RetailMedia_Accounts_Read
components:
  schemas:
    ValueResourceCollectionOutcomePrivateMarketAccountFeesAndMetadata:
      type: object
      properties:
        data:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ValueResourcePrivateMarketAccountFees'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Errors that occured during this call.
          readOnly: true
        metadata:
          $ref: '#/components/schemas/Metadata'
        warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Warnings that occured during this call.
          readOnly: true
      additionalProperties: false
      description: A top-level object that encapsulates a Criteo API response for several value objects and metadata.
    CommonWarning:
      type: object
      properties:
        code:
          type:
          - string
          - 'null'
          description: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
        detail:
          type:
          - string
          - 'null'
          description: (RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.
        instance:
          type:
          - string
          - 'null'
          description: (REQUIRED) A URI reference that identifies the specific occurrence of the problem.
        source:
          type:
          - object
          - 'null'
          additionalProperties:
            type: string
          description: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
        stackTrace:
          type:
          - string
          - 'null'
          description: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
        title:
          type:
          - string
          - 'null'
          description: (RECOMMENDED) A short, human-readable summary of the problem type.
        traceId:
          type:
          - string
          - 'null'
          description: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
        type:
          enum:
          - unknown
          - access-control
          - authentication
          - authorization
          - availability
          - deprecation
          - quota
          - validation
          type:
          - string
          - 'null'
          description: (REQUIRED) The classification of the error.
      additionalProperties: false
      description: A JSON:API Base common warning
    ValueResourceOfSellerSearchResult:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/SellerSearchResult'
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A value resource exposed by the API.
    ManagedServiceFee:
      required:
      - onsiteDisplayEnabled
      - onsiteSponsoredProductsEnabled
      - rate
      type:
      - object
      - 'null'
      properties:
        onsiteDisplayEnabled:
          type: boolean
          description: whether fee is enabled for display campaigns
        onsiteSponsoredProductsEnabled:
          type: boolean
          description: whether fee is enabled for sponsored product campaigns
        rate:
          maximum: 1
          minimum: 0
          type: number
          description: decimal fee rate between 0 and 1
          format: double
      additionalProperties: false
      description: settings for managed service fees
    ValueResourceInputAccountFeesUpdateRequest:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ValueResourceAccountFeesUpdateRequest'
      additionalProperties: false
      description: A top-level object that encapsulates a Criteo API request for a single value object.
    ValueResourceInputAccountFeesSearchRequest:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ValueResourceAccountFeesSearchRequest'
      additionalProperties: false
      description: A top-level object that encapsulates a Criteo API request for a single value object.
    EntityResourceCollectionOutcomeBrandIdSearchResultPagingOffsetLimitMetadata:
      type: object
      properties:
        data:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/EntityResourceBrandIdSearchResult'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Errors that occured during this call.
          readOnly: true
        metadata:
          $ref: '#/components/schemas/PagingOffsetLimitMetadata'
        warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Warnings that occured during this call.
          readOnly: true
      description: A top-level object that encapsulates a Criteo API response for several entities and metadata.
    EntityResourceOutcomeOfRetailMediaAccount:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/EntityResourceOfRetailMediaAccount'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Errors that occured during this call.
          readOnly: true
        warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Warnings that occured during this call.
          readOnly: true
      additionalProperties: false
      description: A top-level object that encapsulates a Criteo API response for a single entity.
    ExternalRetailMediaAccount:
      type:
      - object
      - 'null'
      properties:
        companyName:
          type:
          - string
          - 'null'
          description: Paying entity name of ads for the Digital Services Act
        countryIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: list of countries associated with the account
        currencyId:
          type:
          - string
          - 'null'
          description: the currency for the account
        name:
          type:
          - string
          - 'null'
          description: account name
        onBehalfCompanyName:
          type:
          - string
          - 'null'
          description: On behalf entity name of ads for the Digital Services Act
        parentAccountLabel:
          type:
          - string
          - 'null'
          description: parent account label for the account
        subType:
          enum:
          - Unknown
          - Brand
          - Seller
          type:
          - string
          - 'null'
          description: subtype for the account
        timeZone:
          type:
          - string
          - 'null'
          description: the timezone for the account
        type:
          enum:
          - Unknown
          - Supply
          - Demand
          type:
          - string
          - 'null'
          description: Type for the account
      additionalProperties: false
      description: The details for a newly created account
    JsonApiPageResponseOfAccount:
      required:
      - data
      - metadata
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/JsonApiBodyWithIdOfInt64AndAccountAndAccount'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CommonError'
        metadata:
          $ref: '#/components/schemas/PageMetadata'
        warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CommonWarning'
      additionalProperties: false
      description: A wrapper class to return a single page of <typeparamref name="T" /> with metadata
    PageMetadata:
      required:
      - currentPageIndex
      - currentPageSize
      type: object
      properties:
        currentPageIndex:
          type: integer
          format: int32
        currentPageSize:
          type: integer
          format: int32
        nextPage:
          type:
          - string
          - 'null'
        previousPage:
          type:
          - string
          - 'null'
        totalItemsAcrossAllPages:
          type:
          - integer
          - 'null'
          format: int64
        totalPages:
          type:
          - integer
          - 'null'
          format: int64
      additionalProperties: false
      description: Metadata related to the current request
    ValueResourceOfRetailMediaBrandAccountCreation:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/ExternalRetailMediaBrandAccountCreation'
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A value resource exposed by the API.
    ValueResourcePrivateMarketAccountFees:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/PrivateMarketAccountFees'
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A value resource exposed by the API.
    AccountFeesSearchRequest:
      type: object
      properties:
        accountIds:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Account Ids to return fees
      additionalProperties: false
      description: the request body for account fees search
    ValueResourceOutcomeOfRetailMediaBrands:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ValueResourceOfRetailMediaBrands'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Errors that occured during this call.
          readOnly: true
        warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Warnings that occured during this call.
          readOnly: true
      additionalProperties: false
      description: A top-level object that encapsulates a Criteo API response for a single value object.
    BrandIdSearchResult:
      required:
      - brandType
      - id
      - name
      - retailerIds
      type:
      - object
      - 'null'
      properties:
        brandType:
          type: string
          description: The type of the brand
        id:
          type: string
          description: The brand id
        name:
          type: string
          description: The name of the brand
        retailerIds:
          type: array
          items:
            type: integer
            format: int32
          description: The retailer ids associated to the brand
      description: An object that represents the result from a brand ID search.
    JsonApiBodyWithIdOfInt64AndAccountAndAccount:
      required:
      - id
      - type
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/ExternalAccount'
        id:
          type: string
          format: long-id
        type:
          type: string
      additionalProperties: false
      description: 'A JSON:API wrapper class to format a <typeparamref name="TAttributes" /> with external Id, Type, and

        Attributes properties'
    ExternalRetailMediaSeller:
      required:
      - retailerId
      - sellerId
      type:
      - object
      - 'null'
      properties:
        retailerId:
          type: integer
          description: the retailer id
          format: int32
        sellerId:
          type: string
          description: the seller id
      additionalProperties: false
      description: used to define the exact seller linked with an account
    DemandManagedFee:
      required:
      - rate
      type:
      - object
      - 'null'
      properties:
        rate:
          maximum: 1
          minimum: 0
          type: number
          description: decimal fee rate between 0 and 1
          format: double
      additionalProperties: false
      description: settings for DSP fees
    GrantConsentModelValueResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/GrantConsentModel'
        type:
          type: string
      description: A top-level object that encapsulates a Criteo API response for a single value
    ValueResourceAccountFeesUpdateRequest:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/AccountFeesUpdateRequest'
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A value resource exposed by the API.
    GrantConsentInput:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/GrantConsentModelValueResource'
      description: An object that encapsulates GrantConsentModel
    RetailMediaSeller:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
          description: seller name
        retailerId:
          type:
          - integer
          - 'null'
          description: the retailer id
          format: int32
        sellerId:
          type:
          - string
          - 'null'
          description: the seller id
      additionalProperties: false
      description: used to define the exact seller linked with an account
    CommonError:
      type: object
      properties:
        code:
          type:
          - string
          - 'null'
          description: (REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case.
        detail:
          type:
          - string
          - 'null'
          description: (RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.
        instance:
          type:
          - string
          - 'null'
          description: (REQUIRED) A URI reference that identifies the specific occurrence of the problem.
        source:
          type:
          - object
          - 'null'
          additionalProperties:
            type: string
          description: (OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)
        stackTrace:
          type:
          - string
          - 'null'
          description: (NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology
        title:
          type:
          - string
          - 'null'
          description: (RECOMMENDED) A short, human-readable summary of the problem type.
        traceId:
          type:
          - string
          - 'null'
          description: (REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.
        type:
          enum:
          - unknown
          - access-control
          - authentication
          - authorization
          - availability
          - deprecation
          - quota
          - validation
          type:
          - string
          - 'null'
          description: (REQUIRED) The classification of the error.
      additionalProperties: false
      description: A JSON:API Common error structure
    PrivateMarketAccountFees:
      type:
      - object
      - 'null'
      properties:
        accountId:
          type:
          - string
          - 'null'
          description: The account Id
        fees:
          $ref: '#/components/schemas/PrivateMarketFees'
      additionalProperties: false
      description: The Fees for a Specific private market account
    ExternalRetailMediaBrandAccountCreation:
      type: object
      properties:
        brands:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int64
          description: list of brands to link to the new account
        companyName:
          type:
          - string
          - 'null'
          description: Display name for reporting the owning entity of ads for the Digital Services Act in the European Union
        name:
          type:
          - string
          - 'null'
          description: the name of the account, must be unique across all accounts
        onBehalfCompanyName:
          type:
          - string
          - 'null'
          description: On behalf entity name of ads for the Digital Services Act
      additionalProperties: false
      description: the initial set up and configuration options for a new private market demand brand account
    EntityResourceOfRetailMediaChildAccount:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/ExternalRetailMediaChildAccount'
        id:
          type:
          - string
          - 'null'
          description: Unique id of the entity.
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A domain entity exposed by the API, identified by a unique id.
    ExternalAccount:
      required:
      - countries
      - currency
      - name
      - parentAccountLabel
      - timeZone
      - type
      type:
      - object
      - 'null'
      properties:
        companyName:
          type:
          - string
          - 'null'
        countries:
          type: array
          items:
            type: string
        currency:
          type: string
        name:
          maxLength: 510
          minLength: 0
          type: string
        onBehalfCompanyName:
          type:
          - string
          - 'null'
        parentAccountLabel:
          maxLength: 510
          minLength: 0
          type: string
        subtype:
          enum:
          - unknown
          - brand
          - seller
          type:
          - string
          - 'null'
        timeZone:
          type: string
        type:
          enum:
          - unknown
          - supply
          - demand
          type: string
      additionalProperties: false
      description: A Retail Media Account used to launch campaigns and line items
    ValueResourceOfRetailMediaSeller:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/ExternalRetailMediaSeller'
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A value resource exposed by the API.
    EntityResourceOfRetailMediaAccount:
      type:
      - object
      - 'null'
      properties:
        attributes:
          $ref: '#/components/schemas/ExternalRetailMediaAccount'
        id:
          type:
          - string
          - 'null'
          description: Unique id of the entity.
        type:
          type:
          - string
          - 'null'
          description: Type of the resource.
      additionalProperties: false
      description: A domain entity exposed by the API, identified by a unique id.
    EntityResourceCollectionOutcomeOfRetailMediaChildAccountAndMetadata:
      type: object
      properties:
        data:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/EntityResourceOfRetailMediaChildAccount'
        errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SdkApiRestCommonProblem'
          description: Errors that occured during this call.
          readOnl

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