openapi: 3.1.0 info: title: Heidi Health Ask Heidi API version: v2 summary: Public Heidi REST API for ambient AI medical scribe, transcription, consult notes, documents, clinical coding, and Ask Heidi. description: 'The Heidi API lets partner platforms (EHRs, telehealth apps, custom clinician tools) drive Heidi''s ambient documentation engine end-to-end: authentication via tenant API key + per-user JWT, patient profile management, session lifecycle (create, update, list, retrieve), contextual attachments and linked sessions, audio upload (single file or chunked live), transcript retrieval (final or live-chunked), template discovery, streamed consult-note and document generation against Heidi or custom templates, multi-standard clinical coding (ICD-10/SNOMED/CPT and others), and streamed Ask Heidi assistant responses. Documentation: https://www.heidihealth.com/developers/heidi-api/overview ' contact: name: Heidi Health Support url: https://support.heidihealth.com license: name: Heidi Health Terms of Service url: https://www.heidihealth.com/legal/terms-of-service servers: - url: https://registrar.api.heidihealth.com/api/v2/ml-scribe/open-api description: Production security: - bearerAuth: [] tags: - name: Ask Heidi description: Streamed AI-assistant responses scoped to a session. paths: /sessions/{session_id}/ask-ai: post: tags: - Ask Heidi summary: Ask Heidi description: Stream an AI-assistant response scoped to the session. operationId: askHeidi parameters: - $ref: '#/components/parameters/SessionId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AskHeidiRequest' responses: '200': description: Streamed AI response chunks. content: application/x-ndjson: schema: $ref: '#/components/schemas/StreamChunk' components: schemas: StreamChunk: type: object properties: data: type: string AskHeidiRequest: type: object required: - ai_command_text - content - content_type properties: ai_command_text: type: string content: type: string content_type: type: string enum: - MARKDOWN - HTML parameters: SessionId: in: path name: session_id required: true schema: type: string securitySchemes: heidiApiKey: type: apiKey in: header name: Heidi-Api-Key bearerAuth: type: http scheme: bearer bearerFormat: JWT