# Get FHIR r4 appointment by ID
Endpoint: GET /site/{siteId}/fhir/appointment/{id}
Version: 1.0
Security: bearer, bearer
## Path parameters:
- `id` (string, required)
ID of the Appointment
- `siteId` (string, required)
Site identifier
## Response 200 fields (application/json):
- `resourceType` (any, required)
This is a Appointment resource
Enum: "Appointment"
- `id` (string)
Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.
Example: "example-id"
- `meta` (object)
The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
- `meta.id` (string)
An extension object type #string.
Example: "example-string"
- `meta.extension` (array)
May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
- `meta.versionId` (object)
An extension object type #id.
- `meta._versionId` (object)
An extension object type #Element.
- `meta.lastUpdated` (object)
An extension object type #instant.
- `meta._lastUpdated` (object)
An extension object type #Element.
- `meta.source` (string)
An extension object type #uri.
Example: "https://example.org/resource"
- `meta._source` (object)
An extension object type #Element.
- `meta.profile` (array)
A list of profiles (references to [[[StructureDefinition]]] resources) that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].
Example: ["http://example.org/Profile"]
- `meta.security` (array)
Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
- `meta.tag` (array)
Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
- `implicitRules` (string)
String of characters used to identify a name or a resource
Example: "https://example.org/resource"
- `_implicitRules` (object)
Base definition for all elements in a resource.
- `language` (string)
A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents
Example: "sample-code"
- `_language` (object)
Base definition for all elements in a resource.
- `text` (object)
A human-readable summary of the resource conveying the essential clinical and business information for the resource.
- `text.status` (any)
The status of the narrative - whether it's entirely generated (from just the defined data or the extensions too), or whether a human authored it and it may contain additional data.
Enum: "generated", "extensions", "additional", "empty"
- `text._status` (object)
An extension object type #Element.
- `text.div` (string, required)
An extension object type #xhtml.
Example: "
Example
"
- `contained` (array)
These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
- `extension` (array)
May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
- `extension.url` (string)
An extension object type #uri.
Example: "https://example.org/resource"
- `extension._url` (object)
An extension object type #Element.
- `extension.valueBase64Binary` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "U2FtcGxl"
- `extension._valueBase64Binary` (object)
An extension object type #Element.
- `extension.valueBoolean` (boolean)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: true
- `extension._valueBoolean` (object)
An extension object type #Element.
- `extension.valueCanonical` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "http://example.org/Profile"
- `extension._valueCanonical` (object)
An extension object type #Element.
- `extension.valueCode` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "sample-code"
- `extension._valueCode` (object)
An extension object type #Element.
- `extension.valueDate` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "2024-01-01"
- `extension._valueDate` (object)
An extension object type #Element.
- `extension.valueDateTime` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "2024-01-01T00:00:00Z"
- `extension._valueDateTime` (object)
An extension object type #Element.
- `extension.valueDecimal` (number)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: 1.23
- `extension._valueDecimal` (object)
An extension object type #Element.
- `extension.valueId` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "example-id"
- `extension._valueId` (object)
An extension object type #Element.
- `extension.valueInstant` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "2024-01-01T00:00:00Z"
- `extension._valueInstant` (object)
An extension object type #Element.
- `extension.valueInteger` (number)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: 1
- `extension._valueInteger` (object)
An extension object type #Element.
- `extension.valueMarkdown` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "Sample markdown text"
- `extension._valueMarkdown` (object)
An extension object type #Element.
- `extension.valueOid` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "urn:oid:1.2.3.4.5"
- `extension._valueOid` (object)
An extension object type #Element.
- `extension.valuePositiveInt` (number)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: 1
- `extension._valuePositiveInt` (object)
An extension object type #Element.
- `extension.valueString` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "example-string"
- `extension._valueString` (object)
An extension object type #Element.
- `extension.valueTime` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "12:00:00"
- `extension._valueTime` (object)
An extension object type #Element.
- `extension.valueUnsignedInt` (number)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
- `extension._valueUnsignedInt` (object)
An extension object type #Element.
- `extension.valueUri` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "https://example.org/resource"
- `extension._valueUri` (object)
An extension object type #Element.
- `extension.valueUrl` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "https://example.org"
- `extension._valueUrl` (object)
An extension object type #Element.
- `extension.valueUuid` (string)
Value of extension - must be one of a constrained set of the data types (see [Extensibility](https://hl7.org/fhir/extensibility.html) for a list).
Example: "urn:uuid:123e4567-e89b-12d3-a456-426614174000"
- `extension._valueUuid` (object)
An extension object type #Element.
- `extension.valueAddress` (object)
An extension object type #Address.
- `extension.valueAge` (object)
An extension object type #Age.
- `extension.valueAnnotation` (object)
An extension object type #Annotation.
- `extension.valueAttachment` (object)
An extension object type #Attachment.
- `extension.valueCodeableConcept` (object)
An extension object type #CodeableConcept.
- `extension.valueCoding` (object)
An extension object type #Coding.
- `extension.valueContactPoint` (object)
An extension object type #ContactPoint.
- `extension.valueCount` (object)
An extension object type #Count.
- `extension.valueDistance` (object)
An extension object type #Distance.
- `extension.valueDuration` (object)
An extension object type #Duration.
- `extension.valueHumanName` (object)
An extension object type #HumanName.
- `extension.valueIdentifier` (object)
An extension object type #Identifier.
- `extension.valueMoney` (object)
An extension object type #Money.
- `extension.valuePeriod` (object)
An extension object type #Period.
- `extension.valueQuantity` (object)
An extension object type #Quantity.
- `extension.valueRange` (object)
An extension object type #Range.
- `extension.valueRatio` (object)
An extension object type #Ratio.
- `extension.valueReference` (object)
An extension object type #Reference.
- `extension.valueSampledData` (object)
An extension object type #SampledData.
- `extension.valueSignature` (object)
An extension object type #Signature.
- `extension.valueTiming` (object)
An extension object type #Timing.
- `extension.valueContactDetail` (object)
An extension object type #ContactDetail.
- `extension.valueContributor` (object)
An extension object type #Contributor.
- `extension.valueDataRequirement` (object)
An extension object type #DataRequirement.
- `extension.valueExpression` (object)
An extension object type #Expression.
- `extension.valueParameterDefinition` (object)
An extension object type #ParameterDefinition.
- `extension.valueRelatedArtifact` (object)
An extension object type #RelatedArtifact.
- `extension.valueTriggerDefinition` (object)
An extension object type #TriggerDefinition.
- `extension.valueUsageContext` (object)
An extension object type #UsageContext.
- `extension.valueDosage` (object)
An extension object type #Dosage.
- `extension.valueMeta` (object)
An extension object type #Meta.
- `modifierExtension` (array)
May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
- `identifier` (array)
This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).
- `identifier.use` (any)
The purpose of this identifier.
Enum: "usual", "official", "temp", "secondary", "old"
- `identifier._use` (object)
An extension object type #Element.
- `identifier.type` (object)
An extension object type #CodeableConcept.
- `identifier.system` (string)
An extension object type #uri.
Example: "https://example.org/resource"
- `identifier._system` (object)
An extension object type #Element.
- `identifier.value` (string)
An extension object type #string.
Example: "example-string"
- `identifier._value` (object)
An extension object type #Element.
- `identifier.period` (object)
An extension object type #Period.
- `identifier.assigner` (object)
An extension object type #Reference.
- `status` (any)
The overall status of the Appointment. Each of the participants has their own participation status which indicates their involvement in the process, however this status indicates the shared status.
Enum: "proposed", "pending", "booked", "arrived", "fulfilled", "cancelled", "noshow", "entered-in-error", "checked-in", "waitlist"
- `_status` (object)
Base definition for all elements in a resource.
- `cancelationReason` (object)
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.
- `cancelationReason.coding` (array)
A reference to a code defined by a terminology system.
- `cancelationReason.text` (string)
An extension object type #string.
Example: "example-string"
- `cancelationReason._text` (object)
An extension object type #Element.
- `serviceCategory` (array)
A broad categorization of the service that is to be performed during this appointment.
Example: [{"coding":[{"system":"http://example.org/service-category","code":"gp","display":"General Practice"}]}]
- `serviceType` (array)
The specific service that is to be performed during this appointment.
Example: [{"coding":[{"code":"52","display":"General Discussion"}]}]
- `specialty` (array)
The specialty of a practitioner that would be required to perform the service requested in this appointment.
Example: [{"coding":[{"system":"http://snomed.info/sct","code":"394814009","display":"General practice"}]}]
- `appointmentType` (object)
A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.
- `reasonCode` (array)
The coded reason that this appointment is being scheduled. This is more clinical than administrative.
- `reasonReference` (array)
Reason the appointment has been scheduled to take place, as specified using information from another resource. When the patient arrives and the encounter begins it may be used as the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.
Example: [{"reference":"Condition/example","display":"Severe burn of left ear"}]
- `reasonReference.reference` (string)
An extension object type #string.
Example: "example-string"
- `reasonReference._reference` (object)
An extension object type #Element.
- `reasonReference.type` (string)
An extension object type #uri.
Example: "https://example.org/resource"
- `reasonReference._type` (object)
An extension object type #Element.
- `reasonReference.identifier` (object)
An extension object type #Identifier.
- `reasonReference.display` (string)
An extension object type #string.
Example: "example-string"
- `reasonReference._display` (object)
An extension object type #Element.
- `priority` (number)
An integer with a value that is not negative (e.g. >= 0)
- `_priority` (object)
Base definition for all elements in a resource.
- `description` (string)
A sequence of Unicode characters
Example: "example-string"
- `_description` (object)
Base definition for all elements in a resource.
- `supportingInformation` (array)
Additional information to support the appointment provided when making the appointment.
- `start` (string)
An instant in time - known at least to the second
Example: "2024-01-01T00:00:00Z"
- `_start` (object)
Base definition for all elements in a resource.
- `end` (string)
An instant in time - known at least to the second
Example: "2024-01-01T00:00:00Z"
- `_end` (object)
Base definition for all elements in a resource.
- `minutesDuration` (number)
An integer with a value that is positive (e.g. >0)
Example: 1
- `_minutesDuration` (object)
Base definition for all elements in a resource.
- `slot` (array)
The slots from the participants' schedules that will be filled by the appointment.
- `created` (string)
A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.
Example: "2024-01-01T00:00:00Z"
- `_created` (object)
Base definition for all elements in a resource.
- `comment` (string)
A sequence of Unicode characters
Example: "example-string"
- `_comment` (object)
Base definition for all elements in a resource.
- `patientInstruction` (string)
A sequence of Unicode characters
Example: "example-string"
- `_patientInstruction` (object)
Base definition for all elements in a resource.
- `basedOn` (array)
The service request this appointment is allocated to assess (e.g. incoming referral or procedure request).
Example: [{"reference":"ServiceRequest/myringotomy"}]
- `participant` (array, required)
List of participants involved in the appointment.
Example: [{"actor":{"reference":"Patient/example","display":"Peter James Chalmers"},"required":"required","status":"accepted"},{"type":[{"coding":[{"system":"http://terminology.hl7.org/CodeSystem/v3-ParticipationType","code":"ATND"}]}],"actor":{"reference":"Practitioner/example","display":"Dr Adam Careful"},"required":"required","status":"accepted"},{"actor":{"reference":"Location/1","display":"South Wing, second floor"},"required":"required","status":"accepted"}]
- `participant.modifierExtension` (array)
May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
- `participant.type` (array)
Role of participant in the appointment.
- `participant.actor` (object)
An extension object type #Reference.
- `participant.required` (any)
Whether this participant is required to be present at the meeting. This covers a use-case where two doctors need to meet to discuss the results for a specific patient, and the patient is not required to be present.
Enum: "required", "optional", "information-only"
- `participant._required` (object)
An extension object type #Element.
- `participant.status` (any)
Participation status of the actor.
Enum: "accepted", "declined", "tentative", "needs-action"
- `requestedPeriod` (array)
A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.
The duration (usually in minutes) could also be provided to indicate the length of the appointment to fill and populate the start/end times for the actual allocated time. However, in other situations the duration may be calculated by the scheduling system.
- `requestedPeriod.start` (string)
An extension object type #dateTime.
Example: "2024-01-01T00:00:00Z"
- `requestedPeriod._start` (object)
An extension object type #Element.
- `requestedPeriod.end` (string)
An extension object type #dateTime.
Example: "2024-01-01T00:00:00Z"
- `requestedPeriod._end` (object)
An extension object type #Element.
## Response 401 fields (application/json):
- `message` (string, required)
Error message indicating unauthorized access.
Example: "Unauthorized"
- `statusCode` (number, required)
HTTP status code for unauthorized access.
Example: 401
## Response 400 fields
## Response 404 fields