# Changelog

All notable changes to Nabla Connect are listed here.

<!-- -->

<!-- -->

## 2026-09-15[​](#2026-09-15 "Direct link to 2026-09-15")

### Added[​](#added "Direct link to Added")

* [`POST /settings/url`](/connect/reference/generate-settings-url.md) — generate a one-time-login URL that opens the provider's settings without an encounter.
* [`POST /encounters`](/connect/reference/create-or-update-encounters.md) — 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`](/connect/reference/create-or-update-encounters.md) — optional `template_id`: preselects the encounter's note template. On the **Templates** tab of [Nabla Admin](https://app.nabla.com/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.

### Changed[​](#changed "Direct link to Changed")

* [`POST /encounters`](/connect/reference/create-or-update-encounters.md) — `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`.

## 2026-08-25[​](#2026-08-25 "Direct link to 2026-08-25")

### Added[​](#added-1 "Direct link to Added")

* Note export callback — A\&P 2.0: every note section now carries a `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). See the [callback reference](/connect/reference/2026-08-25/callback.md).

### Changed[​](#changed-1 "Direct link to Changed")

* Auto-export now waits for A\&P code extraction (in addition to note generation) for organizations with ICD-10 in Assessment & Plan enabled, so coded subsections are always present in the callback.

### Deprecated[​](#deprecated "Direct link to Deprecated")

* Note export callback — the section-level `content` field is superseded by `structured_content`. It keeps being sent, but you should replace your usage of it.

## 2026-07-01[​](#2026-07-01 "Direct link to 2026-07-01")

### Added[​](#added-2 "Direct link to Added")

* [`POST /users/by_external_id/{external_provider_id}/activate`](/connect/reference/2026-07-01/activate-user-by-external-id.md), [`POST …/deactivate`](/connect/reference/2026-07-01/deactivate-user-by-external-id.md), and [`DELETE /users/by_external_id/{external_provider_id}`](/connect/reference/2026-07-01/delete-user-by-external-id.md).

## 2026-04-24[​](#2026-04-24 "Direct link to 2026-04-24")

### Added[​](#added-3 "Direct link to Added")

* `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.

### Changed[​](#changed-2 "Direct link to Changed")

* Note generation that uses encounter visit diagnoses reads the list persisted from Connect structured context when available.

## 2026-03-23[​](#2026-03-23 "Direct link to 2026-03-23")

### Added[​](#added-4 "Direct link to Added")

* [`POST /users`](/connect/reference/2026-03-23/provision-users.md) — 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`](/connect/reference/2026-03-23/create-or-update-encounters.md) and [`POST /encounters/url`](/connect/reference/2026-03-23/generate-encounters-url.md) — plural paths as the documented primary routes; `POST /encounter` and `POST /encounter/url` are now deprecated but stay available as aliases to preserve backward compatibility
* Note export callback — optional `visit_diagnoses` can be included in the payload with ICD-10 fields (`code`, `display`) and risk flags (`is_hcc`, `is_mcc`) when available.

### Changed[​](#changed-3 "Direct link to Changed")

* Copilot admin: clearer validation on the Nabla Connect OAuth client connection form.

## 2026-02-13[​](#2026-02-13 "Direct link to 2026-02-13")

### Changed[​](#changed-4 "Direct link to Changed")

* **Breaking:** `POST /encounter` — `encounter_data` removed; use `structured_context` with `patient_demographics` (`name`, `birth_date` as `YYYY-MM-DD`, `gender`, `pronouns`).
* Embedded webapp: “New encounter” and encounter history are hidden.

### Added[​](#added-5 "Direct link to Added")

* `POST /encounter/url` — issue a URL for an existing encounter (`external_encounter_id`, `external_provider_id`).
* `POST /encounter` — optional `unstructured_context` (free text for note context, max 700 characters).
* Note export callback — encounter transcript can be included in the payload when the option is enabled in Admin (`transcript.items` alongside `note`).

### Fixed[​](#fixed "Direct link to Fixed")

* Clarified that recreating an encounter with the same `external_encounter_id` after delete creates a new encounter without restoring the previous transcript or note.
