Skip to article

This documentation is currently available in English. Your application language remains unchanged.

Uploads

Upload an image and confirm that the asset is ready.

Reserve, transfer and confirm

  1. Call POST /api/v1/uploads or create_upload_url with fileName, contentType and sizeBytes.
  2. PUT the exact file bytes to the returned signature.uploadUrl, using the signed content type and any required signed headers.
  3. Call POST /api/v1/uploads/{assetId}/complete or confirm_upload.
  4. Use the confirmed ready assetId in a supported generation operation.
json
{"fileName":"ranger.png","contentType":"image/png","sizeBytes":123456}

Limits and validation

PNG, JPEG and WebP are accepted, with a maximum declared size of 20 MiB. Confirmation verifies the stored object and reads image dimensions. A reserved asset is not a ready generation input. Do not claim a different content type or size from the bytes you upload.

The upload asset belongs to the authenticated account. Confirmation and reuse enforce that ownership. A failed or incomplete transfer must be corrected before generation.

Reuse instead of re-uploading

Generated images already present in the asset library can be passed directly by asset ID; there is no need to download and upload them again. Use Search and reuse.