ForHosting KIT · Video

Transcribe a video

The words spoken in a video are locked inside the picture until someone writes them down, and doing that by hand for an hour of footage can eat an entire afternoon. This video transcription API listens to a video's audio track and returns the spoken words as text with timestamps, so the content becomes searchable, quotable and editable the moment processing finishes.

● StablePer request + per minute$0.079
Use it from WebAPIEmailApp soonTelegram soon

Run this on our servers with your account. Free tools run in your browser; this one bills your KIT balance per the price above.

Video hides text that everyone eventually needs

A recorded webinar, an interview, a product demo, all of them contain information that is only accessible by watching from start to finish, which is exactly the bottleneck that stops that content from being searched, subtitled, translated or repurposed. Marketing teams turning a webinar into a blog post, researchers coding interview footage, and legal teams needing a record of what was said in a deposition video all run into the same wall: video is not text, and manual transcription does not scale past a handful of files.

What happens after you submit a video

You send the video file to POST /video/transcribe; the task queues asynchronously and returns a task_id immediately so nothing in your application has to sit waiting on a long-running process. Once transcription finishes, the text arrives, timestamped and structured, via a signed webhook or a signed link valid for 24 hours, ready to drop into a document, a search index, or a subtitle file.

Speech recognition applied to a moving picture

Under the hood, video transcription is audio transcription with one extra step: the spoken audio track is extracted from the video container first, then processed the same way any recorded speech would be. That separation is why the same underlying capability that turns a podcast into text also turns a video's dialogue, narration or presenter audio into text, regardless of what's happening on screen, since only the audio track carries the words.

From raw text to a finished pipeline

Timestamped transcript output is what makes downstream automation possible: a transcript with timing can drive subtitle generation, chapter markers, keyword search inside a video library, or a written recap generated from the spoken content. Pricing is $0.079 per request plus $0.01 per minute of video, so a five-minute clip costs a fraction of a sixty-minute recording, and a task that fails after automatic retries is never billed.

Access and current status

The endpoint requires prepaid balance, same as the rest of the API; without one, requests return a clean HTTP 402 rather than a degraded or partial response. This endpoint is currently in deployment and will begin accepting jobs soon. Uploaded video and the resulting transcript are retained only for the delivery window and are never used to train models.

Webinar-to-article repurposing

Transcribe a recorded webinar to turn the spoken content into a written blog post or knowledge-base article.

Interview and research coding

Get a timestamped transcript of recorded interview footage so researchers can search and reference specific statements.

Subtitle and caption source text

Produce the raw timestamped transcript that feeds directly into a subtitle or captioning workflow.

Searchable video archive

Transcribe a library of training or presentation videos so viewers can search inside the content by keyword instead of scrubbing manually.

How does the video transcription API work?

You send a video to POST /video/transcribe; it extracts and processes the spoken audio and returns a timestamped text transcript via webhook or a signed link.

Is there a free trial for transcribing video?

There's no free tier — free tiers get abused and slow everyone down. Access runs on a prepaid ForHosting KIT balance: top up from $10.00 (it never expires) and each request is charged at its published price, so a call with no balance returns HTTP 402. No subscription, no tokens, no invented credits, and a failed task is never charged.

How much does video transcription cost?

It costs $0.079 per request plus $0.01 per minute of video, so cost scales directly with the length of the footage.

Does the transcript include timestamps?

Yes, the returned transcript is timestamped, which makes it usable for subtitles, chapter markers or searching inside the video.

Is the video transcription API available now?

It is currently in deployment and will start accepting jobs soon; the endpoint, pricing and delivery method described here are final for launch.

What video formats can I submit?

It accepts standard video formats commonly used for recordings, webinars and presentations.

Can I transcribe a large batch of videos?

Yes, submit one request per video; each is queued and priced independently, so a whole archive can be processed in parallel.

How is video transcription different from audio transcription?

Video transcription extracts the audio track from the video first and then transcribes it the same way, so the process and output are effectively the same once the audio is isolated.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/video/transcribe

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, and soon from our app, email and Telegram.

curl -X POST https://api.kit.forhosting.com/video/transcribe \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"audio":"https://ejemplo.com/audio.mp3"}'
{
  "audio": "https://ejemplo.com/audio.mp3"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "video.transcribe",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.079
Per minute$0.01

Published price — no tokens, no invented credits. A failed task is never charged.

max_mb500
max_minutes60
max_megapixels3.9
HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.
422task_failedThe task failed after 3 retries. You are never charged for it.

Read the full KIT documentation →