Upload a video
Upload
Upload Video — Resumable
Start a resumable upload session
POST
Upload a video
Product: Video Datalake
Host:
https://api.memories.ai/datalake/v1
Auth: Authorization: sk-mai-...upload_url you PUT the file to, then call Finalize. Recommended for files over ~100 MB.
Pricing: $0.04 / minute of indexed video · See Pricing for the full model.
Response Fields
string
New video ID.
string
GCS resumable-session signed URL (24h TTL).
integer
Recommended chunk size in bytes (16 MiB).
Notes
Client flow: (1)POST {upload_url} with x-goog-resumable: start to get the session URI from the Location header; (2) PUT the file to that URI (chunkable); (3) call Finalize (or wait ≤60s for auto-detect).Authorizations
Send Authorization: sk-mai-...
Query Parameters
Set to resumable to start a chunked upload session for large files.
Available options:
resumable Body
Target collection. The video inherits its embedding model / detectors / face config.
URL mode only: a public direct link. Platform links (YouTube/TikTok) fail with source_unresolved.
Sampling frame rate [0.1, 30]. Default 1.0.
ISO-8601 capture time (falls back to video EXIF).
{title, tags:[], custom:{}}. Set title to the original filename.
HTTPS webhook, ≤512 chars, fired on completion.
≤128 chars. Same key re-submits the existing video.
Response
200 - application/json
Accepted
