Publish-box (todo)
Patient Administration Work Group | Maturity Level: 2 | Trial Use | Security Category: Business | Compartments: No defined compartments |
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.
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 system (and in the metadata case, just this system)
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 system'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 value 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. The value is generally used to communicate with an entity directly, not a system.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Endpoint | TU | DomainResource | The technical details of an endpoint that can be used for electronic services Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Identifies this endpoint across multiple systems |
status | ?!Σ | 1..1 | code | active | suspended | error | off | entered-in-error Binding: Endpoint Status (Required) |
connectionType | Σ | 1..* | CodeableConcept | Protocol/Profile/Standard to be used with this endpoint connection Binding: Endpoint Connection Type (Example) |
name | Σ | 0..1 | string | A name that this endpoint can be identified by |
description | Σ | 0..1 | string | Additional details about the endpoint that could be displayed as further information to identify the description beyond its name |
environmentType | Σ | 0..* | CodeableConcept | The type of environment(s) exposed at this endpoint Binding: Endpoint Environment (Extensible) |
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that manages this endpoint (might not be the organization that exposes the endpoint) |
contact | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting) | |
period | Σ | 0..1 | Period | Interval the endpoint is expected to be operational |
availability | 0..1 | Availability | Times the endpoint is expected to be available (including exceptions) | |
payload | 0..* | BackboneElement | Set of payloads that are provided by this endpoint | |
type | Σ | 0..* | CodeableConcept | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) Binding: Endpoint Payload Type (Example) |
mimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) Binding: Mime Types (Required) |
profileCanonical | 0..* | canonical() | The profile that is expected at this endpoint | |
profileUri | 0..* | uri | The non-fhir based profile that is expected at this endpoint | |
address | Σ | 1..1 | url | The technical base address for connecting to this endpoint |
header | 0..* | string | Usage depends on the channel type | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<Endpoint xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifies this endpoint across multiple systems --></identifier> <status value="[code]"/><!-- 1..1 active | suspended | error | off | entered-in-error --> <connectionType><!-- 1..* CodeableConcept Protocol/Profile/Standard to be used with this endpoint connection --></connectionType> <name value="[string]"/><!-- 0..1 A name that this endpoint can be identified by --> <description value="[string]"/><!-- 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name --> <environmentType><!-- 0..* CodeableConcept The type of environment(s) exposed at this endpoint --></environmentType> <managingOrganization><!-- 0..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint) --></managingOrganization> <contact><!-- 0..* ContactPoint Contact details for source (e.g. troubleshooting) --></contact> <period><!-- 0..1 Period Interval the endpoint is expected to be operational --></period> <availability><!-- 0..1 Availability Times the endpoint is expected to be available (including exceptions) --></availability> <payload> <!-- 0..* Set of payloads that are provided by this endpoint --> <type><!-- 0..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) --></type> <mimeType value="[code]"/><!-- 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) --> <profileCanonical value="[canonical]"/><!-- 0..* The profile that is expected at this endpoint --> <profileUri value="[uri]"/><!-- 0..* The non-fhir based profile that is expected at this endpoint --> </payload> <address value="[url]"/><!-- 1..1 The technical base address for connecting to this endpoint --> <header value="[string]"/><!-- 0..* Usage depends on the channel type --> </Endpoint>
JSON Template
{ "resourceType" : "Endpoint", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifies this endpoint across multiple systems "status" : "<code>", // R! active | suspended | error | off | entered-in-error "connectionType" : [{ CodeableConcept }], // R! Protocol/Profile/Standard to be used with this endpoint connection "name" : "<string>", // A name that this endpoint can be identified by "description" : "<string>", // Additional details about the endpoint that could be displayed as further information to identify the description beyond its name "environmentType" : [{ CodeableConcept }], // The type of environment(s) exposed at this endpoint "managingOrganization" : { Reference(Organization) }, // Organization that manages this endpoint (might not be the organization that exposes the endpoint) "contact" : [{ ContactPoint }], // Contact details for source (e.g. troubleshooting) "period" : { Period }, // Interval the endpoint is expected to be operational "availability" : { Availability }, // Times the endpoint is expected to be available (including exceptions) "payload" : [{ // Set of payloads that are provided by this endpoint "type" : [{ CodeableConcept }], // The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) "mimeType" : ["<code>"], // Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) "profileCanonical" : ["<canonical>"], // The profile that is expected at this endpoint "profileUri" : ["<uri>"] // The non-fhir based profile that is expected at this endpoint }], "address" : "<url>", // R! The technical base address for connecting to this endpoint "header" : ["<string>"] // Usage depends on the channel type }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Endpoint; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifies this endpoint across multiple systems fhir:status [ code ] ; # 1..1 active | suspended | error | off | entered-in-error fhir:connectionType ( [ CodeableConcept ] ... ) ; # 1..* Protocol/Profile/Standard to be used with this endpoint connection fhir:name [ string ] ; # 0..1 A name that this endpoint can be identified by fhir:description [ string ] ; # 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name fhir:environmentType ( [ CodeableConcept ] ... ) ; # 0..* The type of environment(s) exposed at this endpoint fhir:managingOrganization [ Reference(Organization) ] ; # 0..1 Organization that manages this endpoint (might not be the organization that exposes the endpoint) fhir:contact ( [ ContactPoint ] ... ) ; # 0..* Contact details for source (e.g. troubleshooting) fhir:period [ Period ] ; # 0..1 Interval the endpoint is expected to be operational fhir:availability [ Availability ] ; # 0..1 Times the endpoint is expected to be available (including exceptions) fhir:payload ( [ # 0..* Set of payloads that are provided by this endpoint fhir:type ( [ CodeableConcept ] ... ) ; # 0..* The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) fhir:mimeType ( [ code ] ... ) ; # 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) fhir:profileCanonical ( [ canonical ] ... ) ; # 0..* The profile that is expected at this endpoint fhir:profileUri ( [ uri ] ... ) ; # 0..* The non-fhir based profile that is expected at this endpoint ] ... ) ; fhir:address [ url ] ; # 1..1 The technical base address for connecting to this endpoint fhir:header ( [ string ] ... ) ; # 0..* Usage depends on the channel type ]
Changes from both R4 and R4B
Endpoint | |
Endpoint.status |
|
Endpoint.connectionType |
|
Endpoint.description |
|
Endpoint.environmentType |
|
Endpoint.availability |
|
Endpoint.payload |
|
Endpoint.payload.type |
|
Endpoint.payload.mimeType |
|
Endpoint.payload.profileCanonical |
|
Endpoint.payload.profileUri |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Endpoint | TU | DomainResource | The technical details of an endpoint that can be used for electronic services Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Identifies this endpoint across multiple systems |
status | ?!Σ | 1..1 | code | active | suspended | error | off | entered-in-error Binding: Endpoint Status (Required) |
connectionType | Σ | 1..* | CodeableConcept | Protocol/Profile/Standard to be used with this endpoint connection Binding: Endpoint Connection Type (Example) |
name | Σ | 0..1 | string | A name that this endpoint can be identified by |
description | Σ | 0..1 | string | Additional details about the endpoint that could be displayed as further information to identify the description beyond its name |
environmentType | Σ | 0..* | CodeableConcept | The type of environment(s) exposed at this endpoint Binding: Endpoint Environment (Extensible) |
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that manages this endpoint (might not be the organization that exposes the endpoint) |
contact | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting) | |
period | Σ | 0..1 | Period | Interval the endpoint is expected to be operational |
availability | 0..1 | Availability | Times the endpoint is expected to be available (including exceptions) | |
payload | 0..* | BackboneElement | Set of payloads that are provided by this endpoint | |
type | Σ | 0..* | CodeableConcept | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) Binding: Endpoint Payload Type (Example) |
mimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) Binding: Mime Types (Required) |
profileCanonical | 0..* | canonical() | The profile that is expected at this endpoint | |
profileUri | 0..* | uri | The non-fhir based profile that is expected at this endpoint | |
address | Σ | 1..1 | url | The technical base address for connecting to this endpoint |
header | 0..* | string | Usage depends on the channel type | |
Documentation for this format |
See the Extensions for this resource
XML Template
<Endpoint xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifies this endpoint across multiple systems --></identifier> <status value="[code]"/><!-- 1..1 active | suspended | error | off | entered-in-error --> <connectionType><!-- 1..* CodeableConcept Protocol/Profile/Standard to be used with this endpoint connection --></connectionType> <name value="[string]"/><!-- 0..1 A name that this endpoint can be identified by --> <description value="[string]"/><!-- 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name --> <environmentType><!-- 0..* CodeableConcept The type of environment(s) exposed at this endpoint --></environmentType> <managingOrganization><!-- 0..1 Reference(Organization) Organization that manages this endpoint (might not be the organization that exposes the endpoint) --></managingOrganization> <contact><!-- 0..* ContactPoint Contact details for source (e.g. troubleshooting) --></contact> <period><!-- 0..1 Period Interval the endpoint is expected to be operational --></period> <availability><!-- 0..1 Availability Times the endpoint is expected to be available (including exceptions) --></availability> <payload> <!-- 0..* Set of payloads that are provided by this endpoint --> <type><!-- 0..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) --></type> <mimeType value="[code]"/><!-- 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) --> <profileCanonical value="[canonical]"/><!-- 0..* The profile that is expected at this endpoint --> <profileUri value="[uri]"/><!-- 0..* The non-fhir based profile that is expected at this endpoint --> </payload> <address value="[url]"/><!-- 1..1 The technical base address for connecting to this endpoint --> <header value="[string]"/><!-- 0..* Usage depends on the channel type --> </Endpoint>
JSON Template
{ "resourceType" : "Endpoint", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifies this endpoint across multiple systems "status" : "<code>", // R! active | suspended | error | off | entered-in-error "connectionType" : [{ CodeableConcept }], // R! Protocol/Profile/Standard to be used with this endpoint connection "name" : "<string>", // A name that this endpoint can be identified by "description" : "<string>", // Additional details about the endpoint that could be displayed as further information to identify the description beyond its name "environmentType" : [{ CodeableConcept }], // The type of environment(s) exposed at this endpoint "managingOrganization" : { Reference(Organization) }, // Organization that manages this endpoint (might not be the organization that exposes the endpoint) "contact" : [{ ContactPoint }], // Contact details for source (e.g. troubleshooting) "period" : { Period }, // Interval the endpoint is expected to be operational "availability" : { Availability }, // Times the endpoint is expected to be available (including exceptions) "payload" : [{ // Set of payloads that are provided by this endpoint "type" : [{ CodeableConcept }], // The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) "mimeType" : ["<code>"], // Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) "profileCanonical" : ["<canonical>"], // The profile that is expected at this endpoint "profileUri" : ["<uri>"] // The non-fhir based profile that is expected at this endpoint }], "address" : "<url>", // R! The technical base address for connecting to this endpoint "header" : ["<string>"] // Usage depends on the channel type }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Endpoint; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifies this endpoint across multiple systems fhir:status [ code ] ; # 1..1 active | suspended | error | off | entered-in-error fhir:connectionType ( [ CodeableConcept ] ... ) ; # 1..* Protocol/Profile/Standard to be used with this endpoint connection fhir:name [ string ] ; # 0..1 A name that this endpoint can be identified by fhir:description [ string ] ; # 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name fhir:environmentType ( [ CodeableConcept ] ... ) ; # 0..* The type of environment(s) exposed at this endpoint fhir:managingOrganization [ Reference(Organization) ] ; # 0..1 Organization that manages this endpoint (might not be the organization that exposes the endpoint) fhir:contact ( [ ContactPoint ] ... ) ; # 0..* Contact details for source (e.g. troubleshooting) fhir:period [ Period ] ; # 0..1 Interval the endpoint is expected to be operational fhir:availability [ Availability ] ; # 0..1 Times the endpoint is expected to be available (including exceptions) fhir:payload ( [ # 0..* Set of payloads that are provided by this endpoint fhir:type ( [ CodeableConcept ] ... ) ; # 0..* The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) fhir:mimeType ( [ code ] ... ) ; # 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) fhir:profileCanonical ( [ canonical ] ... ) ; # 0..* The profile that is expected at this endpoint fhir:profileUri ( [ uri ] ... ) ; # 0..* The non-fhir based profile that is expected at this endpoint ] ... ) ; fhir:address [ url ] ; # 1..1 The technical base address for connecting to this endpoint fhir:header ( [ string ] ... ) ; # 0..* Usage depends on the channel type ]
Changes from both R4 and R4B
Endpoint | |
Endpoint.status |
|
Endpoint.connectionType |
|
Endpoint.description |
|
Endpoint.environmentType |
|
Endpoint.availability |
|
Endpoint.payload |
|
Endpoint.payload.type |
|
Endpoint.payload.mimeType |
|
Endpoint.payload.profileCanonical |
|
Endpoint.payload.profileUri |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | ValueSet | Type | Documentation |
---|---|---|---|
Endpoint.status | EndpointStatus | Required | The status of the endpoint. |
Endpoint.connectionType | EndpointConnectionType | Example | This is an example value set defined by the FHIR project, that could be used to represent possible connection type profile values. |
Endpoint.environmentType | EndpointEnvironment | Extensible | The environment type of the endpoint. |
Endpoint.payload.type | EndpointPayloadType | Example | This is an example value set defined by the FHIR project, that could be used to represent possible payload document types. |
Endpoint.payload.mimeType | MimeTypes (a valid code from urn:ietf:bcp:13 ) |
Required | This value set includes all possible codes from BCP-13 (see http://tools.ietf.org/html/bcp13) |
Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
connection-type | token | Protocol/Profile/Standard to be used with this endpoint connection | Endpoint.connectionType | |
identifier | token | Identifies this endpoint across multiple systems | Endpoint.identifier | |
name | string | A name that this endpoint can be identified by | Endpoint.name | |
organization | reference | The organization that is managing the endpoint | Endpoint.managingOrganization (Organization) |
|
payload-type | token | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) | Endpoint.payload.type | |
status | token | The current status of the Endpoint (usually expected to be active) | Endpoint.status |