Upload input media
Upload an image, video, or audio file to use as input for a generation (e.g. the
image param on an image-to-image or image-to-video request). Returns a
short-lived url you pass as that media parameter.
Files are ephemeral — stored privately and deleted ~24h after upload. Max 50 MB.
You don’t have to upload first: any media param also accepts a public image URL, a data URI, or raw base64 directly. Uploading is the convenient path when you have a local file and no public URL to point at.
Rate limit. This endpoint is free (not metered), so it carries a dedicated cap
of 60 uploads/min per account (a rolling window), on top of the global per-key
and per-IP request limits. Exceeding it returns 429 with a Retry-After header.
Authorizations
API key as a bearer token: Authorization: Bearer bpx_live_xxx
Body
The media file. Image (PNG/JPEG/WebP/GIF), video (MP4/WebM), or audio (MP3/WAV/OGG).
Response
Stored. Pass url as a media param on a generation request.