> 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/partner/cs/bulk-operation-api/bulk-operation-overview.md).

# Přehled hromadných operací

## Hromadné kampaně

API pro hromadné akce jsou navrženy tak, aby uživatelům, jako jsou AdOps, Managed Services a dodavatelé, pomohly provádět rozsáhlé operace aktualizace a vytváření **kampaní**, **peněženek** a **týmů** v rámci jednoho volání API. Tento přístup k asynchronnímu API zefektivňuje pracovní postupy, snižuje manuální úsilí a zvyšuje operativní efektivitu.

Tato API jsou zvláště cenná pro velkoobjemové scénáře, jako je onboarding, sezónní spuštění nebo rozsáhlé úpravy kampaní, kde by provádění jednotlivých volání API bylo časově náročné a náchylné k chybám.

### Hlavní výhody

* Efektivita: Snižuje počet volání API a odstraňuje zbytečné manuální kroky tím, že umožňuje více operací v jediném požadavku.
* Výkon: Hromadná API minimalizují režii zpáteční cesty HTTP. Namísto odesílání mnoha jednotlivých požadavků (například 100 samostatných volání) jediný hromadný požadavek snižuje zatížení sítě a snižuje pravděpodobnost dosažení limitů počtu požadavků.
* Idempotence: Zajišťuje, že každá operace v hromadném požadavku je idempotentní, což zabraňuje nechtěným vedlejším účinkům při opakovaných pokusech (například při spuštění akcemi v uživatelském rozhraní).
* Granulární bezpečnostní a autorizační model: Aplikuje správné řízení přístupu pro každou operaci a typ entity v rámci hromadného datového obsahu, což zajišťuje bezpečné zpracování všech akcí.
* Audit a protokolování: Udržuje řádné protokolování a auditní stopy pro všechny operace v rámci hromadného požadavku, což zajišťuje sledovatelnost.
* Možnost náhledu: Některé implementace podporují náhled změn před jejich aplikací, což pomáhá zachytit chyby včas.
* Transakční integrita: Hromadné API umožňuje klientům seskupit skupinu akcí do jediného volání API, což může zajistit, že:
  * Každá entita v hromadném požadavku je nezávisle ověřena.
  * Jsou vráceny detailní chybové zprávy k identifikaci toho, které entity selhaly a proč.
  * Celá operace není zablokována, pokud jedna entita selže.

### Jak používat API pro hromadné kampaně

#### 1. Odeslání hromadného požadavku

Odešlete požadavek na vytvoření, úpravu nebo schválení více kampaní najednou.

* Pro vytváření: `/v3/campaigns/bulk/create`
* Pro úpravy: `/v3/campaigns/bulk/update`
* Pro schvalování: `/v3/campaigns/bulk/approve`

Jakmile požadavek odešlete, systém vám poskytne hromadné ID a stav jako `submitted`. Samotné zpracování probíhá na pozadí.

**Příklad (Hromadná aktualizace kampaní):**

```http
PATCH /v3/campaigns/bulk/update
{
  "campaigns": [
    {
      "campaign": {
        "id": "campaign_123",
        "name": "Updated Summer Sale Campaign",
        "startTime": "2025-08-01T00:00:00Z",
        "endTime": "2025-08-31T23:59:59Z",
        "campaignState": "CAMPAIGN_STATE_ACTIVE",
        "strategy": {
          "auction": {
            "maxBid": "6.5"
          }
        }
      },
      "mask": "name,startTime,endTime,campaignState,strategy.auction.maxBid",
      "campaignType": "CAMPAIGN_TYPE_BANNER"
    },
    {
      "campaign": {
        "id": "campaign_456",
        "name": "Holiday Promotion",
        "campaignState": "CAMPAIGN_STATE_PAUSED",
        "strategy": {
          "auction": {
            "maxBid": "5.0"
          }
        }
      },
      "mask": "name,campaignState,strategy.auction.maxBid",
      "campaignType": "CAMPAIGN_TYPE_BANNER"
    }
  ]
}
```

Odpověď:

```json
{
  "bulkId": "c40f4f98-9b6b-11ee-b9d1-0242ac120002",
  "status": "BULK_OPERATION_SUBMITTED",
  "message": "Bulk campaign update request received and is being processed."
}
```

#### 2. Kontrola stavu

Použijte hromadné ID ke kontrole průběhu na: `/v3/campaigns/bulk/status/{bulkId}`

Uvidíte:

* Které kampaně uspěly nebo selhaly, s podrobnostmi pro každou z nich.
* Chybové zprávy (if any).

**Příklad:**

```http
GET /v3/campaigns/bulk/status/c40f4f98-9b6b-11ee-b9d1-0242ac120002
```

{% hint style="info" %}
Poznámky:

* API jsou asynchronní: odešlete úlohu a dotazujete se na výsledky.
* Každá entita v hromadném požadavku je ověřována nezávisle; chyby jsou hlášeny pro každou položku zvlášť.
* Hromadná API jsou k dispozici pro kampaně, peněženky a týmy, s podobnými vzory pro každý prostředek.
  {% endhint %}

### Matice přístupu k hromadným operacím

| Operace                                                                                                                                 | Metoda | Kdo může vytvořit                               | Kdo může zobrazit stav                                |
| --------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----------------------------------------------- | ----------------------------------------------------- |
| Kampaně                                                                                                                                 |        |                                                 |                                                       |
| [Create campaigns in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkcampaignoperations/bulkcreatecampaign.md)          | POST   | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Update campaigns in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkcampaignoperations/bulkupdatecampaign-1.md)        | PATCH  | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Update campaign approval state](/retail-media-interface/partner/cs/bulk-operation-api/bulkcampaignoperations/bulkcampaignapproval.md)  | POST   | Admin, Primary Retailer                         | Admin, Primary Retailer                               |
| [Retrieve bulk operation status](/retail-media-interface/partner/cs/bulk-operation-api/bulkcampaignoperations/bulkcampaignstatus-1.md)  | GET    | —                                               | Admin, Primary Retailer, Creator (including Supplier) |
| Peněženka                                                                                                                               |        |                                                 |                                                       |
| [Create wallets in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations/bulkcreatewallet.md)                | POST   | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Update wallets in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations/bulkupdatewallet.md)                | PATCH  | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Retrieve bulk wallet operation status](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations/bulkwalletstatus.md) | GET    | —                                               | Admin, Primary Retailer, Creator (including Supplier) |
| Tým                                                                                                                                     |        |                                                 |                                                       |
| [Create teams in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations-1/bulkcreateteam.md)                  | POST   | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Update teams in bulk](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations-1/bulkupdateteam.md)                  | PATCH  | Admin, Primary Retailer, Supplier, General User | Admin, Primary Retailer, Creator (including Supplier) |
| [Retrieve bulk team operation status](/retail-media-interface/partner/cs/bulk-operation-api/bulkwalletoperations-1/bulkteamstatus.md)   | GET    | —                                               | Admin, Primary Retailer, Creator (including Supplier) |

{% hint style="info" %}
Hromadné vytvoření a aktualizace týmu: Když se dodavatel pokusí aktualizovat záznamy hromadně, API povoluje maximálně 50 záznamů na požadavek. Pokud požadavek obsahuje více než 50 záznamů, API vrátí chybovou zprávu indikující, že limit byl překročen.
{% endhint %}


---

# 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/partner/cs/bulk-operation-api/bulk-operation-overview.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.
