model=nvidia/nemotron-3-5-transcribe.timestamps: true)target_language)audio_url.timestamps: true. The result file then includes every word's start and end time and a speaker label. Transcription only.target_language to the output language. Translation is supported to or from English: speech in another language into English (en), or English speech into any other listed language. Translation between two non-English languages may work but is not guaranteed; for best quality, translate into English. target_language and timestamps: true cannot be used in the same request.audio_url must be directly downloadable without login. Avoid signed links that expire within a few minutes, and make sure large files can be downloaded within 3 minutes.resultJson as a JSON string with a resultObject:{
"code": 200,
"msg": "success",
"data": {
"taskId": "task_nemotron_1762345821000",
"model": "nvidia/nemotron-3-5-transcribe",
"state": "success",
"param": "{\"model\": \"nvidia/nemotron-3-5-transcribe\", \"callBackUrl\": \"https://your-domain.com/api/callback\", \"input\": \"{\\\"audio_url\\\": \\\"https://your-domain.com/audio/team-meeting.mp3\\\", \\\"timestamps\\\": true}\"}",
"resultJson": "{\"resultObject\": {\"text\": \"Thanks for joining, everyone. Let's start with the launch checklist for Friday.\", \"duration\": 12.64, \"url\": \"https://tempfile.aiquickdraw.com/example/transcript-result.json\", \"expires_at\": \"2026-11-19T12:30:23Z\"}}",
"failCode": "",
"failMsg": "",
"costTime": 3,
"completeTime": 1762345824000,
"createTime": 1762345821000,
"updateTime": 1762345824000
}
}resultObject fields:text: the full transcript, or the translation when target_language is set. With timestamps on, this is plain text without speaker tagsduration: audio length in seconds, measured from the decoded audio; credits are charged per second of this valueurl: the full result as a JSON file (structure below)expires_at: when url expires (about 14 days after completion). Download the file before then if you need to keep iturl (example with timestamps: true):{
"task": "transcribe",
"duration": 12.64,
"text": "Thanks for joining, everyone. Sure, let's start.",
"text_with_speakers": "<spk:0> Thanks for joining, everyone. <spk:1> Sure, let's start.",
"words": [
{
"word": "Thanks",
"start": 0.32,
"end": 0.61,
"speaker": "0"
},
{
"word": "for",
"start": 0.61,
"end": 0.74,
"speaker": "0"
},
{
"word": "joining,",
"start": 0.74,
"end": 1.18,
"speaker": "0"
},
{
"word": "everyone.",
"start": 1.18,
"end": 1.83,
"speaker": "0"
},
{
"word": "Sure,",
"start": 2.46,
"end": 2.8,
"speaker": "1"
},
{
"word": "let's",
"start": 2.84,
"end": 3.07,
"speaker": "1"
},
{
"word": "start.",
"start": 3.07,
"end": 3.52,
"speaker": "1"
}
],
"diarization": [
{
"speaker": 0,
"start": 0.32,
"end": 1.83
},
{
"speaker": 1,
"start": 2.46,
"end": 3.52
}
]
}task: transcribe or translatetext, duration: same as in resultObjecttext_with_speakers: transcript with speaker tags <spk:N>; only with timestamps: truewords: start and end time in seconds from the beginning of the audio, and speaker label, for each word (each character for Chinese); only with timestamps: truediarization: speaker turns detected from the audio; only with timestamps: truesilent: true when the audio has almost no sound; text is then an empty stringtruncated: true when the output hit the length limit for the audio duration. This usually means the output repeats itself, so discard or review such results0. Voices that sound very different (for example male and female) separate well; similar voices may be merged into one speaker.| failMsg | Cause |
|---|---|
| Audio fetch failed. Check access settings or use our File Upload API instead. | The URL returns 4xx or the domain cannot be resolved |
| The request failed because the audio format is not supported by the API. | No decodable audio: not an audio file, a video without an audio track, an empty or too short file |
| The audio file exceeds the maximum allowed size of 200 MB. | File larger than 200 MB |
| The audio exceeds the maximum allowed duration of 60 minutes. | Audio longer than 60 minutes; split it and submit the parts |
callBackUrl parameter to receive automatic notifications when the task completes, rather than polling the status endpoint.curl --location 'https://api.kie.ai/api/v1/jobs/createTask' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "nvidia/nemotron-3-5-transcribe",
"callBackUrl": "https://your-domain.com/api/callback",
"input": {
"audio_url": "https://static.aiquickdraw.com/tools/example/1793873594707_8fvLCiGf.mp3",
"timestamps": true
}
}'{
"code": 200,
"msg": "success",
"data": {
"taskId": "task_nemotron_1762345821000"
}
}