• API Hub
  • Search loading...

    API Hub

    Explore and Make use of Nationally Defined Messaging APIs

     

    Read a location

    Use case for reading a location resource

    Prerequisites

    Consumer

    The consumer system:

    API use case

    This specification describes a single use cases. For complete details and background please see the Foundations Capability Bundle.

    Security

    • GP Connect utilises TLS Mutual Authentication for system level authorization.
    • GP Connect utilises a JSON Web Tokens (JWT) to transmit clinical audit & provenance details.

    API usage

    Request operation

    FHIR relative request

    GET /Location/[id]
    

    FHIR absolute request

    GET https://[proxy_server]/https://[provider_server]/[fhir_base]/Location/[id]
    

    Request headers

    Consumers SHALL include the following additional HTTP request headers:

    Header Value
    Ssp-TraceID Consumer’s TraceID (i.e. GUID/UUID)
    Ssp-From Consumer’s ASID
    Ssp-To Provider’s ASID
    Ssp-InteractionID urn:nhs:names:services:gpconnect:fhir:rest:read:location-1

    Payload request bdy

    N/A

    Error handling

    Provider systems SHALL return an GPConnect-OperationOutcome-1 resource that provides additional detail when one or more data fields are corrupt or a specific business rule/constraint is breached.

    For example, the:

    • Logical identifier of the resource is not valid/can’t be found on the server.

    Refer to Development - FHIR API Guidance - Error Handling for details of error codes.

    Request response

    Response headers

    Provider systems are not expected to add any specific headers beyond that described in the HTTP and FHIR® standards.

    Payload response body

    Provider systems:

    • SHALL return a 200 OK HTTP status code on successful execution of the operation.
    • SHALL return Location resources that conform to the CareConnect-GPC-Location-1 profile.
    • SHALL include the URI of the CareConnect-GPC-Location-1 profile StructureDefinition in the Location.meta.profile element of the returned Location resource.
    • SHALL include the versionId of the current version of the Location resource.
    • SHALL include all relevant business identifier details (i.e. ODS Site Code) for the Location resource.
    {
      "resourceType": "Location",
      "id": "17",
      "meta": {
        "versionId": "636064088100870233",
        "profile": [
          "https://fhir.nhs.uk/STU3/StructureDefinition/CareConnect-GPC-Location-1"
        ]
      },
      "identifier": [
        {
          "system": "https://fhir.nhs.uk/Id/ods-site-code",
          "value": "L001"
        }
      ],
      "name": "Honley Highstreet",
      "address": {
        "line": [
          "Trevelyan Square",
          "Boar Ln",
          "Leeds"
        ],
        "postalCode": "LS1 6AE"
      }
    }
    

    Examples

    C#

    var client = new FhirClient("http://gpconnect.aprovider.nhs.net/GP001/STU3/1/");
    client.PreferredFormat = ResourceFormat.Json;
    var resource = client.Read<Location>("Location/17");
    FhirSerializer.SerializeResourceToXml(resource).Dump();
    

    Java

    FhirContext ctx = new FhirContext().forStu3();
    IGenericClient client = ctx.newRestfulGenericClient("http://gpconnect.aprovider.nhs.net/GP001/STU3/1/");
    Location location = client.read().resource(Location.class).withId("17").execute();
    
    Tags: foundations

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