The File Upload API allows you to submit audio files for transcription. Files are processed asynchronously, and you can check the status using the Get File Status endpoint.
Endpoint
POST https://infer.voice.intron.io/file/v1/upload
Authentication
All requests require a Bearer token in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Basic request and response sample
cURL
Python
JavaScript
Response on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--header 'Authorization: Bearer api-key' \
--form 'audio_file_name="myfile"' \
--form 'audio_file_blob=@"/C:/Users/aaaa/file.wav"'
cURL
Python
JavaScript
Response on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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"'
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 see page of supported languages 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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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 on upload
Response when file processsing completed
curl --location 'https://infer.voice.intron.io/file/v1/upload' \
--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
60 requests per minute
Rate limit headers included in response
Retry-After: (delay-seconds) indicates time in seconds to retry
Next Steps
After uploading a file, use the Get File Status endpoint to check the transcription progress and retrieve results.