Introduction

Qobra connects to Bigquery through google service accounts. This means that Qobra will only be able to access the data available to the service account. If you want to limit access to specific tables, you should restrict the service account’s permissions accordingly. Although a service account is tied to a project, it does not automatically have access to all the data within that project. You can control its access by configuring IAM roles and permissions to limit it to specific datasets and tables. Note: Qobra will still be able to view the names of all tables and routines within a dataset, even if it does not have permission to access their contents. 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
    Bigquery setup in Qobra
  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

By default, we perform four Full Refreshes per day to keep your data up to date. However, you can customize both the frequency and timing of these refreshes to better suit your needs:
  • Default Schedule: Four Full Refreshes per day
  • Customizable Options:
    • Adjust the number of daily refreshes
    • Set specific hours for the refreshes to occur
    • Configure the schedule through your integration settings
  • On-Demand Updates: Need the latest data right away? Just click the refresh button in your integration settings
Refresh schedule setup in Qobra

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.