Skip to main content

Appointment XIS OpenAPI specification

This page describes the Appointment API specification the XIS should provide to Spreekuur.nl.

XIS appointment FHIR API (1.0.0)

Download OpenAPI specification:Download

Get Bookable Appointment Types

Responses

Response samples

Content type
application/fhir+json
{}

Search for Practitioner Roles

Responses

Response samples

Content type
application/fhir+json
{}

Search for Schedules

query Parameters
service-category
string

The service category a schedule is related to. System and value should be provided in the format "system|value"

Responses

Response samples

Content type
application/fhir+json
{
  • "resourceType": "Bundle",
  • "type": "searchset",
  • "entry": [
    ]
}

Search for available slots

query Parameters
service-category
string

The service category a slot is related to. System and value should be provided in the format "system|value"

schedule.date=ge
string

The date in ISO-8601 from which to search for available slots.

schedule.date=le
string

The date in ISO-8601 to which to search for available slots.

schedule.actor:PractitionerRole
string

A comma seperated list of PractitionerRole id's which are related to the slots

Responses

Response samples

Content type
application/fhir+json
{
  • "resourceType": "Bundle",
  • "type": "searchset",
  • "entry": [
    ]
}

Search for Appointments

query Parameters
id
string

The appointment id to search for

Responses

Response samples

Content type
application/fhir+json
{
  • "resourceType": "Bundle",
  • "type": "searchset",
  • "entry": [
    ]
}

Create a new Appointment

Request Body schema: application/fhir+json
required
resourceType
required
string
Value: "Appointment"
id
required
string
status
required
string
Enum: "proposed" "booked" "cancelled"
start
required
string <date-time>
end
required
string <date-time>
comment
required
string
required
Array of objects (serviceCategory)
required
Array of objects

When the appointment is created, two participants are added: the patient and the practitioner. When the approval flow is enabled, the practitioner has the status 'needs-action'. If not, the status is 'accepted' The patient always has the status 'accepted'.

Responses

Request samples

Content type
application/fhir+json
{
  • "resourceType": "Appointment",
  • "id": "123",
  • "status": "proposed",
  • "start": "2025-04-10T09:00:00Z",
  • "end": "2025-04-10T09:30:00Z",
  • "comment": "Please arrive 10 minutes early.",
  • "serviceCategory": [],
  • "participant": [
    ]
}

Cancel an appointment with an Appointment Response

Request Body schema: application/fhir+json
required
required
object
comment
required
string
required
object
participantStatus
required
string
Value: "declined"

Responses

Request samples

Content type
application/fhir+json
{
  • "actor": {},
  • "comment": "Deze afspraak is afgezegd door de patiënt via Spreekuur.nl",
  • "appointment": {
    },
  • "participantStatus": "declined"
}