> For the complete documentation index, see [llms.txt](https://help.citrusad.com/retail-media-interface/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.citrusad.com/retail-media-interface/integration/de/generating-ads/banner-x-responsive/requesting-banner-x-ads.md).

# Banner-X-Anzeigen für verschiedene Platzierungen generieren

Dieses Dokument bietet eine umfassende Anleitung zur Generierung von Banner-X-Werbeanzeigen für verschiedene Platzierungstypen. Banner X Anzeigen werden generiert auf dem `/bannerx` -Endpunkt. Alle Banner-X-Anfragen erfordern die `contentStandardId` und die `bannerSlotIds` für die Sie Anzeigen anfordern. Jede API-Anfrage muss auch Details über den Kontext enthalten, wie z. B.:

* Platzierung
* Katalog-ID
* Kunden-ID
* Sitzungs-ID
* Suchbegriff
* Die maximale Anzahl der anzuzeigenden Anzeigen

## Such-Platzierung

### Voraussetzungen

Sie müssen die folgenden Schritte abschließen, bevor Sie mit der Anforderung von Banner-X-Anzeigen für die Such-Platzierung beginnen.

#### 1. Produktkataloge hinzufügen

Stellen Sie sicher, dass Ihre Produkte zu Ihren Katalogen hinzugefügt und mit der Epsilon Retail Media -Plattform synchronisiert wurden. Weitere Informationen finden Sie unter [Einführung in Kataloge und Produkte](https://developers.citrusad.com/integration/docs/introduction-to-catalogs-and-products).

#### 2. Kampagne erstellen und Suchbegriffe konfigurieren

Stellen Sie sicher, dass Sie eine Kampagne erstellt und Suchbegriffe konfiguriert haben. Weitere Details finden Sie unter [Schritt 4b: Suchbegriffe konfigurieren](/retail-media-interface/integration/de/generating-ads/banner-x-responsive/create-banner-x-campaigns.md#optional-step-4b-configure-search-terms). Definieren Sie die Suchbegriffe, auf die Sie Ihre Produktanzeigen ausrichten möchten (einschließlich und ausschließend). Sie können genau passende, wortgruppenbezogene und ausschließende Suchbegriffe für Ihre Anzeigen angeben.

#### 3. API-Schlüssel und Basis-URL abrufen

1. Sie müssen über einen gültigen API-Schlüssel verfügen. Um die API-Schlüssel abzurufen, gehen Sie wie folgt vor:
   1. Melden Sie sich in Ihrem Epsilon's Retail Media -Teamkonto an.
   2. Navigieren Sie oben rechts auf der Seite und klicken Sie auf das Dropdown-Menü.
   3. Wählen Sie **Integrationseinstellungen** aus dem Dropdown-Menü.

      <figure><img src="/files/mDu3X6KPnud9Q2jg04PX" alt="" width="100%"><figcaption></figcaption></figure>
   4. Klicken Sie auf die Registerkarte **API-Schlüssel**. Ihr geheimer API-Schlüssel ist zunächst ausgeblendet. Um ihn anzuzeigen, klicken Sie auf die Schaltfläche **Anzeigen**. Sobald er sichtbar ist, kopieren Sie Ihren geheimen API-Schlüssel. Verwenden Sie diesen Schlüssel für API-Aufrufe.
2. Sie müssen die Basis-URL für den API-Endpunkt haben. Zum Beispiel <https://staging-test.citrusad.com/v1/ads/generate> HTTP/1.1. Erfragen Sie die Basis-URL bei Ihrem Technical Account Manager.

### Anzeigen generieren

Führen Sie die folgenden Schritte aus, um Produktanzeigen zu generieren.

#### HTTP-Anfrage

**Endpunkt**: /v1/ads/generate

**Methode**: POST

**Header**:

* accept: application/json
* content-type: application/json
* Authorization: Basic \<API\_KEY>

#### Anfrageparameter

Der Anfrage-Text sollte ein JSON-Objekt sein, das die folgenden Felder enthält:

| Objekt            | Typ                                         | Beschreibung                                                                                                                                                                                                                                      |
| ----------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| customerId        | String, erforderlich                        | Eindeutiger Identifikator für den Kunden. Dieser wird von Ihrem Einzelhändler bereitgestellt.                                                                                                                                                     |
| sessionId         | String, erforderlich                        | Eindeutiger Identifikator für die Sitzung. Dieser ist für die Zuordnung erforderlich und wird vom Einzelhändler bereitgestellt.                                                                                                                   |
| contentStandardId | String, erforderlich                        | Die Inhaltsstandard-ID für Ihr Banner X.                                                                                                                                                                                                          |
| bannerSlotIds     | String, erforderlich                        | Die Slot-ID Ihrer Banner-Platzierung.                                                                                                                                                                                                             |
| placement         | String, erforderlich                        | Kontext, in dem die Anzeige angezeigt wird (z. B. "search").                                                                                                                                                                                      |
| catalogId         | String, erforderlich                        | Eindeutiger Identifikator für den Produktkatalog, aus dem Produkte gefiltert werden. Sie erhalten die catalogID über die Epsilon's Retail Media -Benutzeroberfläche oder vom Einzelhändler.                                                       |
| maxNumberOfAds    | Integer, erforderlich                       | Maximale Anzahl der anzuzeigenden Anzeigen. Wenn Sie Banner-X-Anzeigen anfordern, können Sie die maximale Anzahl an Bannern angeben, die Sie pro Banner-Platzierung erhalten möchten. Sie können dies mit dem Parameter `maxNumberOfAds` steuern. |
| searchTerm        | String, erforderlich für Such-Platzierungen | Begriff, nach dem im Katalog gesucht werden soll.                                                                                                                                                                                                 |
| options           | Object, optional                            | Zusätzliche Optionen wie Filtermodi `AndOr`. Wenn angegeben, verwendet das System sowohl "AND"- als auch "OR"-Bedingungen, um die Suchergebnisse einzuschränken.                                                                                  |

### Anfragebeispiel

Such-Platzierungen sind in der Regel am einfachsten anzufordern. Sie erfordern ein `searchTerm` im Request angegeben werden, wie im folgenden Beispiel:

```http
POST $BASE_URL/v1/ads/bannerx HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "options": {
   						 "filterMode": "AndOr"
 							 },
    "contentStandardId": "c61941e2-1435-460b-9d2b-5d838e3dba9c",
    "bannerSlotIds": [
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
  ]
}
```

## Kategorie-Platzierungen

Kategorie-Platzierungen erfordern `productFilters` im Request angegeben werden. Das folgende Beispiel zeigt, wo Sie die Kategoriefilter senden würden:

```http
POST $BASE_URL/v1/ads/bannerx HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "category",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 ["category:Cupboard/Snacks"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
    "bannerSlotIds": [
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
}
```

Wenn zusätzliche Kategorien durchstöbert werden, sollten Sie Ihren API-Aufruf entsprechend aktualisieren.

## Cross-Selling-Kategorie-Platzierungen

Cross-Selling-Kategorie-Platzierungen haben einen sehr ähnlichen Request wie Kategorie-Platzierungen. Sie müssen die genaue Kategorie angeben, für die Sie Anzeigen anfordern. Dies ist normalerweise die Seite, auf der Sie sich befinden. Geben Sie die Kategorie im `productFilters` des Requests an. Das folgende Beispiel zeigt, wo Sie die Kategoriefilter senden würden:

```http
POST $BASE_URL/v1/ads/generate HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "category-cross-sell",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 ["category:Cupboard/Snacks"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
    "bannerSlots": [
           {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
    ],
    "maxNumberOfAds": 3
}
```

Wenn zusätzliche Kategorien durchstöbert werden, müssen Sie Ihren API-Aufruf entsprechend aktualisieren.

{% hint style="info" %}
Zusammenführung von organischem und Cross-Selling-Kategorie-Targeting?

Wenn Sie eine organische und eine Cross-Selling-Kategorie-Anzeigenanforderung in einer einzigen Platzierung zusammenführen möchten, müssen Sie eine Logik zur Zusammenführung und Auslieferung für Ihre Kunden implementieren. Dies liegt in der Verantwortung des Integrators, obwohl Epsilon Retail Media gerne beratend zur Seite steht.

Im Allgemeinen empfehlen wir, dass Sie organische Kategorie-Anzeigen und danach Platzierungs- und Kategorie-Cross-Selling-Anzeigen nach den organischen Platzierungen anzeigen.
{% endhint %}

## Broad-Match-Platzierungen

Broad-Platzierungen wie Homepage- oder Checkout-Seiten erfordern keine `productFilters` im Request angegeben werden. Alle Filter, die der Händler angeben möchte (im Angebot, neu usw.), können im `productFilters` angegeben werden, um sicherzustellen, dass Epsilon Retail Media Anzeigen nur innerhalb der Anforderungen ausliefern, wie im folgenden Beispiel:

```http
POST $BASE_URL/v1/ads/bannerx HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "home",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 []
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
    "bannerSlotIds": [
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
}
```

## Anfrage-Erweiterungen

Wir empfehlen Ihnen, die folgenden Erweiterungen zu berücksichtigen, um Ihre Benutzererfahrung zu verbessern.

#### Gefilterte Suchen

Wenn Ihr Kunde seine Suche filtert, können Sie Ihren Kontext erweitern, um `productFilters`bereitzustellen. Unten finden Sie ein Beispiel, bei dem der Kunde nach der Kategorie "Schrank" und der Einschränkung "Glutenfrei" filtert. Dasselbe Prinzip kann auf jede Kategorie oder Broad-Match-Platzierung angewendet werden.

```http
POST $BASE_URL/v1/ads/bannerx HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "productFilters": [
     	 ["category:Cupboard"],["dietary:Gluten-free"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
    "bannerSlotIds": [
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
}
```

#### Filtern nach Standort

Wenn Sie Standortfilter in Ihrem Katalog synchronisieren, können Sie Ihren Kontext erweitern, um den Filialstandort des Kunden im `productFilters`bereitzustellen, wie im folgenden Beispiel:

```http
POST $BASE_URL/v1/ads/bannerx HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "customerId": "wertg5432a",
    "sessionId": "ec9-4e07-881d-3e9",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "productFilters": [
     	 ["category:Cupboard"],["dietary:Gluten-free"],["location:Westenbury"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
    "bannerSlotIds": [
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 1
    },
    {
      "slotId": "<SLOT_ID>",
      "maxNumberOfAds": 2
    }
}
```

## Banner X Response

Alle Responses folgen demselben JSON-Format. Alle zum Rendern des Banners erforderlichen Inhalte werden in der Response bereitgestellt. Wenn für das Banner keine Komponente konfiguriert ist (z. B. kein sekundäres Hero-Image), Epsilon Retail Media wird die Eigenschaft nicht ausliefern.

```json
{
    "ads": [
        {
            "contentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
            "slotId": "<SLOT_ID>",
            "banners": [
                {
                    "citrusAdId": "shotgun__vW5pOojxDfN7T9VwaXWQLF2wKw3NzE0MTA3",
                    "citrusCampaignName": "CitrusAd-Example-Category-Banner-X-Ad-52793b405f1347b22e72a38c5a08699b",
                    "citrusContentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
                    "citrusSlotId": "<SLOT_ID>",
                    "citrusExpiry": "2021-05-17T02:47:52.849995214Z",
                    "headingText": "Banner Advertisement for Magnum Double Ice Cream with a product image and shop now button",
                    "bannerText": "<strong>Magnum Double Ice Cream</strong>",
                    "bannerTextColour": "6e6c6c",
                    "ctaFlag": true,
                    "ctaText": "Shop now",
                    "ctaTextAccessibility": "for Magnum products",
                    "ctaLink": "https://www.tesco.com/groceries/en-GB/search?query=magnums",
                    "backgroundColour": "e1d6ac",
                    "heroImage": "https://cdn.flavedo.io/s/9b93e7f9-d747-4c8b-bcba-2357b280a3b3",
                    "heroImageAltText": "Magnums",
                    "tags": {},
                    "gtins": [
                        "7714107",
                        "7733636",
                        "7733657",
                        "7163379",
                        "7733628"
                    ],
                    "position": 1
                }
            ]
        },
        {
            "contentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
            "slotId": "<SLOT_ID>",
            "banners": [
                {
                    "citrusAdId": "shotgun_kZp9yTCMm71vTo7iyQaK9I_YB09FUFYzNzBTQ0FO",
                    "citrusCampaignName": "milo-campaign-lakjsdf09kj",
                    "citrusContentStandardId": "21r372ba-dce6-46f2-bd16-1b923b9189f9",
                    "citrusSlotId": "<SLOT_ID>",
                    "citrusExpiry": "2021-05-17T02:47:52.849995214Z",
                    "headingText": "A banner for Milo with a product image and a shop now button",
                    "bannerText": "<strong>Try Milo Cereal</strong>",
                    "bannerTextColour": "48a94c",
                    "heroImage": "https://assets.imageurl.io/s/85d2d333-eed5-44d7-b131-8851d59f0574",
                    "heroImageAltText": "Milo product image",
                    "ctaFlag": true,
                    "ctaText": "Shop now",
                    "ctaTextAccessibility": "for Milo products",
                    "ctaLink": "retailer.com/everything/search/heritage%20mill?pageNumber=1",
                    "secondaryHeroImage": "https://assets.imageurl.io/s/85d2d333-eed5-44d7-b131-8m435c34r",
                    "secondaryHeroImageAltText": "Milo Logo",
                    "secondaryHeroMode": "landscape",
                    "backgroundColour": "895b5b",
                    "backgroundImage": "https://assets.flavedo.io/s/9c6fa248-c5ff-4341-9833-7e2b08464ada",
                    "backgroundImagePosition": "FILL",
                    "secondaryBackgroundImage": "https://assets.flavedo.io/s/9c6fa248-c5ff-4341-9833-7e2b08464ada",
                    "tags": {},
                    "gtins": [
                         "16309011",
                         "57312011",
                         "65250011"
                                ],
                    "position": 1
                }
            ]
        }
    ]
}
```

Das `id` -Feld ist Ihre Anzeigesonder-ID (Ad ID), die in Impression- und Klick-Berichten verwendet wird. Weitere Informationen zu den einzelnen Strings finden Sie in der Referenz.

### Drittanbieter-Tracking-Tags

Für Banner-X-Anzeigen Epsilon Retail Media unterstützt die Weitergabe von Drittanbieter-Tracking-Tags an den Händler. Diese Tags werden von Werbetreibenden verwendet, um ihre Performance durch einen vertrauenswürdigen Drittanbieter zu überprüfen.

Epsilon Retail Media unterstützen die folgenden Tracking-Tags:

* DoubleVerify (Javascript und Bild)
* DCM Click
* DCM Impression
* IAS
* Adform Impression
* Adform click

Wenn für eine Kampagne ein Tracking-Tag konfiguriert ist, wird es als entsprechendes Feld im `trackingTags` -Objekt unten dargestellt. Bitte beachten Sie: Wenn für eine Kampagne kein Tag konfiguriert ist, bleiben das `tags`und das `trackingTags` -Objekt leer.

```json
{
    "ads": [
        {
            "contentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
            "slotId": "<SLOT_ID>",
            "banners": [
                {
                    "citrusAdId": "shotgun__vW5pOojxDfN7T9VwaXWQLF2wKw3NzE0MTA3",
                    "citrusCampaignName": "CitrusAd-Example-Category-Banner-X-Ad-52793b405f1347b22e72a38c5a08699b",
                    "citrusContentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
                    "citrusSlotId": "<SLOT_ID>",
                    "citrusExpiry": "2021-05-17T02:47:52.849995214Z",
                    "headingText": "Banner Advertisement for Magnum Double Ice Cream with a product image and shop now button",
                    "bannerText": "<strong>Magnum Double Ice Cream</strong>",
                    "bannerTextColour": "6e6c6c",
                    "ctaFlag": true,
                    "ctaText": "Shop now",
                    "ctaTextAccessibility": "for Magnum products",
                    "ctaLink": "https://www.tesco.com/groceries/en-GB/search?query=magnums",
                    "backgroundColour": "e1d6ac",
                    "heroImage": "https://cdn.flavedo.io/s/9b93e7f9-d747-4c8b-bcba-2357b280a3b3",
                    "heroImageAltText": "Magnums",
                    "tags": {},
                  	"trackingTags": {
                        "ADFORM_CLICK": "https://track.adform.net...",
                        "ADFORM_IMPRESSION": "<img src=\"https://track.adform.net...",
                        "DCM_CLICK": "https://ad.doubleclick.net/ddm/trackclk/...",
                        "DCM_IMPRESSION": "<IMG SRC=\"https://ad.doubleclick.net/ddm/trackimp/...",
                        "DV": "<script src=\"https://cdn.doubleverify.com/dvtp_src.js?ctx=...",
                        "DV_IMAGE": "<img src=\"https://tps.doubleverify.com/visit.jpg?ctx=..."
                    },
                    "gtins": [
                        "7714107",
                        "7733636",
                        "7733657",
                        "7163379",
                        "7733628"
                    ],
                    "position": 1
                }
            ]
        }
    ]
}
```

As Epsilon Retail Media eine Server-zu-Server-Integration ist, erfordern Drittanbieter-Tracking-Tags eine zusätzliche Entwicklung durch den Händler. Wenden Sie sich an Ihren Integration Program Manager (IPM), wenn Sie diese Funktion nutzen möchten.

{% hint style="info" %}
`tags` -Objekt

Für DoubleVerify- (Javascript) und DCM-Tags wird möglicherweise auch das `tags` -Objekt befüllt. Es wird empfohlen, das `trackingTags` Response zu verwenden.
{% endhint %}

### Video-Anzeigen

Wenn für eine Kampagne Video-Anzeigen konfiguriert sind, enthält die Response ein `adm`-Objekt, wie unten zu sehen ist:

```
{

  "ads": [

    {

      "contentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",

      "slotId": "Top_Banner",

      "banners": [

        {

          "citrusAdId": "shotgun_8SvgA7OvvuwtZkkOKR0vr8AXMvQKFgoURmluZ2VybGltZTI2LWZkeHZxMjcSABoMCO30r70GEKPplJQCIgIIAQ==",

          "citrusCampaignName": "Ads:74-330-96832622ed499dafb3da8de8b76340a2",

          "citrusContentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",

          "citrusSlotId": "Top_Banner",

          "citrusExpiry": "2025-02-12T01:33:33.579155107Z",

          "headingText": "recusandae 3205",

          "bannerText": "placeat 2825",

          "bannerTextColour": "ffffff",

          "ctaFlag": true,

          "ctaText": "CTA text",

          "ctaTextAccessibility": "call to action accessibility text",

          "ctaLink": http://citrusad.com ,

          "backgroundColour": "000000",

          "backgroundImage": https://dev3.flavedo.io./citrus/8de07ed9-60b4-4611-8bd5-3f1f0c0b6be4,

          "secondaryBackgroundImage": https://dev3.flavedo.io./citrus/b7a70785-1366-42c6-8134-c7fe47a30c34,

          "secondaryBackgroundImagePosition": "rightaligned",

          "heroImage": https://dev3.flavedo.io./citrus/26798ca9-1022-422d-9100-1a3687c88372,

          "heroImageAltText": "hero image alt text",

          "secondaryHeroImage": https://dev3.flavedo.io./citrus/c4ee18b4-bf51-44d7-9eb6-eeb1dc4c422f,

          "secondaryHeroImageAltText": "secondary hero image alt text",

          "secondaryHeroMode": "landscape",

          "tags": {},

          "additionalFields": [

            {

              "id": "text-1",

              "value": "sed 5731"

            }

          ],

          "gtins": [

            "Fingerlime26-fdxvq27",

            "Oranges5-qgxeb6",

            "Cherries9-adkoj11",

            "Incaberries20-ppscn21",

            "Banana14-simfk15"

          ],

          "sellerId": "seller_id_772_659",

          "position": 1,

          "metadata": {

            "advertiserInfo": {

             "advertiser": "Bob's advertising agency",

             "onBehalfOf": "Brand company inc"

            }

          },
          "adm": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<VAST version=\"4.0\">\n    <Ad id=\"1\">\n        <InLine>\n            <AdSystem>CitrusAd</AdSystem>\n            <Impression><![CDATA[https://integration.BASE-URL.citrusad.com/v1/resource/first-i/shotgun_2DbJUbTdlM3HFvLuF75YoA2FgpwKBQoDMTIzEgAaCwjHsuG_BhD7sqZzIgIIAQ==]]></Impression>\n            <ViewableImpression>\n                <Viewable><![CDATA[https://integration.BASE-URL.citrusad.com/v1/resource/first-i/shotgun_2DbJUbTdlM3HFvLuF75YoA2FgpwKBQoDMTIzEgAaCwjHsuG_BhD7sqZzIgIIAQ==]]></Viewable>\n                <NotViewable></NotViewable>\n                <ViewUndetermined></ViewUndetermined>\n            </ViewableImpression>\n            <AdTitle>VAST-4.0-Short-Intro.mp4</AdTitle>\n            <Creatives>\n                <Creative>\n                    <UniversalAdId idRegistry=\"http://citrusad.com \" idValue=\"VAST-4.0-Short-Intro.mp4\">VAST-4.0-Short-Intro.mp4</UniversalAdId>\n                    <Linear>\n                        <Duration></Duration>\n                        <MediaFiles>\n                            <MediaFile delivery=\"progressive\" type=\"video/mp4\" width=\"0\" height=\"0\" bitrate=\"0\" codec=\"\"><![CDATA[https://cdn.flavedo.io./citrus/VAST-4.0-Short-Intro.mp4]]></MediaFile>\n                            <Mezzanine><![CDATA[https://cdn.flavedo.io./citrus/VAST-4.0-Short-Intro.mp4]]></Mezzanine>\n                        </MediaFiles>\n                        <VideoClicks>\n                            <ClickTracking><![CDATA[https://integration.BASE-URL.citrusad.com/v1/resource/second-c/shotgun_2DbJUbTdlM3HFvLuF75YoA2FgpwKBQoDMTIzEgAaCwjHsuG_BhD7sqZzIgIIAQ==]]></ClickTracking>\n                            <ClickThrough><![CDATA[a/a-national/everything/browse]]></ClickThrough>\n                        </VideoClicks>\n                    </Linear>\n                </Creative>\n            </Creatives>\n        </InLine>\n    </Ad>\n</VAST>"

       }

      ]

    }

  ]

}
```

### Begleitprodukte

Wenn für eine Kampagne Begleitprodukte konfiguriert sind, enthält die Response ein `companionProducts`-Array von Objekten, wie unten zu sehen ist::

```
{
  "ads": [
    {
      "contentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",
      "slotId": "Top_Banner",
      "banners": [
        {
          "citrusAdId": "shotgun_8SvgA7OvvuwtZkkOKR0vr8AXMvQKFgoURmluZ2VybGltZTI2LWZkeHZxMjcSABoMCO30r70GEKPplJQCIgIIAQ==",
          "citrusCampaignName": "Ads:74-330-96832622ed499dafb3da8de8b76340a2",
          "citrusContentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",
          "citrusSlotId": "Top_Banner",
          "citrusExpiry": "2025-02-12T01:33:33.579155107Z",
          "headingText": "recusandae 3205",
          "bannerText": "placeat 2825",
          "bannerTextColour": "ffffff",
          "ctaFlag": true,
          "ctaText": "CTA text",
          "ctaTextAccessibility": "call to action accessibility text",
          "ctaLink": http://citrusad.com,
          "backgroundColour": "000000",
          "backgroundImage": https://dev3.flavedo.io./citrus/8de07ed9-60b4-4611-8bd5-3f1f0c0b6be4,
          "secondaryBackgroundImage": https://dev3.flavedo.io./citrus/b7a70785-1366-42c6-8134-c7fe47a30c34,
          "secondaryBackgroundImagePosition": "rightaligned",
          "heroImage": https://dev3.flavedo.io./citrus/26798ca9-1022-422d-9100-1a3687c88372,
          "heroImageAltText": "hero image alt text",
          "secondaryHeroImage": https://dev3.flavedo.io./citrus/c4ee18b4-bf51-44d7-9eb6-eeb1dc4c422f,
          "secondaryHeroImageAltText": "secondary hero image alt text",
          "secondaryHeroMode": "landscape",
          "tags": {},
          "additionalFields": [
            {
              "id": "text-1",
              "value": "sed 5731"
            }
          ],
          "gtins": [
            "Fingerlime26-fdxvq27",
            "Oranges5-qgxeb6",
            "Cherries9-adkoj11",
            "Incaberries20-ppscn21",
            "Banana14-simfk15"
          ],
          "sellerId": "seller_id_772_659",
          "position": 1,
          "metadata": {
            "advertiserInfo": {
             "advertiser": "Bob's advertising agency",
             "onBehalfOf": "Brand company inc"
            }
          },
          “companionProducts”: [
            "Banana14-simfk15"
            "Oranges5-qgxeb6",
            "Incaberries20-ppscn21",
          ]
        }
      ]
    }
  ]
}
```

<br>

### Marketplace sellerId

Wenn Sie Marketplace-Verkäufer onboarden, sehen Sie möglicherweise eine zusätzliche `sellerId` pro Anzeige in der Response. Dies wird nur angezeigt, wenn das Team, dem die ausgelieferte Kampagne gehört, eine seller ID in der Benutzeroberfläche konfiguriert hat. Das folgende Beispiel zeigt eine Anzeige mit einer sellerId und eine ohne.

```json
{
    "ads": [
        {
            "contentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
            "slotId": "<SLOT_ID>",
            "banners": [
                {
                    "citrusAdId": "shotgun__vW5pOojxDfN7T9VwaXWQLF2wKw3NzE0MTA3",
                    "citrusCampaignName": "CitrusAd-Example-Category-Banner-X-Ad-52793b405f1347b22e72a38c5a08699b",
                    "citrusContentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
                    "citrusSlotId": "<SLOT_ID>",
                    "citrusExpiry": "2021-05-17T02:47:52.849995214Z",
                    "headingText": "Banner Advertisement for Magnum Double Ice Cream with a product image and shop now button",
                    "bannerText": "<strong>Magnum Double Ice Cream</strong>",
                    "bannerTextColour": "6e6c6c",
                    "ctaFlag": true,
                    "ctaText": "Shop now",
                    "ctaTextAccessibility": "for Magnum products",
                    "ctaLink": "https://www.retailer.com/groceries/en-GB/search?query=magnums",
                    "backgroundColour": "e1d6ac",
                    "heroImage": "https://cdn.flavedo.io/s/9b93e7f9-d747-4c8b-bcba-2357b280a3b3",
                    "heroImageAltText": "Magnums",
                    "tags": {},
                    "gtins": [
                        "7714107",
                        "7733636",
                        "7733657",
                        "7163379",
                        "7733628"
                    ],
                    "position": 1,
                    "sellerId": "1ben32-ss3d43-amea"
                }
            ]
        },
        {
            "contentStandardId": "c619d1e2-1435-460b-9d2b-5d838e3dba9c",
            "slotId": "<SLOT_ID>",
            "banners": [
                {
                    "citrusAdId": "shotgun_kZp9yTCMm71vTo7iyQaK9I_YB09FUFYzNzBTQ0FO",
                    "citrusCampaignName": "milo-campaign-lakjsdf09kj",
                    "citrusContentStandardId": "21r372ba-dce6-46f2-bd16-1b923b9189f9",
                    "citrusSlotId": "<SLOT_ID>",
                    "citrusExpiry": "2021-05-17T02:47:52.849995214Z",
                    "headingText": "A banner for Milo with a product image and a shop now button",
                    "bannerText": "<strong>Try Milo Cereal</strong>",
                    "bannerTextColour": "48a94c",
                    "heroImage": "https://assets.imageurl.io/s/85d2d333-eed5-44d7-b131-8851d59f0574",
                    "heroImageAltText": "Milo product image",
                    "ctaFlag": true,
                    "ctaText": "Shop now",
                    "ctaTextAccessibility": "for Milo products",
                    "ctaLink": "retailer.com/everything/search/heritage%20mill?pageNumber=1",
                    "secondaryHeroImage": "https://assets.imageurl.io/s/85d2d333-eed5-44d7-b131-8m435c34r",
                    "secondaryHeroImageAltText": "Milo Logo",
                    "secondaryHeroMode": "landscape",
                    "backgroundColour": "895b5b",
                    "backgroundImage": "https://assets.flavedo.io/s/9c6fa248-c5ff-4341-9833-7e2b08464ada",
                    "backgroundImagePosition": "FILL",
                    "secondaryBackgroundImage": "https://assets.flavedo.io/s/9c6fa248-c5ff-4341-9833-7e2b08464ada",
                    "tags": {},
                    "gtins": [
                         "16309011",
                         "57312011",
                         "65250011"
                                ],
                    "position": 1
                }
            ]
        }
    ]
}
```

### Drittanbieter-Tracking-Tags

Epsilon Retail Media unterstützt die Weitergabe von Drittanbieter-Tracking-Tags an den Händler. Diese Tags werden von Werbetreibenden verwendet, um ihre Performance durch einen vertrauenswürdigen Drittanbieter zu überprüfen.

Epsilon Retail Media unterstützen die folgenden Tracking-Tags:

* DoubleVerify
* DCM Click
* DCM Impression
* IAS

Wenn für eine Kampagne ein Tracking-Tag konfiguriert ist, wird es als entsprechendes Feld im `tags` -Objekt unten dargestellt. Bitte beachten Sie: Wenn für eine Kampagne kein Tag konfiguriert ist, bleiben das `tags` -Objekt leer.

```json
{
    "ads": [],
    "banners": [
				{
            "id": "banner_XeemTeq59HapGSp4vccOYfBq_yvc3zMzNjM2",
            "contentStandardId": "fec2ab89-7a29-42b5-b58a-5675688b52d9",
            "slotId": "<SLOT_ID>",
            "imageUrl": "https://cdn.flavedo.io/s/-oW-C3cEViSSO2krWkwOBUXOhvUdhHOySx-YQLGZ1lA=",
            "linkUrl": "https://www.retailer.com/link",
            "altText": "Your local ice cream",
            "text": "",
            "gtins": [
                "7733628",
                "7714107",
                "7163379",
                "7733636",
                "7733657"
            ],
            "expiry": "2021-05-17T01:49:17.75503253Z",
            "tags": {
                "dv": "<script src=\"https://cdn.doubleverify.com/dvtp_src.js?ctx=919421&cmp=1074060503&sid=1073907024&plc=1075810393&adsrv=115&btreg=&btadsrv=&crt=&tagtype=&dvtagver=6.1.src\" type=\"text/javascript\"></script>",
                "dcmClick": "<script ..../>",
                "dcmImpression": "<script.... />",
                "ias": "<script.... />"            }
        }
				],
    "products": [],
     "memoryToken":"85ykKVv-luDHMWLZx2d6xcPq6sF7CgkJCSJDb3VudGVyIjogIjIiLAoJCQkiQWRzIjogWwoJCQkJImRpc3BsYXlfV05VV0NwQkRKMUpKNm5wdVZSVExvOU40TUxzNE1UWTBOemt5TWc9PSIsCgkJCQkiZGlzcGxheV9MME5NUHRxNmdCcVFvREJOd3J0dE9UTGJoWk0xTVRFeU9UYzRPUT09IiwKCQkJCSJkaXNwbGF5XzlCcEpmdUpaWk9VXzgyaWpFM3VCczgxd3VVczRNekkwTnpVeE5nPT0iLAoJCQkJImRpc3BsYXlfcW1VU1p4TkpMQ0lqeWQwdTFJRDk0RmxVZ0pnNE16STBOelV4Tnc9PSIsCgkJCQkiZGlzcGxheV9oeHlFZktCUnRrNWlxMThMQzE1SDJHcEN3QjgxTVRFeU9UYzVNQT09IiwKCQkJCSJkaXNwbGF5X1NkcjFEcU5aUEFtcGh0Q1FIUndoYUxFT1B0RXhNamsxT1RJNE5BPT0iLAoJCQkJImRpc3BsYXlfeVlSai1qV2Ntc2ozNzhrel9PMm0yOVlwTjhJeE5EazNPRE00TXc9PSIsCgkJCQkiZGlzcGxheV9Xbm9NZGZuLTRTVmhxcF9xQzVvLWxoT0paNm8xTkRJeE1UUTROdz09IgoJCQldLAoJCQkiVFRMIjogMTYyODk4NTYwMAoJCX0="
}
```

As Epsilon Retail Media eine Server-zu-Server-Integration ist, erfordern Drittanbieter-Tracking-Tags eine zusätzliche Entwicklung durch den Händler.

## Gesetz über digitale Dienste

Epsilon Retail Media unterstützt Händler bei der Erfüllung ihrer Pflichten gemäß dem Gesetz über digitale Dienste der Europäischen Union (EU) [Gesetz über digitale Dienste](https://commission.europa.eu/strategy-and-policy/priorities-2019-2024/europe-fit-digital-age/digital-services-act_en) (DSA). Das DSA etabliert einheitliche Regeln in der gesamten EU, die auf die Regulierung von Online-Inhalten, transparente Werbung und Desinformation abzielen. Weitere Informationen finden Sie unter [Gesetz über digitale Dienste](/retail-media-interface/integration/de/feature-integrations/digital-services-act.md).

### Beispiel für eine Anzeigenanforderung

```
{
    "catalogId": "57a5318b-5349-46fd-80ed-fd2e0be15819",
    "contentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",
    "bannerSlotIds": [
        {
            "slotId": "Top_Banner",
            "maxNumberOfAds": 1
        }
    ],
    "customerId": "velit3193",
    "placement": "broad-display-60e9699d-984f-4a80-9383-2e6dc7a68d03",
    "options": {
        "includeAdvertiserInfo": true
    }
}
```

### Beispiel für eine Anzeigendantwort

```
{
  "ads": [
    {
      "contentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",
      "slotId": "Top_Banner",
      "banners": [
        {
          "citrusAdId": "shotgun_8SvgA7OvvuwtZkkOKR0vr8AXMvQKFgoURmluZ2VybGltZTI2LWZkeHZxMjcSABoMCO30r70GEKPplJQCIgIIAQ==",
          "citrusCampaignName": "Ads:74-330-96832622ed499dafb3da8de8b76340a2",
          "citrusContentStandardId": "c47c9ca2-ad3b-48cc-880b-e899c1661726",
          "citrusSlotId": "Top_Banner",
          "citrusExpiry": "2025-02-12T01:33:33.579155107Z",
          "headingText": "recusandae 3205",
          "bannerText": "placeat 2825",
          "bannerTextColour": "ffffff",
          "ctaFlag": true,
          "ctaText": "CTA text",
          "ctaTextAccessibility": "call to action accessibility text",
          "ctaLink": "http://citrusad.com",
          "backgroundColour": "000000",
          "backgroundImage": "https://dev3.flavedo.io./citrus/8de07ed9-60b4-4611-8bd5-3f1f0c0b6be4",
          "secondaryBackgroundImage": "https://dev3.flavedo.io./citrus/b7a70785-1366-42c6-8134-c7fe47a30c34",
          "secondaryBackgroundImagePosition": "rightaligned",
          "heroImage": "https://dev3.flavedo.io./citrus/26798ca9-1022-422d-9100-1a3687c88372",
          "heroImageAltText": "hero image alt text",
          "secondaryHeroImage": "https://dev3.flavedo.io./citrus/c4ee18b4-bf51-44d7-9eb6-eeb1dc4c422f",
          "secondaryHeroImageAltText": "secondary hero image alt text",
          "secondaryHeroMode": "landscape",
          "tags": {},
          "additionalFields": [
            {
              "id": "text-1",
              "value": "sed 5731"
            }
          ],
          "gtins": [
            "Fingerlime26-fdxvq27",
            "Oranges5-qgxeb6",
            "Cherries9-adkoj11",
            "Incaberries20-ppscn21",
            "Banana14-simfk15"
          ],
          "sellerId": "seller_id_772_659",
          "position": 1,
          "metadata": {
            "advertiserInfo": {
             "advertiser": "Bob's advertising agency",
          "onBehalfOf": "Brand company inc"
            }
          }
        }
      ]
    }
  ]
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.citrusad.com/retail-media-interface/integration/de/generating-ads/banner-x-responsive/requesting-banner-x-ads.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
