> 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/hu/generating-ads/product-ads/requesting-product-ads-1.md).

# Termékhirdetések lekérése

## Hirdetések lekérése

Minden termékhirdetés-lekéréshez szükséges a kontextus `placement`, és `catalogId`, valamint a `maxNumberOfAds` amelyet meg szeretne jeleníteni az ügyfélnek. Ezenkívül a lekérésnek tartalmaznia kell a kontextus `customerId` és `sessionId`.

### Keresési elhelyezések

A keresési elhelyezéseket általában a legegyszerűbb lekérni. Szükséges hozzájuk egy `searchTerm` megadása a lekérésben, az alábbi példához hasonlóan:

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "options": {
   						 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

### Kategória-elhelyezések

A kategória-elhelyezésekhez szükséges a `productFilters` megadása a lekérésben. Az alábbi példa megmutatja, hova kell küldeni a kategóriaszűrőket:

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "category",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 ["category:Cupboard/Snacks"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

Ahogy a felhasználó további kategóriákat böngész, ennek megfelelően frissítenie kell az API-hívást.

{% hint style="info" %}
Bevált gyakorlat

Bevált gyakorlat a legalsó szintű kategóriát elküldeni a hirdetéslekérésben, hogy Epsilon Retail Media ahogy az ügyfelek mélyebb kategóriákba böngésznek.

Ahelyett, hogy láncolt lekérést adna meg az L1 + L2 + L3 3. szintjén, csak az L3 kategóriát adja meg.
{% endhint %}

### Keresztértékesítési kategória-elhelyezések

A keresztértékesítési kategória-elhelyezések lekérése nagyon hasonló a kategória-elhelyezésekéhez. Pontosan azt a kategóriát kell megadnia, amelyre hirdetéseket kér. Ez általában az a oldal, amelyen éppen tartózkodik. Adja meg a kategóriát a lekérés `productFilters` -jában. Az alábbi példa megmutatja, hova kell küldeni a kategóriaszűrőket:

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "category-cross-sell",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 ["category:Cupboard/Snacks"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

Ahogy a felhasználó további kategóriákat böngész, ennek megfelelően frissítenie kell az API-hívást.

{% hint style="info" %}
Szerves és keresztértékesítési kategóriacélzás összevonása?

Ha egy szerves és egy keresztértékesítési kategóriájú hirdetéslekérést egyetlen elhelyezésbe szeretne összevonni, összevonási és kézbesítési logikát kell megvalósítania az ügyfelei számára. Ez az integrátor felelőssége, bár a Epsilon Retail Media szívesen nyújt konzultációt.

Általánosságban azt javasoljuk, hogy a szerves kategóriájú hirdetéseket jelenítse meg, a pozíció- és kategória-keresztértékesítési hirdetéseket pedig a szerves elhelyezések után helyezze el.
{% endhint %}

### Tág egyezésű elhelyezések

A tág elhelyezésekhez, mint például a kezdőlap vagy a pénztár oldalai, nem szükséges semmilyen `productFilters` megadása a lekérésben. Bármilyen szűrő, amelyet a kiskereskedő meg szeretne adni (akciós, új stb.), megadható a `productFilters` részben, hogy a Epsilon Retail Media csak a követelményeknek megfelelő hirdetéseket szolgálja ki.

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "home",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "productFilters": [
     	 []
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

### Lekérési fejlesztések

Keresési, kategória- és tág egyezésű elhelyezéseknél javasoljuk, hogy fontolja meg az alábbi fejlesztéseket a felhasználói élmény javítása érdekében.

#### Lekérések lapozása

Termékhirdetések generálásakor kapni fog egy `memoryToken` értéket, amely elküldhető a későbbi lekérésekben a korábban kiszolgált hirdetések kizárása érdekében. Ezt követően elküldheti ezt a `memoryToken` értéket egy későbbi hirdetéslekérésben, és a Epsilon Retail Media kizárja a válaszból a korábban kiszolgált hirdetéseket ugyanarra a kontextusra vonatkozóan.

Kérjük, tekintse át a [Lapozás](/retail-media-interface/integration/hu/feature-integrations/pagination.md) részt az megvalósítás előtt.

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "memoryToken":"85ykKVv-luDHMWLZx2d6xcPq6sF7CgkJCSJDb3VudGVyIjogIjIiLAoJCQkiQWRzIjogWwoJCQkJImRpc3BsYXlfV05VV0NwQkRKMUpKNm5wdVZSVExvOU40TUxzNE1UWTBOemt5TWc9PSIsCgkJCQkiZGlzcGxheV9MME5NUHRxNmdCcVFvREJOd3J0dE9UTGJoWk0xTVRFeU9UYzRPUT09IiwKCQkJCSJkaXNwbGF5XzlCcEpmdUpaWk9VXzgyaWpFM3VCczgxd3VVczRNekkwTnpVeE5nPT0iLAoJCQkJImRpc3BsYXlfcW1VU1p4TkpMQ0lqeWQwdTFJRDk0RmxVZ0pnNE16STBOelV4Tnc9PSIsCgkJCQkiZGlzcGxheV9oeHlFZktCUnRrNWlxMThMQzE1SDJHcEN3QjgxTVRFeU9UYzVNQT09IiwKCQkJCSJkaXNwbGF5X1NkcjFEcU5aUEFtcGh0Q1FIUndoYUxFT1B0RXhNamsxT1RJNE5BPT0iLAoJCQkJImRpc3BsYXlfeVlSai1qV2Ntc2ozNzhrel9PMm0yOVlwTjhJeE5EazNPRE00TXc9PSIsCgkJCQkiZGlzcGxheV9Xbm9NZGZuLTRTVmhxcF9xQzVvLWxoT0paNm8xTkRJeE1UUTROdz09IgoJCQldLAoJCQkiVFRMIjogMTYyODk4NTYwMAoJCX0=",
    "options": {
                         "filterMode": "AndOr"
                             },
    "maxNumberOfAds": 3
}
```

#### Szűrt keresések

Ha az ügyfél szűri a keresést, kibővítheti a kontextust a következők megadásához: `productFilters`. Alább egy példa látható, ahol az ügyfél a "Szekrény" kategória és a "Gluténmentes" diétás korlátozás szerint szűr. Ugyanez az elv alkalmazható bármely kategóriára vagy tág egyezésű elhelyezésre is.

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "productFilters": [
     	 ["category:Cupboard"],["dietary:Gluten-free"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

#### Szűrés hely alapján

Ha szinkronizálja a helyszűrőket a katalógusában, kibővítheti a kontextust, hogy megadja az ügyfél üzletének helyét a `productFilters`:

```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",
    "dtmCookieId": "AAAF8xLBTA968AB6TOthAAAAAAE",
    "placement": "search",
    "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
    "searchTerm": "chocolate",
    "productFilters": [
     	 ["category:Cupboard"],["dietary:Gluten-free"],["location:Westenbury"]
    ],
    "options": {
   							 "filterMode": "AndOr"
 							 },
    "maxNumberOfAds": 3
}
```

## A termékhirdetés-válasz

Minden termékhirdetés-válasz ugyanazt a JSON-formátumot követi. A termékhirdetések a `ads` tömbben térnek vissza, az alábbi példához hasonlóan:

```json
{
    "ads": [
        {
            "id": "display_QqHaKRrKlFm1Wxr9c_DXJN4HSE3NzMzNjM2",
            "gtin": "7733636",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400902957Z",
            "position": 1
        },
        {
            "id": "display_NzsHqP0_iQedlo9VnrO2vqkwi_k3NzMzNjI4",
            "gtin": "7733628",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400908257Z",
            "position": 2
        },
        {
            "id": "display_xNeShqidaMuEqiJ0zNdt-Gzygjs3NzE0MTA3",
            "gtin": "7714107",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400912929Z",
            "position": 3
        },
        {
            "id": "display_3rGiryPskhQusmsf43nghbQwnqo3NzMzNjU3",
            "gtin": "7733657",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400917769Z",
            "position": 4
        }
    ],
    "banners": [],
    "products": [],
    "memoryToken":"85ykKVv-luDHMWLZx2d6xcPq6sF7CgkJCSJDb3VudGVyIjogIjIiLAoJCQkiQWRzIjogWwoJCQkJImRpc3BsYXlfV05VV0NwQkRKMUpKNm5wdVZSVExvOU40TUxzNE1UWTBOemt5TWc9PSIsCgkJCQkiZGlzcGxheV9MME5NUHRxNmdCcVFvREJOd3J0dE9UTGJoWk0xTVRFeU9UYzRPUT09IiwKCQkJCSJkaXNwbGF5XzlCcEpmdUpaWk9VXzgyaWpFM3VCczgxd3VVczRNekkwTnpVeE5nPT0iLAoJCQkJImRpc3BsYXlfcW1VU1p4TkpMQ0lqeWQwdTFJRDk0RmxVZ0pnNE16STBOelV4Tnc9PSIsCgkJCQkiZGlzcGxheV9oeHlFZktCUnRrNWlxMThMQzE1SDJHcEN3QjgxTVRFeU9UYzVNQT09IiwKCQkJCSJkaXNwbGF5X1NkcjFEcU5aUEFtcGh0Q1FIUndoYUxFT1B0RXhNamsxT1RJNE5BPT0iLAoJCQkJImRpc3BsYXlfeVlSai1qV2Ntc2ozNzhrel9PMm0yOVlwTjhJeE5EazNPRE00TXc9PSIsCgkJCQkiZGlzcGxheV9Xbm9NZGZuLTRTVmhxcF9xQzVvLWxoT0paNm8xTkRJeE1UUTROdz09IgoJCQldLAoJCQkiVFRMIjogMTYyODk4NTYwMAoJCX0="
}
```

A(z) `id` mező az Ön hirdetési azonosítója, amelyet a megjelenítési és kattintási jelentésekben használnak. A(z) `position` mező határozza meg a pozíciót a Epsilon Retail Media hasznos teherben. Kérjük, olvassa el a hivatkozást az egyes karaktersorozatokkal kapcsolatos további információkért.

{% hint style="info" %}
El kell olvasnia és figyelembe kell vennie a(z) `position` mezőt annak érdekében, hogy a Fix elhelyezések helyesen jelenjenek meg.
{% endhint %}

### Marketplace sellerId

Marketplace-eladók bevezetése esetén egy további `sellerId` értéket láthat hirdetésenként a válaszban. Ez csak akkor jelenik meg, ha a kiszolgált kampány tulajdonos csapatának be van állítva egy eladói azonosítója (seller ID) a felületen. Az alábbi példa egy sellerId-vel rendelkező és egy anélküli hirdetést mutat be.

```json
{
    "ads": [
        {
            "id": "display_QqHaKRrKlFm1Wxr9c_DXJN4HSE3NzMzNjM2",
            "gtin": "7733636",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400902957Z",
            "position": 1
        },
        {
            "id": "display_NzsHqP0_iQedlo9VnrO2vqkwi_k3NzMzNjI4",
            "gtin": "7733628",
            "sellerId": "2834-ascre-2wcr4",
            "discount": {
                "amount": 0,
                "minPrice": 0,
                "maxPerCustomer": 0
            },
            "expiry": "2021-05-12T04:17:50.400908257Z",
            "position": 2
        }
    ],
    "banners": [],
    "products": [],
    "memoryToken":"85ykKVv-luDHMWLZx2d6xcPq6sF7CgkJCSJDb3VudGVyIjogIjIiLAoJCQkiQWRzIjogWwoJCQkJImRpc3BsYXlfV05VV0NwQkRKMUpKNm5wdVZSVExvOU40TUxzNE1UWTBOemt5TWc9PSIsCgkJCQkiZGlzcGxheV9MME5NUHRxNmdCcVFvREJOd3J0dE9UTGJoWk0xTVRFeU9UYzRPUT09IiwKCQkJCSJkaXNwbGF5XzlCcEpmdUpaWk9VXzgyaWpFM3VCczgxd3VVczRNekkwTnpVeE5nPT0iLAoJCQkJImRpc3BsYXlfcW1VU1p4TkpMQ0lqeWQwdTFJRDk0RmxVZ0pnNE16STBOelV4Tnc9PSIsCgkJCQkiZGlzcGxheV9oeHlFZktCUnRrNWlxMThMQzE1SDJHcEN3QjgxTVRFeU9UYzVNQT09IiwKCQkJCSJkaXNwbGF5X1NkcjFEcU5aUEFtcGh0Q1FIUndoYUxFT1B0RXhNamsxT1RJNE5BPT0iLAoJCQkJImRpc3BsYXlfeVlSai1qV2Ntc2ozNzhrel9PMm0yOVlwTjhJeE5EazNPRE00TXc9PSIsCgkJCQkiZGlzcGxheV9Xbm9NZGZuLTRTVmhxcF9xQzVvLWxoT0paNm8xTkRJeE1UUTROdz09IgoJCQldLAoJCQkiVFRMIjogMTYyODk4NTYwMAoJCX0="
}
```

{% hint style="info" %}
Ha bizonytalan az ebben a szakaszban található karaktersorozatokkal kapcsolatban, kérjük, látogasson el a [Termékhirdetés-referencia](/retail-media-interface/integration/hu/references/product-ad-reference-1.md) oldalra.
{% endhint %}

## Digitális szolgáltatásokról szóló jogszabály

Epsilon Retail Media segíti a kiskereskedőket az Európai Unió (EU) [Digitális szolgáltatásokról szóló jogszabály](https://commission.europa.eu/strategy-and-policy/priorities-2019-2024/europe-fit-digital-age/digital-services-act_en) (DSA) kötelezettségeik teljesítésében. A DSA egységes szabályrendszert hoz létre az EU-ban, amely az online tartalmak szabályozását, az átlátható hirdetéseket és a dezinformáció elleni küzdelmet célozza. További információkért lásd: [Digitális szolgáltatásokról szóló jogszabály](/retail-media-interface/integration/hu/feature-integrations/digital-services-act.md).

### Példa hirdetéslekérésre

```
{
    "placement": "search-only",
    "catalogId": "zesty-fruits-catalog",
    "searchTerm": "lime",
    "maxNumberOfAds": 5,
    "options": {
   			    "filterMode": "AndOr",
    			"includeAdvertiserInfo": true,
     },
}
```

### Példa hirdetésválaszra

```
{
  "ads": [
    {
      "id": "display_QqHaKRrKlFm1Wxr9c_DXJN4HSE3NzMzNjM2",
      "gtin": "7733636",
      "discount": {
        "amount": 0,
        "minPrice": 0,
        "maxPerCustomer": 0
      },
      "expiry": "2021-05-12T04:17:50.400902957Z",
      "position": 1,
      "metadata": {
        "advertiserInfo": {
       "advertiser": "Bob's advertising agency",
          "onBehalfOf": "Brand company inc",
        }
      }
    },
    ....
  ],
  "banners": [],
  "products": [],
  "memoryToken": "85ykKVv-………"
}
```


---

# 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/hu/generating-ads/product-ads/requesting-product-ads-1.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.
