Skip to main content
Connectors

Zoho Campaigns connector

Set up the Zoho Campaigns connector in Kaivo: authentication, configuration, the 10 BigQuery tables it syncs, and answers to common questions.

Written By Lauri Raivio

Last updated 16 days ago

Kaivo is a fully managed data platform that syncs your Zoho Campaigns data into a Google BigQuery warehouse and keeps it up to date automatically. There is no pipeline to build and no infrastructure to run, so you can spend your time analysing your marketing and sales data instead of moving it.

What is the Zoho Campaigns connector

Sync your Zoho Campaigns data into BigQuery with Kaivo to measure email campaigns and audience growth.

CategoryMarketing & Sales
AuthenticationAPI key
SetupSelf-service

Getting started with the Zoho Campaigns connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Zoho Campaigns account.
  3. Choose which tables to sync.
  4. Wait for the initial sync to finish.
  5. Query your data in BigQuery or your favourite AI or BI tool.

Authenticating Zoho Campaigns

Authenticate with your Zoho Campaigns credentials. You provide:

FieldDescription
Client Secret

The Client Secret of your Zoho Campaigns developer application.

Refresh Token

The refresh token obtained after completing the OAuth authorization flow.

Prerequisites

Zoho Campaigns only supports OAuth, so you need your own Zoho developer application:

  1. Go to the Zoho API Console, create a Server-based Application, and note your Client ID and Client Secret.
  2. Authorize the app and complete the OAuth flow once to obtain a Refresh Token with the required Campaigns API scopes.

Then enter those values below.

Need help, or want an easier way to connect? Reach our team via the chat in the bottom-right corner.

Configuring the Zoho Campaigns connector

When you set up the connector, you provide:

FieldDescription
Client ID

The Client ID of your Zoho Campaigns developer application.

Data Center

The data center where your Zoho Campaigns account is hosted.

Tables and columns synced from Zoho Campaigns

Kaivo syncs 10 tables from Zoho Campaigns into a dedicated dataset in your BigQuery warehouse. Click any table to see its columns and types.

ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
_169443000000020045__is_crm_tagSTRING
_169443000000020045__tag_colorSTRING
_169443000000020045__tag_created_timeSTRING
_169443000000020045__tag_descSTRING
_169443000000020045__tag_modified_timeSTRING
_169443000000020045__tag_nameSTRING
_169443000000020045__tagged_contact_countSTRING
_169443000000020045__tagownerSTRING
_169443000000020045__zuidSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
advance_type_stringSTRING
campaign_keySTRING
campaign_nameSTRING
campaign_previewSTRING
campaigntypeSTRING
created_date_stringSTRING
created_timeSTRING
created_time_gmtSTRING
email_fromSTRING
email_optionsSTRING
email_subjectSTRING
email_typeSTRING
encode_nameSTRING
folder_idSTRING
is_ga_configSTRING
is_reply_tracking_enabledSTRING
is_to_name_configSTRING
is_wistiaSTRING
is_advanceSTRING
is_hybridSTRING
modified_timeSTRING
modified_time_gmtSTRING
modifieddateSTRING
preheaderSTRING
reply_toSTRING
schedule_typeSTRING
sender_nameSTRING
sent_date_stringSTRING
sent_timeSTRING
sent_time_gmtSTRING
sent_time_zoneSTRING
sent_time_zone_shortSTRING
topic_idSTRING
topic_nameSTRING
updated_date_stringSTRING
updated_timeSTRING
updated_time_gmtSTRING
web_auto_statusSTRING
zuidSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
addressSTRING
citySTRING
companynameSTRING
contactemailaddressSTRING
contactfnSTRING
contactidSTRING
contactlnSTRING
contactstatusSTRING
countrySTRING
facebook_handleSTRING
jobtitleSTRING
linkedin_handleSTRING
mobileSTRING
noteSTRING
phoneSTRING
secondary_emailSTRING
sent_timeSTRING
sentdateSTRING
stateSTRING
timezoneSTRING
titleSTRING
twitter_handleSTRING
websiteSTRING
zipcodeSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
autoreply_countSTRING
bounce_percentSTRING
bounces_countSTRING
campaign_idSTRING
campaign_nameSTRING
clicksperopenrateSTRING
complaints_countSTRING
complaints_percentSTRING
delivered_countSTRING
delivered_percentSTRING
emails_sent_countSTRING
forward_percentSTRING
forwards_countSTRING
hardbounce_countSTRING
open_percentSTRING
opens_countSTRING
softbounce_countSTRING
spam_percentSTRING
spams_countSTRING
unique_clicked_percentSTRING
unique_clicks_countSTRING
unopenedSTRING
unopened_percentSTRING
unsent_countSTRING
unsent_percentSTRING
unsub_countSTRING
unsubscribe_percentSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_timeSTRING
created_time_gmtSTRING
dateSTRING
deletableSTRING
editableSTRING
is_publicSTRING
issmartSTRING
list_campaigns_countSTRING
list_created_dateSTRING
list_created_timeSTRING
listdescSTRING
listdgsSTRING
listkeySTRING
listnameSTRING
listnotificationsSTRING
listtypeSTRING
listuninoSTRING
lockstatusSTRING
noofbouncecntSTRING
noofcontactsSTRING
noofunsubcntSTRING
otherslistSTRING
ownerSTRING
sentcntSTRING
servicetypeSTRING
snoSTRING
updated_time_gmtSTRING
zuidSTRING
zxSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
campaign_keySTRING
campaign_nameSTRING
campaign_previewSTRING
campaign_statusSTRING
campaigntypeSTRING
created_date_stringSTRING
created_timeSTRING
created_time_gmtSTRING
folder_idSTRING
from_emailSTRING
is_hybridSTRING
reply_toSTRING
sent_date_stringSTRING
sent_timeSTRING
sent_time_gmtSTRING
sent_time_zoneSTRING
subjectSTRING
updated_date_stringSTRING
updated_timeSTRING
updated_time_gmtSTRING
zuidSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
campaign_keySTRING
campaign_nameSTRING
campaign_statusSTRING
campaignidSTRING
campaigntypeSTRING
created_date_stringSTRING
created_timeSTRING
created_time_gmtSTRING
folder_idSTRING
from_nameSTRING
is_hybridSTRING
previewtypeSTRING
sent_date_stringSTRING
sent_timeSTRING
sent_time_gmtSTRING
sent_time_zoneSTRING
zuidSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
added_timeSTRING
companynameSTRING
contact_emailSTRING
firstnameSTRING
lastnameSTRING
phoneSTRING
zuidSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
primary_listFLOAT64
topic_descSTRING
topic_idSTRING
topic_nameSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
versionSTRING
codeSTRING
uriSTRING
messageSTRING
statusSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Zoho Campaigns sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Zoho Campaigns supports it, each sync pulls only new and changed records so it stays fast; otherwise it refreshes the whole table. Every record keeps its original ID, so you won't get duplicate rows.

Frequently asked questions

How long does the initial sync take for Zoho Campaigns?

It depends on how much history is in your Zoho Campaigns account. Most initial syncs finish within minutes, while large accounts can take a few hours. After that, syncs only fetch new and changed records, so they're much faster.

Can I sync only some tables or columns?

Yes. You pick which tables to sync when you set up the connection and can change the selection later. Tables you don't select are never copied to your warehouse.

What happens when Zoho Campaigns's schema changes?

New fields are never added automatically. You choose which fields to sync, so data you haven't selected (sensitive personal data, for example) never lands in your warehouse. When a new field appears, it becomes available for you to add. What happens to removed or renamed fields depends on a table's sync mode: full-refresh tables always match what's currently in Zoho Campaigns, so dropped fields disappear, while incremental tables keep their existing columns and history, so an old field stays and newly added fields fill in over time.

How do I handle GDPR or data deletion requests?

Your data lives in your own Kaivo-managed BigQuery warehouse, so the most direct option is to delete or anonymise specific records right in BigQuery. If you delete data in Zoho Campaigns instead, full-refresh tables drop it on the next sync, while incremental tables keep it, so you would remove the row in BigQuery or ask us to run a full refresh. To remove everything, delete the Zoho Campaigns connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Zoho Campaigns data

Campaign performance

Use recent_campaigns and campaign_reports to track email results over time.

Audience growth

Use subscribers and mailing_lists to see how your audience grows.

Recipient analysis

Join campaign_recipients with campaign_reports to understand engagement.

Use Zoho Campaigns data in your AI and BI tools

Once Zoho Campaigns data lands in your Kaivo-managed BigQuery warehouse, you can explore it with AI tools or any BI tool that connects to BigQuery. Here's how the most common destinations work with Zoho Campaigns data.

Claude

Use Kaivo's MCP server to give Claude secure, workspace-scoped access to your data. Setup guide →

Power BI

Microsoft's BI tool with a native BigQuery connector. Supports direct query and scheduled refresh. Setup guide →

Data Studio

Free Google BI tool with native BigQuery support. One-click connection to your Kaivo warehouse; great for SMB teams on Google Workspace. Setup guide →

Tableau

The premium analytics standard, with native BigQuery integration. Setup guide →

Google Sheets

Use Connected Sheets to query BigQuery directly from a spreadsheet, with no SQL. Setup guide →

Excel

Connect via Power Query's BigQuery connector. Setup guide →

Metabase

Open-source BI tool with strong BigQuery support. Setup guide →

See our pricing page for Zoho Campaigns connector pricing and plan details.

Was this helpful?

Still need help? Share an idea