Product Images
Manage images for your products. Each product supports up to 10 images in JPEG, PNG, or GIF format (max 10MB each).
Images are served via CDN for fast global delivery. Use the reorder endpoint to control display priority.
POST
/products/{id}/images Upload a product image
Uploads an image to a product. Supports JPEG, PNG, and GIF (max 10MB). Maximum 10 images per product.
Path parameters
NameTypeDescription
idrequired
stringProduct ID.
e.g.
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"Header parameters
NameTypeDescription
EPD-Version
stringAPI version override (format `YYYY-MM-DD`). If omitted, your account's pinned version or the latest version is used.
e.g.
"2026-02-11"X-EPD-Idempotency-Keyrequired
string (uuid)UUID v4 idempotency key. Same key with same request returns cached response. Keys expire after 24 hours.
e.g.
"550e8400-e29b-41d4-a716-446655440000"Responses
201 Image uploaded.
FieldTypeDescription
idrequired
stringe.g.
"6ba7b816-9dad-11d1-80b4-00c04fd430c8"product_id
stringe.g.
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"urlrequired
string (uri)e.g.
"https://cdn.example.com/images/product.jpg"orderrequired
integerDisplay order (0-based).
e.g.
0created_atrequired
string (date-time)e.g.
"2024-01-15T10:30:00.000Z" 400 Bad Request — The request was invalid or cannot be served.
FieldTypeDescription
errorrequired
objecttyperequired
enumThe type of error.
invalid_request_errorauthentication_errorauthorization_errorrate_limit_erroridempotency_errorprocessing_errorwebhook_errorcoderequired
stringA short string identifying the specific error.
e.g.
"validation_error"messagerequired
stringA human-readable message providing details about the error.
e.g.
"Request validation failed"paramnullable
stringThe parameter that caused the error, if applicable.
e.g.
"email"request_id
stringUnique request identifier for debugging.
e.g.
"req_a1b2c3d4e5f67890abcdef0123456789"field_errors
array[object]Detailed field-level errors for validation failures.
404 Not Found — The requested resource doesn't exist.
FieldTypeDescription
errorrequired
objecttyperequired
enumThe type of error.
invalid_request_errorauthentication_errorauthorization_errorrate_limit_erroridempotency_errorprocessing_errorwebhook_errorcoderequired
stringA short string identifying the specific error.
e.g.
"validation_error"messagerequired
stringA human-readable message providing details about the error.
e.g.
"Request validation failed"paramnullable
stringThe parameter that caused the error, if applicable.
e.g.
"email"request_id
stringUnique request identifier for debugging.
e.g.
"req_a1b2c3d4e5f67890abcdef0123456789"field_errors
array[object]Detailed field-level errors for validation failures.
DELETE
/products/{id}/images/{imageId} Delete a product image
Path parameters
NameTypeDescription
idrequired
stringProduct ID.
e.g.
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"imageIdrequired
stringImage ID.
e.g.
"6ba7b816-9dad-11d1-80b4-00c04fd430d0"Header parameters
NameTypeDescription
EPD-Version
stringAPI version override (format `YYYY-MM-DD`). If omitted, your account's pinned version or the latest version is used.
e.g.
"2026-02-11"Responses
200 Image deleted.
FieldTypeDescription
idrequired
stringe.g.
"6ba7b816-9dad-11d1-80b4-00c04fd430c8"deletedrequired
truemessagerequired
stringe.g.
"Product image successfully deleted." 404 Not Found — The requested resource doesn't exist.
FieldTypeDescription
errorrequired
objecttyperequired
enumThe type of error.
invalid_request_errorauthentication_errorauthorization_errorrate_limit_erroridempotency_errorprocessing_errorwebhook_errorcoderequired
stringA short string identifying the specific error.
e.g.
"validation_error"messagerequired
stringA human-readable message providing details about the error.
e.g.
"Request validation failed"paramnullable
stringThe parameter that caused the error, if applicable.
e.g.
"email"request_id
stringUnique request identifier for debugging.
e.g.
"req_a1b2c3d4e5f67890abcdef0123456789"field_errors
array[object]Detailed field-level errors for validation failures.
PATCH
/products/{id}/images/reorder Reorder product images
Updates the display order of images. Position in the array determines the order (first = 0).
Path parameters
NameTypeDescription
idrequired
stringe.g.
"6ba7b810-9dad-11d1-80b4-00c04fd430c8"Header parameters
NameTypeDescription
EPD-Version
stringAPI version override (format `YYYY-MM-DD`). If omitted, your account's pinned version or the latest version is used.
e.g.
"2026-02-11"Request body required
FieldTypeDescription
image_idsrequired
array[string]Image IDs in desired display order.
e.g.
["6ba7b816-9dad-11d1-80b4-00c04fd430d3","6ba7b816-9dad-11d1-80b4-00c04fd430d4","6ba7b816-9dad-11d1-80b4-00c04fd430d5"]Responses
200 Images reordered.
FieldTypeDescription
data
array[object] 400 Bad Request — The request was invalid or cannot be served.
FieldTypeDescription
errorrequired
objecttyperequired
enumThe type of error.
invalid_request_errorauthentication_errorauthorization_errorrate_limit_erroridempotency_errorprocessing_errorwebhook_errorcoderequired
stringA short string identifying the specific error.
e.g.
"validation_error"messagerequired
stringA human-readable message providing details about the error.
e.g.
"Request validation failed"paramnullable
stringThe parameter that caused the error, if applicable.
e.g.
"email"request_id
stringUnique request identifier for debugging.
e.g.
"req_a1b2c3d4e5f67890abcdef0123456789"field_errors
array[object]Detailed field-level errors for validation failures.
404 Not Found — The requested resource doesn't exist.
FieldTypeDescription
errorrequired
objecttyperequired
enumThe type of error.
invalid_request_errorauthentication_errorauthorization_errorrate_limit_erroridempotency_errorprocessing_errorwebhook_errorcoderequired
stringA short string identifying the specific error.
e.g.
"validation_error"messagerequired
stringA human-readable message providing details about the error.
e.g.
"Request validation failed"paramnullable
stringThe parameter that caused the error, if applicable.
e.g.
"email"request_id
stringUnique request identifier for debugging.
e.g.
"req_a1b2c3d4e5f67890abcdef0123456789"field_errors
array[object]Detailed field-level errors for validation failures.