Details of which operations a FHIR® server should expose to be a fully compliant GP Connect solution
FHIR® operations
Mechanism
- RESTful APIs in line with the FHIR® standard (with limited/targeted usage of custom operations as/if required).
Interactions
All InteractionIDs are expected to follow the following format urn:nhs:names:services:[program]:[standard]:[mechanism]:[operation]:[subject].
- Program =
gpconnect - Standard =
fhir - Mechanism = [
rest,operation]restfor RESTful API interactionsoperationfor custom Operation API interactions
- Operation
- RESTful style API = [
create,read,update,delete,search] + any more specific actions (for example,cancel) - Remote Procedure Call (RPC) style API = [
gpc.getcarerecord,gpc.registerpatient]
- RESTful style API = [
- Subject = [
resourceType,operationName]- Resource Type is the name of a FHIR resource, such as
Patient,Appointment,Organization - Operation Name is the name of a custom FHIR operation, such as
gpc.getcarerecord
- Resource Type is the name of a FHIR resource, such as
Foundations capability interactions
| Operation | InteractionID | HTTP verb | Example URL pattern |
|---|---|---|---|
| Read metadata | urn:nhs:names:services:gpconnect:fhir:rest:read:metadata-1 |
GET |
[base]/metadata |
| Read patient | urn:nhs:names:services:gpconnect:fhir:rest:read:patient-1 |
GET |
[base]/Patient/[id] |
| Patient search | urn:nhs:names:services:gpconnect:fhir:rest:search:patient-1 |
GET |
[base]/Patient?identifier=https://fhir.nhs.uk/Id/nhs-number|[nhsNumber] |
| Read practitioner | urn:nhs:names:services:gpconnect:fhir:rest:read:practitioner-1 |
GET |
[base]/Practitioner/[id] |
| Practitioner search | urn:nhs:names:services:gpconnect:fhir:rest:search:practitioner-1 |
GET |
[base]/Practitioner?identifier=https://fhir.nhs.uk/Id/sds-user-id|[sdsUserID] |
| Read organisation | urn:nhs:names:services:gpconnect:fhir:rest:read:organization-1 |
GET |
[base]/Organization/[id] |
| Organisation search | urn:nhs:names:services:gpconnect:fhir:rest:search:organization-1 |
GET |
[base]/Organization?identifier=https://fhir.nhs.uk/Id/ods-organization-code|[odsCode] |
| Read location | urn:nhs:names:services:gpconnect:fhir:rest:read:location-1 |
GET |
[base]/Location/[id] |
| Register patient | urn:nhs:names:services:gpconnect:fhir:operation:gpc.registerpatient-1 |
POST |
[base]/Patient/$gpc.registerpatient |
Appointments capability interactions
| Operation | InteractionID | HTTP verb | Example URL pattern |
|---|---|---|---|
| Search for free slots | urn:nhs:names:services:gpconnect:fhir:rest:search:slot-1 |
POST |
[base]/Slot |
| Read appointment | urn:nhs:names:services:gpconnect:fhir:rest:read:appointment-1 |
GET |
[base]/Appointment/[id] |
| Create appointment | urn:nhs:names:services:gpconnect:fhir:rest:create:appointment-1 |
POST |
[base]/Appointment |
| Amend appointment | urn:nhs:names:services:gpconnect:fhir:rest:update:appointment-1 |
PUT |
[base]/Appointment/[id] |
| Cancel appointment | urn:nhs:names:services:gpconnect:fhir:rest:cancel:appointment-1 |
PUT |
[base]/Appointment/[id] |
| Get patient appointments | urn:nhs:names:services:gpconnect:fhir:rest:search:patient_appointments-1 |
GET |
[base]/Patient/[id]/Appointment |
Access Record HTML capability interactions
Access Record HTML interactions are not available at this specification version.
Access Record Structured capability interactions
Access Record Structured interactions are not available at this specification version.
Task capability interactions
Task interactions are not available at this specification version.
