GP Connect Endpoint lookup

Hello everyone.

We are trying to integrate GP Connect into our product. According to their documentation we need to find the patient’s GP Practice’s ASID and MHS Endpoint (Spine integration illustrated).

Again, according to their documentation, we can get that information with two LDAP calls: the first to get the ASID and the MHS Party Key, and the second the get the actual MHS Endpoint (Overview and querying SDS).

I’d rather not use LDAP and I have found later that RESTful FHIR APIs are available, and I can use spine-directory/FHIR/R4/Device endpoint to get the ASID and MHD PartyKey, but then the spine-directory/FHIR/R4/Endpoint endpoint does not return the MHS Endpoint, but only the MHS FQDN.

Does anybody know how I can get the MHS Endpoint using the FHIR APIs? Or any other way apart from LDAP?


Hello gta,

GP Connect consists of a number of individual ‘products’, each of which can be used independently, was there a particular ‘product’ of primary interest?

Each ‘Product’ is at a different stage in its Status and Roadmap state.

The first stage is to raise a Direct Care APIs use case submission form - NHS Digital

We need to understand how you plan to use the Direct Care APIs (GP Connect), or what problem you’re hoping to solve by using one of our products.

This form is to gather that information and understand how this, in turn, will benefit the NHS and patients.

Before completing this form, please visit the GP Connect prerequisites page on our Consumer Hub to make sure you understand the requirements of developing against the Direct Care APIs.

Once submitted, this form will be reviewed by the team and a response provided within 14 days.

If your use case is accepted, we will provide you with the relevant information to begin the onboarding process.

Thank you @alan.rawlings2

We have already started the onboarding process to integrate the Access Record HTML product from GP Connect. I am looking at the integration with PDS and SDS.

As I said the documentation says we need to make a trace call to PDS to make sure the NHS Number is valid and refers to the correct patient we want to retrieve data for. As far as I understand this can be done with a call to the personal-demographics/FHIR/R4/Patient API, which will also give us the managing organisation’s ODS code.

Then, we are suppose to get the managing organisation’s MHS ASID and endpoint from SDS. The instructions says to use LDAP but, as I said above, I found out there are FHIR APIs available too.

The documentation about the spine-directory/FHIR/R4/Endpoint API says it does return the endpoint URL, which I take it meaning the MHS endpoint. But the example provided does not (see here).

However, I have also found out that the sandbox environment, that the example on the link above uses, always return the say data, so I guess it’s possible that the MHS endpoint is not returned just because that’s a simple example of a response. And if that’s the case I will need to use the integration environment to make sure.

Could you perhaps confirm that that is the case? The sandbox environment always returns the same response? That a “proper” response will have an identifier whose system is


Hello gta,

The SDS FHIR API can be used instead of LDAP, you will be able to test this full end to end message - PDS, SDS and GP Connect when you’re in the Integration environment.

If you’re interested in using the SDS FHIR API can you liaise with your onboarding lead as the API is still in private beta and we need to ensure there is capacity on the API for more users.