NHS Digital FHIR Implementation Guide (Retired - 2.1.50)

This guidance is under active development by NHS Digital and content may be added or updated on a regular basis.

Endpoint Search Interactions

The SCR API SHALL support a search interaction to return Endpoint resources using search parameters for:

  • [Mandatory] Organisation code - ODS code of the target organisation (i.e. GP practice exposing the endpoint)
  • [Mandatory] MHS Interaction ID - type of Interaction supported by Endpoint

Endpoint resources are returned as a searchset Bundle containing 0, 1 or many matching Endpoint resources

The Endpoint Search Interaction supports GP Connect use cases by allowing a consumer system to retrieve the Message Handling System (MHS) record for a capability at a target GP provider organisation

Search Parameter

Data Item Query Parameter Query Target Example
Organisation code organization managingOrganization organization=[targetODSCode]
MHS Interaction ID identifier Endpoint.identifier:NhsEndpointServiceId identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|[interactionId]

Request pattern

GET [baseURL]/Endpoint?
  organization=[ODSNamingSystem]|[targetODSCode]&
  identifier=[EndpointServiceIdNamingSystem]|[interactionId]

Example request

GET [baseURL]/Endpoint?
  organization=https://fhir.nhs.uk/Id/ods-organization-code|R8008&
  identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|urn:nhs:names:services:psis:REPC_IN150016UK05

Example response payload

<Bundle xmlns="http://hl7.org/fhir">
    <id value="bbea6247-6d81-4d92-b2c0-8779aacdb838" />
    <type value="searchset" />
    <total value="1" />
    <link>
        <relation value="self" />
        <url value="[baseURL]/Endpoint?organization=https://fhir.nhs.uk/Id/ods-organization-code|R8008&amp;identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|urn:nhs:names:services:psis:REPC_IN150016UK05" />
    </link>
    <entry>
        <fullUrl value="[baseURL]/Endpoint/f1dc0ac6-45ff-4d2b-bf91-793971e3e286" />
        <resource>
            <Endpoint>
                <id value="f1dc0ac6-45ff-4d2b-bf91-793971e3e286" />
                <extension url="https://fhir.nhs.uk/StructureDefinition/Extension-SDS-ReliabilityConfiguration">
                    <extension url="nhsMHSSyncReplyMode">
                        <valueString value="MSHSignalsOnly" />
                    </extension>
                    <extension url="nhsMHSRetryInterval">
                        <valueString value="PT1M" />
                    </extension>
                    <extension url="nhsMHSRetries">
                        <valueInteger value="2" />
                    </extension>
                    <extension url="nhsMHSPersistDuration">
                        <valueString value="PT5M" />
                    </extension>
                    <extension url="nhsMHSDuplicateElimination">
                        <valueString value="always" />
                    </extension>
                    <extension url="nhsMHSAckRequested">
                        <valueString value="always" />
                    </extension>
                    <extension url="nhsMHSActor">
                        <valueString value="ebs" />
                    </extension>
                </extension>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsEndpointServiceId" />
                    <value value="urn:nhs:names:services:psis:REPC_IN150016UK05" />
                </identifier>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsMhsFQDN" />
                    <value value="192.168.128.11" />
                </identifier>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsMhsEndPoint" />
                    <value value="https://192.168.128.11/reliablemessaging/reliablerequest" />
                </identifier>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsMhsPartyKey" />
                    <value value="R8008-0000806" />
                </identifier>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsMhsCPAId" />
                    <value value="S20001A000182" />
                </identifier>
                <identifier>
                    <system value="https://fhir.nhs.uk/Id/nhsSpineASID" />
                    <value value="227319907548" />
                </identifier>
                <status value="active" />
                <connectionType>
                    <system value="http://terminology.hl7.org/CodeSystem/endpoint-connection-type" />
                    <code value="hl7-fhir-msg" />
                    <display value="HL7 FHIR Messaging" />
                </connectionType>
                <managingOrganization>
                    <identifier>
                        <system value="https://fhir.nhs.uk/Id/ods-organization-code" />
                        <value value="R8008" />
                    </identifier>
                </managingOrganization>
                <payloadType>
                    <coding>
                        <system value="http://terminology.hl7.org/CodeSystem/endpoint-payload-type" />
                        <code value="any" />
                        <display value="Any" />
                    </coding>
                </payloadType>
                <address value="https://192.168.128.11/" />
            </Endpoint>
        </resource>
        <search>
            <mode value="match" />
        </search>
    </entry>
</Bundle>
{
    "resourceType": "Bundle",
    "id": "bbea6247-6d81-4d92-b2c0-8779aacdb838",
    "type": "searchset",
    "total": 1,
    "link":  [
        {
            "relation": "self",
            "url": "[baseURL]/Endpoint?organization=https://fhir.nhs.uk/Id/ods-organization-code|R8008&identifier=https://fhir.nhs.uk/Id/nhsEndpointServiceId|urn:nhs:names:services:psis:REPC_IN150016UK05"
        }
    ],
    "entry":  [
        {
            "fullUrl": "[baseURL]/Endpoint/f1dc0ac6-45ff-4d2b-bf91-793971e3e286",
            "resource": {
                "resourceType": "Endpoint",
                "id": "f1dc0ac6-45ff-4d2b-bf91-793971e3e286",
                "extension":  [
                    {
                        "extension":  [
                            {
                                "url": "nhsMHSSyncReplyMode",
                                "valueString": "MSHSignalsOnly"
                            },
                            {
                                "url": "nhsMHSRetryInterval",
                                "valueString": "PT1M"
                            },
                            {
                                "url": "nhsMHSRetries",
                                "valueInteger": 2
                            },
                            {
                                "url": "nhsMHSPersistDuration",
                                "valueString": "PT5M"
                            },
                            {
                                "url": "nhsMHSDuplicateElimination",
                                "valueString": "always"
                            },
                            {
                                "url": "nhsMHSAckRequested",
                                "valueString": "always"
                            },
                            {
                                "url": "nhsMHSActor",
                                "valueString": "ebs"
                            }
                        ],
                        "url": "https://fhir.nhs.uk/StructureDefinition/Extension-SDS-ReliabilityConfiguration"
                    }
                ],
                "identifier":  [
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsEndpointServiceId",
                        "value": "urn:nhs:names:services:psis:REPC_IN150016UK05"
                    },
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsMhsFQDN",
                        "value": "192.168.128.11"
                    },
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsMhsEndPoint",
                        "value": "https://192.168.128.11/reliablemessaging/reliablerequest"
                    },
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsMhsPartyKey",
                        "value": "R8008-0000806"
                    },
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsMhsCPAId",
                        "value": "S20001A000182"
                    },
                    {
                        "system": "https://fhir.nhs.uk/Id/nhsSpineASID",
                        "value": "227319907548"
                    }
                ],
                "status": "active",
                "connectionType": {
                    "system": "http://terminology.hl7.org/CodeSystem/endpoint-connection-type",
                    "code": "hl7-fhir-msg",
                    "display": "HL7 FHIR Messaging"
                },
                "managingOrganization": {
                    "identifier": {
                        "system": "https://fhir.nhs.uk/Id/ods-organization-code",
                        "value": "R8008"
                    }
                },
                "payloadType":  [
                    {
                        "coding":  [
                            {
                                "system": "http://terminology.hl7.org/CodeSystem/endpoint-payload-type",
                                "code": "any",
                                "display": "Any"
                            }
                        ]
                    }
                ],
                "address": "https://192.168.128.11/"
            },
            "search": {
                "mode": "match"
            }
        }
    ]
}
back to top