OnInvoxAuraClinicalNoteFinished


Triggered when the full processing of a clinical note in Invox Aura is complete.

Payload

{
  "eventName": "OnInvoxAuraClinicalNoteFinished",
  "organizationId": "org-789",
  "userId": "user-456",
  "timestamp": "2026-03-31T19:06:58.667Z",
  "consultationSessionId": "medical-consultation-u1234-1234567890-abc123",
  "patientId": "PAT-12345",
  "clinicalNoteId": "note-123",
  "language": "ES",
  "metadata": {
    "id": "note-123",
    "organizationId": "org-789",
    "userId": "user-456",
    "processingStatus": "COMPLETED",
    "createdAt": 1738670000000,
    "updatedAt": 1738670400000,
    "summaryLanguage": "ES",
    "summaryFormat": "SOAP",
    "audioDuration": 330,
    "patientId": "PAT-12345",
    "consultationSessionId": "medical-consultation-u1234-1234567890-abc123",
    "isFavorite": false,
    "isFinished": true,
    "finishedAt": 1738670400000
  },
  "summary": "Full clinical note text...",
  "requestSignature": "<base64>"
}

Field description

FieldTypeRequiredDescription
eventNamestringYesAlways "OnInvoxAuraClinicalNoteFinished"
organizationIdstringYesExtracted from the DynamoDB note record
userIdstringYesExtracted from the DynamoDB record
timestampstringYesISO 8601 UTC — time of delivery
consultationSessionIdstringNoFrom the SQS payload or the DynamoDB record
patientIdstringNoExtracted from the DynamoDB record
clinicalNoteIdstringYesClinical note ID
languagestringYesSummary language (note.summaryLanguage)
metadataobjectYesFull DynamoDB record (InvoxHearoRequest, see below)
summarystringYesText from the S3 .txt file, or note.summary as fallback
requestSignaturestringNoHMAC-SHA256 in Base64. Present if the organization has credentials configured.

metadata structure (InvoxHearoRequest)

interface InvoxHearoRequest {
  id: string
  organizationId?: string
  userId?: string
  processingStatus: 'PENDING' | 'COMPLETED' | 'FAILED'
  createdAt: number
  updatedAt?: number
  summary?: string
  transcription?: ITranscriptionSegment[]
  vtt?: string
  errorMessage?: string
  audioDuration?: number
  deviceMetadata?: Record<string, unknown>
  patientId?: string
  isFavorite?: boolean
  isFinished?: boolean
  finishedAt?: number
  metadata?: Record<string, unknown>
  rating?: number
  summaryLanguage?: string
  summaryFormat?: string
  consultationSessionId?: string
}

Signature string

The metadata object is serialized as complete JSON. The fields are signed in the following order:

organizationId|userId|timestamp|consultationSessionId|patientId|clinicalNoteId|language|{"id":"...","processingStatus":"COMPLETED",...}|summary|API_KEY