Introduction

Qobra connects to Bigquery through google service accounts.

The integration is used to synchronize exposed tables, their columns and their content. This integration is readonly and does not write anything in your Bigquery database.

Setup

  1. Create a service account from your google account, with the following permissions:
  • bigquery.jobs.create
  • bigquery.tables.get
  • bigquery.tables.list
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.tables.getData (optional)

You’ll find more information about creating service account here.

In the end, your service account should look something like this:

{
 "type": "service_account",
 "project_id": "project-id",
 "private_key_id": "key-id",
 "private_key": " - - -BEGIN PRIVATE KEY - - -\nprivate-key\n - - -END PRIVATE KEY - - -\n",
 "client_email": "service-account-email",
 "client_id": "client-id",
 "auth_uri": "https://accounts.google.com/o/oauth2/auth",
 "token_uri": "https://accounts.google.com/o/oauth2/token",
 "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
 "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/service-account-email"
}
  1. You’ll then be able to fill in connection modal in app:

    • Service account: Service account
    • Dataset: Bigquery dataset
  2. (optional) If the data feeding your table is coming from a Google Spreadsheet, you’ll need the bigquery.tables.getData permission. In the source spreadsheet, you’ll also need to give a read access to the service account’s email address.

Synchronization

Table requirements

To synchronize a file to Qobra, it must meet requirements:

  • the file contains a unique identifier column
  • the file contains a name column
  • the user values contained in the file must be emails by default, but it can be changed in app at table creation

Total synchronization

This integrations does total synchronization, meaning the whole document will be synced at every refresh.

Refresh schedule

You can edit this integration synchronization periods in application, to better suit your needs.

Supported types

You’ll find below the fields types supported by the Qobra integration, and their mapping to Qobra types.

Bigquery typeQobra type
STRINGstring, picklist, multipicklist, user
INT64number, amount, percentage, user, picklist, multipicklist
FLOAT64number, amount, percentage
NUMERICnumber, amount, percentage
TIMESTAMPdate
DATEdate
DATETIMEdate
BOOLbool

Custom querying

With this integration, you can apply a custom query to your table synchronization, to avoid synchronizing too much information, consequently making synchronization quicker.

Custom queries are based on SQL where conditions. For instance, you could add as a custom query StageName = 'Closed Won’ to filter your Opportunity object.

Contact support for more information.