GuidesAPI ReferenceChangelog
GuidesAPI ReferenceChangelogLog In
Guides

📝

Getting Started

An account represents a brand, agency, marketplace seller, or retailer; it is a business & billing entity that contains campaigns. Accounts are created by Criteo; please reach out to your account representative.

Endpoint

VerbEndpointDescription
GET/accountsGet All Accounts

Account Attributes

id

    Data Type: string

    Values: int64

    Description: Account ID

name

    Data Type: string

    Values: 510 char limit

    Description: Account name

type

    Data Type: enum

    Values: demand, supply

    Description: Account type

subtype

    Data Type: enum

    Values: brand, seller

    Description: Account subtype

countries

    Data Type: string array

    Values: ISO-3166 alpha-2 (eg.US , FR)

    Description: Countries associated with the account

currency

    Data Type: string

    Values: ISO-4217 (eg.USD , EUR)

    Description: One single currency for billing, budgeting, bid settings & campaign performance metrics

parentAccountLabel

    Data Type: string

    Values: 510 char limit

    Description: Label used to associate multiple accounts; defaults to the account name

timeZone

    Data Type: string

    Values: database tz syntax, (eg. America/New_York, Europe/Paris , UTC)

    Description: Account time zone

companyName

    Data Type: string

    Values: Company name

    Description: This optional field, exclusively accessible to marketplaces within the European Union, will display the name of the company associated with the advertisement.

    📃 Digital Service Act (DSA)
    In compliance with the Digital Services Act (DSA), marketplaces within the European Union will receive information about the company name associated with each advertisement.


Get All Accounts

This endpoint lists all accounts that your API credentials have access to. Response results will be provided in paginated form

https://api.criteo.com/{version}/retail-media/accounts

Sample Request

curl -X GET "https://api.criteo.com/{version}/retail-media/accounts" \
    -H "Authorization: Bearer <MY_ACCESS_TOKEN>"
import requests

url = "https://api.criteo.com/2023-04/retail-media/accounts"

payload={}
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer <MY_ACCESS_TOKEN>'
}

response = requests.request("GET", url, headers=headers, data=payload)

print(response.text)
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("text/plain");

RequestBody body = RequestBody.create(mediaType, "");

Request request = new Request.Builder()
  .url("https://api.criteo.com/2023-04/retail-media/accounts")
  .method("GET", body)
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer <MY_ACCESS_TOKEN>")
  .build();

Response response = client.newCall(request).execute();
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://api.criteo.com/2023-04/retail-media/accounts');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
  'follow_redirects' => TRUE
));

$request->setHeader(array(
  'Accept' => 'application/json',
  'Authorization' => 'Bearer <MY_ACCESS_TOKEN>'
));

try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}

catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}

Sample Response

{
    "metadata": {
        "totalItemsAcrossAllPages": 2,
        "currentPageSize": 25,
        "currentPageIndex": 0,
        "totalPages": 1
    },
    "data": [
        {
            "id": "5",
            "type": "RetailMediaAccount",
            "attributes": {
                "name": "Supply Demo Test Account",
                "type": "supply",
                "subtype": null,
                "countries": [
                    "US"
                ],
                "currency": "USD",
                "parentAccountLabel": "Supply Demo Test Account",
                "timeZone": "America/New_York",
                "companyName": "Supply Demo Test Account"
            }
        },
        {
            "id": "368471940340928512",
            "type": "RetailMediaAccount",
            "attributes": {
                "name": "RM API Account",
                "type": "demand",
                "subtype": "brand",
                "countries": [
                    "US"
                ],
                "currency": "USD",
                "parentAccountLabel": "API Account",
                "timeZone": "America/New_York",
                "companyName": "RM API Account"
            }
        }
    ]
}

Responses

ResponseDescription
🔵 200Call executed with success