---
title: "Get bookings for a patient"
method: GET
path: "/Appointment"
tags: ["Booking"]
---

# Get bookings for a patient

`GET /Appointment`

## Request

- Base URL: `https://sandbox.api.service.nhs.uk/booking-and-referral/FHIR/R4`
- URL: `https://sandbox.api.service.nhs.uk/booking-and-referral/FHIR/R4/Appointment`
- Auth: HTTP bearer

### Returns bookings for a specified patient
Use this endpoint to get all bookings for a given patient. All bookings for the specified patient at the specified target endpoint will be returned in a FHIR searchset Bundle containing Appointment resources. 

If a sender wants to cancel a particular booking, they must perform a read first, comparing and amending the details prior to performing the update.

## Query parameters

- `patient:identifier` string
- `patient:name` string
- `patient:birthdate` string
- `patient:address-postalcode` string

## Response `200`

Success

- SearchBundleAppt
  - `resourceType` string
  - `type` string
  - `total` integer
  - `link` object[]
    - `relation` string
    - `url` string, url
  - `entry` object[]
    - `fullUrl` string, url
    - `resource` object
      - `resourceType` string
      - `id` string, uuid
      - `meta` object
        - `lastUpdated` string, date-time
        - `profile` string[]
      - `status` string
      - `description` string
      - `start` string, date-time
      - `end` string, date-time
      - `slot` object[]
        - `reference` string
      - `created` string, date-time
      - `basedOn` object[]
        - `reference` string
        - `type` string
      - `participant` object[]
        - `actor` object
          - `reference` string
        - `status` string
        - `type` object[]
          - `coding` object[]
            - `system` string, url
            - `code` string
            - `display` string
    - `search` object
      - `mode` string

## Other responses

- `4XX`: Below are examples of potential HTTP status codes and their associated error codes, which could be returned in the event of a fault. Guidance on error handling within BaRS can be found [here](https://simplifier.net/guide/nhsbookingandreferralstandard/Home/Core/1.4.0/Error-Handling). | HTTP status | Error code | Description | | ----------- | -------------------------- | --------------------------------------------- | | 400 | SEND_BAD_REQUEST | The API was unable to process the request. | | 400 | REC_BAD_REQUEST | The Receiver has responded stating the message was malformed. | | 401 | SEND_UNAUTHORIZED | The API deemed you unauthorized to make this request. | | 401 | REC_UNAUTHORIZED | The receiver deemed you unauthorized to make request. | | 403 | SEND_FORBIDDEN | Missing or Expired Token. | | 404 | PROXY_NOT_FOUND | No related people exist for given NHS number. | | 404 | REC_NOT_FOUND | Patient record for given NHS number has been invalidated and not superseded by another NHS number. | | 405 | SEND_METHOD_NOT_ALLOWED | HTTP Verb is not correct for this scenario.| | 405 | REC_METHOD_NOT_ALLOWED | Receiver does not allow this.| | 405 | PROXY_METHOD_NOT_ALLOWED | Proxy does not allow this.| | 406 | SEND_NOT_ACCEPTABLE | Senders message had an incorrect content type defined for a response.| | 408 | REC_TIMEOUT | The downstream domain processing has not completed within the configured timeout period. | | 409 | SEND_CONFLICT | | | 409 | REC_CONFLICT | | | 409 | PROXY_CONFLICT | | | 422 | SEND_UNPROCESSABLE_ENTITY | Message was not malformed but deemed unprocessable. | | 422 | REC_UNPROCESSABLE_ENTITY | Message was not malformed but deemed unprocessable. | | 422 | PROXY_UNPROCESSABLE_ENTITY | Message was not malformed but deemed unprocessable. | | 429 | SEND_TOO_MANY_REQUESTS | The user has sent too many requests in a given amount of time| | 429 | REC_TOO_MANY_REQUESTS | The user has sent too many requests in a given amount of time|
- `5XX`: Below are examples of potential HTTP status codes and their associated error codes, which could be returned in the event of a fault. Guidance on error handling within BaRS can be found [here](https://simplifier.net/guide/nhsbookingandreferralstandard/Home/Core/1.4.0/Error-Handling). | HTTP status | Error code | Description | | ----------- | -------------------------- | --------------------------------------------- | | 500 | REC_SERVER_ERROR | The receiver server has encountered an Error processing the request. | | 500 | PROXY_SERVER_ERROR | Proxy Error. | | 501 | SEND_NOT_IMPLEMENTED | The Request was not recognized. | | 501 | REC_NOT_IMPLEMENTED | The Receiver did not recognize the request. | | 501 | PROXY_NOT_IMPLEMENTED | The Proxy did not recognize the request. | | 503 | REC_UNAVAILABLE | The Receiver was unavailable to service the request.| | 503 | PROXY_UNAVAILABLE | The Proxy was unavailable to service the request. |

---

[API](https://skmtc.dev/nhs/apis/booking-and-referral-fhir-api.md) - [All operations](https://skmtc.dev/nhs/apis/booking-and-referral-fhir-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nhs/apis/booking-and-referral-fhir-api/revisions/5ebb9de06e11?raw)
