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, go 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, go 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, go 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, go to Settings > Data Sync.
- Select the Bulk Exports tab at the top and then Set Up Destination.
- Hover over the Google Cloud Storage tile in the panel that slides out on the right, and then 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 your credentials
There are two ways to update your credentials after you've configured a 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, go to Settings > Data Sync.
- Select Manage destination in the top-right corner of the page.
- Provide 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, go to Data Sync.
- Choose the
PUT
endpoint that corresponds to your cloud storage destination. - Follow the instructions on how to use the public API endpoint to rotate your cloud storage credentials.
Updating your cloud storage destination
You have the option to move your cloud storage destination from one GCS bucket to another, or to change your cloud storage service to another provider, such as Microsoft Azure or Amazon S3.
Update your GCS bucket
If you want to change from one GCS bucket to another existing GCS bucket, update the bucket URL in Pendo:
- In Pendo, go to Settings > Data Sync.
- Select Manage destination in the top-right corner of the page.
- Replace the entry in the Bucket URL field with the name of the new GCS bucket that you'd like to use for Data Sync.
- Select Update destination.
Change your cloud storage provider
If you want to change your cloud storage destination from GCS to an alternative service, such as Microsoft Azure or Amazon S3, you can delete the existing destination and create a new one.
To delete a destination:
- In Pendo, go to Settings > Data Sync.
- Select Manage destination in the top-right corner of the page.
- Select Delete destination.
- Confirm that you want to delete the destination.
After you delete a destination, any recurring reports and ongoing metadata updates are automatically turned off.
You can then set up a different cloud storage destination by following the instructions outlined in the following article:
- Set up Data Sync with Amazon S3 using user access keys
- Set up Data Sync with Amazon S3 using IAM roles
- Set up Data Sync with Microsoft Azure Storage
Alternatively, you can set up Data Sync with a Pendo-hosted GCS destination. For more information, contact your Pendo account team.