The File Upload Sync API allows you to upload audio files for transcription and wait to get the transcript as a response.
This endpoint only supports files durations less than or equal to 60 seconds
Endpoint
POST https://infer.voice.intron.io/file/v1/upload/sync
Authentication
All requests require a Bearer token in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Basic request and response sample
Requests curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="myfile"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"'
Response The request can timeout with an http status 408 and the file-id in 60 seconds,
the file-id in the response can be used to get the file’s status with the Get File Status endpoint Response (200)
Response (400),max audio duration
Response (408),processing time-out
{
"data" : {
"file_id" : "12a9760f-b165-4404-91d0-a65d4cdt78fs" ,
"processing_status" : "FILE_TRANSCRIBED" ,
"audio_file_name" : "myfile" ,
"audio_transcript" : "hello world" ,
"processed_audio_duration_in_seconds" : 20
},
"message" : "file status found" ,
"status" : "Ok"
}
Requests curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="myfile"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_language_asr_input="sw"'
Response The request can timeout with an http status 408 and the file-id in 60 seconds,
the file-id in the response can be used to get the file’s status with the Get File Status endpoint Response (200)
Response (400),max audio duration
Response (408),processing time-out
{
"data" : {
"file_id" : "12a9760f-b165-4404-91d0-a65d4cdt78fs" ,
"processing_status" : "FILE_TRANSCRIBED" ,
"audio_file_name" : "myfile" ,
"audio_transcript" : "habari dunia" ,
"processed_audio_duration_in_seconds" : 20
},
"message" : "file status found" ,
"status" : "Ok"
}
Format Extensions WAV .wav MP3 .mp3 MP4 .mp4 M4A .m4a OGG .ogg WebM .webm FLAC .flac
Header Value Required AuthorizationBearer YOUR_API_KEYYes Content-Typemultipart/form-dataYes
Request Body form-data
Field Type Description Required Options Default audio_file_nameString non-unique file name yes audio_file_blobString url to a readable file yes Post processing options use_diarizationString get the transcript text as a diarized response no TRUE | FALSEuse_template_idString use a custom prompt id for the transcript post-processing no use_categoryString set the category of post-processing to use on the file no file_category_telehealth use_language_asr_inputString set the input language code no en
Supported Languages
Supported Languages Comprehensive list of languages supported
Post processing options for the file categories
file_category_general
file_category_telehealth
file_category_procedure
file_category_call_center
file_category_legal
file_category_meeting_notes
The post processing options only apply to English transcriptions
General
Telehealth
Procedure
Call center
Legal
Meeting notes
Field Type Description Required Options Default get_summaryString get a summary of the transcript no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_general"' \
--form 'get_summary="TRUE"'
Field Type Description Required Options Default get_summaryString get a summary of the transcript no TRUE | FALSEFALSE get_entity_listString get extracted entities from the transcript no TRUE | FALSEFALSE get_treatment_planString get extracted treatment plan from the transcript no TRUE | FALSEFALSE get_soap_noteString get extracted SOAP note from the transcript no TRUE | FALSEFALSE get_clerkingString get extracted clerking from the transcript no TRUE | FALSEFALSE get_icd_codesString get the extracted icd/billing codes no TRUE | FALSEFALSE get_suggestionsString get suggestions of important questions to ask or instructions to give patient no TRUE | FALSEFALSE get_differential_diagnosisString get the differential diagnosis of the patient no TRUE | FALSEFALSE get_followup_instructionsString get follow up instructions for the patient no TRUE | FALSEFALSE get_practice_guidelinesString get practice guidelines for the patient no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_telehealth"' \
--form 'get_summary="TRUE"' \
--form 'get_entity_list="TRUE"' \
--form 'get_treatment_plan="TRUE"' \
--form 'get_soap_note="TRUE"' \
--form 'get_clerking="TRUE"' \
--form 'get_icd_codes="TRUE"' \
--form 'get_suggestions="TRUE"' \
--form 'get_differential_diagnosis="TRUE"' \
--form 'get_followup_instructions="TRUE"' \
--form 'get_practice_guidelines="TRUE"' \
Field Type Description Required Options Default get_summaryString get a summary of the transcript no TRUE | FALSEFALSE get_entity_listString get extracted entities from the transcript no TRUE | FALSEFALSE get_treatment_planString get extracted treatment plan from the transcript no TRUE | FALSEFALSE get_op_noteString get the extracted operation note no TRUE | FALSEFALSE get_icd_codesString get the extracted icd/billing codes no TRUE | FALSEFALSE get_suggestionsString get suggestions of important questions to ask or instructions to give patient no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_procedure"' \
--form 'get_summary="TRUE"' \
--form 'get_entity_list="TRUE"' \
--form 'get_treatment_plan="TRUE"' \
--form 'get_op_note="TRUE"' \
--form 'get_icd_codes="TRUE"' \
--form 'get_suggestions="TRUE"' \
Field Type Description Required Options Default get_summaryString get a summary of the transcript no TRUE | FALSEFALSE get_call_center_resultsString get the resolution of a call no TRUE | FALSEFALSE get_call_center_agent_scoreString get the performance score for the agent in a call no TRUE | FALSEFALSE get_call_center_agent_score_categoryString get the performance assessment no TRUE | FALSEFALSE get_call_center_product_infoString get the product information discussed in the call no TRUE | FALSEFALSE get_call_center_product_insightsString get ideas to improve the product based on customer feedback in the call no TRUE | FALSEFALSE get_call_center_complianceString get the compliance check of the call no TRUE | FALSEFALSE get_call_center_feedbackString get the feedback of the call no TRUE | FALSEFALSE get_call_center_sentimentString get caller sentiment analysis no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_call_center"' \
--form 'get_summary="TRUE"' \
--form 'get_call_center_results="TRUE"' \
--form 'get_call_center_agent_score="TRUE"' \
--form 'get_call_center_agent_score_category="TRUE"' \
--form 'get_call_center_product_info="TRUE"' \
--form 'get_call_center_product_insights="TRUE"' \
--form 'get_call_center_compliance="TRUE"' \
--form 'get_call_center_feedback="TRUE"' \
--form 'get_call_center_sentiment="TRUE"' \
Field Type Description Required Options Default get_legal_court_hearingString get the transcript in court hearing format no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_legal"' \
--form 'get_legal_court_hearing="TRUE"' \
Field Type Description Required Options Default get_summaryString get a comprehensive summary of the meeting no TRUE | FALSEFALSE get_meeting_notes_participantsString get the list of meeting participants and their roles no TRUE | FALSEFALSE get_meeting_notes_decisionsString get the key decisions made during the meeting no TRUE | FALSEFALSE get_meeting_notes_action_itemsString get list of action items and their assigned owners no TRUE | FALSEFALSE get_meeting_notes_key_topicsString get the main topics discussed during the meeting no TRUE | FALSEFALSE get_meeting_notes_next_stepsString get follow-up steps and next meeting plans no TRUE | FALSEFALSE
Sample request using this option cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"' \
--form 'use_category="file_category_meeting_notes"' \
--form 'get_summary="TRUE"' \
--form 'get_meeting_notes_participants="TRUE"' \
--form 'get_meeting_notes_decisions="TRUE"' \
--form 'get_meeting_notes_action_items="TRUE"' \
--form 'get_meeting_notes_key_topics="TRUE"' \
--form 'get_meeting_notes_next_steps="TRUE"' \
Request and response with custom template id
cURL
Python
JavaScript
Response (200)
curl --location 'https://infer.voice.intron.io/file/v1/upload/sync' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="my_file_2"' \
--form 'use_template_id="a3f32e46-afa4-42cb-9155-522dcf9xyxyxd"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"'
Rate Limits
Next Steps
After uploading a file, use the Get File Status endpoint to check the transcription progress and retrieve results.