Direct file uploads
Move audio and video directly to secure object storage, then queue the owned object for transcription.
Large media without proxying bytes through your API server
The prepare endpoint validates the filename, declared byte size, media type, plan limits, and optional diarization requirement. It then returns a presigned destination so your application can upload the file directly; job creation later validates the stored object.
Direct transfer
File bytes go to a short-lived storage URL instead of through the REST API origin.
Adaptive strategy
Branch on upload.type and support either a single PUT or multipart transfer.
Ownership checks
The API verifies the object key belongs to the authenticated account before queueing.
Media validation
Stored size, filename, and media type are checked before processing begins.
From request to transcript
A predictable sequence you can reuse in server applications, automations, and internal tools.
- 01
Prepare
POST the exact filename, byte size, and optional MIME type to /api/v1/uploads.
- 02
Transfer
Upload bytes to the returned presigned URL or all multipart part URLs.
- 03
Queue
POST the returned key, storage value, and original file metadata as the upload source.
Make the request
Examples use the production API origin and an environment variable for the secret key.
curl --request POST https://fast-transcriber.com/api/v1/uploads \
--header "Authorization: Bearer $FAST_TRANSCRIBER_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"filename": "research-interview.wav",
"content_type": "audio/wav",
"size": 48234496
}'Requirements and boundaries
- Never send the Fast Transcriber bearer key to a presigned storage URL.
- Preserve key and storage exactly as returned.
- Use the file's exact byte size in both the prepare and queue requests.
- Branch on upload.type; the server decides when multipart transfer is required.
- Start a single upload within 15 minutes, before its presigned URL expires.
Frequently asked questions
Why upload directly to storage?+
Presigned transfer avoids routing large file bodies through the API application and supports resumable multipart uploads.
Which files are accepted?+
Common audio and video formats are supported. See Media formats for the current extensions and MIME types.
Can I reuse an upload key across accounts?+
No. Upload references are account-scoped and ownership is verified before queueing.