Create a destination for GCP + Cloud Healthcare API or HDE

Last updated: Nov 20, 2024
IMPLEMENTATION
HEALTH TECH VENDOR

For cloud connectivity with Redox, you decide which cloud provider and cloud product(s) to use. Then, you'll need to create a cloud destination in your Redox organization.

You'll need to perform some steps in your cloud product(s) and some in Redox. You can perform Redox setup in our dashboard or with the Redox Platform API.

Cloud products

This article is for this combination of cloud products:

  • Google Cloud Platform (GCP)
  • Cloud Healthcare API or Google Healthcare Data Engine (HDE)

Configure in GCP

  1. Navigate to the GCP dashboard and log in.
  2. Create a service account in your GCP project.
  3. Create a new key for your service account.
  4. A new key file is downloaded. Save this file, since you'll need it for Redox setup later.
  5. Create a new FHIR® data store in your service account, or use an existing one. Make sure to enable the Allow update create feature for the data store.
  6. For your FHIR® data store, add the service account as a principal with the Healthcare FHIR® Resource Editor role.

Create a cloud destination in Redox

Next, create a cloud destination in your Redox organization. This destination will be where your data is pushed to.

In the dashboard

  1. From the Product type, select Cloud Healthcare API. This is the correct selection for both Cloud Healthcare API and HDE.
  2. For the configure destination step, populate these fields.
    1. Project ID: Enter the GCP project ID. Locate this value in the GCP dashboard.
    2. Location: Enter the GCP location name for your FHIR® store (e.g., us-west1).
    3. Dataset ID: Enter the ID of the dataset that contains your FHIR® store.
    4. FHIR® Store ID: Enter the ID of the FHIR® data store you created in GCP. Locate this value in the GCP dashboard.
  3. Click the Next button.
  4. For the auth credential step, either a drop-down list of existing auth credentials displays or a new auth credential form opens. Learn how to create an auth credential for JWT Bearer.

With the Redox Platform API

  1. In your terminal, prepare the /v1/authcredentials request.
  2. Specify these values in the request.
    • Locate the keyId, clientId (value of client_email), and privateKey values in the downloaded key file from GCP.
      Example: Create auth credential for GCP
      json
      1
      curl 'https://api.redoxengine.com/platform/v1/authcredentials' \
      2
      --request POST \
      3
      --header 'Authorization: Bearer $API_TOKEN' \
      4
      --header 'accept: application/json' \
      5
      --header 'content-type: application/json' \
      6
      --data '{
      7
      "organization": "<Redox_organization_name>"
      8
      "name": "<human_readable_name_for_auth_credential>"
      9
      "environmentId": "<Redox_environment_ID>"
      10
      "authStrategy": "JWT_Bearer"
      11
      "url": "https://healthcare.googleapis.com/"
      12
      "algorithm": "RS256"
      13
      "clientId": "<client_email>"
      14
      "keyId": "<keyId_from_GCP>"
      15
      "privateKey": "<privateKey_from_GCP>"
      16
      }
  3. You should get a successful response with details for the new auth credential.
  4. In your terminal, prepare the /v1/environments/{environmentId}/destinations request.
  5. Specify these values in the request.
    • Set authCredential to the auth credential ID from the response you received in step #4.
    • Populate cloudProviderSettings with the settings below (adjust values based on the FHIR® data store setup in the GCP configuration).
      Example: Values for GCP + HDE or Cloud Healthcare API cloudProviderSettings
      json
      1
      {
      2
      "cloudProviderSettings": {
      3
      "typeId": "gcp",
      4
      "productId": "cloud-healthcare-api",
      5
      "settings": {
      6
      "location": "us-west1",
      7
      "fhirStoreId": "my-fhir-store",
      8
      "projectId": "fhir-test-123456",
      9
      "datasetId": "fhir-test"
      10
      }
      11
      }
      12
      }
  6. You should get a successful response with details for the new destination for GCP.
  7. Your new destination will now be able to receive messages. We convert those messages into a transaction bundle, which are ingested into Cloud Healthcare API.