Transcribe an audio or video file
transcribe_mediaTranscribe an audio or video file. Use this when the user wants the words of a recording they own or may use, for example "transcribe this podcast episode", "make subtitles for my video", "what is said in this file". Pass the uploaded file as file, or a direct https link to an audio or video file as url (not a page of YouTube, TikTok, Douyin or another platform). Set confirm_rights true only after the user says they own the recording or have the rights to transcribe it; otherwise ask. Limits: 15 MB and 15 minutes per file (mp3, m4a, mp4, wav, ogg, flac, webm), and a daily allowance of minutes per user and in total. Returns the language, timestamped segments, SRT and VTT captions (trim with include), the transcript_id, when it expires and the minutes left today. The transcript is kept 24 hours for search and clips; the media file is never kept. Transcribed with Cloudflare Workers AI Whisper.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Direct https link to an audio or video file the user owns or may use, such as https://example.com/talk.mp3. Pages of video or social platforms are not accepted. Give this or file. | |
| file | No | An audio or video file the user uploaded to the chat. | |
| title | No | Name to show for the transcript (default: the file name). | |
| include | No | What to return besides the summary (default all three): timestamped segments, SRT captions, VTT captions. | |
| language | No | Spoken language as an ISO 639-1 code such as en or fr. Leave out to detect it. | |
| library_id | No | The library_id that transcribe_media returned. Only needed when transcribe_media returned one; leave it out otherwise. | |
| confirm_rights | Yes | Set true only after the user has said they own this recording or have the rights to transcribe it. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| srt | No | ||
| vtt | No | ||
| as_of | Yes | ||
| model | Yes | ||
| notes | Yes | ||
| title | Yes | ||
| usage | Yes | ||
| source | Yes | ||
| status | Yes | ||
| language | Yes | ||
| segments | No | ||
| expires_at | Yes | ||
| library_id | No | Present when the caller has no user id; pass it to the other tools to reach this transcript. | |
| word_count | No | ||
| transcript_id | Yes | ||
| duration_seconds | Yes |