Endpoint Search
Endpoint
Profiles & Operations > EndPoint
Endpoint Search(work in progress)
Endpoint search is simple RESTful interactions. It support retrieving endpoints instances
Scope
An endpoint describes the technical details of a location that can be connected to for the delivery/retrieval of information. Sufficient information is required to ensure that a connection can be made securely, and appropriate data transmitted as defined by the endpoint owner.
These may be locally hosted services, regional services, or national service.
These resources are typically used to identify where to locate endpoint details for:
•Referrals: Where to send referral requests (linked to the services catalogue resources - Location/PractitionerRole/Endpoint)
•Referrals - Templates: Where to locate referral templates (Questionnaires) (linked to the services catalogue resources - /Location/PractitionerRole/Endpoint)
•Service Provider Catalogue: Location of related directories (parent/child/federated)
Specification
This FHIR spec is based on the HL7 STU3 Read operation. It makes use of the following resources:
Provider Endpoint Search Request
Provider Endpoint Search Response
Summary of Supported Operations
The table below shows the allowed transactions for each profile and how they support FHIR endpoints, resources and their corresponding HTTP operations:
Resource | Transaction | HTTP Operations | URL | Request Body Resource | Response Body Resource |
---|---|---|---|---|---|
Endpoint | Search | POST | [base]/Endpoint? | N/A | Bundle containing Endpoint |
The interaction summary table below lists the HTTP status codes that may be returned for the search.
Interaction | Content-Type | Body | Location | Versioning | Status Codes | Comments |
---|---|---|---|---|---|---|
Search (Endpoint) | R | R: Bundle | N/A | N/A | 200,400,500 |
Endpoint Search Operations
The Endpoint search is invoked through a HTTP POST request specifying the issuer (e.g. URI of PPR EPID, CPSO etc.) and identifier value (EPID, UPI, etc.) of a single Endpoint instance. The response from the FHIR Provider RESTful Server will be a Endpoint Resource, or in the case of a failed search, an operation outcome resource.
Trigger Event
When a FHIR Client has the identifiers for an Endpoint but does not yet have the name, contact, license and other information or wishes to retrieve an updated version of the Endpoint's information, it invokes an Endpoint search.
Expected Behaviour
The FHIR Server shall return the records that correspond to the "Issuer/identifier" combination used in the request by the FHIR Provider RESTful Client. The FHIR Server shall respond synchronously (i.e. on the same connection as was used to initiate the request).
The FHIR Server shall respond to the search request as described by the following cases and shall behave according to the use-cases listed below:
Case | Scenario Description | Response |
---|---|---|
1 | PPR finds in its information source, Endpoint that matches the id specified by the FHIR Client Application | HTTP 200 (OK) is returned as the HTTP status code. A bundle is returned that contains the a Endpoint |
2 | PPR cannot find an Endpoint that meets the search parameter specified by the FHIR Client Application | HTTP 200 (OK) is returned as the HTTP status code. An empty bundle is returned |
3 | PPR detects an error in the request and could not fulfill the request | HTTP 400(Bad Request) is returned as the HTTP status code. The body contains an OperationOutcome with error details. |
4 | PPR validates the request but cannot return valid response due to internal issue. | HTTP 500 (Internal Server Error) is returned as the HTTP status code. An OperationOutcome Resource is returned indicating an issue. Client should contact eHealth Ontario for trouble shooting. |
Examples
Endpoint search request :
Location search response :
TBD...