NAV
Ruby Shell

Appointment API v1

The Oracle Health Data Intelligence Appointment API allows systems to interact with appointment data in Health Data Intelligence.

Notes:

URL: https://cernerdemo.api.us-1.healtheintent.com/appointment/v1

Appointment

A booking of a healthcare event among patients, practitioners, related persons, or devices for a specific date and time. This booking may result in one or more encounters. The visit scheduled by an appointment may be in person or remote (by phone, video conference, and so on).

Get Appointment

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/d4c283a6-1a5c-4427-82ce-ef4ef8e35d30/appointments/922335064680677580716e7c2f791facb99c67ad147fc3fe34b61b1b56ac3fcac762ed2f7f75c80a', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/d4c283a6-1a5c-4427-82ce-ef4ef8e35d30/appointments/922335064680677580716e7c2f791facb99c67ad147fc3fe34b61b1b56ac3fcac762ed2f7f75c80a \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "id": "e6ca33a808884274f609b5ae4d5f77c71a1b0b7d3f1d071c2acb78e18c1e6d56",
  "type": {
    "codings": [
      {
        "code": "FOLLOWUP",
        "system": "http://terminology.hl7.org/CodeSystem/v2-0276",
        "display": "A follow up visit from a previous appointment"
      }
    ]
  },
  "start": "2013-03-21T15:30:00Z",
  "end": "2013-03-21T15:30:00Z",
  "status": {
    "codings": [
      {
        "code": "4536",
        "system": "urn:cerner:coding:codingsystem:codeset:14233",
        "display": "Checked In"
      },
      {
        "code": "checked-in",
        "system": "http://hl7.org/fhir/appointmentstatus",
        "display": "Checked In"
      }
    ]
  },
  "reasons": [
    {
      "concept": {
        "codings": [
          {
            "code": "1023001",
            "system": "http://snomed.info/sct",
            "display": "Apnea"
          }
        ],
        "text": "Trouble Sleeping"
      }
    }
  ],
  "participants": {
    "type": {
      "codings": [
        {
          "code": "12345",
          "system": "urn:cerner:coding:codingsystem:codeset:14250",
          "display": "Sleep Therapist"
        }
      ]
    },
    "actor": {
      "provider": {
        "aliases": [
          {
            "value": "874635264",
            "system": "2.16.840.1.113883.4.6",
            "type": "NPI"
          }
        ],
        "name": {
          "formatted": "Last Name, First Name"
        }
      },
      "location": {
        "name": "Acme East Clinic"
      }
    }
  },
  "meta": {
    "standardizedDataPartitionId": "dd60e562-e662-41a9-9e56-33ad77f4744c"
  }
}

GET /populations/{populationId}/patients/{patientId}/appointments/{appointmentId}

Returns the requested appointment.

Parameters

Parameter In Type Required Default Description Accepted Values
patientId path string true N/A The ID of the patient that is the subject of the appointment. -
populationId path string true N/A The ID of the population containing the patient that is the subject of the appointment. -
appointmentId path string true N/A The ID that uniquely identifies the appointment for the patient. -

Response Statuses

Status Meaning Description Schema
200 OK OK Appointment
400 Bad Request Bad request Error
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
404 Not Found Not found Error

Retrieve a List of Appointments

Example Request:


require 'httparty' # Using HTTParty 0.16.2
require 'json'

headers = {
  'Authorization' => '<auth_header>',
  'Accept' => 'application/json'
} 

result = HTTParty.get('https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/a2f6a16d-1331-4ccc-8f70-6c4d953ba70b/appointments', headers: headers)

print JSON.pretty_generate(result)


# You can also use wget
curl -X GET https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/a2f6a16d-1331-4ccc-8f70-6c4d953ba70b/appointments \
-H 'Authorization: {auth_header}' \
-H 'Accept: application/json'

Example response

{
  "items": [
    {
      "id": "e6ca33a808884274f609b5ae4d5f77c71a1b0b7d3f1d071c2acb78e18c1e6d56",
      "type": {
        "codings": [
          {
            "code": "FOLLOWUP",
            "system": "http://terminology.hl7.org/CodeSystem/v2-0276",
            "display": "A follow up visit from a previous appointment"
          }
        ]
      },
      "start": "2013-03-21T15:30:00Z",
      "end": "2013-03-21T15:30:00Z",
      "status": {
        "codings": [
          {
            "code": "4536",
            "system": "urn:cerner:coding:codingsystem:codeset:14233",
            "display": "Checked In"
          },
          {
            "code": "checked-in",
            "system": "http://hl7.org/fhir/appointmentstatus",
            "display": "Checked In"
          }
        ]
      },
      "reasons": [
        {
          "concept": {
            "codings": [
              {
                "code": "1023001",
                "system": "http://snomed.info/sct",
                "display": "Apnea"
              }
            ],
            "text": "Trouble Sleeping"
          }
        }
      ],
      "participants": {
        "type": {
          "codings": [
            {
              "code": "12345",
              "system": "urn:cerner:coding:codingsystem:codeset:14250",
              "display": "Sleep Therapist"
            }
          ]
        },
        "actor": {
          "provider": {
            "aliases": [
              {
                "value": "874635264",
                "system": "2.16.840.1.113883.4.6",
                "type": "NPI"
              }
            ],
            "name": {
              "formatted": "Last Name, First Name"
            }
          },
          "location": {
            "name": "Acme East Clinic"
          }
        }
      },
      "meta": {
        "standardizedDataPartitionId": "dd60e562-e662-41a9-9e56-33ad77f4744c"
      }
    }
  ],
  "firstLink": "https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/a2f6a16d-1331-4ccc-8f70-6c4d953ba70b/appointments?limit=20",
  "nextLink": "https://cernerdemo.api.us-1.healtheintent.com/appointment/v1/populations/1424e81d-8cea-4d6b-b140-d6630b684a58/patients/a2f6a16d-1331-4ccc-8f70-6c4d953ba70b/appointments?cursor=e6ca33a808884274f609b5ae4d5f77c71a1b0b7d3f1d071c2acb78e18c1e6d56&limit=20"
}

GET /populations/{populationId}/patients/{patientId}/appointments

Retrieves a list of the appointments for a given patient order by start descending.

Parameters

Parameter In Type Required Default Description Accepted Values
patientId path string true N/A The ID of the patient that is the subject of the appointment. -
populationId path string true N/A The ID of the population containing the patient that is the subject of the appointment. -
cursor query string false N/A The last item on the list in the response from the previous request. If you specify this parameter, the response begins with the next item on the list. -
limit query integer(int32) false 20 The maximum number of results to display per page. The minimum limit is 1. The maximum limit is 100. -

Response Statuses

Status Meaning Description Schema
200 OK OK Appointments
400 Bad Request Bad request Error
401 Unauthorized Unauthorized Error
403 Forbidden Forbidden Error
404 Not Found Not found Error

Schema Definitions

Appointment

Name Type Required Description Accepted Values
id string true The ID of the appointment resource that is requested. -
type CodeableConcept false The style of appointment or patient that is booked in the slot, for example, routine walk-in
start string false The date and time that the appointment is to take place. The value adheres to the ISO-8601 international standard using the Extended Date/Time format, can vary in precision between YYYY and YYYY-MM-DDThh:mm:ss.SSSZ, and is in UTC when a time component is present. -
end string false The date and time that the appointment is to conclude, if known. The value adheres to the ISO-8601 international standard using the Extended Date/Time format, can vary in precision between YYYY and YYYY-MM-DDThh:mm:ss.SSSZ, and is in UTC when a time component is present. -
status CodeableConcept false The overall status of the appointment, for example, proposed pending
reasons [AppointmentReasonCodeableReference] false The reasons that this appointment is being (or was) scheduled. This reason is more clinical than administrative. -
participants [Participant] false A list of participants involved in the appointment. -
meta Meta false Metadata about the resource. -

CodeableConcept

Name Type Required Description Accepted Values
codings [Code] false A list of codings representing the concept. -
text string false A localized or annotated description of the element provided by a source system or display text associated with one of the codes on the codings or sourceCodings list. -

Code

Name Type Required Description Accepted Values
code string true The unique ID of the code. -
display string false A human-readable representation of the code. -
system string true The ID of the coding system that gives meaning to the code. -

AppointmentReasonCodeableReference

Name Type Required Description Accepted Values
concept CodeableConcept false A reference to a concept. -

Participant

Name Type Required Description Accepted Values
actor Actor true The individual, device, location, or service participating in the appointment. -
type CodeableConcept false The roles of the participant in the appointment. -

Actor

Name Type Required Description Accepted Values
provider Provider false Valued when the participant is a human practitioner. -
location Location false Valued when the participant is a location. -

Provider

Name Type Required Description Accepted Values
aliases [ProviderAlias] false A list of IDs of the provider, such as the ten-digit National Provider Identifier (NPI) or the Drug Enforcement Administration (DEA) number. -
name ProviderName false The attributes of the provider name. -

ProviderAlias

Name Type Required Description Accepted Values
system string false The authority responsible for assigning the alias value. Alias values are unique within this system namespace but not across systems. -
value string false The unique ID of the provider in the context of the system or assigning authority. -
type string true The type of alias. DEA, EXTERNAL, NPI, SL, TAX, UPIN

ProviderName

Name Type Required Description Accepted Values
prefix string false The parts that come before the name such as Dr., Mr., or Mrs. -
given [string] true A list of given name portions of the person’s name. For example, if a person has a first name and a middle name, the first name should be the first item on the list and the middle name should be the second item on the list. -
family [string] true A list of family (last) name portions of the person’s name. Some people have multiple family names. -
suffix string false The parts that come after the name such as MD, III, or Jr. -
formatted string false The person’s fully-formatted name. -

Location

Name Type Required Description Accepted Values
name string false The name of the location. -

Meta

Name Type Required Description Accepted Values
standardizedDataPartitionId string false The ID of the data partition containing the standardized record that this resource represents. -

Error

Name Type Required Description Accepted Values
code integer(int32) true The HTTP response status code that represents the error. -
message string true A human-readable description of the error. -
errorDetails [ErrorDetail] false A list of additional error details. -

ErrorDetail

Name Type Required Description Accepted Values
domain string false A subsystem or context where an error occurred. -
reason string false A codified value that represents the specific error that caused the current error status. -
message string false A human-readable description of an error. -
locationType string false The location or type of the field that caused an error. query, header, path, formData, body
location string false The name of the field that caused an error. -

Appointments

Name Type Required Description Accepted Values
items [Appointment] true [Appointment model] -
firstLink string true The first page of results. -
nextLink string false The next page of results. -