Business APIsAutomations › Transcribe a whole back catalogue in one

Transcribe a whole back catalogue in one run

Anyone with years of recordings and no text for any of it. The archive is the asset, but one-at-a-time upload means it never gets done.

What you end up with

The entire catalogue as text, searchable, in a single batch.

The flow

  1. GrantGive the batch connector a scoped role over the prefix you want — not the whole bucket.
  2. EnumerateList the prefix and submit each object with an Idempotency-Key derived from its key, so a resumed run never double-bills.
  3. CollectResults land as each job completes; a failed object retries without touching the rest.
# submit — returns immediately, does not block
curl -X POST https://whipscribe.com/api/v1/transcribe/url \
  -H "X-API-Key: $KEY" \
  -H "Idempotency-Key: bulk-transcribe-a-back-catalogue-$SOURCE_ID" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/recording.mp4",
       "diarize":true,
       "word_timestamps":true}'

→ 202 {"job_id":"a1b2…","status":"queued"}

# then poll — a self-serve (Pro) key collects by polling
curl "https://whipscribe.com/api/v1/jobs/$JOB" -H "X-API-Key: $KEY"
→ {"status":"processing"} … {"status":"done"}
Watch for this. Set the Idempotency-Key before the first run, not after the first failure. It is what makes the run resumable.

What it costs

Rate$0.008 / min
Per audio hour$0.48
a 3-hour recording$1.44
CreditsNever expire

1,000 hours of archive is about $480 at credit pricing, once, with credits that do not expire if you spread the run. $8 per 1,000 minutes — about $0.48 an audio hour — and credits never expire.

Why this needs an API rather than a person

This is the case with no manual equivalent. Nobody uploads four thousand files by hand.

No subscription to size wrongCompeting transcription tools sell $25–$65 monthly plans with a minute cap that resets whether you used it or not. Credits here are bought once and do not expire, so a quiet month costs nothing and a backlog run does not need an upgrade.
Your audio is not sent to a third-party modelTranscription runs on our own GPUs in our own private cloud. Nothing is forwarded to OpenAI or any other vendor's API, which is usually the blocking question when the recordings are customer calls or unreleased material.
One job, every formattxt, json, srt, vtt and docx all come from the same job id. Re-submitting a file per format is the most common way teams pay several times for one transcription.
Built to be retriedIdempotency-Key means an automation platform's automatic retry returns the original job instead of billing a second one. Every no-code platform retries; most transcription APIs charge you for it.

Build it on

Amazon S3presigned URLs expire — grant a scoped role for standing pipelinesstoragen8nWait node works but pins a worker — split submit and poll at volumeself-hosted automationMake.com40s module timeout — submit, store job_id, poll from a second scenariono-code automation
Try the quality free, then wire it up

Your first transcript in the web app is free, any length, no card — that is how to check accuracy on your own audio before writing any code. The API itself has no free tier: a key is self-serve once your account has credit ($50 minimum, spendable on transcription, and it does not expire). $8 per 1,000 minutes — about $0.48 an audio hour — and credits never expire.

Transcribe a file free →Create an API keyAPI reference