> ## Documentation Index
> Fetch the complete documentation index at: https://developers.criteo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# App Scopes

> OAuth scopes required per endpoint for the Marketing Solutions API.

Marketing Solutions API endpoints are protected by OAuth 2.0 scopes. Each endpoint requires one scope. Calling an endpoint without that scope results in `403 Forbidden` errors at runtime.

<Info>
  Scopes are granted at app creation time and cannot be widened afterwards. If your app is missing a scope, you need to create a new app with the correct scope set and obtain consent again.
</Info>

## Available scopes

| Scope                                          | What it covers                                                |
| ---------------------------------------------- | ------------------------------------------------------------- |
| `MarketingSolutions_Campaign_Read`             | Read access to campaigns, ad sets, and campaign configuration |
| `MarketingSolutions_Campaign_Manage`           | Create and manage campaigns and ad sets                       |
| `MarketingSolutions_Analytics_Read`            | Read access to analytics and performance reporting endpoints  |
| `MarketingSolutions_Audience_Read`             | Read access to audiences and audience segments                |
| `MarketingSolutions_Audience_Manage`           | Create and manage audiences and audience segments             |
| `MarketingSolutions_Creative_Read`             | Read access to creatives and creative assets                  |
| `MarketingSolutions_Creative_Manage`           | Create and manage creatives and creative assets               |
| `MarketingSolutions_Reco_Read`                 | Read access to product recommendation data                    |
| `MarketingSolutions_Reco_Manage`               | Create and manage product recommendations                     |
| `MarketingSolutions_Catalog_Read`              | Read access to catalog data                                   |
| `MarketingSolutions_Catalog_Manage`            | Create and manage catalog data                                |
| `MarketingSolutions_OnSiteRecommendation_Read` | Read access to on-site recommendation endpoints               |

***

## Endpoint scope requirements

### Advertiser

| Method | Endpoint                                             | Required scope |
| ------ | ---------------------------------------------------- | -------------- |
| `GET`  | `/experimental/advertisers/me`                       | `(none)`       |
| `GET`  | `/experimental/advertisers/{advertiser-id}/datasets` | `(none)`       |
| `GET`  | `/experimental/industries`                           | `(none)`       |

### Analytics

| Method | Endpoint                                                                                               | Required scope                      |
| ------ | ------------------------------------------------------------------------------------------------------ | ----------------------------------- |
| `POST` | `/experimental/categories/report`                                                                      | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/log-level/advertisers/{advertiser-id}/report`                                           | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/marketing-solutions/marketplace-performance-outcomes/stats/realtime-reports/export`     | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/marketing-solutions/marketplace-performance-outcomes/stats/realtime-reports/{reportId}` | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/marketing-solutions/marketplace-performance-outcomes/stats/report-jobs/{reportId}`      | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/marketing-solutions/report-jobs/{reportId}`                                             | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/marketing-solutions/report/products/export`                                             | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/marketing-solutions/report/products/{reportId}`                                         | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/placements/report`                                                                      | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/reports/async-audience-performance`                                                     | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/reports/async-statistics`                                                               | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/reports/creatives`                                                                      | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/reports/realtime`                                                                       | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/reports/top-products`                                                                   | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/reports/{report-id}/output`                                                             | `MarketingSolutions_Analytics_Read` |
| `GET`  | `/experimental/reports/{report-id}/status`                                                             | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/statistics/report`                                                                      | `MarketingSolutions_Analytics_Read` |
| `POST` | `/experimental/transactions/report`                                                                    | `MarketingSolutions_Analytics_Read` |

### Audience

| Method   | Endpoint                                                                                            | Required scope                       |
| -------- | --------------------------------------------------------------------------------------------------- | ------------------------------------ |
| `PATCH`  | `/experimental/marketing-solutions/audience-segments`                                               | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audience-segments/compute-sizes`                                 | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audience-segments/create`                                        | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audience-segments/delete`                                        | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audience-segments/estimate-size`                                 | `MarketingSolutions_Audience_Manage` |
| `GET`    | `/experimental/marketing-solutions/audience-segments/in-market-brands`                              | `MarketingSolutions_Audience_Read`   |
| `GET`    | `/experimental/marketing-solutions/audience-segments/in-market-interests`                           | `MarketingSolutions_Audience_Read`   |
| `POST`   | `/experimental/marketing-solutions/audience-segments/search`                                        | `MarketingSolutions_Audience_Read`   |
| `DELETE` | `/experimental/marketing-solutions/audience-segments/{audience-segment-id}/contact-list`            | `MarketingSolutions_Audience_Manage` |
| `PATCH`  | `/experimental/marketing-solutions/audience-segments/{audience-segment-id}/contact-list`            | `MarketingSolutions_Audience_Manage` |
| `GET`    | `/experimental/marketing-solutions/audience-segments/{audience-segment-id}/contact-list/statistics` | `MarketingSolutions_Audience_Read`   |
| `PATCH`  | `/experimental/marketing-solutions/audiences`                                                       | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audiences/compute-sizes`                                         | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audiences/create`                                                | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audiences/delete`                                                | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audiences/estimate-size`                                         | `MarketingSolutions_Audience_Manage` |
| `POST`   | `/experimental/marketing-solutions/audiences/search`                                                | `MarketingSolutions_Audience_Read`   |
| `PATCH`  | `/experimental/marketing-solutions/audiences/{audience-id}/contactlist-attributes`                  | `MarketingSolutions_Audience_Manage` |

### Campaign

| Method   | Endpoint                                                                                     | Required scope                       |
| -------- | -------------------------------------------------------------------------------------------- | ------------------------------------ |
| `DELETE` | `/experimental/advertisers/{advertiserId}/targeting/bundle-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/advertisers/{advertiserId}/targeting/bundle-rules`                            | `MarketingSolutions_Campaign_Read`   |
| `POST`   | `/experimental/advertisers/{advertiserId}/targeting/bundle-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `PUT`    | `/experimental/advertisers/{advertiserId}/targeting/bundle-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `DELETE` | `/experimental/advertisers/{advertiserId}/targeting/domain-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/advertisers/{advertiserId}/targeting/domain-rules`                            | `MarketingSolutions_Campaign_Read`   |
| `POST`   | `/experimental/advertisers/{advertiserId}/targeting/domain-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `PUT`    | `/experimental/advertisers/{advertiserId}/targeting/domain-rules`                            | `MarketingSolutions_Campaign_Manage` |
| `DELETE` | `/experimental/campaigns/{campaignId}/targeting/bundle-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/campaigns/{campaignId}/targeting/bundle-rules`                                | `MarketingSolutions_Campaign_Read`   |
| `POST`   | `/experimental/campaigns/{campaignId}/targeting/bundle-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `PUT`    | `/experimental/campaigns/{campaignId}/targeting/bundle-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `DELETE` | `/experimental/campaigns/{campaignId}/targeting/domain-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/campaigns/{campaignId}/targeting/domain-rules`                                | `MarketingSolutions_Campaign_Read`   |
| `POST`   | `/experimental/campaigns/{campaignId}/targeting/domain-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `PUT`    | `/experimental/campaigns/{campaignId}/targeting/domain-rules`                                | `MarketingSolutions_Campaign_Manage` |
| `PATCH`  | `/experimental/marketing-solutions/ad-sets`                                                  | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/ad-sets`                                                  | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/ad-sets/search`                                           | `MarketingSolutions_Campaign_Read`   |
| `POST`   | `/experimental/marketing-solutions/ad-sets/start`                                            | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/ad-sets/stop`                                             | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/marketing-solutions/ad-sets/targeting/supply-vendors`                         | `MarketingSolutions_Campaign_Read`   |
| `GET`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}`                                      | `MarketingSolutions_Campaign_Read`   |
| `PUT`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/audience`                             | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/category-bids`                        | `MarketingSolutions_Campaign_Read`   |
| `PATCH`  | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/category-bids`                        | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/display-multipliers`                  | `MarketingSolutions_Campaign_Read`   |
| `PATCH`  | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/display-multipliers`                  | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/deal-ids`                   | `MarketingSolutions_Campaign_Read`   |
| `PUT`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/deal-ids`                   | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/deal-ids/disable`           | `MarketingSolutions_Campaign_Manage` |
| `GET`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/video-positioning`          | `MarketingSolutions_Campaign_Read`   |
| `PUT`    | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/video-positioning`          | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/ad-sets/{ad-set-id}/targeting/video-positionings/disable` | `MarketingSolutions_Campaign_Manage` |
| `PATCH`  | `/experimental/marketing-solutions/campaigns`                                                | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/campaigns`                                                | `MarketingSolutions_Campaign_Manage` |
| `POST`   | `/experimental/marketing-solutions/campaigns/search`                                         | `MarketingSolutions_Campaign_Read`   |
| `GET`    | `/experimental/marketing-solutions/campaigns/{campaign-id}`                                  | `MarketingSolutions_Campaign_Read`   |

### Catalog

| Method | Endpoint                                                        | Required scope                      |
| ------ | --------------------------------------------------------------- | ----------------------------------- |
| `POST` | `/experimental/catalog/products/batch`                          | `MarketingSolutions_Catalog_Manage` |
| `GET`  | `/experimental/catalog/products/batch/report/{operation-token}` | `MarketingSolutions_Catalog_Read`   |
| `GET`  | `/experimental/catalog/stats/merchants/{merchant-id}`           | `MarketingSolutions_Catalog_Read`   |

### Creative

| Method   | Endpoint                                                            | Required scope                       |
| -------- | ------------------------------------------------------------------- | ------------------------------------ |
| `DELETE` | `/experimental/ads/{id}`                                            | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/ads/{id}`                                            | `MarketingSolutions_Creative_Read`   |
| `GET`    | `/experimental/advertisers/{advertiser-id}/ads`                     | `MarketingSolutions_Creative_Read`   |
| `POST`   | `/experimental/advertisers/{advertiser-id}/ads`                     | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/advertisers/{advertiser-id}/coupons`                 | `MarketingSolutions_Creative_Read`   |
| `POST`   | `/experimental/advertisers/{advertiser-id}/coupons`                 | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/advertisers/{advertiser-id}/coupons-supported-sizes` | `MarketingSolutions_Creative_Read`   |
| `DELETE` | `/experimental/advertisers/{advertiser-id}/coupons/{id}`            | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/advertisers/{advertiser-id}/coupons/{id}`            | `MarketingSolutions_Creative_Read`   |
| `PUT`    | `/experimental/advertisers/{advertiser-id}/coupons/{id}`            | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/advertisers/{advertiser-id}/coupons/{id}/preview`    | `MarketingSolutions_Creative_Read`   |
| `GET`    | `/experimental/advertisers/{advertiser-id}/creatives`               | `MarketingSolutions_Creative_Read`   |
| `POST`   | `/experimental/advertisers/{advertiser-id}/creatives`               | `MarketingSolutions_Creative_Manage` |
| `DELETE` | `/experimental/creatives/{id}`                                      | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/creatives/{id}`                                      | `MarketingSolutions_Creative_Read`   |
| `PUT`    | `/experimental/creatives/{id}`                                      | `MarketingSolutions_Creative_Manage` |
| `POST`   | `/experimental/creatives/{id}/preview`                              | `MarketingSolutions_Creative_Manage` |
| `DELETE` | `/experimental/marketing-solutions/ads/{ad-id}/audience-segment`    | `MarketingSolutions_Creative_Manage` |
| `GET`    | `/experimental/marketing-solutions/ads/{ad-id}/audience-segment`    | `MarketingSolutions_Creative_Read`   |
| `PUT`    | `/experimental/marketing-solutions/ads/{ad-id}/audience-segment`    | `MarketingSolutions_Creative_Manage` |

### Gateway

| Method | Endpoint                               | Required scope |
| ------ | -------------------------------------- | -------------- |
| `GET`  | `/experimental/marketing-solutions/me` | `(none)`       |

### OnSiteRecommendation

| Method | Endpoint                                             | Required scope                                 |
| ------ | ---------------------------------------------------- | ---------------------------------------------- |
| `POST` | `/experimental/recommendation/search`                | `MarketingSolutions_OnSiteRecommendation_Read` |
| `POST` | `/experimental/recommendation/search-conversational` | `MarketingSolutions_OnSiteRecommendation_Read` |

### Reco

| Method   | Endpoint                                                                       | Required scope                   |
| -------- | ------------------------------------------------------------------------------ | -------------------------------- |
| `DELETE` | `/experimental/ads/{ad-id}/product-filter`                                     | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/ads/{ad-id}/product-filter`                                     | `MarketingSolutions_Reco_Read`   |
| `POST`   | `/experimental/ads/{ad-id}/product-filter`                                     | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/marketing-solutions/ads/{ad-id}/product-boost`                  | `MarketingSolutions_Reco_Read`   |
| `DELETE` | `/experimental/marketing-solutions/ads/{ad-id}/product-boost/{product-set-id}` | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/marketing-solutions/ads/{ad-id}/product-boost/{product-set-id}` | `MarketingSolutions_Reco_Read`   |
| `POST`   | `/experimental/marketing-solutions/ads/{ad-id}/product-boost/{product-set-id}` | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/marketing-solutions/dataset/{dataset-id}/product-boost`         | `MarketingSolutions_Reco_Read`   |
| `POST`   | `/experimental/product-sets`                                                   | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/product-sets/dataset/{dataset-id}`                              | `MarketingSolutions_Reco_Read`   |
| `DELETE` | `/experimental/product-sets/{product-set-id}`                                  | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/product-sets/{product-set-id}`                                  | `MarketingSolutions_Reco_Read`   |
| `PATCH`  | `/experimental/product-sets/{product-set-id}`                                  | `MarketingSolutions_Reco_Manage` |
| `GET`    | `/experimental/product-sets/{product-set-id}/product-filters`                  | `MarketingSolutions_Reco_Read`   |
