Authentication
Incoming APIs
Outgoing APIs
Reference
When backwards-incompatible changes are made to the API, a new, dated version is released. The latest version is 2026-09-15.
See Versioning for how to target a specific version in requests.
POST /settings/url — generate a one-time-login URL that opens the provider's settings without an encounter.POST /encounters — optional external_metadata object: a flat string map from your EHR (for example a stay identifier). Nabla stores it encrypted and echoes it unchanged on note and patient-instructions export callbacks. It is not used for note generation. Omit the field to leave existing metadata unchanged; send {} to clear it.POST /encounters — optional template_id: preselects the encounter's note template. On the Templates tab of Nabla Admin (contact Nabla to enable template admin for your organization), select the template and use Copy template ID under Title, or copy the encounterProfileUuid query parameter from the URL. Omit to leave the encounter's current template unchanged.POST /encounters — unstructured_context now accepts up to 10,000 characters (was 700). Generating the encounter note will take longer if you pass a long unstructured_context.structured_content object alongside the flattened content, discriminated by type. Sections are either { type: "TEXT", text } or { type: "SUBSECTIONS", subsections } notably for the "Assessment & Plan" section. Each subsection is a per-problem entry (title, text, in note order) with inline icd10_codes (system, code, display, is_hcc, is_mcc) and snomed_codes (system, code, display). The code lists are empty when codes are not available at export time (e.g. code extraction disabled, or a manual export before extraction completed).content field is superseded by structured_content. It keeps being sent, but you should replace your usage of it.structured_context.visit_diagnoses (optional) on encounter create/update and URL endpoints: list of { system, code, display } codings.
Only the ICD-10-CM system URI is accepted for persistence.
POST /users — upsert a provider user by external_provider_id (and provider_email); optional settings for specialty and dictation locales. Returns 409 if the same ids point at two different existing users.POST /encounters and POST /encounters/url — plural paths as the documented primary routes; POST /encounter and POST /encounter/url are now deprecated but stay available as aliases to preserve backward compatibilityvisit_diagnoses can be included in the payload with ICD-10 fields (code, display) and risk flags (is_hcc, is_mcc) when available.POST /encounter, replaced encounter_data body field with structured_contextPOST /encounter/url — generate a new URL for an existing encounterunstructured_context field added to POST /encounter bodyNOTE_EXPORT callback)POST /encounter with the same external_encounter_id now creates a new encounter without recovering the original transcript and note