Submit Audio for Transcription
curl --request POST \
--url https://platform-us.plaud.ai/developer/api/open/partner/ai/transcriptions/ \
--header 'Content-Type: <content-type>' \
--header 'X-Client-Api-Key: <api-key>' \
--header 'X-Client-Id: <api-key>' \
--data '
{
"file_url": "<DownloadUrl from file upload>",
"params": {
"transcribe": {
"language": "auto"
},
"vad": {
"decode_silence": false
},
"diarization": {
"enabled": false,
"return_embedding": false
},
"hotwords": "plaud,gpt,destros"
}
}
'import requests
url = "https://platform-us.plaud.ai/developer/api/open/partner/ai/transcriptions/"
payload = {
"file_url": "<DownloadUrl from file upload>",
"params": {
"transcribe": { "language": "auto" },
"vad": { "decode_silence": False },
"diarization": {
"enabled": False,
"return_embedding": False
},
"hotwords": "plaud,gpt,destros"
}
}
headers = {
"Content-Type": "<content-type>",
"X-Client-Id": "<api-key>",
"X-Client-Api-Key": "<api-key>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"transcription_id": "task_exec_xxx",
"status": "PENDING",
"data": {}
}Transcription API
Submit Audio for Transcription
Submit an audio file for transcription. Pass the pre-signed download URL returned by complete-upload. Transcription runs asynchronously — use the returned transcription_id to poll for results.
POST
/
open
/
partner
/
ai
/
transcriptions
/
Submit Audio for Transcription
curl --request POST \
--url https://platform-us.plaud.ai/developer/api/open/partner/ai/transcriptions/ \
--header 'Content-Type: <content-type>' \
--header 'X-Client-Api-Key: <api-key>' \
--header 'X-Client-Id: <api-key>' \
--data '
{
"file_url": "<DownloadUrl from file upload>",
"params": {
"transcribe": {
"language": "auto"
},
"vad": {
"decode_silence": false
},
"diarization": {
"enabled": false,
"return_embedding": false
},
"hotwords": "plaud,gpt,destros"
}
}
'import requests
url = "https://platform-us.plaud.ai/developer/api/open/partner/ai/transcriptions/"
payload = {
"file_url": "<DownloadUrl from file upload>",
"params": {
"transcribe": { "language": "auto" },
"vad": { "decode_silence": False },
"diarization": {
"enabled": False,
"return_embedding": False
},
"hotwords": "plaud,gpt,destros"
}
}
headers = {
"Content-Type": "<content-type>",
"X-Client-Id": "<api-key>",
"X-Client-Api-Key": "<api-key>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"transcription_id": "task_exec_xxx",
"status": "PENDING",
"data": {}
}Rate Limit: 60 req/min, Max recording duration: 24 hr, Max diarization: 6 hr
Authorizations
Your client_id, issued in the Portal.
Your api_key, issued alongside client_id / secret_key in the Portal.
Headers
Body
application/json
Response
200 - application/json
Transcription task accepted
Identifier used to poll for results.
Example:
"task_exec_xxx"
PENDING, RECEIVED, STARTED, PROGRESS indicate the task is in progress — keep polling. SUCCESS means the data is ready. FAILURE and REVOKED are terminal failures.
Available options:
PENDING, RECEIVED, STARTED, PROGRESS, SUCCESS, FAILURE, REVOKED Example:
"PENDING"
Empty until the transcription completes.
Was this page helpful?