Path | Short | Definition | Comments |
---|---|---|---|
The technical details of an endpoint that can be used for electronic services | The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information. | ||
identifier | Identifies this endpoint across multiple systems | Identifier for the organization that is used to identify the endpoint across multiple disparate systems. | |
status | active | suspended | error | off | entered-in-error | test | active | suspended | error | off | test. | This element is labeled as a modifier because the status contains codes that mark the endpoint as not currently valid. |
connectionType | Protocol/Profile/Standard to be used with this endpoint connection | A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook). | For additional connectivity details for the protocol, extensions will be used at this point, as in the XDS example. |
name | A name that this endpoint can be identified by | A friendly name that this endpoint can be referred to with. | |
managingOrganization | Organization that manages this endpoint (might not be the organization that exposes the endpoint) | The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data). | This property is not typically used when searching for Endpoint resources for usage. The typical usage is via the reference from an aplicable Organization/Location/Practitioner resource, which is where the context is provided. Multiple Locations may reference a single endpoint, and don't have to be within the same organization resource, but most likely within the same organizational hierarchy. |
contact | Contact details for source (e.g. troubleshooting) | Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting. | |
period | Interval the endpoint is expected to be operational | The interval during which the endpoint is expected to be operational. | |
payloadType | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) | The payload type describes the acceptable content that can be communicated on the endpoint. | The payloadFormat describes the serialization format of the data, where the payloadType indicates the specific document/schema that is being transferred; e.g. DischargeSummary or CarePlan. |
payloadMimeType | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) | The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType). | Sending the payload has obvious security consequences. The server is responsible for ensuring that the content is appropriately secured. |
address | The technical base address for connecting to this endpoint | The uri that describes the actual end-point to connect to. | For rest-hook, and websocket, the end-point must be an http: or https: URL; for email, a mailto: url, for sms, a tel: url, and for message the endpoint can be in any form of url the server understands (usually, http: or mllp:). The URI is allowed to be relative; in which case, it is relative to the server end-point (since their may be more than one, clients should avoid using relative URIs) This address will be to the service base, without any parameters, or sub-services or resources tacked on. E.g. for a WADO-RS endpoint, the url should be "https://pacs.hospital.org/wado-rs" and not "https://pacs.hospital.org/wado-rs/studies/1.2.250.1.59.40211.12345678.678910/series/1.2.250.1.59.40211.789001276.14556172.67789/instances/...". |
header | Usage depends on the channel type | Additional headers / information to send as part of the notification. | Exactly what these mean depend on the channel type. The can convey additional information to the recipient and/or meet security requirements. |
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. This is not a description of details of the current system, as found in CapabilityStatement, but of
another (potentially external) system.
These may be locally hosted services, regional services, or national service.
These resources are typically used to identify where to locate endpoint details for:
The endpoint is distinct from a capability statement in that the CapabilityStatement statement describes the entire capability
of a server (and in the metadata case, just this server)
Where the endpoint resource describes the technical details for how to connect, and for what purposes
(which could be a small sub-set of the server's capabilities, and might not be a FHIR endpoint).
Endpoints are used to facilitate system to system communication, providing the details of the addressing of the system, purpose of use, protocols required/provided, and any other details required to communicate between the systems. (such as configuration parameters, require headers ...) The address vaue in the endpoint can only be used in the context of the provided details.
E.g. If the endpoint has a URL for an XDS service, using that in a browser by a user is meaningless.
E.g.2 If the endpoint has a US Direct address, using this to send a normal email message will not work, as they are not true email addresses (even though they appear to be)
A ContactPoint contains contact information, such as a phone number, web address that a user can directly interact with, no additional information would be required to use the value. Generally it is used to communicate with an entity directly, not a system.
connection-type | Protocol/Profile/Standard to be used with this endpoint connection | Endpoint.connectionType |
identifier | Identifies this endpoint across multiple systems | Endpoint.identifier |
name | A name that this endpoint can be identified by | Endpoint.name |
organization | The organization that is managing the endpoint | Endpoint.managingOrganization.where(resolve() is Organization) |
payload-type | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) | Endpoint.payloadType |
status | The current status of the Endpoint (usually expected to be active) | Endpoint.status |