# HeyDonto API Documentation API documentation for HeyDonto API Version: 1.0 ## Servers Sandbox ``` https://api-staging.heydonto.com ``` Production ``` https://api.heydonto.com ``` ## Security ### bearer Type: http Scheme: bearer Bearer Format: JWT ## Download OpenAPI description [HeyDonto API Documentation](https://docs.heydonto.com/_bundle/apis/heydonto/openapi.yaml) ## Site Appointment Types ### Get unique appointment types across ALL appointments (no filters). - [GET /site/{siteId}/appointment-types](https://docs.heydonto.com/apis/heydonto/openapi/site-appointment-types/siteappointmenttypescontroller_getsiteappointmenttypes.md) ## Appointment Type ### Get all appointment types - [GET /appointment-type](https://docs.heydonto.com/apis/heydonto/openapi/appointment-type/appointmenttypecontroller_findappointmenttype.md) ### Create a new appointment type - [POST /appointment-type](https://docs.heydonto.com/apis/heydonto/openapi/appointment-type/appointmenttypecontroller_createappointmenttype.md) ### Update an existing appointment type - [PUT /appointment-type/{appointmentTypeId}](https://docs.heydonto.com/apis/heydonto/openapi/appointment-type/appointmenttypecontroller_updateappointmenttype.md) ### Delete an appointment type - [DELETE /appointment-type/{appointmentTypeId}](https://docs.heydonto.com/apis/heydonto/openapi/appointment-type/appointmenttypecontroller_deleteappointmenttype.md) ## Brands ### Retrieve all brands with optional filters - [GET /brands](https://docs.heydonto.com/apis/heydonto/openapi/brands/brandcontroller_findbrands.md) ### Create a new brand - [POST /brands](https://docs.heydonto.com/apis/heydonto/openapi/brands/brandcontroller_createbrandasadmin.md) ### Retrieve a brand by ID - [GET /brands/{brandId}](https://docs.heydonto.com/apis/heydonto/openapi/brands/brandcontroller_findbrand.md) ### Update an existing brand - [PUT /brands/{brandId}](https://docs.heydonto.com/apis/heydonto/openapi/brands/brandcontroller_updatebrandasadmin.md) ### Delete a brand by ID - [DELETE /brands/{brandId}](https://docs.heydonto.com/apis/heydonto/openapi/brands/brandcontroller_deletebrand.md) ## Dental Practices ### Retrieve all dental practices - [GET /dental-practices](https://docs.heydonto.com/apis/heydonto/openapi/dental-practices/dentalpracticecontroller_finddentalpractice.md) ### Create a new dental practice - [POST /dental-practices](https://docs.heydonto.com/apis/heydonto/openapi/dental-practices/dentalpracticecontroller_createdentalpractice.md) ### Update an existing dental practice - [PUT /dental-practices/{dentalPracticeId}](https://docs.heydonto.com/apis/heydonto/openapi/dental-practices/dentalpracticecontroller_updatedentalpractice.md) ### Delete a dental practice - [DELETE /dental-practices/{dentalPracticeId}](https://docs.heydonto.com/apis/heydonto/openapi/dental-practices/dentalpracticecontroller_deletedentalpractice.md) ## Dental Services ### Retrieve all dental services - [GET /dental-service](https://docs.heydonto.com/apis/heydonto/openapi/dental-services/dentalservicecontroller_finddentalservice.md) ### Create a new dental service - [POST /dental-service](https://docs.heydonto.com/apis/heydonto/openapi/dental-services/dentalservicecontroller_createdentalservice.md) ### Update an existing dental service - [PUT /dental-service/{dentalServiceId}](https://docs.heydonto.com/apis/heydonto/openapi/dental-services/dentalservicecontroller_updatedentalservice.md) ### Delete a dental service - [DELETE /dental-service/{dentalServiceId}](https://docs.heydonto.com/apis/heydonto/openapi/dental-services/dentalservicecontroller_deletedentalservice.md) ## Organizations ### Retrieve all organizations with optional filters - [GET /organization](https://docs.heydonto.com/apis/heydonto/openapi/organizations/organizationcontroller_findorganizations.md) ### Create a new organization - [POST /organization](https://docs.heydonto.com/apis/heydonto/openapi/organizations/organizationcontroller_createorganization.md) ### Retrieve an organization by ID - [GET /organization/{organizationId}](https://docs.heydonto.com/apis/heydonto/openapi/organizations/organizationcontroller_findorganization.md) ### Update an existing organization - [PUT /organization/{organizationId}](https://docs.heydonto.com/apis/heydonto/openapi/organizations/organizationcontroller_updateorganization.md) ### Delete an organization - [DELETE /organization/{organizationId}](https://docs.heydonto.com/apis/heydonto/openapi/organizations/organizationcontroller_deleteorganization.md) ## Practice Management Systems ### Retrieve all practice management systems - [GET /practice-management-system](https://docs.heydonto.com/apis/heydonto/openapi/practice-management-systems/practicemanagementsystemcontroller_findpracticemanagementsystem.md) ### Create a new practice management system - [POST /practice-management-system](https://docs.heydonto.com/apis/heydonto/openapi/practice-management-systems/practicemanagementsystemcontroller_createpracticemanagementsystem.md) ### Update an existing practice management system - [PUT /practice-management-system/{practiceManagementSystemId}](https://docs.heydonto.com/apis/heydonto/openapi/practice-management-systems/practicemanagementsystemcontroller_updatepracticemanagementsystem.md) ### Delete a practice management system - [DELETE /practice-management-system/{practiceManagementSystemId}](https://docs.heydonto.com/apis/heydonto/openapi/practice-management-systems/practicemanagementsystemcontroller_deletepracticemanagementsystem.md) ## Stroage ### StorageController_findByPath - [GET /storage/path](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_findbypath.md) ### StorageController_findByPublicPath - [GET /storage/public-access](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_findbypublicpath.md) ### Download synchronizer active version - [GET /storage/synchronizer/download/active](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_downloadsynchronizeractiveversion.md): Downloads active version of the synchronizer from public storage ### Download synchronizer version by path - [GET /storage/synchronizer/download/{version}](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_downloadsynchronizerversionbypath.md): Downloads a specific version of the synchronizer from public storage ### Download a GCS folder as a zip file - [GET /storage/folder](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_downloadfolderaszip.md): Bundles all files in a GCS folder into a zip file and downloads it ### StorageController_findOne - [GET /storage/{id}](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_findone.md) ### StorageController_remove - [DELETE /storage/{id}](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_remove.md) ### StorageController_create - [POST /storage](https://docs.heydonto.com/apis/heydonto/openapi/stroage/storagecontroller_create.md) ## Site Assistants ### Retrieve all site assistants for a site - [GET /site/{siteId}/assistant](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_findsites.md) ### Create a new site assistant - [POST /site/{siteId}/assistant](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_createsiteassistant.md) ### Retrieve a site assistant by ID - [GET /site/{siteId}/assistant/{siteAssistantId}](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_findsite.md) ### Update an existing site assistant - [PUT /site/{siteId}/assistant/{siteAssistantId}](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_updatesiteassistant.md) ### Delete a site assistant - [DELETE /site/{siteId}/assistant/{siteAssistantId}](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_deletesiteassistant.md) ### Upload a file to the site assistant - [POST /site/{siteId}/assistant/{siteAssistantId}/files](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_createsiteassistantfile.md) ### Delete a file associated with the site assistant - [DELETE /site/{siteId}/assistant/{siteAssistantId}/files/{assistantFileId}](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_deletesiteassistantfile.md) ### Send a chat message to the site assistant - [POST /site/{siteId}/assistant/{siteAssistantId}/chat](https://docs.heydonto.com/apis/heydonto/openapi/site-assistants/siteassistantcontroller_sendsiteassistantchatmessage.md) ## Sites ### Retrieve all sites with optional filters - [GET /site](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_findsites.md) ### Create a new site - [POST /site](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_createsite.md) ### Retrieve a site by ID - [GET /site/{siteId}](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_findsite.md) ### Update an existing site - [PUT /site/{siteId}](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_updatesite.md) ### Delete a site - [DELETE /site/{siteId}](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_deletesite.md) ### Retrieve active site analytics (admin only) - [GET /site/billing-analytics-admin](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_getadminbillinganalytics.md): Returns sites grouped by clientAccountId with optional date filters. ### Retrieve active site analytics for client account users (or admin) - [GET /site/billing-analytics-client-account](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_getclientaccountbillinganalytics.md): If the user is a ClientAccount user, returns only the clientAccountIds they have access to. An Admin can also use this endpoint, seeing all data if no clientAccountIds is provided. ### Reset the FHIR store for a site - [POST /site/{siteId}/fhir-reset](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_resetfhirstore.md) ### Accept the integration TOS for a site - [POST /site/integration-tos/accept](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_acceptintegrationtos.md) ### Resend the integration TOS for a site - [POST /site/{siteId}/integration-tos/resend](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_resendintegrationtos.md) ### Retrieve the list of site FHIR mapping state records - [GET /site/{siteId}/fhir-mapping-state](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_getfhirmappingstate.md) ### Retrieve the list of distinct FHIR resource types for the given site ID - [GET /site/{siteId}/fhir-mapping-state/resource-types](https://docs.heydonto.com/apis/heydonto/openapi/sites/sitecontroller_getdistinctfhirresourcetypes.md) ## Codes ### Retrieve all codes - [GET /code](https://docs.heydonto.com/apis/heydonto/openapi/codes/codecontroller_findcode.md) ### Create a new code - [POST /code](https://docs.heydonto.com/apis/heydonto/openapi/codes/codecontroller_createcode.md) ### Update an existing code - [PUT /code/{codeId}](https://docs.heydonto.com/apis/heydonto/openapi/codes/codecontroller_updatecode.md) ### Delete a code - [DELETE /code/{codeId}](https://docs.heydonto.com/apis/heydonto/openapi/codes/codecontroller_deletecode.md) ## Periomeasure ### Retrieve site's all periomeasures - [GET /site/{siteId}/periomeasure](https://docs.heydonto.com/apis/heydonto/openapi/periomeasure/periomeasurecontroller_getperiomeasures.md) ### Create site periomeasure - [POST /site/{siteId}/periomeasure](https://docs.heydonto.com/apis/heydonto/openapi/periomeasure/periomeasurecontroller_createperiomeasure.md) ### Retrieve site's periomeasure by id - [GET /site/{siteId}/periomeasure/{sitePeriomeasureId}](https://docs.heydonto.com/apis/heydonto/openapi/periomeasure/periomeasurecontroller_getperiomeasure.md) ### Update an existing site periomeasure - [PUT /site/{siteId}/periomeasure/{sitePeriomeasureId}](https://docs.heydonto.com/apis/heydonto/openapi/periomeasure/periomeasurecontroller_updateperiomeasure.md) ### Delete a site periomeasure by its ID - [DELETE /site/{siteId}/periomeasure/{sitePeriomeasureId}](https://docs.heydonto.com/apis/heydonto/openapi/periomeasure/periomeasurecontroller_deleteperiomeasure.md) ## Availability ### Compute open availability slots from schedules & appointments - [GET /site/{siteId}/availability](https://docs.heydonto.com/apis/heydonto/openapi/availability/availabilitycontroller_getavailability.md): Returns available time slots based on schedules and existing appointments ## Users ### Retrieve all users with optional filters and pagination - [GET /users](https://docs.heydonto.com/apis/heydonto/openapi/users/userscontroller_findusers.md) ### Create a new user - [POST /users](https://docs.heydonto.com/apis/heydonto/openapi/users/userscontroller_createuser.md) ### Update a user - [PUT /users/{userId}](https://docs.heydonto.com/apis/heydonto/openapi/users/userscontroller_updateuser.md) ### Delete a user - [DELETE /users/{userId}](https://docs.heydonto.com/apis/heydonto/openapi/users/userscontroller_deleteuser.md) ### Resend invitation email to a user - [POST /users/{userId}/resend-invitation](https://docs.heydonto.com/apis/heydonto/openapi/users/userscontroller_resendinvitation.md) ## Billing Information ### Get list of billing information filtered - [GET /billing-information](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_findbillinginformationwithmissedpayments.md) ### Create new billing information - [POST /billing-information](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_createbillinginformation.md) ### Update billing information - [PUT /billing-information/{id}](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_updatebillinginformation.md) ### Get billing information by ID - [GET /billing-information/{id}](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_findbillinginformationbyid.md) ### Delete stripe customer & local billing information - [DELETE /billing-information/{id}](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_deletebillinginformationfromstripe.md) ### Get billing information by client account ID - [GET /billing-information/client-account/{clientAccountId}](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_findbillinginformationbyclientaccountid.md) ### Get billing information by client account ID - [GET /billing-information/me/client-account/{clientAccountId}](https://docs.heydonto.com/apis/heydonto/openapi/billing-information/billinginformationcontroller_findbillinginformationforuser.md)