Create an appointment
/Appointment
Creates a new appointment.
Note:
- Only the body fields mentioned below are supported. Unsupported fields are ignored, or can result in errors.
Appointment.status
must be set toproposed
orbooked
.Appointment.reasonCode
, if set, must be a list containing exactly one CodeableConcept.- When
Appointment.status
is set toproposed
: Appointment.serviceType
must be a list containing exactly one CodeableConcept.Appointment.participant
must be a list containing exactly one patient participant and at least one location participant.Appointment.participant.actor
must be a reference to a patient or a location.Appointment.participant.status
must be set toneeds-action
.- When
Appointment.status
is set tobooked
: Appointment.slot
must be a list containing exactly one reference to the Slot in which this appointment is being booked.Appointment.slot[0].reference
specifies an availability in the scheduling system, which indicates details such as practitioner, location, and time.Appointment.participant
must be a list containing exactly one patient participant.Appointment.participant.actor
must be a reference to a patient.Appointment.participant.status
must be set toaccepted
.Appointment.participant.type
must not be set.- The
ETag
response header indicates the currentIf-Match
version to use on subsequent updates.
Appointment.requestedPeriod
must be a list containing a single period. Both Appointment.requestedPeriod.start
and Appointment.requestedPeriod.end
must be set.
Authorization Types
This operation supports the following authorization types:
Request
- application/fhir+json
-
Authorization(required): string
Contains the credentials to authenticate a consumer to the service. The credentials should be the OAuth2 Bearer Token.
-
accept(required): string
The media type to be requested. See what the resource's operation produces for what is supported.
object
-
comment:
string
Additional text to aid in facilitating the appointment.
Example:Further explain MRI results
-
participant(required):
array participant
Minimum Number of Items:
1
Participants involved in appointment.
The
Participant.type
must not be set. -
reasonCode:
array reasonCode
Minimum Number of Items:
1
Maximum Number of Items:1
Coded reason this appointment is scheduled.
-
requestedPeriod:
array requestedPeriod
Minimum Number of Items:
1
Potential date and time intervals requested to allocate the appointment within.
Required when
Appointment.status
is set toproposed
. -
resourceType(required):
string
Allowed Values:
[ "Appointment" ]
The type of the FHIR resource.
-
serviceCategory:
object serviceCategory
A CodeableConcept representing the service that is to be performed during this appointment.
-
serviceType:
array serviceType
Minimum Number of Items:
1
Maximum Number of Items:1
The specific service that is to be performed during this appointment.
Required when
Appointment.status
is set toproposed
. -
slot:
array slot
Minimum Number of Items:
1
Maximum Number of Items:1
The availability to which the appointment is booked.
Required when
Appointment.status
is set tobooked
. -
status(required):
string
Allowed Values:
[ "booked", "proposed" ]
A code representing the status of the new appointment.
{
"resourceType":"Appointment",
"status":"booked",
"slot":[
{
"reference":"Slot/24477854-21304876-62852027-0"
}
],
"participant":[
{
"actor":{
"reference":"Patient/12724066"
},
"status":"accepted"
}
],
"reasonCode":[
{
"text":"I have a cramp"
}
]
}
array
1
Participants involved in appointment.
The Participant.type
must not be set.
array
1
1
Coded reason this appointment is scheduled.
array
1
Potential date and time intervals requested to allocate the appointment within.
Required when Appointment.status
is set to proposed
.
object
A CodeableConcept representing the service that is to be performed during this appointment.
array
1
1
The specific service that is to be performed during this appointment.
Required when Appointment.status
is set to proposed
.
array
1
1
The availability to which the appointment is booked.
Required when Appointment.status
is set to booked
.
object
-
actor(required):
object actor
A patient or location that is participating in the appointment.
-
status(required):
string
Allowed Values:
[ "accepted", "needs-action" ]
Participation status of the patient or location.
When creating a new appointment with a status of
booked
, this value must beaccepted
. When creating a new appointment with a status ofproposed
, this value must beneeds-action
.
object
A patient or location that is participating in the appointment.
-
display:
string
Example:
Smart, Barney R
-
reference:
string
Example:
Patient/4704007
object
-
coding:
array coding
-
text(required):
string
Example:
I have a cramp
object
-
end(required):
string
Example:
2016-02-07T13:28:17-05:00
-
start(required):
string
Example:
2015-02-07T13:28:17-05:00
object
-
coding:
array coding
-
text:
string
Example:
General medical practice
object
-
code:
string
Example:
408443003
-
display:
string
Example:
General medical practice
-
system:
string
Example:
http://snomed.info/sct
-
userSelected:
boolean
object
-
reference:
string
Example:
Slot/21265426-633867-6828001-60
Response
- application/fhir+json
Default Response
Example creation for a proposed
appointment.
POST https://fhir-ehr-code.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Appointment
Example Request Body:
{
'resourceType': 'Appointment',
'status': 'proposed',
'serviceType': [
{
'coding': [
{
'code': '408443003',
'system': 'http://snomed.info/sct'
}
]
}
],
'reasonCode': [
{
'text': 'I have a cramp'
}
],
'comment': 'Appointment request comment',
'participant': [
{
'actor': {
'reference': 'Patient/12724066'
},
'status': 'needs-action'
},
{
'actor': {
'reference': 'Location/21304876',
'display': 'MX Clinic 1'
},
'status': 'needs-action'
}
],
'requestedPeriod': [
{
'start': '2020-02-07T13:28:17-05:00',
'end': '2021-02-07T13:28:17-05:00'
}
]
}
Example Response:
Cache-Control: no-cache
Content-Length: 0
Content-Type: application/fhir+json
Date: Tue, 12 May 2020 20:25:01 GMT
Etag: W/"0"
Last-Modified: Tue, 12 May 2020 20:25:01 GMT
Location: https://fhir-ehr-code.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Appointment/6427746
Vary: Origin
X-Request-Id: 11111111-1111-1111-1111-111111111111
opc-request-id: /11111111111111111111111111111111/11111111111111111111111111111111
The ETag
response header indicates the current If-Match
version to use on a subsequent update.
-
Etag: string
For Update or Patch versioning controls. Related to
If-Match
. When a resource performs an operation that creates or updates a record, anEtag
value is returned as a header. This same value should be included in request headers as anIf-Match
for any subsequent update to that record. -
X-Request-Id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
X-Request-Id
, if present. -
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
opc-Request-Id
, if present.
x-create-booked Response
Example creation for a booked
appointment.
POST https://fhir-ehr-code.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Appointment
Example Request Body:
{
'resourceType': 'Appointment',
'status': 'booked',
'slot': [
{
'reference': 'Slot/24477854-21304876-62852027-0'
}
],
'participant': [
{
'actor': {
'reference': 'Patient/12724066'
},
'status': 'accepted'
}
],
'reasonCode': [
{
'text': 'I have a cramp'
}
]
}
Example Response:
Cache-Control: no-cache
Content-Length: 0
Content-Type: application/fhir+json
Date: Thu, 30 May 2019 19:49:25 GMT
Etag: W/"0"
Last-Modified: Thu, 30 May 2019 19:49:23 GMT
Location: https://fhir-ehr-code.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Appointment/20465903
Vary: Origin
X-Request-Id: 11111111-1111-1111-1111-111111111111
opc-request-id: /11111111111111111111111111111111/11111111111111111111111111111111
The ETag
response header indicates the current If-Match
version to use on a subsequent update.
-
Etag: string
For Update or Patch versioning controls. Related to
If-Match
. When a resource performs an operation that creates or updates a record, anEtag
value is returned as a header. This same value should be included in request headers as anIf-Match
for any subsequent update to that record. -
X-Request-Id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
X-Request-Id
, if present. -
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
opc-Request-Id
, if present.