canonical: https://jentic.com/apis/dentally.co/dentally

# Dentally API

Jentic publishes the only available OpenAPI specification for Dentally API, keeping it validated and agent-ready. Dentally is cloud-based dental practice management software used by independent practices and groups, primarily across the UK and APAC. The API exposes 31 endpoints covering patients, appointments, fees, invoices, NHS claims, contracts, custom fields, payment plans, accounts, and acquisition sources. Sandbox and APAC base URLs are provided alongside production, enabling integrations that span dental groups, recall systems, and patient-engagement tools.

## For AI agents

Manage dental patients, appointments, invoices, NHS claims, and fees in Dentally with read and write access across 31 endpoints.

## Scope

Does not handle clinical imaging, lab integrations, or e-prescribing - use for Dentally practice management resources such as patients, appointments, invoices, and NHS claims only.

## Capabilities

- Create and update patient records via /v1/patients endpoints
- Book, retrieve, update, and cancel appointments through /v1/appointments
- Check appointment availability before scheduling via /v1/appointments/availability
- Read and write fees, invoices, and invoice items for billing flows
- Look up NHS claim records and their statuses for UK dental practices
- Manage contracts, payment plans, and custom fields used by the practice

## Use cases

### Online Patient Booking

Power an online booking widget by checking clinician availability through GET /v1/appointments/availability and creating the appointment with POST /v1/appointments. Patient records can be created or updated in the same flow via /v1/patients, so a new patient becomes a real Dentally record at the moment of booking.

Example prompt: Call GET /v1/appointments/availability for the clinician, then POST /v1/appointments with the chosen slot and patient id.

### Recall and Reminder Engine

Drive a recall and reminder workflow by listing appointments and patients, then sending reminders through SMS or email channels outside Dentally. The patient and appointment endpoints provide the structured data such recall engines need without needing to scrape the Dentally UI.

Example prompt: Pull the next 7 days of appointments via GET /v1/appointments, join to /v1/patients, and queue reminders for each.

### NHS Claim Reporting

Run reports on NHS claim activity by listing /v1/nhs_claims and pulling individual claims by id. UK practice managers and finance teams can build dashboards that track submission status and outstanding claims without exporting CSVs from the Dentally UI.

Example prompt: Call GET /v1/nhs_claims with a date filter and aggregate the response by claim status to power a finance dashboard.

### Group-Wide Practice Reporting

For dental groups operating multiple practices on Dentally, the /v1/accounts and /v1/invoices endpoints provide the cross-practice data needed for revenue, billing, and acquisition reporting. Acquisition sources can be analysed via /v1/acquisition_sources to attribute new patients.

Example prompt: List /v1/invoices for each account and aggregate total billed by month and by practice.

### AI Agent Integration via Jentic

An assistant for a front desk or dental group operations team can use Jentic to chain availability lookups, patient creation, and appointment booking in a single conversation. Jentic resolves the API key from the vault and exposes a typed schema for each Dentally operation, removing the need to read the API documentation while building an integration.

Example prompt: Use Jentic to search for 'book a dental appointment', load POST /v1/appointments, and execute it for the selected slot and patient.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /v1/patients | List patient records |
| POST | /v1/patients | Create a patient |
| GET | /v1/appointments | List appointments |
| POST | /v1/appointments | Create an appointment |
| GET | /v1/appointments/availability | Check appointment availability |
| GET | /v1/invoices | List invoices |
| GET | /v1/nhs_claims | List NHS claims |
| GET | /v1/fees | List configured fees |

## Key resources

- **Patients** — Create, read, and update patient records
- **Appointments** — Book, retrieve, update, cancel, and check availability for appointments
- **Invoices** — List and read invoices and invoice items
- **Fees** — List and update fee configurations
- **NHS Claims** — List and retrieve NHS claim records
- **Contracts** — List and retrieve patient contracts
- **Custom Fields** — List custom field definitions used on records
- **Accounts** — List and retrieve practice accounts
- **Acquisition Sources** — List patient acquisition sources for attribution

## Why Jentic

- **Setup:** Wiring Dentally by hand means learning its API key header, picking the right regional host across the UK, APAC, and Canada endpoints or the sandbox, and building calls for patients, appointments, invoices, and NHS claims yourself. Through Jentic you install once, import the Dentally API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Dentally identifies patients and appointments in the request body rather than a scoped URL path, so you limit the agent to the operations it needs, such as reading appointment availability or listing invoices, and creating patients or appointments is included only if you add those operations.
- **Credential handling:** Your Dentally API key is stored once, encrypted, by your own Jentic One instance and injected into the request header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'book a dental appointment' or 'check appointment availability', and Jentic returns the matching Dentally operation with its input schema so the agent fills parameters and calls the right endpoint without reading the docs.

## Related APIs

- **DrChrono API** — EHR with strong scheduling and clinical features for US medical and dental practices.
- **athenahealth API** — Enterprise EHR and revenue cycle management API for medical groups.
- **Twilio Messaging API** — SMS delivery for appointment reminders and recalls triggered from Dentally data.
- **SendGrid Mail API** — Transactional email delivery for booking confirmations and recall emails.

## FAQ

### Why is there no official OpenAPI spec for Dentally API?

Dentally does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Dentally API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Dentally API use?

The Dentally API uses an API key passed in a header. Through Jentic, the key is stored encrypted in the vault and injected at execution time, so the secret never enters the agent's prompt or memory.

### Can I book an appointment with the Dentally API?

Yes. POST /v1/appointments creates an appointment for a patient, and GET /v1/appointments/availability lets you check open slots before booking. PUT /v1/appointments/{id} updates an existing appointment and DELETE /v1/appointments/{id} cancels it.

### Does the Dentally API support NHS claims?

Yes. GET /v1/nhs_claims lists NHS claim records and GET /v1/nhs_claims/{id} returns a specific claim, supporting UK practices that need programmatic visibility of their NHS submissions.

### What base URL should I use for the Dentally sandbox?

The OpenAPI spec lists three servers: production at https://api.dentally.co, sandbox at https://api.sandbox.dentally.co, and APAC at https://api.apac.dentally.com. Pick the one matching your environment when you call any /v1 endpoint.

### How do I create a patient and book an appointment through Jentic?

Run `pip install jentic`, search for 'create a dentally patient', execute POST /v1/patients, then search for 'book a dental appointment' and execute POST /v1/appointments. Jentic carries the API key across both calls so the agent never handles it.

### Can I limit what my agent is allowed to do with the Dentally API?

Yes. Because you run Jentic One yourself, your own rules decide which Dentally operations and credentials the agent can use, so you can grant only what a task needs, such as GET /v1/appointments/availability and GET /v1/invoices for a read-only reporting agent. Dentally identifies patients and appointments in the request body rather than a scoped URL path, so write operations like POST /v1/patients or POST /v1/appointments are available to the agent only if you add them. The stored API key is injected at execution time and never enters the agent's prompt or memory.
