Retailer Search - Criteo Docs

Introduction

A retailer offers a selection of products from multiple brands.

Retailers act as publishers, providing advertising inventory for brands to promote their products. An account can have access to one or more retailers, with this access typically managed by Criteo. A retailer typically allows multiples types of pages to be targeted. A page is an inventory that can be targeted by Campaigns and Line Items with specific configurations.


Endpoints

Method Endpoint Description
POST /accounts/{accountId}/retailers/search Search for Retailers associated with specific account

Retailer Attributes

Attribute Data Type Description
id string Retailer ID, generated internally by Criteo
Accepted values: string of int64
Writeable? N / Nullable? N
name string Retailer name, arbitrary and defined during Retailer integration phase
Accepted values: up to 100-chars string
Writeable? Y / Nullable? N
campaignAvailabilities list Set of retail media capabilities available for the specific Retailer, separated by the different campaignType x buyType pairs. It’s dependent on their current technical integration and other business conditions
Accepted values: see table below
Writeable? N / Nullable? N

Retailer Campaign Availability Attributes

Attribute Data Type Description
campaignType enum Campaign type that the following attributes are available for
Accepted values: onsiteDisplay, sponsoredProducts, offsite (case-insensitive)
Writeable? N / Nullable? N
buyType enum Buy type for the ad impressions of the campaign, that the following attributes are available for
Accepted values: auction, preferredDeals, sponsorship, offsite (case-insensitive)
Writeable? N / Nullable? N
isAvailable boolean Flag indicating if combination of campaignType x buyType is available for related Retailer
Accepted values: true or false
Writeable? N / Nullable? N
budgetModelAvailabilities string From 2026.07: Budget model supported for this buyType campaignType combination at this retailer.
Values: capped, uncapped, retailerBilled. Learn more about Retailer Budget here.
Writeable? N / Nullable? N
validCombinations list List of page type and environment where the campaign type & buy type are available to deliver ad impressions
Accepted values: list of pageType x pageEnvironmentType pairs (see below)
Writeable? N / Nullable? N
pageTypes <enum> Page type available in the current integration of the associated Retailer
Accepted values: case-insensitive values of
- home
- search
- category
- productDetail
- merchandising
- deals
- favorites
- searchbar
- categoryMenu
- checkout
- confirmation
Writeable? N / Nullable? N
pageEnvironmentType <enum> Environment where the page type is available in the associated Retailer integration
Accepted values: case-insensitive values of
- web
- mobile
- app
- lockout
- mixed
- android
- ios
Writeable? N / Nullable? N

Field Definitions


Search for Retailers

This endpoint searches for retailers associated with the respective account and retrieves a set of retail media capabilities, allowing the user to set up campaigns accordingly. Results are paginated using offset and limit query parameters; if omitted, defaults to 0 and 5, respectively. See API Response.

If the limit above is not respected, a dedicated error 400 with Model validation error will return.

Search Attributes

Attribute Data Type Description
retailerIdFilter list Optional list of Retailer IDs, generated internally by Criteo, to retrieve retail media capabilities from
Accepted values: list of integers, empty list or null Writeable? N / Nullable? Y

Sample Request

cURL

curl -X POST "https://api.criteo.com/{version}/retail-media/accounts/18446744073709551616/retailers/search?offset=0&limit=5" \
  -H 'Accept: application/json' \ 
  -H "Authorization: Bearer <MY_ACCESS_TOKEN>" \ 
  -H 'Content-Type: application/json' \ 
  -d '{
          "data": {
              "attributes": {
                  "retailerIdFilter": [\ 
                      12345\ 
                  ]
              }
          }
     }'

Sample Response

{
    "metadata": {
        "count": 1,
        "offset": 0,
        "limit": 5
    },
    "data": [
        {
            "id": "299",
            "type": "RetailerResult",
            "attributes": {
                "name": "Retailer 1234",
                "campaignAvailabilities": [
                    {
                        "campaignType": "onsiteDisplay",
                        "buyType": "auction",
                        "isAvailable": true,
                        "budgetModel": "retailerBilled",
                        "validCombinations": [
                            {
                                "pageType": "home",
                                "pageEnvironmentType": "web"
                            },
                            {
                                "pageType": "home",
                                "pageEnvironmentType": "ios"
                            },
                            {
                                "pageType": "search",
                                "pageEnvironmentType": "web"
                            },
                            {
                                "pageType": "category",
                                "pageEnvironmentType": "web"
                            },
                            {
                                "pageType": "productDetail",
                                "pageEnvironmentType": "web"
                            }
                        ]
                    }
                ]
            }
        }
    ],
    "warnings": [],
    "errors": []
}

Responses

Response Description
🟒
200
Call executed with success
πŸ”΄400 β€œ Model validation error: The field limit must be between 1 and 10”. This indicates that the endpoint above was invoked requesting more than 10 retailers, which is not possible. Define a limit up to 10 and use different offset values to navigate through the different result pages.
πŸ”΄403 API user does not have the authorization to make requests to the account ID. For an authorization request, follow the authorization request steps.