FHIR © HL7.org  |  Server Home  |  XIG Home  |  Server Source  |  FHIR  

FHIR IG Statistics: OperationDefinition/appointment-book

Packageihe.iti.scheduling
TypeOperationDefinition
Idappointment-book
FHIR VersionR4
Sourcehttps://profiles.ihe.net/ITI/Scheduling/https://build.fhir.org/ig/IHE/ITI.Scheduling/OperationDefinition-appointment-book.html
URLhttps://profiles.ihe.net/ITI/Scheduling/OperationDefinition/appointment-book
Version1.0.1-current
Statusactive
Date2024-12-12
NameBook_Appointment_Operation
Realmuv
Authorityihe
DescriptionRequest to book a selected Appointment. This operation follows the appointment availability and optional hold interactions. This operation completes the booking of an appointment. The server determines if the nominated appointment is still available (i.e., all the required actors and physical assets needed for the appointment are still available) and either accepts or rejects the book request and updates the resource status accordingly. In addition to the booking an appointment, this operation can also request to modify or cancel an existing appointment. ### Book a New Appointment When booking a new appoint, the operation SHALL have either an `appointment-reference` or an `appointment-resource` parameter. If the `appointment-resource` parameter is used, the value of `Appointment.status` SHALL have the value of `pending`. A successful new appointment `$book` operation returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `booked`. ### Modify an Existing Appointment When requesting a modification of an existing appointment, the operation SHALL have an `appointment-resource` parameter and the value of `Appointment.status` SHALL have the value of `booked`. A successful request to modify an existing modification returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `booked` and the changes that were requested correspondingly reflected in the resource. ### Cancel an Existing Appointment When requesting a cancellation of an existing appointment, the operation SHALL have an `appointment-resource` parameter and the value of `Appointment.status` SHALL have the value of `cancelled`. A successful request to cancel an existing modification returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `cancelled`
Typetrue
Kindoperation

Resources that use this resource

CapabilityStatement
IHE.Scheduling.clientIHE Scheduling Client
IHE.Scheduling.serverIHE Scheduling Server

Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: OperationDefinition appointment-book

URL: [base]/Appointment/$book

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INappointment-reference0..1Reference (IHE ITI Appointment Profile)

A resource id for one of proposed Appointments returned by a prior $find operation (e.g., Resource/1234). References can be to an absolute URL, but servers only perform this operation on their own appointments.

INappointment-resource0..1Appointment (IHE ITI Appointment Profile)

The full appointment resource is needed for appointment change requests

INpatient-resource0..*Patient (Patient)

The Patient resource type is used to provide the patient information as known to the Scheduling client at the time of booking of the appointment.

INcomment0..1string

The optional comment can be added for additional notes that could be useful for booking, canceling, or modifying an appointment

OUTreturn0..1Bundle (IHE ITI Scheduling Bundle Profile)

An IHE ITI Scheduling Appointment Bundle Profile of type searchset consisting of the requested booked Appointment resource and MAY also contain an OperationOutcome with errors, warnings or information as a result of processing the operation. The Appointment resource will have an updated status of "booked" if a new appointment is booked or an existing appointment is modified, or status of "cancelled" if an appointment is cancelled or not created.


Source

{
  "resourceType": "OperationDefinition",
  "id": "appointment-book",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "url": "https://profiles.ihe.net/ITI/Scheduling/OperationDefinition/appointment-book",
  "version": "1.0.1-current",
  "name": "Book_Appointment_Operation",
  "status": "active",
  "kind": "operation",
  "date": "2024-12-12",
  "publisher": "IHE IT Infrastructure Technical Committee",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "https://www.ihe.net/ihe_domains/it_infrastructure/"
        }
      ]
    },
    {
      "telecom": [
        {
          "system": "email",
          "value": "iti@ihe.net"
        }
      ]
    },
    {
      "name": "IHE IT Infrastructure Technical Committee",
      "telecom": [
        {
          "system": "email",
          "value": "iti@ihe.net"
        }
      ]
    }
  ],
  "description": "Request to book a selected Appointment. This operation follows the appointment availability and optional hold interactions.  This operation completes the booking of an appointment.  The server determines if the nominated appointment is still available (i.e., all the required actors and physical assets needed for the appointment are still available) and either accepts or rejects the book request and updates the resource status accordingly. \n\n In addition to the booking an appointment, this operation can also request to modify or cancel an existing appointment. \n\n### Book a New Appointment\n When booking a new appoint, the operation SHALL have either an `appointment-reference` or an `appointment-resource` parameter. If the `appointment-resource` parameter is used, the value of `Appointment.status` SHALL have the value of `pending`.\n\nA successful new appointment `$book` operation returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `booked`.\n\n### Modify an Existing Appointment\n When requesting a modification of an existing appointment, the operation SHALL have an `appointment-resource` parameter and the value of `Appointment.status` SHALL have the value of `booked`.\n\nA successful request to modify an existing modification returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `booked` and the changes that were requested correspondingly reflected in the resource.\n\n### Cancel an Existing Appointment  \n When requesting a cancellation of an existing appointment, the operation SHALL have an `appointment-resource` parameter and the value of `Appointment.status` SHALL have the value of `cancelled`.\n\nA successful request to cancel an existing modification returns an [IHE ITI Appointment](./StructureDefinition-ihe-sched-appt.html) resource with the the value of `Appointment.status` set to `cancelled`\n\n ",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "code": "book",
  "resource": [
    "Appointment"
  ],
  "system": false,
  "type": true,
  "instance": false,
  "parameter": [
    {
      "name": "appointment-reference",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "A resource id for one of proposed Appointments returned by a prior $find operation (e.g., Resource/1234).  References can be to an absolute URL, but servers only perform this operation on their own appointments.",
      "type": "Reference",
      "targetProfile": [
        "https://profiles.ihe.net/ITI/Scheduling/StructureDefinition/ihe-sched-appt"
      ]
    },
    {
      "name": "appointment-resource",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "The full appointment resource is needed for appointment change requests",
      "type": "Appointment",
      "targetProfile": [
        "https://profiles.ihe.net/ITI/Scheduling/StructureDefinition/ihe-sched-appt"
      ]
    },
    {
      "name": "patient-resource",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "The Patient resource type is used to provide the patient information as known to the Scheduling client at the time of booking of the appointment.",
      "type": "Patient",
      "targetProfile": [
        "http://hl7.org/fhir/StructureDefinition/Patient"
      ]
    },
    {
      "name": "comment",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "The optional comment can be added for additional notes that could be useful for booking, canceling, or modifying an appointment",
      "type": "string"
    },
    {
      "name": "return",
      "use": "out",
      "min": 0,
      "max": "1",
      "documentation": "An [IHE ITI Scheduling Appointment Bundle Profile](StructureDefinition-ihe-sched-avail-bundle.html)  of type `searchset` consisting of the requested booked Appointment resource and MAY also contain an OperationOutcome with errors, warnings or information as a result of processing the operation. The Appointment resource will have an updated `status` of \"booked\" if a new appointment is booked or an existing appointment is modified, or status of \"cancelled\" if an appointment is cancelled or not created.",
      "type": "Bundle",
      "targetProfile": [
        "https://profiles.ihe.net/ITI/Scheduling/StructureDefinition/ihe-sched-avail-bundle"
      ]
    }
  ]
}