BigQuery Setup
Unify requires a Business tier account and is included with Engage.
See the available plans, or contact Support.
Linked Events is in private beta
Linked Events is in private beta, and Segment is actively working on this feature. Some functionality may change before it becomes generally available.
At this time, you can only use BigQuery with Linked Events.
On this page, you’ll learn how to connect your BigQuery data warehouse to Segment.
Set up BigQuery
You need to be an account admin to set up the Segment BigQuery connector as well as write permissions for the __segment_reverse_etl
dataset.
To set up the Segment BigQuery connector:
- Navigate to IAM & Admin > Service Accounts in BigQuery.
- Click + Create Service Account to create a new service account.
- Enter your Service account name and a description of what the account will do.
- Click Create and Continue.
- In the Grant this service account access to project section, select the BigQuery User role to add.
- Click + Add another role and add the BigQuery Job User role.
- Click + Add another role and add the BigQuery Metadata Viewer role.
- Click Continue, then click Done.
- Search for the service account you’ve just created.
- From your service account, click the three dots under Actions and select Manage keys.
- Click Add Key > Create new key.
- In the pop-up window, select JSON for the key type, and click Create.
- Copy all the content within the file you’ve created and downloaded.
- Navigate to Segment and paste all the credentials you’ve just copied into the Enter your credentials section as you connect your warehouse destination.
Grant access to datasets and tables for enrichment
Grant access to datasets and tables so that Segment can list datasets, tables, and columns, and create Linked Events.
Grant
BigQuery Data Viewer
role
OR- Permissions:
bigquery.datasets.get
bigquery.tables.list
bigquery.tables.get
bigquery.tables.getData
These can be scoped to projects or datasets.
To create Linked Events on your listed tables, Segment needs bigquery.tables.get
and bigquery.tables.getData
at dataset level. However, you can still scope bigquery.tables.get
and bigquery.tables.getData
to specific tables. See BigQuery’s docs for more info.
This page was last modified: 25 Mar 2024
Need support?
Questions? Problems? Need more info? Contact Segment Support for assistance!