Skip to main content

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.

Endpoint

MethodEndpointDescription
GET/accounts/{accountId}/retailersGet all retailers
GET/retailers/{retailerId}/pagesGet all pages types from specific retailer

Retailer Attributes

AttributeData TypeDescription
idstringRetailer ID, generated internally by CriteoAccepted values: string of int64 Writeable? N / Nullable? N
namestringRetailer name, arbitrary and defined during retailer integration phaseAccepted values: up to 100-chars string Writeable? Y / Nullable? N
campaignEligibilitieslist<enum>Type(s) of campaigns that are supported on each retailer. It’s dependent on their current technical integration and other business conditionsAccepted values: auction, preferred, offsite, offsitecpc Writeable? N / Nullable? N
Field Definitions
  • Writeable (Y/N): Indicates if the field can be modified in requests.
  • Nullable (Y/N): Indicates if the field can accept null/empty values.
  • Primary Key: A unique, immutable identifier of the entity, generated internally by Criteo. Primary keys are typically ID fields (e.g., retailerId, campaignId, lineItemId) and are usually required in the URL path.

Retailer Page Type Attributes

AttributeData TypeDescription
retailerIdstringRetailer ID, generated internally by CriteoAccepted values: string of int64 Writeable? N / Nullable? N
pageTypeslist<enum>Page types available in the associated RetailerAccepted values:- Home
  • Search
  • Category
  • ProductDetail
  • Merchandising
  • Deals
  • Favorites
  • SearchBar
  • CategoryMenu
  • Checkout
  • ConfirmationWriteable? N / Nullable? N |

Get all Retailers

This endpoint retrieves a list of all retailers associated with the respective account and whose environments are available as inventory for its campaigns and line items. Results are paginated using pageIndex and pageSize query parameters; if omitted, defaults to 0 and 25, respectively - see API Response
API referenceYou can find this endpoint in the API reference as well.
Sample Request
curl -X GET "https://api.criteo.com/{version}/retail-media/accounts/18446744073709551616/retailers?pageIndex=0&pageSize=25" \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer <MY_ACCESS_TOKEN>"
Sample Response
{
    "metadata": {
        "totalItemsAcrossAllPages": 10,
        "currentPageSize": 25,
        "currentPageIndex": 0,
        "totalPages": 1,
        "nextPage": null,
        "previousPage": null
    },
    "data": [
        {
            "id": "1234",
            "type": "RetailMediaRetailer",
            "attributes": {
                "name": "Retailer 1234",
                "campaignEligibilities": [
                    "auction",
                    "preferred",
                    "offsiteCpc",
                    "offsite"
                ]
            }
        },
        // ...
        {
            "id": "5678",
            "type": "RetailMediaRetailer",
            "attributes": {
                "name": "Retailer 5678",
                "campaignEligibilities": [
                    "auction",
                    "preferred"
                ]
            }
        }
    ]
}

Get all Page Types from specific Retailer

This endpoint lists all page types available in the current retailer integration. Sample Response
curl -L -X GET "https://api.criteo.com/{version}/retail-media/retailers/1234/pages" \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer <MY_ACCESS_TOKEN>"
Sample Response
{
    "pageTypes": [
        "Home",
        "Search",
        "Category",
        "ProductDetail",
        "Merchandising",
        "Deals",
        "Checkout",
        "Confirmation"
    ]
}

Responses

ResponseDescription
🟢200Call executed with success
🔴403API user does not have the authorization to make requests to the account ID. For an authorization request, follow the steps indicated here: authorization request


What’s Next