How to Upload Files

How to Upload Files

Upload images, videos, and audio files for use with WaveSpeedAI models.

Overview

Many models require input files (images for I2V, audio for lip sync, etc.). Upload your files to get URLs that can be used in API requests.

Upload Endpoint

POST https://api.wavespeed.ai/api/v3/media/upload/binary

Supported File Types

TypeFormats
ImagesJPG, JPEG, PNG, WebP, GIF, BMP, TIFF
VideosMP4, AVI, MOV, WMV, FLV, WebM, MKV, 3GP, OGV
AudioMP3, WAV, OGG, AAC, FLAC, WebM, M4A, Opus

Upload Methods

cURL

curl --fail-with-body --connect-timeout 10 --max-time 300 --request POST 'https://api.wavespeed.ai/api/v3/media/upload/binary' \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--form 'file=@"/path/to/your/image.png"'

Response

{
  "code": 200,
  "message": "success",
  "data": {
    "url": "https://..."
  }
}

Using Uploaded Files

Use the returned URL in your model requests:

curl --fail-with-body --connect-timeout 10 --max-time 300 --request POST 'https://api.wavespeed.ai/api/v3/wavespeed-ai/wan-2.1-i2v-720p' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
  "prompt": "A cat walking",
  "image": "https://...your-uploaded-image..."
}'

Use the exact input field shown in the selected model’s schema. Image-to-video models generally use image, while other models may define a different media field.

File Size Limits

UploadMax Size
Single file1 GB

Retention

Uploaded files are stored for 7 days and then automatically deleted.

Upload Quota and Acceptable Use

The upload service is intended only for files used as inputs to WaveSpeedAI inference workflows. Upload allowance is managed per account or organization and scales with legitimate inference activity. Normal upload-then-infer usage should not be affected by these limits.

Do not use the upload endpoint or returned URLs:

  • As general-purpose file storage, hosting, or a CDN
  • To distribute files unrelated to WaveSpeedAI inference
  • To provide hosted inputs to other AI platforms, including competing services

Upload traffic that is excessive, automated without corresponding WaveSpeedAI inference, or otherwise inconsistent with this purpose may be rate limited or rejected. Repeated or deliberate abuse may result in suspension of upload or API access.

Tips

  • Upload files before starting a generation workflow
  • Use the returned URL immediately or store it for later use
  • For large files, ensure stable network connection

API Reference

See How to Upload Files (API) for complete API documentation.

© 2026 WaveSpeedAI. All rights reserved.