View raw Markdown
type: resource-definitionsresource: Endpoint

Endpoint Definitions

<a id="Endpoint"></a>

Endpoint

The technical details of an endpoint that can be used for electronic services

Definition: The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b, a REST endpoint for another FHIR server, or a s/Mime email address. This may include any security context information.

Cardinality: 0..*

Mappings: rim=n/a; w5=infrastructure.exchange

<a id="Endpoint.identifier"></a>

Endpoint.identifier

Identifies this endpoint across multiple systems

Definition: Identifier for the organization that is used to identify the endpoint across multiple disparate systems.

Cardinality: 0..*

Type: Identifier

Summary: true

Mappings: w5=FiveWs.identifier; rim=n/a

<a id="Endpoint.status"></a>

Endpoint.status

active | limited | suspended | error | off | entered-in-error

Definition: The endpoint status represents whether the endpoint can currently be used for connections or why it can't be used.

Comments: This element is labeled as a modifier because the status contains codes that mark the endpoint as not currently valid. Temporary downtimes or other unexpected short-term changes in availability would not be represented in this property.

Cardinality: 1..1

Type: code

Binding: required:endpoint-status

Summary: true

Is Modifier: true (Reason: This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid)

Mappings: w5=FiveWs.status; rim=n/a

<a id="Endpoint.connectionType"></a>

Endpoint.connectionType

Protocol/Profile/Standard to be used with this endpoint connection

Definition: 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).

Comments: For additional connectivity details for the protocol, extensions will be used at this point, as in the XDS example. If there are multiple payload types or mimetypes they are all applicable for all connection types, and all have the same status.

Cardinality: 1..*

Type: CodeableConcept

Binding: example:endpoint-connection-type

Summary: true

Mappings: w5=FiveWs.class; rim=n/a

<a id="Endpoint.name"></a>

Endpoint.name

A name that this endpoint can be identified by

Definition: A friendly name that this endpoint can be referred to with.

Cardinality: 0..1

Type: string

Summary: true

Mappings: w5=FiveWs.what[x]; rim=n/a

<a id="Endpoint.description"></a>

Endpoint.description

Additional details about the endpoint that could be displayed as further information to identify the description beyond its name

Definition: The description of the endpoint and what it is for (typically used as supplemental information in an endpoint directory describing its usage/purpose).

Cardinality: 0..1

Type: string

Summary: true

Mappings: rim=n/a

<a id="Endpoint.environmentType"></a>

Endpoint.environmentType

The type of environment(s) exposed at this endpoint

Definition: The type of environment(s) exposed at this endpoint (dev, prod, test, etc.).

Cardinality: 0..*

Type: CodeableConcept

Binding: extensible:endpoint-environment

Summary: true

Mappings: rim=n/a

<a id="Endpoint.managingOrganization"></a>

Endpoint.managingOrganization

Organization that manages this endpoint (might not be the organization that exposes the endpoint)

Definition: The organization that provides technical management services for this endpoint. This would be the organization that acts as the public help desk for when the endpoint is not functioning. It does NOT necessarily represent the organization who is the steward of data being provided/accepted by the endpoint.

Comments: This property would NOT be used if the organization is only providing technical infrastructure. For example, it would NOT refer to the cloud hosting provider if that provider were not providing helpdesk support for the endpoint.

This property would NOT be used to represent the entity that is the steward of the data exposed by the endpoint. This should be represented via Organization.endpoint. PractitionerRole.endpoint, Location.endpoint, or the other directory resources that may refer to endpoints.

This property is not typically used when searching for Endpoint resources for the purpose of retrieving or sending clinical or administrative data. However you may use this property to find endpoints for other technical administrative reasons such as if an organization that is managing endpoints is going out of business, you may need to update to the new managing organization.

Cardinality: 0..1

Type: Reference(Organization)

Summary: true

Mappings: rim=n/a

<a id="Endpoint.contact"></a>

Endpoint.contact

Contact details for source (e.g. troubleshooting)

Definition: Contact details for a human to contact about the endpoint. The primary use of this for system administrator troubleshooting.

Cardinality: 0..*

Type: ContactPoint

Mappings: rim=n/a

<a id="Endpoint.period"></a>

Endpoint.period

Interval the endpoint is expected to be operational

Definition: The interval during which the endpoint is expected to be operational.

Comments: Temporary downtimes or other short-term changes in availability would not be represented in this property.

Cardinality: 0..1

Type: Period

Summary: true

Mappings: w5=FiveWs.done[x]; rim=n/a

<a id="Endpoint.availability"></a>

Endpoint.availability

Times the endpoint is expected to be available (including exceptions)

Definition: The times the endpoint is expected to be available, including transient downtimes and any exceptions.

Comments: Endpoint.availability is meant to represent specific availability, including temporary downtimes or other short term changes in availability. Conversely, Endpoint.period is meant to represent the general planned period of time when the Endpoint may be used, for example when an endpoint is being commissioned or decommissioned. For example, if an Endpoint is only available during business hours (9-5), the lack of availability during the night would not be reflected in Endpoint.period,but would be reflected in Endpoint.availability.

Cardinality: 0..1

Type: Availability

<a id="Endpoint.payload"></a>

Endpoint.payload

Set of payloads that are provided by this endpoint

Definition: The set of payloads that are provided/available at this endpoint.

Comments: Note that not all mimetypes or types will be listed under the one endpoint resource, there may be multiple instances that information for cases where other header data such as the endpoint address, active status/period etc. is different.

Cardinality: 0..*

Type: BackboneElement

<a id="Endpoint.payload.type"></a>

Endpoint.payload.type

The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)

Definition: The payload type describes the acceptable content that can be communicated on the endpoint.

Comments: The mimeType describes the serialization format of the data, where the payload.type indicates the specific document/schema that is being transferred; e.g. DischargeSummary or CarePlan.

Cardinality: 0..*

Type: CodeableConcept

Binding: example:endpoint-payload-type

Summary: true

Mappings: rim=n/a

<a id="Endpoint.payload.mimeType"></a>

Endpoint.payload.mimeType

Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)

Definition: 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).

Comments: Sending the payload has obvious security consequences. The server is responsible for ensuring that the content is appropriately secured.

Cardinality: 0..*

Type: code

Binding: required:mimetypes

Summary: true

Mappings: rim=n/a

<a id="Endpoint.payload.profileCanonical"></a>

Endpoint.payload.profileCanonical

The profile that is expected at this endpoint

Definition: The FHIR profile that is expected at this endpoint. It describes the resources that are handled, or even simply which resource types -e.g. Vital Sign Observations or QuestionnaireResponse. The profileUri may be used when a FHIR Structure Definition is not available/appropriate.

Cardinality: 0..*

Type: canonical

Mappings: rim=n/a

<a id="Endpoint.payload.profileUri"></a>

Endpoint.payload.profileUri

The non-fhir based profile that is expected at this endpoint

Definition: The profile (as a uri) that is expected at this endpoint when not represented using a FHIR profile.

e.g. CDA Template ID expressed as an OID (in the Uri).

Cardinality: 0..*

Type: uri

Mappings: rim=n/a

<a id="Endpoint.address"></a>

Endpoint.address

The technical base address for connecting to this endpoint

Definition: The uri that describes the actual end-point to connect to.

Comments: 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 there 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/...".

Cardinality: 1..1

Type: url

Summary: true

Mappings: rim=n/a

<a id="Endpoint.header"></a>

Endpoint.header

Usage depends on the channel type

Definition: Additional headers / information to send as part of the notification.

Comments: Exactly what these mean depends on the channel type. The can convey additional information to the recipient and/or meet security requirements.

Cardinality: 0..*

Type: string

Summary: false