InstantTranscriber API

Transcription webhooks for async jobs

Stop polling every job forever. Send a callback_url when creating a transcription and receive a completion or failure callback when the result is ready.

Use Cases

  • Async media processing queues
  • No-code automation handoffs
  • CRM and CMS transcript ingestion

Latency

Callbacks are sent after top-level job completion or failure. Enhanced speaker labels and summaries can add post-processing time.

Pricing

Webhook delivery itself is included. The underlying transcription job counts against API audio quota.

Code Example

Start a transcription job

Use a bearer API key from account settings. Send files directly or import a public URL, then poll status or wait for a webhook before fetching exports.

curl -X POST https://api.instanttranscriber.com/v1/transcriptions \
  -H "Authorization: Bearer $INSTANTTRANSCRIBER_API_KEY" \
  -F "[email protected]" \
  -F "callback_url=https://example.com/api/instanttranscriber-webhook" \
  -F "callback_secret=$WEBHOOK_SECRET"

Limits

Plan and job constraints

Webhooks are best-effort and at-least-once

Use transcript ID plus status as your idempotency key

Poll status as a fallback for critical workflows

Webhooks

Completion callback example

Webhooks are at-least-once notifications. Use the transcript ID and status as your idempotency key, then fetch the transcript by ID for the authoritative result.

{
  "id": "4ac2a89e-1572-4b68-84a7-21d0493df4d5",
  "status": "completed",
  "download_urls": {
    "txt": "https://api.instanttranscriber.com/export/4ac2a89e.txt",
    "srt": "https://api.instanttranscriber.com/export/4ac2a89e.srt"
  }
}

FAQ

Transcription Webhooks questions

Are webhook callbacks signed?

If callback_secret is set, callbacks include an HMAC signature header so your endpoint can verify the sender.

Should I still poll status?

Use webhooks for normal completion and keep status polling as a fallback for retries or missed notifications.

Build with the Transcription Webhooks

Create an account, generate an API key, and send your first transcription job.