FHIR Connector Reference¶
The FHIR Connector allows you to work with resources in FHIR, which are the modular components of FHIR. The connector uses the FHIR RESTFul API to interact with FHIR.
Initializing the connector¶
Before you start performing various operations with the connector, make sure to import the FHIR certificate to your ESB client keystore.
To use the FHIR connector, add the
For more information on authentication/security of the FHIR REST API, see http://www.hl7.org/implement/standards/fhir/security.html.
fhir.init
The fhir.init operation initializes the connector to interact with the FHIR REST API.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
Sample configurations
<fhir.init>
<base>{$ctx:base}</base>
<fhir.init>
Conformance¶
getConformance
The conformance interaction retrieves the server's conformance statement that defines how it supports resources. The conformance interaction retrieves the server's conformance statement that defines how it supports resources, For that use fhir.getConformance and specify the following properties. For more information, see FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.getConformance>
<base>{$ctx:base}</base>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.getConformance>
Sample request
{
"base": "https://open-api.fhir.me",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
Resources¶
create
To creates a new resource in a server-assigned location, use fhir.create and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
Sample configurations
<fhir.create>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
</fhir.create>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json"
}
update
To create a new current version for an existing resource or create an initial version if no resource already exists for the given id, use fhir.update and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
idToUpdate | The element of a particular resource. If no id element is provided, or the value is wrong, the server SHALL respond with a HTTP 400 error code, and SHOULD provide an operation outcome identifying the issue. | Yes. |
format | The Mime Type. | Yes. |
Sample configurations
<fhir.update>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<idToUpdate>{$ctx:idToUpdate}</idToUpdate>
<format>{$ctx:format}</format>
</fhir.update>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"idToUpdate":"1032702",
"format": "json"
}
conditionalUpdate
The conditional update interaction allows a client to update an existing resource based on some identification criteria, rather than by logical id, For this use fhir.conditionalUpdate and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Yes. |
Sample configurations
<fhir.conditionalUpdate>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.conditionalUpdate>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
delete
To removes an existing resource, use fhir.delete and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
idToUpdate | The element of a particular resource. If no id element is provided, or the value is wrong, the server SHALL respond with a HTTP 400 error code, and SHOULD provide an operation outcome identifying the issue. | Yes. |
Sample configurations
<fhir.delete>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<idToDelete>{$ctx:idToDelete}</idToDelete>
</fhir.delete>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"idToDelete":"1032782",
"format": "json"
}
conditionalDelete
The conditional delete interaction allows a client to delete an existing resource based on some selection criteria, rather than by a specific logical id, For this use fhir.conditionalDelete and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Yes. |
Sample configurations
<fhir.conditionalDelete>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.conditionalDelete>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
readResource
To accesses the current contents of a resource, use fhir.readResource and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
Sample configurations
<fhir.readResource>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
</fhir.readResource>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json"
}
readSpecificResourceById
To accesses the current contents of a resource, use fhir.readSpecificResourceById and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
id | The possible values for the logical Id. | Yes. |
format | The Mime Type. | Yes. |
summary | The search parameter _summary can be used when reading a resource. It can have the values true, false, text & data. | Yes. |
Sample configurations
<fhir.readSpecificResourceById>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<id>{$ctx:id}</id>
<format>{$ctx:format}</format>
<summary>{$ctx:summary}</summary>
</fhir.readSpecificResourceById>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"id":"1032702",
"format": "json",
"summary": "true"
}
vReadResource
To preforms a version specific read of the resource, use fhir.vReadResource and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
logicalId | The possible values for the logical Id. | Yes. |
format | The Mime Type. | Yes. |
versionId | The Version Id ("vid") is an opaque identifier that conforms to the same format requirements as a Logical Id. | Yes. |
Sample configurations
<fhir.vReadResource>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<logicalId>{$ctx:logicalId}</logicalId>
<versionId>{$ctx:versionId}</versionId>
<format>{$ctx:format}</format>
</fhir.vReadResource>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"logicalId":"1032702",
"versionId":"107748",
"format": "json"
}
History¶
history
To retrieves the history of a particular resource supported by the system , use fhir.history and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
idForHistory | The id of the history that needs to be retrieved. | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.history>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<idForHistory>{$ctx:idForHistory}</idForHistory>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.history>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"idForHistory":1032702",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
historyAll
To retrieves the history of all resources supported by the system , use fhir.historyAll and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.historyAll>
<base>{$ctx:base}</base>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.historyAll>
Sample request
{
"base": "https://open-api.fhir.me",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
historyType
To retrieves the history of all resources of a given type supported by the system , use fhir.historyType and specify the following properties. For more information, see related FHIR API documentation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.historyType>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.historyType>
Sample request
{
"base": "https://open-api.fhir.me",
"type":"Patient"
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
Search¶
search
To search from a particular resource supported by the system , use fhir.search and specify the following properties. For more information, see related FHIR API documentation on search operation and filter operation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.search>
<base>{$ctx:base}</base>
<type>{$ctx:type}</type>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.search>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}
searchPost
To search from a particular resource supported by the system , use fhir.searchPost and specify the following properties. For more information, see related FHIR API documentation on the search operation.
Parameter Name | Description | Required |
---|---|---|
base | The service root URL. | Yes. |
type | The name of a resource type (e.g., "Patient"). | Yes. |
format | The Mime Type. | Yes. |
id, content, lastUpdated, profile, query, security, tag, text, filter | These are the optional parameters and are common search parameters for all resources. | Optional. |
Sample configurations
<fhir.historyAll>
<base>{$ctx:base}</base>
<format>{$ctx:format}</format>
<id>{$ctx:id}</id>
<content>{$ctx:content}</content>
<lastUpdated>{$ctx:lastUpdated}</lastUpdated>
<profile>{$ctx:profile}</profile>
<query>{$ctx:query}</query>
<security>{$ctx:security}</security>
<tag>{$ctx:tag}</tag>
<text>{$ctx:text}</text>
<filter>{$ctx:filter}</filter>
</fhir.historyAll>
Sample request
{
"base": "https://open-api.fhir.me",
"type": "Patient",
"format": "json",
"id":"%s(id)",
"content":"%s(content)",
"lastUpdated":"%s(lastUpdated)",
"profile":"%s(profile)",
"query":"%s(query)",
"security":"%s(security)",
"tag":"%s(tag)",
"text":"%s(text)",
"filter":"%s(filter)"
}