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

# /experimental/retail-media/accounts/{account-id}/campaigns/search

> Searches campaigns under an account using optional filters and pagination.
Budget details are sourced from the search index and may be eventually consistent with the
Kobalos-backed campaign returned by GET.
Search does not perform Kobalos enrichment, so drawable balance ids are not included.



## OpenAPI

````yaml https://api.criteo.com/experimental/retailmedia/open-api-specifications.json post /experimental/retail-media/accounts/{account-id}/campaigns/search
openapi: 3.0.1
info:
  title: Criteo API
  description: Criteo API - RetailMedia
  version: Experimental
servers:
  - url: https://api.criteo.com
security:
  - oauth: []
tags:
  - name: Accounts
  - name: Analytics
  - name: Audience
  - name: Balance
  - name: Campaign
  - name: Catalog
  - name: Gateway
  - name: OnSiteRecommendation
  - name: ThirdPartyAccounts
paths:
  /experimental/retail-media/accounts/{account-id}/campaigns/search:
    post:
      tags:
        - Campaign
      summary: /experimental/retail-media/accounts/{account-id}/campaigns/search
      description: "Searches campaigns under an account using optional filters and pagination.\r\nBudget details are sourced from the search index and may be eventually consistent with the\r\nKobalos-backed campaign returned by GET.\r\nSearch does not perform Kobalos enrichment, so drawable balance ids are not included."
      operationId: SearchCampaigns
      parameters:
        - name: account-id
          in: path
          description: The external id of the account.
          required: true
          schema:
            type: string
      requestBody:
        description: Optional search filters and pagination.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignSearchModelRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/CampaignResponseModelListResponseWithCampaignSearchMetadataModel
      security:
        - oauth:
            - RetailMedia_Campaign_Read
components:
  schemas:
    CampaignSearchModelRequest:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/CampaignSearchModelResource'
      additionalProperties: false
      description: >-
        A top-level object that encapsulates a Criteo API request for a single
        value object.
    CampaignResponseModelListResponseWithCampaignSearchMetadataModel:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CampaignResponseModelResource'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          description: Errors that occured during this call.
          nullable: true
          readOnly: true
        metadata:
          $ref: '#/components/schemas/CampaignSearchMetadataModel'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/CommonProblem'
          description: Warnings that occured during this call.
          nullable: true
          readOnly: true
      additionalProperties: false
      description: >-
        A top-level object that encapsulates a Criteo API response for several
        entities and metadata.
    CampaignSearchModelResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/CampaignSearchModel'
        type:
          type: string
          description: Type of the resource.
          nullable: true
      additionalProperties: false
      description: A value resource exposed by the API.
    CampaignResponseModelResource:
      type: object
      properties:
        attributes:
          $ref: '#/components/schemas/CampaignResponseModel'
        id:
          type: string
          description: Unique id of the entity.
          nullable: true
        type:
          type: string
          description: Type of the resource.
          nullable: true
      additionalProperties: false
      description: A domain entity exposed by the API, identified by a unique id.
      nullable: true
    CommonProblem:
      type: object
      properties:
        code:
          type: string
          description: A machine-readable error code, expressed as a string value.
          nullable: true
        detail:
          type: string
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem
          nullable: true
        instance:
          type: string
          description: A URI that identifies the specific occurrence of the problem.
          nullable: true
        source:
          type: object
          additionalProperties:
            type: string
          description: >-
            A machine-readable structure to reference to the exact location(s)
            causing the error(s)
          nullable: true
        stackTrace:
          type: string
          nullable: true
        title:
          type: string
          description: A short human-readable description of the problem type
          nullable: true
        traceId:
          type: string
          description: The request correlation ID this problem comes from.
          nullable: true
        traceIdentifier:
          type: string
          description: >-
            The request correlation ID this problem comes from. (deprecated, use
            traceId instead)
          nullable: true
        type:
          enum:
            - unknown
            - access-control
            - authentication
            - authorization
            - availability
            - deprecation
            - quota
            - validation
          type: string
          description: The problem's category.
          nullable: true
      description: Common problem object.
    CampaignSearchMetadataModel:
      type: object
      properties:
        count:
          type: integer
          description: Total number of campaigns matching the filters, across all pages.
          format: int32
          nullable: true
        limit:
          type: integer
          format: int32
          nullable: true
        offset:
          type: integer
          format: int32
          nullable: true
      additionalProperties: false
      description: Pagination metadata for a campaign search response.
      nullable: true
    CampaignSearchModel:
      type: object
      properties:
        buyTypeFilter:
          type: array
          items:
            enum:
              - Auction
              - PreferredDeals
              - Sponsorship
            type: string
          nullable: true
        campaignIdFilter:
          type: array
          items:
            type: string
          nullable: true
        campaignStatusFilter:
          type: array
          items:
            enum:
              - Active
              - Inactive
            type: string
          nullable: true
        campaignTypeFilter:
          type: array
          items:
            enum:
              - SponsoredProducts
              - OnsiteDisplay
            type: string
          nullable: true
        limit:
          type: integer
          description: The maximum number of campaigns to return.
          format: int32
          nullable: true
        offset:
          type: integer
          description: The number of matching campaigns to skip.
          format: int32
          nullable: true
      additionalProperties: false
      description: "Optional filters and pagination applied when searching campaigns under an account.\r\nValues within one filter are ORed; distinct filters are ANDed."
    CampaignResponseModel:
      required:
        - accountId
        - attributionSettings
        - buyType
        - campaignType
        - createdAt
        - drawableBalanceIds
        - name
        - status
        - updatedAt
      type: object
      properties:
        accountId:
          type: string
        attributionSettings:
          $ref: '#/components/schemas/AttributionSettingsModel'
        billByRetailerId:
          type: string
          nullable: true
        budgetDetails:
          $ref: '#/components/schemas/BudgetDetailsModel'
        buyType:
          enum:
            - Unknown
            - Auction
            - PreferredDeals
            - Sponsorship
          type: string
          description: Buy type of campaign, set only on creation.
        campaignType:
          enum:
            - Unknown
            - SponsoredProducts
            - OnsiteDisplay
          type: string
          description: Type of campaign, set only on creation.
        companyName:
          type: string
          nullable: true
        createdAt:
          type: string
          format: date-time
        drawableBalanceIds:
          type: array
          items:
            type: string
        id:
          type: string
          nullable: true
        name:
          maxLength: 255
          minLength: 0
          type: string
        objective:
          enum:
            - Manual
            - Clicks
            - Conversion
            - Revenue
            - Impressions
            - Unknown
          type: string
          description: "Dynamic Campaign Budgets control: manual keeps today's behavior; clicks, conversion and\r\nrevenue activate campaign-level budget allocation. Impressions is the Onsite Display\r\nobjective."
          nullable: true
        onBehalfCompanyName:
          type: string
          nullable: true
        scheduleDetails:
          $ref: '#/components/schemas/ScheduleDetailsModel'
        status:
          enum:
            - Unknown
            - Active
            - Inactive
          type: string
          description: "Campaign status, derived from the status of Line Items it holds; active if at least\r\none line item is active."
        updatedAt:
          type: string
          format: date-time
      additionalProperties: false
      description: >-
        A Retail Media Campaign used to represent an advertiser's marketing
        objective
      nullable: true
    AttributionSettingsModel:
      type: object
      properties:
        clickAttributionScope:
          enum:
            - SameSku
            - SameSkuCategory
            - SameSkuCategoryBrand
            - Unknown
          type: string
          description: Post-click attribution scope setting.
          nullable: true
        clickAttributionWindow:
          enum:
            - OneWeek
            - TwoWeeks
            - OneMonth
            - Unknown
          type: string
          description: Post-click attribution window setting.
          nullable: true
        viewAttributionScope:
          enum:
            - SameSku
            - SameSkuCategory
            - SameSkuCategoryBrand
            - Unknown
          type: string
          description: Post-view attribution scope setting.
          nullable: true
        viewAttributionWindow:
          enum:
            - None
            - OneDay
            - OneWeek
            - TwoWeeks
            - OneMonth
            - Unknown
          type: string
          description: Post-view attribution window setting.
          nullable: true
      additionalProperties: false
      description: Wrapper for attribution settings.
    BudgetDetailsModel:
      type: object
      properties:
        budget:
          type: number
          format: double
          nullable: true
        dailyPacing:
          type: number
          format: double
          nullable: true
        isAutoDailyPacing:
          type: boolean
          nullable: true
        monthlyPacing:
          type: number
          format: double
          nullable: true
      additionalProperties: false
      description: >-
        Indexed budget and pacing details returned for Sponsored Products
        campaigns.
      nullable: true
    ScheduleDetailsModel:
      type: object
      properties:
        endDate:
          type: string
          description: "Campaign end date. A SponsoredProducts campaign that runs indefinitely reports\r\n{9999-12-30T00:00:00Z}."
          format: date-time
          nullable: true
        startDate:
          type: string
          description: Campaign start date. Defaults to the creation timestamp.
          format: date-time
          nullable: true
      additionalProperties: false
      description: "Flight dates of the campaign. Always complete: both dates are present on every read.\r\nA SponsoredProducts campaign that runs indefinitely reports the documented indefinite end date\r\nrather than omitting it."
      nullable: true
  securitySchemes:
    oauth:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}
        authorizationCode:
          authorizationUrl: https://api.criteo.com/oauth2
          tokenUrl: https://api.criteo.com/oauth2/token
          scopes: {}

````