Elation Health Physicians API

Provider and staff management

Operations 12

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /physicians/ Find physicians by name or NPI (legacy) · Find Physicians #
Ask an LLM
“How do I look up a physician in the practice by NPI on the older endpoint?”
“Can I search legacy physician records by first and last name?”
Tell an agent
Find the physician with NPI {npi} using the legacy search.
Search older physician records for {first_name} {last_name}.
GET /physicians/{id}/ Get a physician (legacy) · Get Physician #
Ask an LLM
“How do I pull one physician's profile from the unversioned route?”
“What credentials and license info does the legacy physician record hold?”
Tell an agent
Get legacy physician {id}.
Show license and credentials for older physician record {id}.
PUT /physicians/{id}/ Replace a physician profile (legacy) · Update Physician #
Ask an LLM
“How do I overwrite a physician's profile, including telehealth settings, on the older PUT route?”
“Which fields are mandatory for a legacy physician replace?”
Tell an agent
Replace legacy physician {id} with name {first_name} {last_name} and email {email}.
Overwrite older physician profile {id} with telehealth settings {telehealth_settings}.
PATCH /physicians/{id}/ Patch a physician profile (legacy) · Update Physician #
Ask an LLM
“Can I change just a physician's license state on the older PATCH route?”
“How do I tweak one field on a legacy physician without resending the rest?”
Tell an agent
Patch legacy physician {id} with license {license} in state {license_state}.
Set credentials {credentials} on older physician {id}.
PUT /physicians/{id}/availabilities Update physician availabilities (legacy) · Update Physician Availabilities #
Ask an LLM
“Is there an older unversioned route for setting a physician's available hours?”
“Which legacy call writes physician availability?”
Tell an agent
Write new availability windows for physician {id} through the legacy availabilities route.
Push older-style open hours for a physician.
GET /physicians/{id}/availabilities Get physician availabilities (legacy) · Get Physician Availabilities #
Ask an LLM
“Is there an older unversioned route for reading when a physician is available?”
“Where does the legacy API expose physician scheduling availability?”
Tell an agent
Read physician {id}'s availability from the legacy availabilities route.
Pull older-style availability windows for a physician.
GET /api/2.0/physicians/ List physicians with paging · List Physicians #
Ask an LLM
“How do I page through every physician in the v2.0 API?”
“Can I sort the v2.0 physician list and filter it by NPI?”
Tell an agent
List v2.0 physicians with NPI {npi}.
Page through physicians {limit} at a time from offset {offset}, ordered by {order_by}.
GET /api/2.0/physicians/{id}/ Retrieve a physician from the v2.0 API · Retrieve Physician #
Ask an LLM
“How do I fetch one physician by ID from /api/2.0?”
“Does the v2.0 physician record include specialty and fax?”
Tell an agent
Retrieve v2.0 physician {id}.
Show /api/2.0 physician {id} with specialty and practice.
PATCH /api/2.0/physicians/{id}/ Partially update a physician in the v2.0 API · Partially Update Physician #
Ask an LLM
“Can I deactivate a physician in the v2.0 API without replacing the record?”
“How do I change only a physician's specialty through /api/2.0?”
Tell an agent
Set v2.0 physician {id} active status to {is_active}.
Change the specialty of /api/2.0 physician {id} to {specialty}.
PUT /api/2.0/physicians/{id}/ Replace a physician in the v2.0 API · Update Physician #
Ask an LLM
“How do I fully replace a physician record in /api/2.0, including NPI and license?”
“What does the v2.0 physician replace require?”
Tell an agent
Replace v2.0 physician {id} with NPI {npi}, license {license} in {license_state} and email {email}.
Overwrite /api/2.0 physician {id} with specialty {specialty} and fax {fax}.
GET /api/2.0/physicians/{id}/availabilities/ Get a physician's availabilities · Get Physician Availabilities #
Ask an LLM
“When is a given physician available to see patients?”
“How do I read a physician's availability through /api/2.0?”
Tell an agent
Get the availabilities for v2.0 physician {id}.
Show when physician {id} is open for appointments.
PUT /api/2.0/physicians/{id}/availabilities/ Update a physician's availabilities · Update Physician Availabilities #
Ask an LLM
“How do I set a physician's available hours through /api/2.0?”
“Can I replace a physician's availability windows in one call?”
Tell an agent
Set physician {id}'s availabilities to {availabilities}.
Replace the v2.0 open hours for physician {id}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/elation-health:elation-physicians-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

elation-health-physicians-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Elation Health Physicians API
  version: '1.0'
  description: 'Operations tagged Physicians across 3 of this provider''s published API definitions: elation-api-settings.json, elation-health-api-full-openapi.yaml, elation-health-elation-health-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://sandbox.elationemr.com/api/2.0
- description: Sandbox Server
  url: https://sandbox.elationemr.com
- description: Production Server
  url: https://api.app.elationemr.com
- url: https://app.elationemr.com/api/2.0
  description: Production
tags:
- name: Physicians
paths:
  /physicians/:
    get:
      summary: Find Physicians
      description: ''
      operationId: find-physicians
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      - name: first_name
        in: query
        schema:
          type: string
      - name: last_name
        in: query
        schema:
          type: string
      - name: npi
        in: query
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      x-readme:
        code-samples:
        - language: python
          code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = \"Bearer %s\" % (access_token)\n\nresp = requests.get(\"https://sandbox.elationemr.com/api/2.0/physicians/\",\n                    headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
        samples-languages:
        - python
      tags:
      - Physicians
      security:
      - sec0: []
    servers:
    - url: https://sandbox.elationemr.com/api/2.0
  /physicians/{id}/:
    get:
      summary: Get Physician
      description: ''
      operationId: get-physician
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      - name: id
        in: path
        description: the physician ID
        schema:
          type: string
        required: true
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n  // see Physician object\n}"
              schema:
                type: object
                properties: {}
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      x-readme:
        code-samples:
        - language: python
          code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = \"Bearer %s\" % (access_token)\n\nresp = requests.get(\"https://sandbox.elationemr.com/api/2.0/physicians/123/\",\n                    headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
        samples-languages:
        - python
      tags:
      - Physicians
      security:
      - sec0: []
    put:
      summary: Update Physician
      description: ''
      operationId: update-physician-wip
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      - name: id
        in: path
        description: the physician ID
        schema:
          type: string
        required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - first_name
              - last_name
              - email
              properties:
                first_name:
                  type: string
                  description: 'Maximum length: 50 characters.'
                last_name:
                  type: string
                  description: 'Maximum length: 60 characters.'
                email:
                  type: string
                metadata:
                  type: object
                  description: nullable. See Metadata section
                  properties:
                    object_id:
                      type: integer
                      description: for updating object must provide 'object_id' or 'data'
                      format: int32
                    data:
                      type: string
                      description: for updating object must provide 'object_id' or 'data'
                    object_web_link:
                      type: string
                      description: for updating object must provide 'object_id' or 'data'
                npi:
                  type: string
                license:
                  type: string
                license_state:
                  type: string
                credentials:
                  type: string
                telehealth_settings:
                  type: object
                  description: The telehealth settings for the physician
                  properties:
                    default_telehealth_instructions:
                      type: string
                      description: The default instructions populated for telehealth appointments
                    zoom_join_url:
                      type: string
                      description: If the provider is set up with Zoom® integration, then this is their personal meeting url
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n    \"id\": 140758834544642,\n    \"first_name\": \"Christopher\",\n    \"last_name\": \"Morales\",\n    \"credentials\": \"cred\",\n    \"is_active\": true,\n    \"email\": \"betle+Riley._Love_and_Chavez@elationhealth.com\",\n    \"npi\": \"155532\",\n    \"license\": \"20977\",\n    \"license_state\": \"YY\",\n    \"specialty\": null,\n    \"user_id\": 64,\n    \"practice\": 140758831005700,\n    \"metadata\": {\n        \"object_id\": \"1234\",\n        \"data\": \"text\",\n        \"object_web_link\": \"link\"\n    }\n}"
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    example: 140758834544642
                    default: 0
                  first_name:
                    type: string
                    example: Christopher
                  last_name:
                    type: string
                    example: Morales
                  credentials:
                    type: string
                    example: cred
                  is_active:
                    type: boolean
                    example: true
                    default: true
                  email:
                    type: string
                    example: betle+Riley._Love_and_Chavez@elationhealth.com
                  npi:
                    type: string
                    example: '155532'
                  license:
                    type: string
                    example: '20977'
                  license_state:
                    type: string
                    example: YY
                  specialty: {}
                  user_id:
                    type: integer
                    example: 64
                    default: 0
                  practice:
                    type: integer
                    example: 140758831005700
                    default: 0
                  metadata:
                    type: object
                    properties:
                      object_id:
                        type: string
                        example: '1234'
                      data:
                        type: string
                        example: text
                      object_web_link:
                        type: string
                        example: link
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      x-readme:
        code-samples:
        - language: python
          code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = \"Bearer %s\" % (access_token)\n\ndata = {\n    \"first_name\": \"Christopher\",\n    \"last_name\": \"Morales\",\n    \"credentials\": \"cred\",\n    \"email\": \"betle+Riley._Love_and_Chavez@elationhealth.com\",\n    \"npi\": \"155532\",\n    \"license\": \"20977\",\n    \"license_state\": \"YY\",\n    \"metadata\": {\n        \"object_id\": 1234, \n        \"data\": \"text\",\n        \"object_web_link\": \"link\"\n    }\n}\n\nresp = requests.put(\"https://sandbox.elationemr.com/api/2.0/physicians/123/\",\n                    json=data,\n                    headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
        samples-languages:
        - python
      tags:
      - Physicians
      security:
      - sec0: []
    patch:
      summary: Update Physician
      description: ''
      operationId: update-physician-wip-1
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      - name: id
        in: path
        description: the physician ID
        schema:
          type: string
        required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                first_name:
                  type: string
                  description: 'The physicians first name. Maximum length: 50 characters.'
                last_name:
                  type: string
                  description: 'The physicians last name. Maximum length: 60 characters.'
                email:
                  type: string
                  description: The physicians email. Usually used for login.
                metadata:
                  type: object
                  description: nullable. See Metadata section
                  properties:
                    object_id:
                      type: integer
                      description: for updating object must provide 'object_id' or 'data'
                      format: int32
                    data:
                      type: string
                      description: for updating object must provide 'object_id' or 'data'
                    object_web_link:
                      type: string
                      description: for updating object must provide 'object_id' or 'data'
                npi:
                  type: string
                license:
                  type: string
                license_state:
                  type: string
                credentials:
                  type: string
                telehealth_settings:
                  type: object
                  description: The telehealth settings for the physician
                  properties:
                    default_telehealth_instructions:
                      type: string
                      description: The default instructions populated for telehealth appointments
                    zoom_join_url:
                      type: string
                      description: If the provider is set up with Zoom® integration, then this is their personal meeting url
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n    \"id\": 140758834544642,\n    \"first_name\": \"Christopher\",\n    \"last_name\": \"Morales\",\n    \"credentials\": \"cred\",\n    \"is_active\": true,\n    \"email\": \"betle+Riley._Love_and_Chavez@elationhealth.com\",\n    \"npi\": \"155532\",\n    \"license\": \"20977\",\n    \"license_state\": \"YY\",\n    \"specialty\": null,\n    \"user_id\": 64,\n    \"practice\": 140758831005700,\n    \"metadata\": {\n        \"object_id\": \"1234\",\n        \"data\": \"text\",\n        \"object_web_link\": \"link\"\n    }\n}"
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    example: 140758834544642
                    default: 0
                  first_name:
                    type: string
                    example: Christopher
                  last_name:
                    type: string
                    example: Morales
                  credentials:
                    type: string
                    example: cred
                  is_active:
                    type: boolean
                    example: true
                    default: true
                  email:
                    type: string
                    example: betle+Riley._Love_and_Chavez@elationhealth.com
                  npi:
                    type: string
                    example: '155532'
                  license:
                    type: string
                    example: '20977'
                  license_state:
                    type: string
                    example: YY
                  specialty: {}
                  user_id:
                    type: integer
                    example: 64
                    default: 0
                  practice:
                    type: integer
                    example: 140758831005700
                    default: 0
                  metadata:
                    type: object
                    properties:
                      object_id:
                        type: string
                        example: '1234'
                      data:
                        type: string
                        example: text
                      object_web_link:
                        type: string
                        example: link
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      x-readme:
        code-samples:
        - language: python
          code: "import requests\nimport json\n\naccess_token = \"VFroUHsmrErlVI6nJ08Alwhri5RGCW\"\nauth_header = \"Bearer %s\" % (access_token)\n\ndata = {\n    \"first_name\": \"Christopher\",\n    \"last_name\": \"Morales\",\n    \"credentials\": \"cred\",\n    \"email\": \"betle+Riley._Love_and_Chavez@elationhealth.com\",\n    \"npi\": \"155532\",\n    \"license\": \"20977\",\n    \"license_state\": \"YY\",\n    \"metadata\": {\n        \"object_id\": 1234, \n        \"data\": \"text\",\n        \"object_web_link\": \"link\"\n    }\n}\n\nresp = requests.patch(\"https://sandbox.elationemr.com/api/2.0/physicians/123/\",\n                    json=data,\n                    headers={'Authorization': auth_header})\n\nprint resp.status_code\nprint json.dumps(json.loads(resp.content), indent=2)"
        samples-languages:
        - python
      tags:
      - Physicians
      security:
      - sec0: []
    servers:
    - url: https://sandbox.elationemr.com/api/2.0
  /physicians/{id}/availabilities:
    put:
      summary: Update Physician Availabilities
      description: ''
      operationId: update-physician-availabilities
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Physicians
      security:
      - sec0: []
    get:
      summary: Get Physician Availabilities
      description: ''
      operationId: get-physician-availabilities
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Physicians
      security:
      - sec0: []
    servers:
    - url: https://sandbox.elationemr.com/api/2.0
  /api/2.0/physicians/:
    get:
      operationId: physicians_list
      parameters:
      - in: query
        name: first_name
        schema:
          type: string
      - in: query
        name: last_name
        schema:
          type: string
      - description: Number of results to return per page.
        in: query
        name: limit
        required: false
        schema:
          type: integer
      - in: query
        name: npi
        schema:
          type: string
      - description: The initial index from which to return the results.
        in: query
        name: offset
        required: false
        schema:
          type: integer
      - description: Which field to use when ordering the results.
        in: query
        name: order_by
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedPhysicianList'
          description: ''
      security:
      - oauth2: []
      summary: List Physicians
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    servers:
    - description: Sandbox Server
      url: https://sandbox.elationemr.com
    - description: Production Server
      url: https://api.app.elationemr.com
  /api/2.0/physicians/{id}/:
    get:
      operationId: physicians_retrieve
      parameters:
      - in: path
        name: id
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Physician'
          description: ''
      security:
      - oauth2: []
      summary: Retrieve Physician
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    patch:
      description: Update an existing physician.
      operationId: physicians_partial_update
      parameters:
      - in: path
        name: id
        required: true
        schema:
          format: int64
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedPhysician'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Physician'
          description: ''
      security:
      - oauth2: []
      summary: Partially Update Physician
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    put:
      description: Replace an existing physician.
      operationId: physicians_update
      parameters:
      - in: path
        name: id
        required: true
        schema:
          format: int64
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Physician'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Physician'
          description: ''
      security:
      - oauth2: []
      summary: Update Physician
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    servers:
    - description: Sandbox Server
      url: https://sandbox.elationemr.com
    - description: Production Server
      url: https://api.app.elationemr.com
  /api/2.0/physicians/{id}/availabilities/:
    get:
      description: Get the availabilities for a physician
      operationId: physicians_availabilities_list
      parameters:
      - in: path
        name: id
        required: true
        schema:
          format: int64
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ProviderAvailabilityBlockSerializerPracticeTimeZone'
                type: array
          description: ''
      security:
      - oauth2: []
      summary: Get Physician Availabilities
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    put:
      description: Update the availabilities for a physician
      operationId: physicians_availabilities_update
      parameters:
      - in: path
        name: id
        required: true
        schema:
          format: int64
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              properties:
                availabilities:
                  items:
                    properties:
                      appointment_types:
                        items:
                          format: int64
                          type: integer
                        type: array
                      end_time:
                        format: time
                        type: string
                      service_location_id:
                        format: int64
                        nullable: true
                        type: integer
                      start_time:
                        format: time
                        type: string
                      weekday:
                        description: The day of the week the availability is for. 0 is Monday, 6 is Sunday.
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        - 5
                        - 6
                        type: integer
                    type: object
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ProviderAvailabilityBlock'
                type: array
          description: ''
      security:
      - oauth2: []
      summary: Update Physician Availabilities
      tags:
      - Physicians
      x-el8-docs-category: Practice API
      x-el8-docs-versions:
      - '2.1'
      - '2.0'
    servers:
    - description: Sandbox Server
      url: https://sandbox.elationemr.com
    - description: Production Server
      url: https://api.app.elationemr.com
components:
  schemas:
    Physician:
      properties:
        credentials:
          maxLength: 20
          type:
          - string
          - 'null'
        email:
          format: email
          type: string
        fax:
          description: The physician's fax number.
          readOnly: true
          type: string
        first_name:
          maxLength: 50
          type: string
        id:
          readOnly: true
          type: integer
        is_active:
          description: Whether or not the physician is still active at the practice.
          readOnly: true
          type: boolean
        last_name:
          maxLength: 60
          type: string
        license:
          type: string
        license_state:
          type: string
        metadata:
          properties:
            data:
              type: object
            object_id:
              type: string
            object_web_link:
              type: string
          type:
          - object
          - 'null'
        npi:
          type: string
        practice:
          format: int64
          readOnly: true
          type: integer
        specialty:
          readOnly: true
          type: string
        user_id:
          readOnly: true
          type:
          - integer
          - 'null'
      required:
      - email
      - first_name
      - last_name
      - license
      - license_state
      - npi
      type: object
    ProviderAvailabilityBlock:
      properties:
        end_time:
          format: time
          type: string
        id:
          readOnly: true
          type: integer
        provider_id:
          format: int64
          type: integer
        service_location_id:
          format: int64
          type:
          - integer
          - 'null'
        start_time:
          format: time
          type: string
        timezone:
          readOnly: true
          type: string
        use_service_location_timezone:
          type: boolean
        weekday:
          type: integer
      required:
      - end_time
      - provider_id
      - start_time
      - weekday
      type: object
    ProviderAvailabilityBlockSerializerPracticeTimeZone:
      properties:
        end_time:
          format: time
          type: string
        id:
          readOnly: true
          type: integer
        provider_id:
          format: int64
          type: integer
        service_location_id:
          format: int64
          type:
          - integer
          - 'null'
        start_time:
          format: time
          type: string
        timezone:
          readOnly: true
          type: string
        use_service_location_timezone:
          type: boolean
        weekday:
          type: integer
      required:
      - end_time
      - provider_id
      - start_time
      - weekday
      type: object
    PatchedPhysician:
      properties:
        credentials:
          maxLength: 20
          type:
          - string
          - 'null'
        email:
          format: email
          type: string
        fax:
          description: The physician's fax number.
          readOnly: true
          type: string
        first_name:
          maxLength: 50
          type: string
        id:
          readOnly: true
          type: integer
        is_active:
          description: Whether or not the physician is still active at the practice.
          readOnly: true
          type: boolean
        last_name:
          maxLength: 60
          type: string
        license:
          type: string
        license_state:
          type: string
        metadata:
          properties:
            data:
              type: object
            object_id:
              type: string
            object_web_link:
              type: string
          type:
          - object
          - 'null'
        npi:
          type: string
        practice:
          format: int64
          readOnly: true
          type: integer
        specialty:
          readOnly: true
          type: string
        user_id:
          readOnly: true
          type:
          - integer
          - 'null'
      type: object
    PaginatedPhysicianList:
      properties:
        count:
          example: 123
          type: integer
        next:
          example: http://api.example.org/accounts/?offset=400&limit=100
          format: uri
          nullable: true
          type: string
        previous:
          example: http://api.example.org/accounts/?offset=200&limit=100
          format: uri
          nullable: true
          type: string
        results:
          items:
            $ref: '#/components/schemas/Physician'
          type: array
      required:
      - results
      type: object
    Physician_2:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        first_name:
          type: string
        last_name:
          type: string
        npi:
          type: string
          maxLength: 10
          description: National Provider Identifier
        practice:
          type: integer
          description: Practice ID
        specialty:
          type: string
        credentials:
          type: string
        email:
          type: string
          format: email
        is_active:
          type: boolean
    PaginatedPhysicianList_2:
      allOf:
      - $ref: '#/components/schemas/PaginationMeta'
      - type: object
        properties:
          results:
            type: array
            items:
              $ref: '#/components/schemas/Physician_2'
    PaginationMeta:
      type: object
      properties:
        count:
          type: integer
          description: Total number of results
        next:
          type:
          - string
          - 'null'
          description: URL for next page
        previous:
          type:
          - string
          - 'null'
          description: URL for previous page
  parameters:
    limit:
      name: limit
      in: query
      schema:
        type: integer
        default: 25
      description: Number of results to return
    id:
      name: id
      in: path
      required: true
      schema:
        type: integer
      description: Unique resource identifier
    offset:
      name: offset
      in: query
      schema:
        type: integer
        default: 0
      description: Pagination offset
  securitySchemes:
    sec0:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://example.com/oauth2/token
          scopes: {}
    oauth2:
      flows:
        clientCredentials:
          scopes:
            act_as_user: Impersonate a provider via X-On-Behalf-Of (combinable with apiv2 or system scopes)
            apiv2: Full access to the API
            system/{resource_name}.read: Read access to a specific resource
            system/{resource_name}.write: Write access to a specific resource
          tokenUrl: /api/2.0/oauth2/token/
      type: oauth2
x-refined-from:
- elation-api-settings.json
- elation-health-api-full-openapi.yaml
- elation-health-elation-health-api-openapi.yml
x-readme:
  headers: []
x-readme-fauxas: true