Changelog & Upgrades
Updates to the Nabla Core API — including new features, fields, or endpoints — are released under a new dated version to ensure stability and predictability. This means your integration won’t be affected by these changes unless you explicitly opt into the newer version (see Targeting a specific version).
That said, some updates — like internal AI models improvements, bug fixes, or strictly non-breaking changes that don’t affect the schema or observable behavior — may be rolled out across all versions.
Below is a list of all available Core API versions, along with their associated changes.
Unreleased​
- Change the dictate WebSocket protocol.
The WebSocket dictation protocol evolves to a faster and simpler model, where small units of text —such as individual words, short phrases, or punctuation marks— are sent once and don’t require any further updates.
Clients are expected to append each received unit in order, without inserting spaces or applying any formatting.
This change introduces the following breaking changes.
- Evolution of configuration options in
CONFIG
frame.- The
dictate_punctuation
field has been renamed topunctuation_mode
and is now an enum, with currently one possible value:EXPLICIT
. - The
speech_locale
field has been renamed todictate_locale
and is reduced to the five following locales:ENGLISH_US
,ENGLISH_UK
,SPANISH_ES
,SPANISH_MX
andFRENCH_FR
. - The
enable_audio_chunk_ack
option has been removed, since audio acknowledgement is now always activated.
- The
- Simplification and renaming of
DICTATION_ITEM
frame:- The
DICTATION_ITEM
frame type has been renamed toDICTATED_TEXT
. - It has been simplified and now contains only a string
text
property. - Fields
id
,is_final
,start_offset_ms
andend_offset_ms
properties have been removed since dictated texts are now necessarily final and are returned in chronological order.
- The
- Evolution of configuration options in
2025-04-03​
- Add new User API endpoints to allow users to configure and persist their note generation preferences:
GET /note-settings
— Retrieve the user’s preferred locale and template. Default values:note_locale = ENGLISH_US
,note_template = GENERIC_MULTIPLE_SECTIONS
.PATCH /note-settings
— Update the user’s preferred locale and template.GET /note-settings/note-sections-customization/:note_template
— Retrieve the default per-section customization options for a specific template.PATCH /note-settings/note-sections-customization/:note_template
— Update the default per-section customization options for a specific template.
- Change in User API
/generate-note
and/generate-note-async
endpoints:- The following fields have been removed from the request body:
note_locale
note_template
note_sections_customization
- These endpoints will now automatically apply the settings stored in the user’s note settings and per-section customization.
- The following fields have been removed from the request body:
2025-02-25​
- Bilingual support has been added to transcription endpoints and Websocket.
- In request bodies and WS config frame,
speech_locale
property has been removed and replaced by newspeech_locales
property, an array that can contain one or two distinct speech locales.
- In request bodies and WS config frame,
2025-01-07​
- Add a new synchronous dictation from file upload endpoint.
- Add a new asynchronous dictation from file URL, with the ability to either:
- poll the result through a polling endpoint;
- or receive it via a webhook event.
- Note: If you already have a webhook integration set up, make sure you go to the Developer Console and extend its set of enabled event types to include dictation related ones.
- Require endpoints host to specify a region, i.e. either
us.api.nabla.com
oreu.api.nabla.com
, the genericapi.nabla.com
is not supported anymore.
2024-12-23​
- Add new audio chunk acknowledgement protocol, this change applies to all prior versions too.
- Require endpoints paths to start with either "/v1/core/server" or "/v1/core/user", paths like "copilot-api/server", "copilot/server", "copilot-api/user" or "copilot/user" are not supported anymore.
2024-11-08​
- Fixed case for server-to-client frames in Transcribe Websocket. It is now
SCREAMING_SNAKE_CASE
for all the frames, e.g.transcript_item
becomesTRANSCRIPT_ITEM
.
2024-10-01​
- New
2024-10-01
major API version. Check the Migration guide for an exhaustive list of the changes. - Add support for OAuth Client authentication flow for server-to-server integrations.
- Add support for Webhooks with events sent upon completion of asynchronous tasks like asynchronous note generation.
- Add a new transcription websocket with a simpler frames schema, and support for 35 languages.
- Add a new note generation endpoint with per-section customization capabilities.
- Add a new asynchronous note generation endpoint with the ability to poll the result through a polling endpoint.
- Add a new transcription from file upload endpoint with a simpler body schema.
- Add a new transcription from file upload endpoint with the ability to poll the result through a polling endpoint.
- Change endpoints paths to start with either
/v1/core/server
or/v1/core/user
. - Change endpoints host to support for direct URL to a specific geographical region, e.g.
us.api.nabla.com/*
instead of justapi.nabla.com/*
. - Remove or renamed endpoints (still supported on older versions for backward compatibility):
/digest
,/digest_async
,/listen
,/listen-ws
,/listen_async
,/generate_normalized_data
,/generate_patient_instructions
,/dot_phrases
&/dot_phrases/{id}
.
2024-04-22​
- Add a new endpoint
/generate_patient_instructions
to generate a patient-friendly summary from an encounter. - Add a new endpoint
/generate_normalized_data
to generate normalized data from a note, available on both the Server API and the User API. - Add a new WebSocket endpoint
/dictate
for transcribing medical dictation. - Add a new endpoint
/users/find_by_external_id/:external_id
to fetch a user with a unique external ID from another system. - Add new endpoints to manage Dot Phrases for a user.
- When set on a user, suggest matching Dot Phrases alongside the generated note in the 'digest' endpoint.
- Add four new templates:
GENERAL_MEDICINE_WCC
,SOAP_WCC
,GENERAL_MEDICINE_EMERGENCY
,SOAP_EMERGENCY
. - Add a
title
property in the note generated by server digest, server digest async, user digest and user digest async endpoints. The title is a short description of the note content. - Add a
patient_context
property indigest
anddigest_async
requests body. - Add a
PATCH /users/:id
endpoint. - Add
external_id
,metadata
andcreated_at
on the User object, the external ID and metadata are editable through the patch endpoint. - Remove
upcoming_appointments_details
from the output of the/generate_patient_instructions
endpoint. Upcoming appointments details are now included inside instructions starting for this version. - Remove
note_generation_mode
request property from digest and digest async endpoints. - Remove
upcoming_appointments_details
from the output of the/generate_patient_instructions
endpoint. Upcoming appointments details are now included insideinstructions
starting for this version.
2024-02-27​
- Add new endpoints: activate-user & deactivate user.
- Add new endpoints to fetch a single user or all users using filters and pagination.
- Add
split_by_problem
to digest & listen-from-file endpoints. - Add optional
client_request_id
parameter to/digest
and/digest_async
endpoints. - Deprecate
[es-ES, es-MX]
as note generation languages in Core API for digest and listen endpoints. - Remove
note.section.content: string[]
field, usage to be replaced bytext: string
which is equivalent but formatted. - Remove note generation feature from Listen Websocket API (recommend using the dedicated endpoint).
2023-06-26​
First version of the API.