C-CDA Ingestion Into Data Cloud
Setup
Prerequisites:
- Sign up for an EMR Account and create a client application in the EMR system.
Set up Data Cloud:
- Log in to your Salesforce Data Cloud instance.
- Install the MuleSoft Direct for Health Data Kit
- Go to Setup and click Data Cloud Setup.
- Click on Ingestion API, and then click New.
- Name the Ingestion API
CCDA
, and click SAVE. - Click on the App launcher and select Data Cloud.
- Click Data Streams and click NEW.
- Choose Installed Data Kits and Packages
- Select the Ingestion API name from the dropdown (this is the source API name you created in the previous steps), and then select the object names and click Next.
On the next page, verify the details like the Data stream name and object, and then click Deploy.
- The data streams and the associated mappings to the Data Model Objects are created
Follow this link for setting up a connected app.
Steps:
Set up the CCDA application on MuleSoft:
- Log in to Salesforce and navigate to the setup page.
- Search for the ‘Integrations Setup’ page.
- Select the C-CDA Ingestion Into Data Cloud application and click Enable.
- Enter the application display name, target business group, and environment for deployment, and click Next.
- Click C-CDA Ingestion Into Data Cloud to add the properties.
Key name | Sample value | Description | |
---|---|---|---|
1 | Client ID for Data Cloud instance | - | Client ID for Data Cloud instance |
2 | Client secret for Data Cloud instance | - | Client secret for Data Cloud instance |
3 | Username for Data Cloud instance | - | Username for Data Cloud instance |
4 | Password for Data Cloud instance | - | Password for Data Cloud instance |
5 | Data Cloud instance Url | https://test-instance.salesforce.com | Data Cloud instance Url |
6 | Data Cloud source API name | CCDA | Data Cloud source API name |
- To add an optional configuration, click the Add Additional parameters and enter the required details. For configuration details, refer to the following table:
SNo | Application property name(Key name) | Description | Sample value |
---|---|---|---|
1 | healthCloudSAPI.host | Health Cloud APIs host | api.healthcloud.salesforce.com |
2 | hcOrg.tokenUrl | Token URL for Salesforce Health Cloud Instance | https://salesforce.com/services/oauth2/token |
3 | hcOrg.client_id | Client ID for Salesforce Health Cloud Instance. Select “Protect value" on the Anypoint interface in CloudHub 2.0 | - |
4 | hcOrg.client_secret | Client Secret for Salesforce Health Cloud Instance | - |
5 | emr.scope | Scopes to access resources in EMR Default value: system/Patient.read system/DocumentReference.read system/Binary.read | - |
Note - healthCloudSAPI.host, hcOrg.tokenUrl, hcOrg.client_id and hcOrg.client_secret
. These properties must be configured to sync CCDA documents from Salesforce Health Cloud into Data Cloud.
- Select the
Generic FHIR Client
tab and select the Authorization protocol as appropriate. - Here’s an example of JWT Authorization Protocol with Cerner sandbox for a generic FHIR client application:
Key name | Sample value | Description | |
---|---|---|---|
1 | Base URL | https://fhir-ehr-code.cerner.com/r4/123abc-5678-9123 | Base URL of the end system. |
2 | Token URL | https://authorization.cerner.com/tenants/123abc-5678-9123/protocols/oauth2/profiles/smart-v1/token | Token URL of the end system. |
3 | Client ID | - | Client ID for the end system. |
4 | Private Key | - | Upload the private key file |
5 | File Password | - | Private Key file password |
- To add an optional configuration, click the Add Additional parameters and enter the required details. For configuration details, refer to the following table:
SNo | Application property name(Key name) | Sample value | Description |
---|---|---|---|
1 | lob.JWT.algorithm | RS256 | Preferred algorithm for JWT Authentication. Default value: RS256. Supported Algorithms: RS256, RS384, RS512 |
2 | lob.JWT.exp | 5 | Expiration time for JWT (In Minutes) Default: 5 |
3 | lob.JWT.kid | - | Key Identifier for JWT |
- Click Proceed to deploy the application.
Post-Deployment:
MuleSoft endpoints can be triggered as mentioned in the API Documentation.