• API Hub
  • Search loading...

    API Hub

    Explore and Make use of Nationally Defined Messaging APIs

     

    Operation guidance

    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 interactions
      • operation 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 ]
    • 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

    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 Structured capability interactions

    Operation InteractionID HTTP verb Example URL pattern
    Get Structured Record urn:nhs:names:services:gpconnect:fhir:operation:gpc.getstructuredrecord-1 POST [base]/Patient/$gpc.getstructuredrecord

    Access Record HTML capability interactions

    Access Record HTML interactions are not available at this specification version.

    Task capability interactions

    Task interactions are not available at this specification version.


    All content is available under the Open Government Licence v3.0, except where otherwise stated