Transcribe something
curl -s -X POST https://tryslicemedia.com/api/v1/transcribe \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/episode.mp3"}'Answers 202 with an id and a poll_url. An hour of audio is usually done in under a minute. Then:
curl -s "https://tryslicemedia.com/api/v1/transcribe/JOB_ID?token=TOKEN"
While it runs: { "status": "processing", "elapsed_seconds": 12, "poll_after_seconds": 5 }. When it is done:
{
"id": "0182d3a8-71b0-4e14-b295-98b7d9c7a6a4",
"status": "completed",
"duration_seconds": 3619,
"word_count": 12373,
"language": "en",
"text": "Welcome to the show ...",
"srt": "1\n00:00:00,720 --> 00:00:03,040\n...",
"vtt": "WEBVTT\n\n00:00:00.720 --> ..."
}The three files come back inline while they total under a megabyte, which a 90-minute episode does. Over that you get text_url, srt_url and vtt_url instead, and a note saying why.
Get a key
One request, no account, free. It is shown once — we store a hash of it, never the key itself.
Revoke a key
Paste a key to kill it. Holding it is the only proof needed, because there is no account for it to belong to — which is what makes a leaked key killable by whoever noticed, without waiting for us.
The limits, in full
- 90 minutes a file with a key, 10 minutes without one.
- 2 files a day per key; 1 a day per address without a key.
- 600MB a file.
- English. The language is detected and reported; other languages are not promised.
- No speaker labels. You get the words, not who said them.
- Three keys per email address per day, so keys are not a way around the daily allowance.
- Free. No card, no trial, no watermark. We pay about 15 cents an hour of audio and cap the month; when a month runs out the API says so and gives the date it resets.
What happens to the file
A URL is fetched by the transcription provider and by us for a few hundred kilobytes, to read its length before anything is spent. Nothing is stored except the transcript. Audio uploaded through the web tool is deleted after 7 days, text after 30, by a job that runs daily. Nothing is used to train anything.
Errors
Every refusal carries the limit, what we measured, and when it resets, so a caller can act without reading a sentence.
| code | http | means |
|---|---|---|
| too_long | 413 | Longer than the limit. Carries max_duration_seconds and the length we measured. |
| too_long_anon | 413 | Over ten minutes without a key. A free key raises it to ninety. |
| too_big | 413 | Bigger than 600MB. |
| daily_limit | 429 | That key has used its 2 files today. Carries resets_at. |
| anon_daily_limit | 429 | The no-key tier is one file a day per address. |
| unmeasured_limit | 429 | The file’s length could not be read from its server, and one of those a day is allowed. |
| unreadable | 400 | Not a direct link to a media file — usually a web page rather than an .mp3. |
| no_speech | 200 | The job ran and there was no speech in the file. |
| bad_key | 401 | Unknown or revoked key. |
| ceiling | 503 | The free tool has spent its budget for the month. Carries resets_at. |
| anon_ceiling | 503 | The no-key tier has spent its share. A key still works. |
A callback instead of polling
Send callback_url (https only) with the request and we POST the finished result there, so nothing has to sit and poll.
If you would rather not use an API
The web tool takes an upload, shows the transcript on screen and emails you the files. Same limits, same engine, same transcripts.
Questions
Can I transcribe a 90-minute podcast for free?
Do I need a key?
What does it return?
Can it take an upload rather than a URL?
Does it label speakers?
How long do you keep the audio?
What is the catch?
This tool is looked after by Clack.Listens hard, types fast, never asks you to repeat yourself.
More Free Tools
Shorts by Slice
From the team behind these free tools
One video. A week of posts.
Upload an episode and get back the moments worth posting, cut and captioned.
- Reads the whole episode, then picks the excerpts worth posting
- Captions burned in and framed vertical, ready to post
- Seven days free, no card