Quickstart
Create an API key, queue a public media URL, and retrieve your first transcript.
Create and store an API key
Sign in to the developer dashboard, create a named key, and copy the full secret immediately. Production keys begin with ft_live_ and are shown only once.
export FAST_TRANSCRIBER_API_TOKEN="ft_live_replace_me"Server-side secret
Use a backend environment variable or secret manager. Do not embed the key in frontend code.
Queue a public media URL
This request returns asynchronously with 202 Accepted.
curl --include --request POST https://fast-transcriber.com/api/v1/transcriptions \
--header "Authorization: Bearer $FAST_TRANSCRIBER_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"source_url": "https://www.youtube.com/watch?v=VIDEO_ID",
"speaker_diarization": false
}'HTTP/2 202 Accepted
location: /api/v1/transcriptions/95c3fdd8-1234-4abc-9def-0123456789abSave both data.id and the Location response header. The location is a relative path to the new job.
Poll the returned job
export LOCATION_PATH="/api/v1/transcriptions/95c3fdd8-1234-4abc-9def-0123456789ab"
curl "https://fast-transcriber.com${LOCATION_PATH}" \
--header "Authorization: Bearer $FAST_TRANSCRIBER_API_TOKEN"Wait between requests and stop when data.status becomes completed or failed.
Use the completed result
{
"data": {
"created_at": "2026-09-03T10:12:00.000Z",
"duration_seconds": 1842,
"error": null,
"filename": "interview.mp3",
"id": "95c3fdd8-…",
"segments": [
{ "start": 0, "end": 4.2, "text": "Welcome.", "speaker": 0 }
],
"status": "completed",
"text": "Welcome."
}
}Use data.text for full-text workflows and data.segments for time-aware navigation, captions, or citations.