---
title: "Open Dental"
description: "Connect Open Dental, obtain the required access and configure permitted actions."
url: "https://documentation.verbatik.com/integrations/open-dental/"
---

# Open Dental

Connect Open Dental, obtain the required access and configure permitted actions.

The API adapter is implemented. Validate your own account and authorized actions before routing production calls.

## Before you start

Connect the account belonging to this business and workspace. Vendor subscriptions, API limits and role permissions still apply.

**API:** Open Dental Remote API v1

**Authentication:** Authorization: ODFHIR DeveloperKey/CustomerKey

## Get access and connect

1. Register as an Open Dental API developer and obtain a developer key through the official developer portal.
2. Create/assign a customer API key with the required permissions and have the clinic enable its remote API service.
3. Save developerKey and customerKey privately in Verbatik. Test connection reads clinic configuration.
4. Map the clinic's patient, provider and operatory IDs. Check Appointments/Slots before creating or moving an appointment.
5. Send appointment times in the clinic's local yyyy-MM-dd HH:mm:ss format, not a guessed server timezone. Appointments without procedures follow the clinic's own appointment preferences.

## Account requirements

- Open Dental developer registration
- Clinic customer key with enabled API permissions
- Clinic remote API service running and compatible Open Dental version

## Permissions

- `Clinics read`
- `Patients read/create/update`
- `Appointments read/create/update and Slots read`

Grant the subset needed for the actions you enable. API scopes do not override the connected user’s record permissions or vendor validation rules.

## Connection fields

- `developerKey` — Developer key (required). Secret fields are saved as workspace credentials.
- `customerKey` — Customer key (required). Secret fields are saved as workspace credentials.

## Available actions

- `test_connection` — **Read**. Read clinic configuration
- `find_patients` — **Read**. Search patients by first/last name or date of birth.
- `create_patient` — **Write**. Create a patient. Open Dental checks identifying fields to prevent duplicates.
- `update_patient` — **Write**. Update the selected patient's contact or identity fields.
- `check_availability` — **Read**. Read available provider/operatory slots in the clinic's local timezone.
- `create_appointment` — **Write**. Book a patient into a previously checked provider/operatory slot. Clinic-local timestamps must be yyyy-MM-dd HH:mm:ss.
- `reschedule_appointment` — **Write**. Move an appointment using a previously checked slot. This operation preserves attached clinical data.
- `get_appointment` — **Read**. Read the current patient, provider, operatory, start time and appointment status.
- `cancel_appointment` — **Write**. Free the booked slot while retaining the appointment and its clinical data on the clinic unscheduled list.


## Verify before going live

Run Test connection and one read action against a known permitted record. Then test each intended write in an authorized sandbox. Check the provider’s own record and the Verbatik receipt. Publish the agent after assigning its tools. If a write has an unknown outcome, reconcile it with the vendor before trying again.

## Vendor documentation

- [Setup and API documentation](https://www.opendental.com/site/apisetup.html)
- [Additional provider reference](https://api.opendental.com/)
- [Additional provider reference](https://www.opendental.com/site/apiappointments.html)
- [Additional provider reference](https://www.opendental.com/site/apipatients.html)
