Pendo Data Sync provides the ability to export Pendo data (excluding Pendo Feedback data) to your Google Cloud Storage (GCS) account. This article describes how to set up Data Sync with GCS.
Prerequisites
- Data Sync is a paid feature. Contact your Pendo representative for access.
- You must be a subscription admin in Pendo to set up a cloud storage destination as part of this process.
- The user must have
storage.objects.create
,storage.objects.delete
, andstorage.objects.update
permissions in GCS.
Setup overview
Data Sync GCS is set up in Pendo and configured in your Google Cloud environment, and involves the following steps.
- Create a Google Cloud Platform (GCP) service account.
- Generate a JSON key file for your service account.
- Create a GCS bucket.
- Give the GCS bucket access to your GCP service account.
- Choose a provider in Pendo.
- Enter your service account key and bucket URL in Pendo.
Step 1. Create a GCP service account
If you don’t have one already, create a Google Cloud Platform (GCP) service account in your Google Cloud environment.
- In the Google Cloud console, navigate to IAM & Admin > Service Accounts and select Create service account.
- Add your service account details, including service account name and description.
- Optionally, choose an access level for your service account.
- Select Done. This creates a service account and role on the IAM Service Accounts page.
- Copy the service account name, which is in email format. Save this for use in Step 4 of this article.
For more information and instructions, see Google’s Create and manage service account keys.
Step 2. Generate a JSON key file for your service account
Regardless of whether you’re creating a new service account for Data Sync, or using an existing one, you must generate a JSON key file to add to your Data Sync destination in Pendo. To generate this key:
- In the GCP, navigate to the IAM Service Accounts page and find the service account you want to use for Data Sync.
- Under the Actions column, select the vertical dots next to your service account and select Manage keys.
- Select Create new key from the ADD KEY dropdown menu.
- Select the JSON key type and then CREATE.
- This generates a message that tells you that your key has been saved to your computer, which you can then close.
Your key is now on your computer. Ensure you save your key for use in Step 6 of this article.
Step 3. Create a GCS bucket
Pendo-exported data is copied to a GCS bucket. To create a GCS Bucket:
- In Cloud Storage, navigate to Buckets and select + CREATE at the top of the page.
- Create a meaningful name for your bucket.
- Follow the Google workflow to choose a location and storage class for your data, how to control access to objects, and how to protect object data.
- Select CREATE.
- This generates a message that tells you that public access is prevented. Select CONFIRM.
You’re then taken to your empty bucket in Google Cloud.
Step 4. Give your GCS Bucket access to your service account
Grant Storage Admin access to the service account by making your GCP service account a member of the GCS Bucket.
- In Cloud Storage, find your Data Sync bucket in Buckets, and either:
- Open your Data Sync bucket, select the PERMISSIONS tab at the top and then GRANT ACCESS.
- Select the vertical dots next to your Data Sync bucket in the Buckets page and choose Edit access.
- Grant access to your bucket by selecting Add principal and pasting your service account name, which you copied as part of Step 1 in this article.
- Under Select a role, select Cloud Storage > Storage Admin. This grants full control of GCS resources. Alternatively, create your own role, with specific requirements (
storage.objects.create
,storage.objects.delete
, andstorage.objects.update
). - Select SAVE and verify that your service account has Storage Admin access to your Data Sync bucket.
Step 5. Choose a provider in Pendo
Before you can send data to your storage bucket, you must set a target destination in Pendo.
- In Pendo, navigate to Settings > Data Sync.
- Select Connect to destination.
- Hover over the Google Cloud Storage tile in the panel that slides out on the right.
- Select Choose destination. The panel then summarizes the next steps for you.
Step 6. Configure your GCS account destination in Pendo
The final step is to upload the service account key and provide the bucket URL to Pendo.
- Enter your bucket URL. You can find this in the CONFIGURATION tab of your Data Sync bucket created in Google Cloud Storage > Buckets. Copy the URL in the gsutil URI row of the Overview table.
- Select Upload JSON file and upload the JSON key file that was created and downloaded in Step 2 of this article.
- If you want to manually enter the service account and secret key:
- Enter the service account email name that corresponds to the JSON key file.
- Enter the
private_key
value from the service account JSON key.
- Select Validate destination to test the credentials you entered.
- When successfully validated, select Create destination.
Rotating credentials
There are two ways to update your credentials after you've configured a GCS destination in Pendo:
- Manually rotate credentials through the Pendo UI.
- Automatically rotate your credentials through the public API.
To use the public API endpoint for rotating Data Sync credentials, you must have an integration key with write access.
Through the Pendo UI
- In Pendo, navigate to Settings > Data Sync.
- Select Manage destination in the top-right corner of the page.
- Provide new credentials either with a JSON file or by manually entering new credentials.
Through the public API
- Generate a new Pendo integration key using the instructions outlined in the Pendo integration key article.
- In our public API documentation, navigate to Data Sync > Rotate Credentials for GCS Destination.
- Follow the instructions on how to use the public API endpoint to rotate your cloud storage credentials.