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/upload

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 --location --request POST 'https://api.wavespeed.ai/api/v3/upload' \
--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 --location --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_url": "https://...your-uploaded-image..."
}'

File Size Limits

File TypeMax Size
Images20 MB
Videos100 MB
Audio50 MB

Retention

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

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.

© 2025 WaveSpeedAI. All rights reserved.