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

# キャンペーンファイルのアップロード

このエンドポイントを使用して、さまざまなタイプのキャンペーンファイルをアップロードします。バナーおよびバナー X 用の画像を jpeg、jpg、png、gif、PDF、または SVG 形式でアップロードできます。また、コンテンツ標準の PDF ファイルやコンテンツ標準のディスプレイロゴもアップロードできます。ロゴファイルは jpeg、jpg、または png 形式であることを確認してください。**新バージョンが利用可能**: [キャンペーンファイルをアップロードする - v4](/retail-media-interface/partner/ja/campaign-management-api/creativeassets/uploadfile-2.md) が、拡張された機能とともに利用可能になりました。

{% hint style="info" %}
ファイルアップロードのガイドライン

* **ファイルサイズ制限**: サポートされている最大ファイルサイズは 4 MB です。
* **サポートされているバナーファイル形式**: API は現在、次のファイル形式を受け付けています: PNG、JPEG、JPG。
* **サポートされているバナー X ファイル形式**: API は現在、次のファイル形式を受け付けています: PNG、JPEG、JPG、SVG、GIF。
* **サポートされているコンテンツ標準ディスプレイロゴのファイル形式**: API は現在、次のファイル形式を受け付けています: JPEG、JPG、PNG。
* **画像サイズ**: 画像サイズは現在、リテールメディアのコンテンツ標準に対して検証されません。定義されたコンテンツ標準を満たしていることを確認してください。この機能強化は今後のリリースで計画されています。
* **複数ファイルの取り扱い**: 1 つのリクエストで複数のファイルが送信された場合、最初のファイルのみが処理され、残りのファイルは無視されます。
* バナー\*\*: `Campaign_File_Type_Banner_Image`の場合、スロット ID とコンテンツ標準 ID の指定が必須です。
* \*\*Banner X: `Campaign_File_Type_Banner_X_Image`の場合、 `imageSlotType` の指定が必須です。
  {% endhint %}

{% hint style="info" %}
ファイルアップロード URL

クリエイティブアセットファイルをアップロードする際は、ファイルへの完全な絶対パスを指定していることを確認してください。ドキュメントからサンプルのテストコードをコピーして環境で使用する場合は、コマンドを実行する前にファイルの位置を更新してください。例:

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/ja/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.
