Upload Recordings and Download Media via API
Upload raw recording tracks to FoxCue with POST /recordings and a retry-safe upload_id, then download rendered media with GET /media using its storage key.
To send a recording to FoxCue through the API, create a recording session, then upload the raw track bytes. To download a rendered file, call GET /media with the file's storage key from an output.
Upload a recording
Create a session
POST /recordings (scope media:write) returns a recording ID.
Upload the track
curl "https://app.foxcue.com/api/v1/recordings/<id>/sources/upload?kind=camera&upload_id=<uuid>" \
-H "Authorization: Bearer <workspace API key>" \
-H "Content-Type: video/mp4" --data-binary @recording.mp4Generate a UUID for upload_id and reuse it if you retry, so the upload isn't duplicated.
API uploads are limited to 64 MiB. For bigger files, upload in the app (up to 500 MB).
Download media
curl "https://app.foxcue.com/api/v1/media?key=<URL-encoded-storage-key>" \
-H "Authorization: Bearer <workspace API key>" --output result.mp4Get the key from an output (GET /artifacts/{id}). Downloads only work for media your workspace owns.