---
title: Upload Asset
framework: Apple Ads Platform API
role: symbol
role_heading: Web Service Endpoint
platforms: [apple ads platform api 1.0+]
path: apple-ads-platform-api/upload-asset
---

# Upload Asset

Upload a binary image file to create a new asset.

## URL

POST https://api.ads.apple.com/v1/assets/upload

## Header Parameters

X-Ap-Context:

## Response Codes

200 OK: 400 Bad Request: 401 Unauthorized: 403 Forbidden: 404 Not Found: 429 Too Many Requests: 500 Internal Server Error:

## Discussion

Discussion This endpoint uploads a raw image file and associates it with a promoted object (Brand). The multipart request body must include the binary image file alongside promotedObjectId and promotedObjectType fields that identify the brand the asset belongs to. This endpoint currently supports Business Brand assets only. promotedObjectType accepts only BUSINESS_BRAND, so uploaded assets serve ads on Apple Maps. App Store app assets aren’t supported here: App Store creatives use CUSTOM_PRODUCT_PAGE or DEFAULT_PRODUCT_PAGE, which reference an app’s existing App Store product page instead of an uploaded image. After upload, the asset begins processing. Poll using Get Asset until the eligibility.status indicates the asset is ready before referencing it in a creative. The returned asset has assetType: IMAGE and a providerAssetId that the provider system assigns. Request Body Multipart form data (multipart/form-data) containing the binary image file and promoted-object metadata.  |  |  |   |  |  |   |  |  |   |  |  |  Post-Upload Workflow Poll GET /v1/assets/{id} (Get Asset) until eligibility.status indicates the asset is ready to use. Reference the asset UUID in a creativeAssets array when creating a LOCAL_ADS_SEARCH_CREATIVE. Payload Examples

## See Also

- [Query Assets](apple-ads-platform-api/query-assets.md)
- [Get Asset](apple-ads-platform-api/get-asset-by-id.md)
- [Delete Asset](apple-ads-platform-api/delete-asset-by-id.md)
