This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3
Patient Administration Work Group | Maturity Level: 2 | Trial Use | Security Category: Business | Compartments: Not linked to any 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 | test EndpointStatus (Required) |
connectionType | Σ | 1..* | CodeableConcept | Protocol/Profile/Standard to be used with this endpoint connection 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 EndpointEnvironment (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 |
payloadType | Σ | 0..* | CodeableConcept | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) Endpoint Payload Type (Example) |
payloadMimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) MimeType (Required) |
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 | test --> <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> <payloadType><!-- 0..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) --></payloadType> <payloadMimeType value="[code]"/><!-- 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) --> <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 | test "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 "payloadType" : [{ CodeableConcept }], // The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) "payloadMimeType" : ["<code>"], // Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) "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:Endpoint.identifier [ Identifier ], ... ; # 0..* Identifies this endpoint across multiple systems fhir:Endpoint.status [ code ]; # 1..1 active | suspended | error | off | entered-in-error | test fhir:Endpoint.connectionType [ CodeableConcept ], ... ; # 1..* Protocol/Profile/Standard to be used with this endpoint connection fhir:Endpoint.name [ string ]; # 0..1 A name that this endpoint can be identified by fhir:Endpoint.description [ string ]; # 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name fhir:Endpoint.environmentType [ CodeableConcept ], ... ; # 0..* The type of environment(s) exposed at this endpoint fhir:Endpoint.managingOrganization [ Reference(Organization) ]; # 0..1 Organization that manages this endpoint (might not be the organization that exposes the endpoint) fhir:Endpoint.contact [ ContactPoint ], ... ; # 0..* Contact details for source (e.g. troubleshooting) fhir:Endpoint.period [ Period ]; # 0..1 Interval the endpoint is expected to be operational fhir:Endpoint.payloadType [ CodeableConcept ], ... ; # 0..* The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) fhir:Endpoint.payloadMimeType [ code ], ... ; # 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) fhir:Endpoint.address [ url ]; # 1..1 The technical base address for connecting to this endpoint fhir:Endpoint.header [ string ], ... ; # 0..* Usage depends on the channel type ]
Changes since R4
Endpoint | |
Endpoint.connectionType |
|
Endpoint.description |
|
Endpoint.environmentType |
|
Endpoint.payloadType |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
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 | test EndpointStatus (Required) |
connectionType | Σ | 1..* | CodeableConcept | Protocol/Profile/Standard to be used with this endpoint connection 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 EndpointEnvironment (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 |
payloadType | Σ | 0..* | CodeableConcept | The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) Endpoint Payload Type (Example) |
payloadMimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) MimeType (Required) |
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 | test --> <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> <payloadType><!-- 0..* CodeableConcept The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) --></payloadType> <payloadMimeType value="[code]"/><!-- 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) --> <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 | test "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 "payloadType" : [{ CodeableConcept }], // The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) "payloadMimeType" : ["<code>"], // Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) "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:Endpoint.identifier [ Identifier ], ... ; # 0..* Identifies this endpoint across multiple systems fhir:Endpoint.status [ code ]; # 1..1 active | suspended | error | off | entered-in-error | test fhir:Endpoint.connectionType [ CodeableConcept ], ... ; # 1..* Protocol/Profile/Standard to be used with this endpoint connection fhir:Endpoint.name [ string ]; # 0..1 A name that this endpoint can be identified by fhir:Endpoint.description [ string ]; # 0..1 Additional details about the endpoint that could be displayed as further information to identify the description beyond its name fhir:Endpoint.environmentType [ CodeableConcept ], ... ; # 0..* The type of environment(s) exposed at this endpoint fhir:Endpoint.managingOrganization [ Reference(Organization) ]; # 0..1 Organization that manages this endpoint (might not be the organization that exposes the endpoint) fhir:Endpoint.contact [ ContactPoint ], ... ; # 0..* Contact details for source (e.g. troubleshooting) fhir:Endpoint.period [ Period ]; # 0..1 Interval the endpoint is expected to be operational fhir:Endpoint.payloadType [ CodeableConcept ], ... ; # 0..* The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) fhir:Endpoint.payloadMimeType [ code ], ... ; # 0..* Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) fhir:Endpoint.address [ url ]; # 1..1 The technical base address for connecting to this endpoint fhir:Endpoint.header [ string ], ... ; # 0..* Usage depends on the channel type ]
Changes since Release 4
Endpoint | |
Endpoint.connectionType |
|
Endpoint.description |
|
Endpoint.environmentType |
|
Endpoint.payloadType |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 3 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Endpoint.status | The status of the endpoint. | Required | EndpointStatus |
Endpoint.connectionType | This is an example value set defined by the FHIR project, that could be used to represent possible connection type profile values. | Example | EndpointConnectionType |
Endpoint.environmentType | The environment type of the endpoint. | Extensible | EndpointEnvironment |
Endpoint.payloadType | This is an example value set defined by the FHIR project, that could be used to represent possible payload document types. | Example | EndpointPayloadType |
Endpoint.payloadMimeType | This value set includes all possible codes from BCP-13 (http://tools.ietf.org/html/bcp13) | Required | Mime Types |
Search parameters for 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 N | 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.payloadType | |
status N | token | The current status of the Endpoint (usually expected to be active) | Endpoint.status |