How to Connect NetHunt CRM to Google BigQuery
Google BigQuery is a powerful Google tool for storing and processing large volumes of data. The integration between NetHunt CRM and BigQuery allows you to automatically sync your CRM data — including folder records, timelines, and email campaigns — to your BigQuery storage on a regular basis. This unlocks unlimited possibilities for building advanced analytics.
💡Please note: On Google’s side, the service is completely free for most customers (unless you work with extremely large volumes of data), as Google provides a free limit of 1 TB per month.
⚠️ Important: To set up this integration in NetHunt CRM, the user must have a role with the Manage Workspace permission enabled.
Setting Up Google Cloud Platform and Obtaining Keys
To configure the integration, you will need either a personal or a corporate Google account. The entire setup process on the Google side takes just a few minutes.
Create a New Project or select an existing one.
💡Please note: Google will ask you to link a payment card (Billing) to verify your account. This step is mandatory, otherwise your keys will not work for the NetHunt CRM integration. However, usage within the available limits remains free of charge.
Make sure that the BigQuery API is enabled for your project (for new accounts, it is usually enabled by default).
You will receive a notification about the new project:
Go to the IAM & Admin → Service Accounts section:
Click Create Service Account, enter a name, and create it.
Fill in the following:
Name: for example, nethuntbigquery
ID: this is automatically generated based on the name
(for example: nethuntbigquery@your-project.iam.gserviceaccount.com)
During the permissions step, make sure to assign the BigQuery Admin role to this account (this is the simplest option, although you can also configure more granular access if needed).
Why BigQuery Admin?
The integration requires the ability to create and delete datasets and tables, modify table schemas, insert/update/delete rows, and manage table labels for schema versioning. The BigQuery Admin role covers all of these permissions.
A more restricted custom role is possible, but it is not recommended for initial setup.
Minimum required permissions (for reference):
If you prefer a custom role instead of BigQuery Admin, the service account must have at least the following permissions:
bigquery.datasets.create — create datasets for data export
bigquery.datasets.get — read dataset metadata
bigquery.datasets.delete — clean up after credential verification
bigquery.tables.create — create export tables
bigquery.tables.get — read table schemas
bigquery.tables.update — schema evolution (adding columns, labels)
bigquery.tables.delete — recreate tables when schema changes are incompatible
bigquery.tables.getData — read rows (verification purposes)
bigquery.tables.updateData — insert, merge, truncate, delete operations
bigquery.jobs.create — execute queries
Open the created service account and go to the Keys tab.
Click Add Key → Create new key, select the JSON format, and click Create. The key will be automatically downloaded to your computer as a text file.
Connecting BigQuery in NetHunt CRM
Now that you have downloaded the JSON key file, open it on your computer using any text editor (for example, Notepad). From this file, you will need three values (copy only the text inside the quotation marks — do not include the quotation marks themselves):
project_idclient_email(in the NetHunt interface, this field is called Service Email)private_key(a long secret key)
Go to NetHunt CRM, open Settings → Apps and other integrations, and select BigQuery.
Copy the corresponding data from the JSON file into the connection form fields.
Click the Save button and wait a few seconds.
After a successful connection, you will see the connection status, the owner’s name, the connection date, and the name of the created dataset (the container in BigQuery where your data will be stored).
Configuring Folder Record Synchronization
You can set up regular synchronization for any CRM folder.
In the main BigQuery integration section, click the Setup button next to “Records.”
“Schema” Field Selection
Select the folder you want to synchronize. Check the boxes for the custom fields that should be transferred to BigQuery (system fields are synchronized by default and cannot be disabled).
Synchronization Settings. Configure the following parameters:
Sync schedule: How often to run synchronization: every day, every 2, 4, 7, or 14 days. The system will display a hint in your time zone indicating exactly when the process will run.
Data Refresh Type: Choose whether to sync only new or updated data (incremental mode), or to fully overwrite the dataset (delete and reload the entire table each time).
Which Records to Sync:
“All records” – Immediately sync all existing records to BigQuery, as well as any records created or updated after this synchronization is configured. The data will continue to be updated according to the schedule.
“Only new and updated records” – Sync only records created or updated after this synchronization is configured. The data will continue to be updated according to the schedule.
Sync timeline events: By default, synchronization of record timeline events is enabled (files, calendar events, calls, comments, chat messages such as WhatsApp, etc.). If needed, you can disable specific event types that are not required.
💡 Please note: Currently, the system does not synchronize record update history (Record Updates), as this is a specific data format.
Click Sync. If the “All records” option was selected, data export will start immediately.
Email Campaign Synchronization Settings
Email campaign synchronization is configured separately and is somewhat simpler. Once enabled, BigQuery will automatically create three related tables:
email_campaigns.
email_campaign_messages.
email_campaign_events
This allows you to analyze unsubscribe rates, bounces, and opens over any time period—insights that are not currently available directly in the CRM interface.
Enable email campaign synchronization.
Choose the synchronization frequency.
Select the update mode (overwrite or append-only for new data), and choose which campaigns to export (all campaigns or only new ones).
Click “Sync.”
Managing Integration and Updating Fields
After launching the integration, in NetHunt CRM settings you can:
Edit: Change the set of fields or the synchronization schedule.
Pause: Temporarily stop automatic synchronization without losing your configuration.
Delete: Fully reset and remove the folder synchronization settings.
⚠️ Important Rule for Data Structure Changes (Custom Fields)
NetHunt CRM does not automatically modify table structures in your BigQuery when new fields are added in the CRM. This is done to prevent sudden changes from breaking your existing analytical reports in external systems.
If you add a new field in the CRM, an orange triangle warning “⚠️” will appear in the folder sync settings. You need to expand the folder settings, find the newly added field (it will be highlighted), manually check the box next to it, and click Next so it will be included in future synchronization runs.
If you delete a field in the CRM, it will become greyed out and inactive in the sync settings, with a “⚠️” warning tooltip. The orange triangle will again indicate that you need to re-save the configuration.
💡Please note: If you delete a field, folder, or the entire integration in NetHunt, nothing is removed or cleaned up in your personal BigQuery environment. This is done for security reasons and to preserve backups.
What happens to deleted records?
Currently, the system uses a full synchronization approach between platforms. If you delete a specific record in NetHunt CRM, the system treats it as an updated change, and during the next synchronization run, the record will also be removed from BigQuery.
Tip for Creating a Static Archive
If you want to preserve a snapshot of your data at a specific point in time and protect it from deletions, you can run a synchronization and then simply rename or copy the resulting dataset directly in the BigQuery interface.
Once renamed, the NetHunt dataset will no longer affect it.
Haven’t found the answers you’re looking for? Ask our Users Community.



























