> 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/it/campaign-management-api/creativeassets/uploadfile.md).

# Carica un file di campagna

Utilizza questo endpoint per caricare diversi tipi di file della campagna. È possibile caricare immagini per i banner e per il banner X nei formati jpeg, jpg, png, gif, PDF o SVG. È inoltre possibile caricare file PDF standard per i contenuti e logo display standard per i contenuti. Assicurati che i file dei logo siano in formato jpeg, jpg o png. **Nuova versione disponibile**: [Carica un file di campagna - v4](/retail-media-interface/partner/it/campaign-management-api/creativeassets/uploadfile-2.md) è ora disponibile con funzionalità avanzate.

{% hint style="info" %}
Linee guida per il caricamento dei file

* **Limite di dimensione del file**: la dimensione massima del file supportata è 4 MB.
* **Tipi di file banner supportati**: l'API accetta attualmente i seguenti formati di file: PNG, JPEG e JPG.
* **Tipi di file banner X supportati**: l'API accetta attualmente i seguenti formati di file: PNG, JPEG, JPG, SVG e GIF.
* **Tipi di file logo display standard per i contenuti supportati**: l'API accetta attualmente i seguenti formati di file: JPEG, JPG e PNG.
* **Dimensioni dell'immagine**: le dimensioni dell'immagine non vengono attualmente verificate rispetto allo standard dei contenuti del retailer. Assicurati che soddisfino gli standard dei contenuti definiti. Questo miglioramento è previsto per le prossime release.
* **Gestione di più file**: se vengono inviati più file in una singola richiesta, verrà elaborato solo il primo file, mentre i file rimanenti verranno ignorati.
* Banner\*\*: per il `Campaign_File_Type_Banner_Image`, è obbligatorio fornire un ID slot e un ID standard dei contenuti.
* \*\*Banner X: per il `Campaign_File_Type_Banner_X_Image`, fornire `imageSlotType` è obbligatorio.
  {% endhint %}

{% hint style="info" %}
URL di caricamento dei file

Quando carichi il file del tuo asset del materiale creativo, assicurati di fornire un percorso assoluto completo del file. Se stai copiando il codice di test di esempio dalla documentazione per usarlo nel tuo ambiente, assicurati di aggiornare il percorso del file prima di eseguire il comando. Ad esempio:

curl --request POST --url 'https\://\<your-url>.test.com/v3/campaign-file-upload?contentStandardId=test1\&imageSlotType=IMAGE\_SLOT\_TYPE\_UNSPECIFIED\&campaignFileType=CAMPAIGN\_FILE\_TYPE\_BANNER\_IMAGE' --header 'accept: application/json' --header 'Authorization: Bearer \<your-token>' --header 'content-type: multipart/form-data' --form "file=**@/Users/test/downloads/apple.png**"
{% endhint %}

## Upload a campaign file

> Use this endpoint to upload different types of campaign files. You can upload images for banners and banner X in jpeg, jpg, png, gif, PDF, or SVG formats. You may also upload content standard PDF files and content standard display logos. Ensure that logo files are in jpeg, jpg, or png format.&#x20;

```json
{"openapi":"3.0.0","info":{"title":"File Upload API","version":"a21"},"servers":[{"description":"Campaign server","url":"https://campaign.citrusad.com/v3"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"scheme":"bearer","type":"http"}},"schemas":{"campaignfileupload_body":{"properties":{"file":{"description":"The campaign file to upload, which can include an image, content standard display logo, or content standard PDF for banners and banner X. \n  - Supported image formats are jpeg, jpg, png, gif, PDF, and SVG. \n  - Display logos must be in jpeg, jpg, or png format.","format":"binary","type":"string"}},"required":["file"],"type":"object"},"v3UploadFileResponse":{"properties":{"fileId":{"description":"The unique identifier of the uploaded file.","type":"string"},"fileUrl":{"description":"The URL to access the file uploaded.","type":"string"}},"type":"object"},"rpcStatus":{"properties":{"code":{"type":"integer"},"details":{"items":{"type":"object"},"type":"array"},"message":{"type":"string"}},"type":"object"}}},"paths":{"/campaign-file-upload":{"post":{"description":"Use this endpoint to upload different types of campaign files. You can upload images for banners and banner X in jpeg, jpg, png, gif, PDF, or SVG formats. You may also upload content standard PDF files and content standard display logos. Ensure that logo files are in jpeg, jpg, or png format. ","operationId":"uploadFile","parameters":[{"description":"The unique identifier for the content standard, used to validate the image based on its metadata.","in":"query","name":"contentStandardId","required":false,"schema":{"type":"string"}},{"description":"Specifies the unique slot within the content standard where the image will be placed. It ensures the image adheres to predefined slot requirements and validations. Examples include left_ribbon, top_banner, or side_panel.","in":"query","name":"slotId","required":false,"schema":{"type":"string"}},{"description":"The unique identifier of the campaign's team.","in":"query","name":"teamId","required":true,"schema":{"type":"string"}},{"description":"The unique identifier for a retailer-managed campaign's team. As a retailer, you can upload campaign file for the supplier team by specifying the managerTeamId. Ensure that API requests are authenticated with the retailer's bearer token","in":"query","name":"managerTeamId","schema":{"type":"string"}},{"description":"Specifies the type of image slot, which determines the role and placement of the image within the campaign.","in":"query","name":"imageSlotType","required":false,"schema":{"enum":["IMAGE_SLOT_TYPE_PRIMARY_BACKGROUND","IMAGE_SLOT_TYPE_SECONDARY_BACKGROUND","IMAGE_SLOT_TYPE_PRIMARY_HERO","IMAGE_SLOT_TYPE_SECONDARY_HERO"],"type":"string"}},{"description":"Specifies the  campaign file type: Supported types include: -\n  - CAMPAIGN_FILE_TYPE_BANNER_IMAGE: Image for your banner campaign. -\n  - CAMPAIGN_FILE_TYPE_BANNER_X_IMAGE: Image for your banner X campaign. -\n  - CAMPAIGN_FILE_TYPE_BANNER_X_CONTENT_STANDARD_DISPLAY_LOGO: Display logo for your banner X content standard file. \n  - CAMPAIGN_FILE_TYPE_BANNER_CONTENT_STANDARD_DISPLAY_LOGO: Display logo for\nyour banner content standard file. -\n  - CAMPAIGN_FILE_TYPE_BANNER_X_CONTENT_STANDARD_PDF: Content standard PDF for\nyour banner X campaign. \n  - CAMPAIGN_FILE_TYPE_BANNER_CONTENT_STANDARD_PDF:\nContent standard PDF for your banner campaign. ","in":"query","name":"campaignFileType","required":true,"schema":{"enum":["CAMPAIGN_FILE_TYPE_BANNER_IMAGE","CAMPAIGN_FILE_TYPE_BANNER_X_IMAGE","CAMPAIGN_FILE_TYPE_BANNER_X_CONTENT_STANDARD_DISPLAY_LOGO","CAMPAIGN_FILE_TYPE_BANNER_X_CONTENT_STANDARD_PDF_FILE","CAMPAIGN_FILE_TYPE_BANNER_CONTENT_STANDARD_DISPLAY_LOGO","CAMPAIGN_FILE_TYPE_BANNER_CONTENT_STANDARD_PDF_FILE"],"type":"string"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/campaignfileupload_body"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v3UploadFileResponse"}}},"description":"File uploaded successfully"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpcStatus"}}},"description":"There was a problem with input."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpcStatus"}}},"description":"Invalid token error."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpcStatus"}}},"description":"Invalid token error."},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/rpcStatus"}}},"description":"An unexpected error response."}},"summary":"Upload a campaign file"}}}}
```


---

# 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/it/campaign-management-api/creativeassets/uploadfile.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.
