Transcription Documentation

Medical Transcription API

The Nuxera Medical Transcription API converts audio recordings of medical consultations into accurate text transcripts with structured clinical information. This API uses a chunked processing approach, allowing you to send audio in segments and receive a comprehensive AI Medical Note customized for your medical specialty upon completion.

Format Support

Nuxera AI supports multiple response/request formats to accommodate different healthcare system requirements:

  • JSON (default): Standard API responses/requests
  • HL7: Healthcare interoperability standard
  • FHIR: Fast Healthcare Interoperability Resources standard

To request a specific format, include the x-response-format header in your request:

x-response-format: hl7
x-response-format: fhir

Note: If no format header is specified, responses default to JSON format.

To send request in a specific format, include the x-request-format header in your request:

x-request-format: hl7
x-request-format: fhir

Note: If the x-request-format header is not provided, the request will be processed as JSON by default.

Key Features

  • Chunked Processing: Send audio in multiple chunks for real-time processing
  • Specialty-Specific Notes: AI Medical Notes tailored to your medical specialty
  • Stateless & Scalable: Each session is tracked but the system remains stateless for easy scaling
  • Privacy-First: No audio data stored, only metadata is retained for accounting
  • HTTPS Required: All data transmission must be over secure HTTPS connections

Endpoint

URL: /api/transcribe

Method: POST

Content-Type: multipart/form-data

Protocol: HTTPS (Required)

Authentication

Include your API key in the x-api-key header:

x-api-key: YOUR_API_KEY

Important: A valid API key is required for all requests. Missing or invalid API keys will return a 401 Unauthorized error.

Processing Flow

  1. First Chunk: Send your initial audio chunk with required parameters
  2. Subsequent Chunks: Send additional audio chunks
  3. Final Chunk: Mark the last chunk with isFinalChunk: true to receive the complete AI Medical Note

Request Parameters

ParameterTypeRequiredDescription
audioFileYesAudio file chunk in WAV or MP3 format (WAV recommended)
specialitystringYesMedical specialty (see /api/specialities/supported for valid options)
userIdstringNoUnique identifier for the user
doctorNamestringNoName of the doctor conducting the consultation
patientNamestringNoName of the patient (improves accuracy)
patientIdstringNoUnique identifier for the patient
modelstringNoTranscription model to use (default: "new-large")
skipDiarizationstringNoSet to "true" to skip speaker separation (recommended)
removeSilencestringNoSet to "true" to remove silence from audio (recommended)
sessionIdstringNoEmpty for first chunk only. Will be sent for all subsequent chunks.
isFinalChunkstringNoSet to "true" for the last chunk to trigger AI Medical Note generation

Request Example:

Supported Specialities

Get the list of supported specialities and their internal names:

Endpoint: /api/specialities/supported

Method: GET

Authentication

Include your API key in the x-api-key header:

x-api-key: YOUR_API_KEY

Response Example:

Medical Note Generation

Get medical note for transcribed text:

Endpoint: /api/transcribe/medical-note

Method: POST

Content-Type: application/json

Authentication: Include your API key in the x-api-key header:

x-api-key: YOUR_API_KEY

Request Parameters

ParameterTypeRequiredDescription
transcribedTextstringYesTranscribed text which needs medical note.
userIdstringYesUnique identifier for the user
specialitystringYesMedical specialty (see /api/specialities/supported for valid options)
patientNamestringNoName of the patient (improves accuracy)
doctorNamestringNoName of the doctor conducting the consultation
skipDiarizationstringNoSet to "true" to skip speaker separation (recommended)

Request Example

Response Example

ICD-10 Code Lookup

Get ICD-10 codes for specific diagnoses or symptoms:

Endpoint: /api/medical-codes/icd-10

Method: POST

Content-Type: application/json

Authentication: Include your API key in the x-api-key header:

x-api-key: YOUR_API_KEY

Request Parameters

ParameterTypeRequiredDescription
diagnosisstringYesThe diagnosis or symptom to get ICD-10 code for

Request Example

Response Example

Response Formats

Intermediate Chunks Response

For non-final chunks, you receive a simple transcription:

Final Chunk Response (Complete AI Medical Note)

When isFinalChunk is set to true, you receive the complete AI Medical Note:

Response Structure

Processing Times

The final response includes detailed processing metrics:

  • transcriptionMs: Time spent on transcription processing
  • finalChunkProcessingMs: Time spent on final AI analysis
  • totalProcessingMs: Total processing time for the session

Classified Information Structure

FieldDescriptionExample
ICD-10 CodeStandard diagnostic codes["F48.0"]
Chief ComplaintPrimary reasons for visit["Constant fatigue", "Light sleep"]
History Of Present IllnessDetailed symptom history["Patient reports developing symptoms 3 days ago..."]
Current MedicationsActive medications["Zithromax", "Multivitamins"]
Imaging ResultsFindings from any imaging["Chest X-ray shows no acute abnormalities"]
AssessmentClinical evaluation["Possible iron deficiency", "Possible thyroid problem"]
DiagnosisMedical diagnoses["Acute asthma exacerbation"]
PrescriptionsNew medications prescribed["Vitamin B", "Panadol"]
PlanTreatment and next steps["Increase intake of iron-rich foods", "Take adequate rest"]
Follow-upRecommended follow-up timing["1 week after blood test"]

Example Usage

Privacy & Security

  • HTTPS Required: All API calls must be made over HTTPS
  • No Data Storage: Audio data is not stored on our servers
  • Metadata Only: Only session metadata is retained for accounting purposes
  • Stateless Design: Each session is independent, allowing for easy scaling
  • Session Tracking: Every chunk and session is accounted for billing and monitoring

Best Practices

  1. Audio Quality

    • Record in a quiet environment with minimal background noise
    • Use good quality microphone positioned close to speakers
    • Aim for clear speech with minimal overlapping conversation
    • Prefer WAV format over MP3 for best transcription accuracy (lossless vs. compressed)
  2. Chunking Strategy

    • Send audio in logical segments (e.g., every 30-60 seconds)
    • Ensure chunks contain complete sentences when possible
    • Mark the final chunk accurately to trigger AI Medical Note generation
  3. Specialty Selection

    • Always check /api/specialities/supported for current options
    • Use the correct value for the specialty parameter
    • Choose the most specific specialty for best results
  4. Error Handling

    • Always check for 401 errors indicating invalid API keys
    • Implement retry logic for network failures
    • Validate API responses before processing

Error Handling

Error CodeDescriptionResolution
401Invalid API keyCheck that x-api-key header contains valid API key
400Missing required fieldsEnsure all required parameters are included
400Invalid audio formatUpload audio in WAV or MP3 format
400Invalid specialtyCheck /api/specialities/supported for valid options
413Audio file too largeReduce chunk size or split recording further
500Transcription failedCheck audio quality and try again

Limitations

  • Maximum audio chunk size: 25MB per request
  • Maximum session length: 120 minutes total
  • Supported languages: English and Arabic, with Urdu and Hindi in development
  • Supported audio formats: WAV and MP3 (WAV recommended for lossless quality and wide compatibility)
  • API rate limits apply (contact support for details)

Next Steps

Continue to the Dictation API documentation to learn about specialized medical dictation processing.