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
]rest
for RESTful API interactionsoperation
for 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.