> 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/sv/data-api/catalog-products-2/syncing-products-via-api.md).

# Synkronisera produkter via API

## Standardmässig produktsynkronisering

När din katalog har skapats kan du synkronisera produkter till den. Exemplet nedan beskriver en standardkontext för att synkronisera produkter:

```http
POST $BASE_URL/v1/catalog-products?teamId=<YOUR_TEAM_ID> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "catalogProducts": [
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": "19.99",
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg","name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty","category:Grocery","brand:Covergirl","Special_Flag:0"
            ]
        }
    ]
}
```

Om det lyckas returneras följande objekt:

```json
{
    "catalogProducts": [
        {
            "teamId": "e8158f9b-bbb9-49fb-93fe-3ad481ca8450",
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": 19.99,
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg",
                 "name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty",
              	 "category:Grocery",
              	 "brand:Covergirl",
              	 "Special_Flag:0"
            ],
            "groups": [],
            "profit": null
        }
    ]
}
```

I detta sammanhang kan tomma värden eller null-värden för grupper och vinst ignoreras.

## Synkronisera platsinformation

Du kan också synkronisera filter för olika platser där dina produkter finns i butik. Detta är användbart för optimering av din produktinformation på butiks-/platsnivå.

```http
POST $BASE_URL/v1/catalog-products?teamId=<YOUR_TEAM_ID> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "catalogProducts": [
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": "19.99",
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg","name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty","category:Grocery","brand:Covergirl","Special_Flag:0","location:123","location:ABC"
            ]
        }
    ]
}
```

Om det lyckas returneras följande objekt:

```json
{
    "catalogProducts": [
        {
            "teamId": "e8158f9b-bbb9-49fb-93fe-3ad481ca8450",
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": 19.99,
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg",
                 "name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty",
              	 "category:Grocery",
              	 "brand:Covergirl",
              	 "Special_Flag:0",
              	 "location:123",
              	 "location:ABC"
            ],
            "groups": [],
            "profit": null
        }
    ]
}
```

## Synkronisera HFSS-information

I din produktsynkronisering behöver du skicka ett filter för `hfss:true` or `hfss:false`. Detta gör det möjligt för Epsilon Retail Media att filtrera vårt gränssnitt på lämpligt sätt.

```json
POST $BASE_URL/v1/catalog-products?teamId=<YOUR_TEAM_ID> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "catalogProducts": [
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": "19.99",
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg","name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "hfss:true","category:Health&Beauty","category:Grocery","brand:Covergirl","Special_Flag:0","location:123","location:ABC"
            ]
        }
    ]
}
```

{% hint style="info" %}
Behöver du lära dig mer om HFSS?

Läs den brittiska regeringens publikation här: <https://www.gov.uk/government/publications/restricting-promotions-of-products-high-in-fat-sugar-or-salt-by-location-and-by-volume-price/restricting-promotions-of-products-high-in-fat-sugar-or-salt-by-location-and-by-volume-price-implementation-guidance>
{% endhint %}

## Synkronisera flera produkter

Om du synkroniserar flera produkter kan du sekvensera upp till 100 per begäran.

Ett exempel på kontext för att synkronisera två produkter beskrivs nedan:

```http
POST $BASE_URL/v1/catalog-products?teamId=<YOUR_TEAM_ID> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "catalogProducts": [
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 50,
            "price": "19.99",
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg",
                 "name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty",
              	 "category:Grocery",
              	 "brand:Covergirl",
              	 "Special_Flag:0"
            ],
            "profit": "1.50"
        },
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965738",
            "inventory": 26,
            "price": "8.50",
            "tags": [
                "imageurl:https://your.image.host.com/image.jpg",
                "name:Kelloggs Froot Loops Breakfast Cereal 500g"
            ],
            "filters": [
                "brand:Kelloggs",
                "category:Pantry",
                "category:BreakfastFoods",
                "category:Cereals",
                "Special_Flag:0"
            ],
            "profit": "0.50"
        }
    ]
}
```

Om det lyckas returneras följande objekt:

```json
{
    "catalogProducts": [
        {
            "gtin": "23556578965543",
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "price": 19.99,
            "teamId": "e8158f9b-bbb9-49fb-93fe-3ad481ca8450",
            "groups": [],
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg",
                 "name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty",
              	 "category:Grocery",
              	 "brand:Covergirl",
              	 "Special_Flag:0"
            ],
            "inventory": 50,
            "profit": 1.50,
            "tags": [
                "Natural",
                "Lasting",
                "Dry Skin",
                "Beige"
            ]
        },
        {
            "gtin": "23556578965736688",
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "price": 8.50,
            "teamId": "e8158f9b-bbb9-49fb-93fe-3ad481ca8450",
            "groups": [],
            "tags": [
                "imageurl:https://your.image.host.com/image.jpg",
                "name:Kelloggs Froot Loops Breakfast Cereal 500g"
            ],
            "filters": [
                "brand:Kelloggs",
                "category:Pantry",
                "category:BreakfastFoods",
                "category:Cereals",
                "Special_Flag:0"
            ],
            "inventory": 26,
            "profit": 0.50,
            "tags": [
                "Pantry",
                "BreakfastFoods",
                "Cereals",
                "Kelloggs"
            ]
        }
    ]
}
```

## Uppdatera produktlager

För att uppdatera en produkts lager måste du synkronisera om produkten med Epsilon Retail Media. I din synkronisering markerar du produktens lager som `0`. Ett exempel beskrivs nedan:

```http
POST $BASE_URL/v1/catalog-products?teamId=<YOUR_TEAM_ID> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
{
    "catalogProducts": [
        {
            "catalogId": "628dbe95-2ec9-4e07-881d-3e9f92ab2e0b",
            "gtin": "23556578965543",
            "inventory": 0,
            "price": "19.99",
            "tags": [
                 "imageurl:https://your.image.host.com/image.jpg","name:Covergirl Clean 120 Creamy Natural Liquid Foundation30mL"
            ],
            "filters": [
                 "category:Health&Beauty","category:Grocery","brand:Covergirl","Special_Flag:0"
            ]
        }
    ]
}
```

<br>

## Uppdatera produktbilder

Epsilon cachar bild-URL:er för att säkerställa konsekvent prestanda och minska anropen till din bildserver. Om du uppdaterar en bild utan att ändra dess URL måste du explcit utlösa en uppdatering i Epsilon. För att göra detta:

* Ta bort befintlig image\_url från produkten.
* Skicka om samma image\_url när uppdateringen är klar.

Alternativt, om din bildserver stöder det, kan du tvinga fram en uppdatering genom att lägga till en frågesträng (till exempel en version eller tidsstämpel) till den befintliga URL:en. Detta kommer att göra att Epsilon laddar om bilden..

{% hint style="info" %}
Bilder används endast i användargränssnittet

Produktbilder skickas inte i annonssvar. Alla bilduppdateringar påverkar endast hur produkten visas i Epsilon UI medan cachen uppdateras.
{% endhint %}

## Hämta produkter

När du har en produkt i din katalog vill du kanske hämta den aktuella informationen om den vid ett senare tillfälle.

För att göra detta kan du göra en **GET** HTTP-begäran med url-formen **`v1/catalog-products/catalogId/<PRODUCT_CODE>`**. Slutpunkten kan ta emot en produktkod per begäran. En exempelbegäran beskrivs nedan:

```http
GET $BASE_URL/v1/catalog-products/<CATALOG_ID>/<PRODUCT_CODE> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
```

Du bör få den aktuella informationen som lagts in i Epsilon Retail Media -systemet för produktkoden. Ett exempel visas nedan

{% hint style="info" %}
Att skicka en produktuppdatering sker inte omedelbart i Epsilon Retail Media -systemet, det kan ta en kort stund för Epsilon Retail Media att helt läsa in en produktuppdatering. Var inte orolig om en produkts information inte uppdateras omedelbart när du hämtar information.
{% endhint %}

## Ta bort produkter

För att ta bort en produkt från din katalog skickar du en DELETE HTTP-begäran i följande format när produkten inte längre behövs.

### Anropsparametrar

Slutpunkten accepterar en produktkod per begäran, vanligtvis ditt GTIN-ID.

```http
DELETE $BASE_URL/v1/catalog-products/<CATALOG_ID>/<PRODUCT_CODE> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
```

### Ta bort produkter med säljar-ID

Om produkten innehåller ett säljar-ID anger du det som en frågeparameter när du tar bort produkten:

```http
DELETE $BASE_URL/v1/catalog-products/<CATALOG_ID>/<PRODUCT_CODE>?sellerId=abc123> HTTP/1.1
accept: application/json
content-type: application/json
Authorization: Basic <API_KEY>
```

### Behandlingstid

Borttagning av produkter kan ta mellan 30 minuter och en timme att behandla.

{% hint style="info" %}
Viktigt

Om en produkt är slut i lager ställer du in dess lager till 0 i stället för att ta bort den. Om du tar bort en produkt försvinner möjligheten för annonsörer att välja den i Epsilon Retail Media -plattformen, även när den finns i lager igen.
{% endhint %}

### Felhantering

Om du får felet "product not found" betyder det troligen att produkten inte har lagts in i Epsilon Retail Media -systemet.


---

# 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/sv/data-api/catalog-products-2/syncing-products-via-api.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.
