An open dental google sheets integration allows you to automatically pull data—such as daily production, appointment counts, or outstanding claims—directly into a spreadsheet for custom reporting. By connecting your practice management software to Google Sheets, you eliminate the need for manual data entry, reducing errors and saving your front desk staff valuable time each day.
Prerequisites
Before you can begin, you must ensure your practice meets the technical requirements for API access.
- eConnector: Your office must have the Open Dental eConnector service installed and running. This service acts as the bridge between your local database and the Open Dental API servers.
- Developer Portal Access: You (or your developer) must have an account on the Open Dental Developer Portal. If you do not have one, contact
vendor.relations@opendental.comto request access. - API Keys: You need two keys:
- Developer API Key: Unique to the developer/application.
- Customer API Key: Unique to your specific practice, generated in the Developer Portal and entered into Open Dental under
Setup > Advanced Setup > API.
- Permissions: Ensure the API key has the necessary permissions (e.g.,
Readaccess for the specific data you wish to pull).
Implementation
To connect to Google Sheets, you will typically use a script (such as Google Apps Script) to make requests to the Open Dental API. The API uses Basic Authentication.
Step 1: Authentication
Your request header must include your Developer Key and Customer Key.
// Example of setting up the headers in JavaScript
const developerKey = 'YOUR_DEVELOPER_KEY';
const customerKey = 'YOUR_CUSTOMER_KEY';
const authString = Utilities.base64Encode(developerKey + ':' + customerKey);
const options = {
"method": "get",
"headers": {
"Authorization": "Basic " + authString,
"Content-Type": "application/json"
}
};
Step 2: Fetching Data
Use the base URL https://api.opendental.com/api/v1/ to request data. For example, to get a list of appointments for a specific date:
// Fetching appointments for a specific date
const url = 'https://api.opendental.com/api/v1/appointments?DateStart=2026-04-18&DateEnd=2026-04-18';
const response = UrlFetchApp.fetch(url, options);
const data = JSON.parse(response.getContentText());
Step 3: Writing to Sheets
Once you have the JSON data, you can parse it and use SpreadsheetApp to write the values into your active sheet.
Common Errors
- 401 Unauthorized: This usually means your API keys are incorrect or the Customer Key has not been enabled in
Setup > Advanced Setup > API. - 403 Forbidden: The API key does not have the required permissions to access the requested resource.
- 429 Too Many Requests: You have exceeded the rate limit. Ensure your script is not running too frequently.
- 503 Service Unavailable: The eConnector at the dental office may be offline. Check the
Service Manageron your server to ensure the eConnector service is running.
Limitations
- Rate Limits: The API is throttled. If you do not have specific API permissions, requests are limited.
- Data Restrictions: You can only access data that your API key is explicitly permitted to see.
- No Direct Database Access: You cannot run raw SQL queries against your database via the API. You must use the provided API endpoints.
- Security: Never hardcode your API keys in a public script. Use Google Apps Script's
PropertiesServiceto store keys securely.
Don't want to build your own dashboard? DentalCanvas already connects to your Open Dental data and shows you everything in a visual interface.
This article is provided by opendentalsupport.com, an independent community resource. We are not affiliated with Open Dental Software, Inc.