ELI5: How GP Connect works

ELI5: How GP Connect works

I couldn’t find any good introductory articles for the beginner on how to query GP Connect, so I’ve written a bit of a starter, purely because we were talking about these kind of things in the office and it seemed like it might be helpful to someone.

GP connect sketch diagram

1) Spine Personal Demographics Service (PDS)

  • GP Connect Consumer queries the Spine’s Personal Demographics Service (PDS) to obtain the NHS number for the patient by supplying other demographic details such as name, date of birth, address details etc.

  • If the GP Connect Consumer already has the patient’s NHS number this step is still required, whereupon it is regarded as an identity cross-check that the patient’s details are all correct.

  • GP Connect Consumer requests details of the patient’s GP Practice from the PDS, which will be returned as an ODS Code. Note: in the case of appointment booking within a GP federation this step may be instead use a local organisation directory to determine the intended practice.

2) Spine Directory Service (SDS)

  • GP Connect Consumer queries the Spine Directory Service, supplying the ODS Code obtained in the previous step.

  • The Spine Directory service returns a web endpoint for FHIR REST API queries along with an ASID (a Spine identifier for the target system), based on the ODS code for that practice.

  • The GP Connect Consumer can then use this web endpoint and ASID in the next step.

3) Spine Security Proxy (SSP) FHIR REST API

  • The GP Connect Consumer can now send REST API requests to the Spine Security Proxy, which passes them along to the endpoint obtained in the previous step.

  • The Security Proxy checks that a valid Data Sharing Agreement exists between the Consumer organisation and the ‘owning’ organisation of the target patient’s GP Practice.

  • Requests use the GP Connect FHIR Profiles and the consumer can now obtain clinical data, and book appointments for the patient.

Further articles on how to connect to and use GP Connect are coming soon!

Links to the official documentation

GP Connect 1.2.1 (FHIR STU3) for Appointments & Access Record Structured
Page not found · GitHub Pages

GP Connect 0.5.0 (FHIR DSTU2) for Access Record HTML
Introduction to GP Connect

Corrections and comments on this article are welcome


1 Like

Developers familiar with Apache Camel (/java) might be interested in this bit of pseudo proxy code which turns GP Connects FHIR operation into a Care Connect standard REST call. (It’s not robust and only covers step 3), it was done for a connectathon last Novemeber but should give you a gist of the process)

Lines 96->195 careconnect-reference-implementation/CamelMonitorRoute.java at v3.7.0 · nhsconnect/careconnect-reference-implementation · GitHub