ForHosting KIT · Audio & Voice

Audio to a blog post

The spoken and the written word aren't the same thing, so a raw transcript dropped into a blog reads like exactly what it is — a transcript. This endpoint takes recorded audio and restructures it into an article, with the false starts, filler words and conversational rhythm smoothed into readable prose.

● BetaPer request + per minute$0.004
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.

What breaks when you publish a transcript as a post

Speech repeats itself, circles back and trails off mid-thought in ways that work fine out loud and read as sloppy on a page. A transcript pasted straight into a blog forces readers to mentally edit as they go, which is why most raw-transcript posts get skimmed and abandoned rather than read. Turning talk into an article means restructuring around ideas, not just cleaning up sentences, and that rewrite is what this endpoint does automatically.

How the conversion works

Call POST /audio/to-blog with the recording, and the task transcribes it internally before reorganizing the content into an article with headings, paragraph breaks and a coherent flow — the shape of something written to be read, not heard. Because it's asynchronous, you send the file once and the finished draft arrives at your webhook, or sits at a signed link for 24 hours for you to retrieve.

Repurposing audio into text isn't new, just slower before

Interview-based journalism has always involved turning a recorded conversation into prose — a reporter listens back, picks the useful parts, and writes around them, discarding most of the actual transcript. This endpoint automates that same editorial judgment: what to keep, how to structure it, and how to phrase it for reading rather than listening, applied consistently at whatever volume you need.

Who this saves real hours for

Podcasters who want a companion post for each episode without writing one from scratch, video creators repurposing a talk-to-camera into a blog for SEO, and businesses turning recorded webinars or expert interviews into content marketing all use this the same way — as the first draft of an article they'd otherwise pay a writer to produce from a recording.

Fitting it into a content pipeline

This slots naturally after recording and before publishing: feed it the audio, get back a draft article, and route it to an editor or a CMS for final review. Pair it with the Show Notes API when you need both a short episode description and a full-length article from the same source file, so one recording produces the whole spread of content a release calendar actually needs.

Podcast companion articles

Turn each episode into a written piece for the blog, giving search engines something to index beyond an audio player embed.

Webinar and talk repurposing

Convert a recorded webinar or conference talk into an article, extending its reach to people who'll never watch the full recording.

Interview-based content marketing

Record a conversation with an expert or customer and get a publishable article back, instead of a staff writer spending hours transcribing and rewriting.

Multilingual content teams

Generate an article draft from spoken content quickly enough to keep pace with a publishing calendar that spans several shows or channels.

How is the audio to blog post API different from a plain transcript?

A transcript records what was said word for word, while this endpoint restructures that content into an article with headings and paragraph flow meant to be read, not just a cleaned-up recording of speech.

Does the article need editing before I publish it?

Treat it as a strong first draft — most teams do a pass for house style and tone, but the structure, headings and substance are already handled.

Can I try this for free first?

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 is the price calculated?

A base fee per request plus a per-minute rate on the audio's length, both published on this page, and nothing is charged for a task that fails after retries.

What length of audio works best?

Both short clips and long recordings are supported; price scales with minutes, so a 10-minute clip and a 90-minute talk are both handled, just at different cost.

Will it keep my original speaking voice or tone?

It aims to preserve the substance and viewpoint of what was said while adapting the phrasing for reading, so the article reflects the content rather than mimicking spoken cadence.

How do I get the finished article?

Via a signed webhook when the task completes, or a signed link valid for 24 hours if you'd rather retrieve it on your own schedule.

Is my recording stored after the article is generated?

No, audio is deleted after the retention period and never used to train models, so nothing from your recording persists past producing the article.

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/audio/to-blog

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/audio/to-blog \
  -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": "audio.to_blog",
  "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.004
Per minute$0.0185

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

max_mb200
max_minutes180
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 →