{"items":[{"type":"link","fsPath":"docs/pages/introduction.md","metadata":{"type":"markdown"},"label":"Introduction","link":"/docs/pages/introduction","routeSlug":"/docs/pages/introduction","icon":"regular house"},{"type":"link","fsPath":"docs/pages/getting-started.md","metadata":{"type":"markdown"},"label":"Getting started","link":"/docs/pages/getting-started","routeSlug":"/docs/pages/getting-started","icon":"regular rocket"},{"type":"link","fsPath":"docs/pages/authentication.md","metadata":{"type":"markdown"},"label":"Authentication","link":"/docs/pages/authentication","routeSlug":"/docs/pages/authentication","icon":"regular key"},{"type":"link","fsPath":"docs/pages/versioning.md","metadata":{"type":"markdown"},"label":"Versioning","link":"/docs/pages/versioning","routeSlug":"/docs/pages/versioning","icon":"regular code-branch"},{"type":"link","fsPath":"docs/pages/pagination.md","metadata":{"type":"markdown"},"label":"Pagination","link":"/docs/pages/pagination","routeSlug":"/docs/pages/pagination","icon":"regular layer-group"},{"type":"link","fsPath":"docs/pages/rate-limiting.md","metadata":{"type":"markdown"},"label":"Rate limiting","link":"/docs/pages/rate-limiting","routeSlug":"/docs/pages/rate-limiting","icon":"regular gauge-high"},{"type":"link","fsPath":"docs/pages/errors.md","metadata":{"type":"markdown"},"label":"Errors","link":"/docs/pages/errors","routeSlug":"/docs/pages/errors","icon":"regular triangle-exclamation"},{"type":"link","fsPath":"docs/pages/conventions.md","metadata":{"type":"markdown"},"label":"Conventions","link":"/docs/pages/conventions","routeSlug":"/docs/pages/conventions","icon":"regular book"},{"type":"link","fsPath":"docs/pages/changelog.md","metadata":{"type":"markdown"},"label":"Changelog","link":"/docs/pages/changelog","routeSlug":"/docs/pages/changelog","icon":"regular clock-rotate-left"},{"type":"separator","separatorLine":true},{"type":"group","label":"API reference","items":[{"type":"link","label":"2026-01-01","link":"/docs/versions/2026-01-01/nexgen","routeSlug":"/docs/versions/2026-01-01/nexgen","badges":[{"name":"current","color":"green"},{"name":"new","color":"green"}]},{"type":"separator","label":"Appointments"},{"type":"group","label":"Appointments","link":"/docs/versions/2026-01-01/nexgen/appointments","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments","items":[{"label":"List appointments","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointments/list-appointments","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments/list-appointments","metadata":{"seo":{"title":"List appointments","description":"Returns a paginated list of appointments for the practice identified byX-Practice-Id. Results are ordered by creation time, latest first(created_at descending), then by id descending for a stable sort."}},"httpPath":"/appointments"},{"label":"Create an appointment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointments/create-appointment","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments/create-appointment","metadata":{"seo":{"title":"Create an appointment","description":"Creates a new appointment for the practice identified by X-Practice-Id.The appointment location (site_id) is determined by the site of the practitionerspecified in practitioner_id. On success, the newly created appointment is returnedin the data envelope with a state of Pending."}},"httpPath":"/appointments"},{"label":"Get appointment by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointments/get-appointment","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments/get-appointment","metadata":{"seo":{"title":"Get appointment by ID","description":"Returns the single appointment matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing appointments."}},"httpPath":"/appointments/{id}"},{"label":"Update an appointment","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointments/update-appointment","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments/update-appointment","metadata":{"seo":{"title":"Update an appointment","description":"Updates the appointment matching id for the practice identified by X-Practice-Id. Only the fields provided in the request body will be modified; omitted fields remain unchanged.If no appointment exists for that practice and id, the API responds with 404.When reason_id is provided, it must refer to an active appointment reason; otherwise the API responds with 422.When start_time or duration_minutes is provided, the resulting appointment must fall within the practitioner's working hours and must not conflict with any blocked or unavailable periods; otherwise the API responds with 422."}},"httpPath":"/appointments/{id}"},{"label":"Cancel an appointment","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointments/cancel-appointment","routeSlug":"/docs/versions/2026-01-01/nexgen/appointments/cancel-appointment","metadata":{"seo":{"title":"Cancel an appointment","description":"Cancels the appointment matching id for the practice identified byX-Practice-Id. The appointment state is set to Cancelled andcancelled_at is recorded."}},"httpPath":"/appointments/{id}/cancel"}]},{"type":"group","label":"Appointment Reasons","link":"/docs/versions/2026-01-01/nexgen/appointment-reasons","routeSlug":"/docs/versions/2026-01-01/nexgen/appointment-reasons","items":[{"label":"List appointment reasons","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointment-reasons/list-appointment-reasons","routeSlug":"/docs/versions/2026-01-01/nexgen/appointment-reasons/list-appointment-reasons","metadata":{"seo":{"title":"List appointment reasons","description":"Returns a paginated list of appointment reasons for the practice identified byX-Practice-Id. Results are ordered by creation time, latest first(created_at descending), then by id descending for a stable sort."}},"httpPath":"/appointment_reasons"},{"label":"List appointment cancellation reasons","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/appointment-reasons/list-appointment-cancellation-reasons","routeSlug":"/docs/versions/2026-01-01/nexgen/appointment-reasons/list-appointment-cancellation-reasons","metadata":{"seo":{"title":"List appointment cancellation reasons","description":"Returns a paginated list of appointment cancellation reasons for the practiceidentified by X-Practice-Id. Results are ordered by creation time, latestfirst (created_at descending), then by id descending for a stable sort."}},"httpPath":"/appointment_cancellation_reasons"}]},{"type":"group","label":"Calendar Zones","link":"/docs/versions/2026-01-01/nexgen/calendar-zones","routeSlug":"/docs/versions/2026-01-01/nexgen/calendar-zones","items":[{"label":"List calendar zones","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/calendar-zones/list-calendar-zones","routeSlug":"/docs/versions/2026-01-01/nexgen/calendar-zones/list-calendar-zones","metadata":{"seo":{"title":"List calendar zones","description":"Returns a paginated list of calendar zones for the practice identified byX-Practice-Id. A calendar zone is one occurrence of a scheduled, recurringblock of diary time reserved for a specific purpose, for a practitioner or aroom."}},"httpPath":"/calendar_zones"},{"label":"Get calendar zone by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/calendar-zones/get-calendar-zone","routeSlug":"/docs/versions/2026-01-01/nexgen/calendar-zones/get-calendar-zone","metadata":{"seo":{"title":"Get calendar zone by ID","description":"Returns the single calendar zone matching id for the practice identifiedby X-Practice-Id. The identifier is the same id returned when listingcalendar zones."}},"httpPath":"/calendar_zones/{id}"}]},{"type":"separator","label":"Patients"},{"type":"group","label":"Patients","link":"/docs/versions/2026-01-01/nexgen/patients","routeSlug":"/docs/versions/2026-01-01/nexgen/patients","items":[{"label":"List patients","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/list-patients","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/list-patients","metadata":{"seo":{"title":"List patients","description":"Returns a paginated list of patients for a practice."}},"httpPath":"/patients"},{"label":"Create a new patient","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/create-patient","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/create-patient","metadata":{"seo":{"title":"Create a new patient","description":"Creates a new patient record for a practice. Writable fields mirror the patient resource returned by list and get where applicable."}},"httpPath":"/patients"},{"label":"Search patients","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/search-patients","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/search-patients","metadata":{"seo":{"title":"Search patients","description":"Returns a paginated list of patients for a practice, with optional filters."}},"httpPath":"/patients/search"},{"label":"Get an existing patient","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/get-patient","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/get-patient","metadata":{"seo":{"title":"Get an existing patient","description":"Gets an existing patient record for a practice."}},"httpPath":"/patients/{id}"},{"label":"Update an existing patient","deprecated":false,"httpVerb":"patch","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/update-patient","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/update-patient","metadata":{"seo":{"title":"Update an existing patient","description":"Updates an existing patient record for a practice."}},"httpPath":"/patients/{id}"},{"label":"Get patient account balance","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/patients/get-patient-account","routeSlug":"/docs/versions/2026-01-01/nexgen/patients/get-patient-account","metadata":{"seo":{"title":"Get patient account balance","description":"Returns the account balance for the patient matching id, for the practice identified by X-Practice-Id. The balance is the account the patient's invoices and payments are posted to. The id is the same patient id returned when listing patients.Monetary amounts are signed. A negative amount means money is owed to the practice. A positive amount means the account is in credit.Some patients share an account, so owning_patient_id in the response is the patient who owns the account. When it differs from the id in the request path, the patient you asked for shares the account of the returned owning_patient_id, and the balances are those of that shared account.If the patient does not exist, has been deleted, or has no account, the API responds with 404. The three cases cannot be told apart. A token without the account:read scope receives 403."}},"httpPath":"/patients/{id}/account"}]},{"type":"separator","label":"Practitioners"},{"type":"group","label":"Practitioners","link":"/docs/versions/2026-01-01/nexgen/practitioners","routeSlug":"/docs/versions/2026-01-01/nexgen/practitioners","items":[{"label":"List practitioners","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioners","routeSlug":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioners","metadata":{"seo":{"title":"List practitioners","description":"Returns a paginated list of practitioners for the practice identified byX-Practice-Id. Results are ordered by creation time, newest first(created_at descending), then by id descending for a stable sort."}},"httpPath":"/practitioners"},{"label":"List practitioner availabilities","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioner-availabilities","routeSlug":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioner-availabilities","metadata":{"seo":{"title":"List practitioner availabilities","description":"Returns a paginated list of availability slots for one or more practitioners."}},"httpPath":"/practitioners/availabilities"},{"label":"Get practitioner by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/practitioners/get-practitioner","routeSlug":"/docs/versions/2026-01-01/nexgen/practitioners/get-practitioner","metadata":{"seo":{"title":"Get practitioner by ID","description":"Returns the single practitioner matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing practitioners."}},"httpPath":"/practitioners/{id}"},{"label":"List rota schedule histories","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioner-rota-schedule-histories","routeSlug":"/docs/versions/2026-01-01/nexgen/practitioners/list-practitioner-rota-schedule-histories","metadata":{"seo":{"title":"List rota schedule histories","description":"Returns a paginated list of snapshot rota days for the practitioneridentified by id in the path. Each row describes the effective scheduledworking hours and breaks for a single calendar date, as captured from thepractice rota (including overrides that were active when the snapshot was taken)."}},"httpPath":"/practitioners/{id}/rota_schedule_histories"}]},{"type":"separator","label":"Sites"},{"type":"group","label":"Sites","link":"/docs/versions/2026-01-01/nexgen/sites","routeSlug":"/docs/versions/2026-01-01/nexgen/sites","items":[{"label":"List sites","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/sites/list-sites","routeSlug":"/docs/versions/2026-01-01/nexgen/sites/list-sites","metadata":{"seo":{"title":"List sites","description":"Returns a paginated list of all sites for the practice identified byX-Practice-Id. Use this to discover locations where the practice operates,including addresses, contact details, and opening hours."}},"httpPath":"/sites"},{"label":"Get site by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/sites/get-site","routeSlug":"/docs/versions/2026-01-01/nexgen/sites/get-site","metadata":{"seo":{"title":"Get site by ID","description":"Returns the single site matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing sites."}},"httpPath":"/sites/{id}"}]},{"type":"separator","label":"Communications"},{"type":"group","label":"Communications","link":"/docs/versions/2026-01-01/nexgen/communications","routeSlug":"/docs/versions/2026-01-01/nexgen/communications","items":[{"label":"Send a message to a patient","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/communications/send-communication","routeSlug":"/docs/versions/2026-01-01/nexgen/communications/send-communication","metadata":{"seo":{"title":"Send a message to a patient","description":"Send a SMS or eMail to a patient on behalf of a practice. No other messaging channels are currently supported for sending communications via the API. Please note, access to this API is provisioned by a Dentally admin."}},"httpPath":"/communications"},{"label":"Get response details","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/communications/get-communication-response-details","routeSlug":"/docs/versions/2026-01-01/nexgen/communications/get-communication-response-details","metadata":{"seo":{"title":"Get response details","description":"Returns the details of a single response communication to a communication matching id for the practiceidentified by X-Practice-Id. The identifier is the same id returned whencreating an SMS communication."}},"httpPath":"/communications/{id}/reply"},{"label":"Create an external communication","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/communications/external-create-communication","routeSlug":"/docs/versions/2026-01-01/nexgen/communications/external-create-communication","metadata":{"seo":{"title":"Create an external communication","description":"Capture an external communication which has occurred with a patient, outside of the Dentally eco-system.This is used to capture messages sent via channels that Dentally does not support.Please note, the Dentally portal has not yet been updated to display this information.Logging an SMS requires the communication:external:sms:write scope instead of communication:external:write.Please note, access to the communication:external:sms:write scope is provisioned by a Dentally admin."}},"httpPath":"/external_communications"}]},{"type":"separator","label":"Finance"},{"type":"group","label":"Fees","link":"/docs/versions/2026-01-01/nexgen/fees","routeSlug":"/docs/versions/2026-01-01/nexgen/fees","items":[{"label":"List fees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/fees/list-fees","routeSlug":"/docs/versions/2026-01-01/nexgen/fees/list-fees","metadata":{"seo":{"title":"List fees","description":"Returns a paginated list of fees for the practice identified by X-Practice-Id. Results are ordered by creation time, newest first (created_at descending), then by id descending for a stable sort.Optional query parameters allow filtering by payment plan, treatment, and created/updated date ranges.Date range. Optional query parameters created_date_from and created_date_to filter by creation date, while updated_date_from and updated_date_to filter by update date. Both ends are inclusive.Use limit and the meta.cursor value from the response to retrieve further pages."}},"httpPath":"/fees"},{"label":"Get fee by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/fees/get-fee","routeSlug":"/docs/versions/2026-01-01/nexgen/fees/get-fee","metadata":{"seo":{"title":"Get fee by ID","description":"Returns the single fee matching id for the practice identified by X-Practice-Id. The identifier is the same id returned when listing fees.If no fee exists for that practice and id, the API responds with 404."}},"httpPath":"/fees/{id}"}]},{"type":"group","label":"Fee Schedules","link":"/docs/versions/2026-01-01/nexgen/fee-schedules","routeSlug":"/docs/versions/2026-01-01/nexgen/fee-schedules","items":[{"label":"List fee schedules","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/fee-schedules/list-fee-schedules","routeSlug":"/docs/versions/2026-01-01/nexgen/fee-schedules/list-fee-schedules","metadata":{"seo":{"title":"List fee schedules","description":"Returns a paginated list of fee schedules for the practice identified byX-Practice-Id. Dentally's user interface in the United Kingdom sometimescalls these payment plans."}},"httpPath":"/fee_schedules"},{"label":"Get fee schedule by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/fee-schedules/get-fee-schedule","routeSlug":"/docs/versions/2026-01-01/nexgen/fee-schedules/get-fee-schedule","metadata":{"seo":{"title":"Get fee schedule by ID","description":"Returns the single fee schedule matching id for the practice identified byX-Practice-Id. Dentally's user interface in the United Kingdom sometimescalls this a payment plan. The identifier is the same id returned whenlisting fee schedules."}},"httpPath":"/fee_schedules/{id}"}]},{"type":"group","label":"Invoices","link":"/docs/versions/2026-01-01/nexgen/invoices","routeSlug":"/docs/versions/2026-01-01/nexgen/invoices","items":[{"label":"List invoices","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/invoices/list-invoices","routeSlug":"/docs/versions/2026-01-01/nexgen/invoices/list-invoices","metadata":{"seo":{"title":"List invoices","description":"Returns a paginated list of invoices for the practice identified byX-Practice-Id. Results are ordered by creation time, most recent created first(created_at descending), then by id descending for a stable sort."}},"httpPath":"/invoices"},{"label":"Get invoice by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/invoices/get-invoice","routeSlug":"/docs/versions/2026-01-01/nexgen/invoices/get-invoice","metadata":{"seo":{"title":"Get invoice by ID","description":"Returns the single invoice matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing invoices."}},"httpPath":"/invoices/{id}"},{"label":"List invoice items","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/invoices/list-invoice-invoice-items","routeSlug":"/docs/versions/2026-01-01/nexgen/invoices/list-invoice-invoice-items","metadata":{"seo":{"title":"List invoice items","description":"Returns a paginated list of invoice items for the invoiceidentified by id in the path, within the practice identified by X-Practice-Id. Results are ordered bycreation time, newest first (created_at descending), then by id descending for a stable sort."}},"httpPath":"/invoices/{id}/invoice_items"}]},{"type":"separator","label":"NHS"},{"type":"group","label":"NHS Contracts","link":"/docs/versions/2026-01-01/nexgen/nhs-contracts","routeSlug":"/docs/versions/2026-01-01/nexgen/nhs-contracts","items":[{"label":"List NHS contracts","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/nhs-contracts/nhs-list-contracts","routeSlug":"/docs/versions/2026-01-01/nexgen/nhs-contracts/nhs-list-contracts","metadata":{"seo":{"title":"List NHS contracts","description":"Returns a paginated list of NHS contracts for the practice identified byX-Practice-Id."}},"httpPath":"/nhs/contracts"},{"label":"Get NHS contract by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/nhs-contracts/nhs-get-contract","routeSlug":"/docs/versions/2026-01-01/nexgen/nhs-contracts/nhs-get-contract","metadata":{"seo":{"title":"Get NHS contract by ID","description":"Returns the single NHS contract matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing NHScontracts."}},"httpPath":"/nhs/contracts/{id}"}]},{"type":"separator","label":"Identifier Mappings"},{"type":"group","label":"Identifier Mappings","link":"/docs/versions/2026-01-01/nexgen/identifier-mappings","routeSlug":"/docs/versions/2026-01-01/nexgen/identifier-mappings","items":[{"label":"Map legacy ids to UUIDs","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/identifier-mappings/map-identifiers","routeSlug":"/docs/versions/2026-01-01/nexgen/identifier-mappings/map-identifiers","metadata":{"seo":{"title":"Map legacy ids to UUIDs","description":"Maps legacy integer sequential ids to their UUID values for thepractice identified by X-Practice-Id."}},"httpPath":"/identifier_mappings"}]},{"type":"separator","label":"Treatments"},{"type":"group","label":"Treatments","link":"/docs/versions/2026-01-01/nexgen/treatments","routeSlug":"/docs/versions/2026-01-01/nexgen/treatments","items":[{"label":"List treatments","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatments/list-treatments","routeSlug":"/docs/versions/2026-01-01/nexgen/treatments/list-treatments","metadata":{"seo":{"title":"List treatments","description":"Returns a paginated list of treatments for the practice identified byX-Practice-Id. Treatments are the practice-level catalogue of proceduresthat can be assigned to a patient treatment plan."}},"httpPath":"/treatments"},{"label":"Get treatment by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatments/get-treatment","routeSlug":"/docs/versions/2026-01-01/nexgen/treatments/get-treatment","metadata":{"seo":{"title":"Get treatment by ID","description":"Returns the single treatment matching id for the practice identified byX-Practice-Id. Treatments are practice-wide. The identifier is the sameid returned when listing treatments."}},"httpPath":"/treatments/{id}"}]},{"type":"group","label":"Treatment Categories","link":"/docs/versions/2026-01-01/nexgen/treatment-categories","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-categories","items":[{"label":"List treatment categories","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatment-categories/list-treatment-categories","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-categories/list-treatment-categories","metadata":{"seo":{"title":"List treatment categories","description":"Returns a paginated list of treatment categories for the practice identified byX-Practice-Id. Treatment categories are the folders a practice uses to group itstreatment catalogue."}},"httpPath":"/treatment_categories"},{"label":"Get treatment category by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatment-categories/get-treatment-category","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-categories/get-treatment-category","metadata":{"seo":{"title":"Get treatment category by ID","description":"Returns the single treatment category matching id for the practice identified byX-Practice-Id. The identifier is the same id returned when listing treatmentcategories."}},"httpPath":"/treatment_categories/{id}"}]},{"type":"group","label":"Treatment Plans","link":"/docs/versions/2026-01-01/nexgen/treatment-plans","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-plans","items":[{"label":"List treatment plans","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatment-plans/list-treatment-plans","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-plans/list-treatment-plans","metadata":{"seo":{"title":"List treatment plans","description":"Returns a paginated list of treatment plans for the practice identified byX-Practice-Id. Results are ordered by creation time, newest first(created_at descending), then by id descending for a stable sort."}},"httpPath":"/treatment_plans"},{"label":"Get treatment plan by ID","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatment-plans/get-treatment-plan","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-plans/get-treatment-plan","metadata":{"seo":{"title":"Get treatment plan by ID","description":"Returns the single treatment plan matching id for the practice identified by X-Practice-Id. The identifier is the same id returned when listing treatment plans.If no treatment plan exists for that practice and id, the API responds with 404."}},"httpPath":"/treatment_plans/{id}"}]},{"type":"group","label":"Treatment Plan Items","link":"/docs/versions/2026-01-01/nexgen/treatment-plan-items","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-plan-items","items":[{"label":"List treatment plan items","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/treatment-plan-items/list-treatment-plan-treatment-plan-items","routeSlug":"/docs/versions/2026-01-01/nexgen/treatment-plan-items/list-treatment-plan-treatment-plan-items","metadata":{"seo":{"title":"List treatment plan items","description":"Returns a paginated list of treatment plan items for the treatment planidentified by id in the path, within the practice identified by X-Practice-Id. Results are ordered bycreation time, newest first (created_at descending), then by id descending for a stable sort."}},"httpPath":"/treatment_plans/{id}/treatment_plan_items"}]},{"type":"separator","label":"Marketplace"},{"type":"group","label":"Subscriptions","link":"/docs/versions/2026-01-01/nexgen/subscriptions","routeSlug":"/docs/versions/2026-01-01/nexgen/subscriptions","items":[{"label":"List subscriptions","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/subscriptions/list-subscriptions","routeSlug":"/docs/versions/2026-01-01/nexgen/subscriptions/list-subscriptions","metadata":{"seo":{"title":"List subscriptions","description":"Returns a paginated list of subscriptions for for the authenticated product client.Results are ordered by creation time, earliest first (created_at descending),then by id descending for a stable sort."}},"httpPath":"/market/subscriptions"},{"label":"Get subscription","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/subscriptions/get-subscription","routeSlug":"/docs/versions/2026-01-01/nexgen/subscriptions/get-subscription","metadata":{"seo":{"title":"Get subscription","description":"Returns the single subscription matching id.The identifier is the same id returned when listing subscriptions."}},"httpPath":"/market/subscriptions/{id}"},{"label":"Delete subscription","deprecated":false,"httpVerb":"delete","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/docs/versions/2026-01-01/nexgen/subscriptions/delete-subscription","routeSlug":"/docs/versions/2026-01-01/nexgen/subscriptions/delete-subscription","metadata":{"seo":{"title":"Delete subscription","description":"Deletes the active subscription matching id, terminating it immediately.If no subscription exists for that id, the API responds with 404."}},"httpPath":"/market/subscriptions/{id}"}]}],"expanded":"true","icon":"regular code"}]}