A location represents a physical practice through which all patient interactions occur; e.g. patient communication, booking an appointment, new patient intake.

API access is provided on a per location basis. You can add or submit other locations for installation in the Developer Portal.

Resources that exist within a location require that you provide a location id as a parameter in each request. Specifying a location id that doesn't exist within the institution will result in a 404 Not Found response.


Store Subdomains and Locations Ids

Since you will likely be providing the subdomain and location_id in your requests often and these values are unlikely to change, it is a good idea to periodically perform a GET request to /locations and store the response data for reuse.

Important Location Configuration Flags

map_by_operatoryIf true, requires that bookings are performed taking operatory availability into account.
insert_appt_clientIf true, appointments created with this location will be pushed into the integrated system.
appt_types_map_by_operatoryIf true, appointment types map to operatories instead of providers

Locations Response

  "code": false,
  "description": [
  "error": [
  "data":  {
      "id": 1,
      "name": "General Practice - Dr. P. Sherman DDS",
      "subdomain": "example-subdomain",
      "locations": [
          "id": 7,
          "name": "Default",
          "institution_id": 1,
          "street_address": "123 Law St",
          "street_address_2": "85335, North East",
          "city": "New York",
          "state": "NY",
          "zip_code": "54700",
          "created_at": "2020-06-05T20:16:57.007Z",
          "updated_at": "2020-06-05T20:16:57.007Z",
          "latitude": 37.7775028,
          "longitude": -122.3970603,
          "phone_number": "8888750851",
          "foreign_id": "1",
          "foreign_id_type": "--DataSource-",
          "email": "[email protected]",
          "tz": "America/Los_Angeles",
          "last_sync_time": "2020-06-17T19:23:49.176Z",
          "insert_appt_client": "true",
          "map_by_operatory": "true",
          "set_availability_by_operatory": false,
          "inactive": "false"
  "count": 2