Upload Product Media
POST
Uploads a file (product image, extra image, or digital file) and returns a media /products/uploadid. Pass that id to Create Product / Update Product as image.file.response.id (or inside product_files[] / extra_images[]).
Authentication
Headers
| Header | Value | Required |
|---|---|---|
Authorization | Bearer YOUR_API_TOKEN | Yes |
Content-Type | multipart/form-data | Yes |
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
type | string | No | image (main, default), extra_image, or file (digital file) |
Body (multipart/form-data)
| Field | Type | Required | Description |
|---|---|---|---|
file | file | Yes | For image/extra_image: jpg, jpeg, png, gif (max 10 MB). For file: jpg, mp4, jpeg, png, gif, pdf, zip, docx, txt (max ~117 MB) |
Example Request
Success Response
200 OK
Where to use the returned id
Map each uploadtype to the create/update field that references the returned data.id:
Upload type | Use in create/update as |
|---|---|
image | image.file.response.id (main product image) |
extra_image | extra_images[].file.response.id (gallery) |
file | product_files[].file.response.id (digital file — product/license types) |
Error Responses
| Code | Description |
|---|---|
401 | Unauthorized — invalid or missing token |
403 | Plan does not include the API feature |
422 | Invalid file type or file too large |

