Skip to main content
Connectors

Guru connector

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

Written By Lauri Raivio

Last updated 15 days ago

Kaivo is a fully managed data platform that syncs your Guru 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 project management data instead of moving it.

What is the Guru connector

Sync your Guru knowledge data into BigQuery with Kaivo to audit knowledge cards, collections, usage patterns, and content access.

CategoryProject Management
AuthenticationUsername and password
SetupSelf-service

Getting started with the Guru connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Guru 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 Guru

Connect with your Guru login. You provide:

FieldDescription
Password

Configuring the Guru connector

When you set up the connector, you provide:

FieldDescription
Username
Start Date

Any data before this date will not be fetched.

Team ID

Team ID from the /teams stream response. Required for team-specific analytics.

Search Cards Query

Query string used to search for cards in Guru.

Tables and columns synced from Guru

Kaivo syncs 12 tables from Guru 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.
descriptionSTRING
administratorBOOL
assist_enabledBOOL
boardsFLOAT64
cardsFLOAT64
collection_stats__stats__card_count__typeSTRING
collection_stats__stats__card_count__countFLOAT64
collection_stats__stats__collection_trust_score__typeSTRING
collection_stats__stats__collection_trust_score__needs_verification_countFLOAT64
collection_stats__stats__collection_trust_score__trusted_countFLOAT64
collection_typeSTRING
collection_type_detailSTRING
colorSTRING
contextsFLOAT64
date_createdSTRING
home_board_slugSTRING
idSTRING
made_by_guruBOOL
nameSTRING
public_cardsFLOAT64
public_cards_enabledBOOL
read_onlyBOOL
roi_enabledBOOL
slugSTRING
team__idSTRING
team__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.
typeSTRING
comments_enabledBOOL
folder_countFLOAT64
idSTRING
item_idSTRING
last_modifiedSTRING
legacy_typeSTRING
number_of_factsFLOAT64
preferred_phraseSTRING
share_statusSTRING
slugSTRING
titleSTRING
verification_stateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: folder_items__items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
collection__descriptionSTRING
collection__assist_enabledBOOL
collection__collection_typeSTRING
collection__collection_type_detailSTRING
collection__colorSTRING
collection__date_createdSTRING
collection__home_board_slugSTRING
collection__idSTRING
collection__made_by_guruBOOL
collection__nameSTRING
collection__public_cards_enabledBOOL
collection__read_onlyBOOL
collection__roi_enabledBOOL
collection__slugSTRING
collection__team__idSTRING
collection__team__nameSTRING
homeBOOL
idSTRING
last_modifiedSTRING
last_modified_by__emailSTRING
last_modified_by__first_nameSTRING
last_modified_by__idSTRING
last_modified_by__last_nameSTRING
last_modified_by__profile_pic_urlSTRING
last_modified_by__statusSTRING
number_of_factsFLOAT64
slugSTRING
titleSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: folders__items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
collection__descriptionSTRING
collection__assist_enabledBOOL
collection__collection_typeSTRING
collection__collection_type_detailSTRING
collection__colorSTRING
collection__date_createdSTRING
collection__home_board_slugSTRING
collection__idSTRING
collection__made_by_guruBOOL
collection__nameSTRING
collection__public_cards_enabledBOOL
collection__read_onlyBOOL
collection__roi_enabledBOOL
collection__slugSTRING
collection__team__idSTRING
collection__team__nameSTRING
homeBOOL
idSTRING
last_modifiedSTRING
last_modified_by__emailSTRING
last_modified_by__first_nameSTRING
last_modified_by__idSTRING
last_modified_by__last_nameSTRING
last_modified_by__profile_pic_urlSTRING
last_modified_by__statusSTRING
number_of_factsFLOAT64
slugSTRING
titleSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: folders_parent__items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_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.
descriptionSTRING
assist_enabledBOOL
collection_typeSTRING
collection_type_detailSTRING
colorSTRING
date_createdSTRING
home_board_slugSTRING
idSTRING
made_by_guruBOOL
nameSTRING
public_cards_enabledBOOL
read_onlyBOOL
roi_enabledBOOL
slugSTRING
team__idSTRING
team__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.
date_createdSTRING
idSTRING
user__emailSTRING
user__first_nameSTRING
user__idSTRING
user__last_nameSTRING
user__profile_pic_urlSTRING
user__statusSTRING
_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.
date_createdSTRING
group_identifierSTRING
idSTRING
modifiableBOOL
nameSTRING
team__descriptionSTRING
team__date_createdSTRING
team__idSTRING
team__nameSTRING
team__organization__idSTRING
team__organization__nameSTRING
team__profile_pic_urlSTRING
team__statusSTRING
team__top_level_organization_idSTRING
team__total_usersFLOAT64
user_modifiableBOOL
_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.
date_createdSTRING
idSTRING
user__emailSTRING
user__first_nameSTRING
user__idSTRING
user__last_nameSTRING
user__profile_pic_urlSTRING
user__statusSTRING
user_attributes__billing_typeSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: members__groups

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
date_createdSTRING
group_identifierSTRING
idSTRING
modifiableBOOL
nameSTRING
roleSTRING
team__descriptionSTRING
team__date_createdSTRING
team__idSTRING
team__nameSTRING
team__organization__idSTRING
team__organization__nameSTRING
team__profile_pic_urlSTRING
team__statusSTRING
team__top_level_organization_idSTRING
team__total_usersFLOAT64
user_modifiableBOOL
_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.
card_info__analytics__boardsFLOAT64
card_info__analytics__copiesFLOAT64
card_info__analytics__favoritesFLOAT64
card_info__analytics__followersFLOAT64
card_info__analytics__unverified_copiesFLOAT64
card_info__analytics__unverified_viewsFLOAT64
card_info__analytics__viewsFLOAT64
card_typeSTRING
collection__collection_typeSTRING
collection__collection_type_detailSTRING
collection__colorSTRING
collection__idSTRING
collection__made_by_guruBOOL
collection__nameSTRING
collection__public_cards_enabledBOOL
collection__read_onlyBOOL
collection__roi_enabledBOOL
comments_enabledBOOL
contentSTRING
date_createdSTRING
folder_countFLOAT64
followedBOOL
idSTRING
last_modifiedSTRING
last_modified_by__emailSTRING
last_modified_by__first_nameSTRING
last_modified_by__idSTRING
last_modified_by__last_nameSTRING
last_modified_by__profile_pic_urlSTRING
last_modified_by__statusSTRING
last_verifiedSTRING
last_verified_by__emailSTRING
last_verified_by__first_nameSTRING
last_verified_by__idSTRING
last_verified_by__last_nameSTRING
last_verified_by__profile_pic_urlSTRING
last_verified_by__statusSTRING
next_verification_dateSTRING
original_owner__emailSTRING
original_owner__first_nameSTRING
original_owner__idSTRING
original_owner__last_nameSTRING
original_owner__profile_pic_urlSTRING
original_owner__statusSTRING
owner__emailSTRING
owner__first_nameSTRING
owner__idSTRING
owner__last_nameSTRING
owner__profile_pic_urlSTRING
owner__statusSTRING
preferred_phraseSTRING
share_statusSTRING
slugSTRING
verification_intervalFLOAT64
verification_stateSTRING
verification_typeSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: search_cardmgr__boards

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idSTRING
number_of_factsFLOAT64
slugSTRING
titleSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: search_cardmgr__boards__items

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: search_cardmgr__highlighted_attachments

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: search_cardmgr__highlighted_title_content

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueJSON
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: search_cardmgr__verifiers

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
typeSTRING
idSTRING
user__emailSTRING
user__first_nameSTRING
user__idSTRING
user__last_nameSTRING
user__profile_pic_urlSTRING
user__statusSTRING
_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.
default_categoryBOOL
idSTRING
nameSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: tag_categories__tags

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idSTRING
valueSTRING
_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.
typeSTRING
event_dateSTRING
event_typeSTRING
properties__activity_sub_typeSTRING
properties__applicationSTRING
properties__board_idSTRING
properties__card_idSTRING
properties__fact_idSTRING
properties__number_of_resultsSTRING
properties__search_idSTRING
properties__search_termsSTRING
properties__sourceSTRING
userSTRING
_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.
descriptionSTRING
current_user_is_memberBOOL
date_createdSTRING
idSTRING
nameSTRING
organization__idSTRING
organization__nameSTRING
profile_pic_urlSTRING
statusSTRING
top_level_organization_idSTRING
total_usersFLOAT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Guru sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Guru 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 Guru?

It depends on how much history is in your Guru 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 Guru'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 Guru, 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 Guru 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 Guru connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Guru data

Content inventory

Use collections and folder_items to document your knowledge base.

Usage analysis

Use team_analytics to see which knowledge gets used and what is stale.

Access review

Join groups with members to review who can access your knowledge.

Use Guru data in your AI and BI tools

Once Guru 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 Guru 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 Guru connector pricing and plan details.

Was this helpful?

Still need help? Share an idea