Skip to main content
Connectors

Pivotal Tracker connector

Set up the Pivotal Tracker connector in Kaivo: authentication, configuration, the 7 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 Pivotal Tracker 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 Pivotal Tracker connector

Sync your Pivotal Tracker data into BigQuery with Kaivo to report on stories, releases, and team velocity.

CategoryProject Management
AuthenticationAPI key
SetupSelf-service

Getting started with the Pivotal Tracker connector

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

Authenticate with your API Token.

FieldDescription
API Token

Your Pivotal Tracker API token. Found under Profile > API Token in your account settings.

Tables and columns synced from Pivotal Tracker

Kaivo syncs 7 tables from Pivotal Tracker 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.
guidSTRING
kindSTRING
project_idINT64
occurred_atTIMESTAMP
performed_by__idINT64
performed_by__kindSTRING
performed_by__nameSTRING
performed_by__initialsSTRING
performed_by__emailSTRING
performed_by__usernameSTRING
messageSTRING
highlightSTRING
project_versionINT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: activity__secondary_resources

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.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: activity__changes

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.
idINT64
kindSTRING
change_typeSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: activity__primary_resources

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.
idINT64
kindSTRING
_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.
idINT64
urlSTRING
kindSTRING
nameSTRING
label__idINT64
label__kindSTRING
label__nameSTRING
label__created_atTIMESTAMP
label__project_idINT64
label__updated_atTIMESTAMP
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
descriptionSTRING
_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.
idINT64
kindSTRING
nameSTRING
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
_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.
idINT64
kindSTRING
roleSTRING
person__idINT64
person__kindSTRING
person__nameSTRING
person__emailSTRING
person__initialsSTRING
person__usernameSTRING
favoriteBOOL
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
project_colorSTRING
last_viewed_atTIMESTAMP
wants_comment_notification_emailsBOOL
will_receive_mention_notifications_or_emailsBOOL
_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.
idINT64
kindSTRING
show_priority_iconBOOL
show_priority_icon_in_all_panelsBOOL
created_atTIMESTAMP
updated_atTIMESTAMP
project_idINT64
nameSTRING
account_idINT64
versionINT64
iteration_lengthINT64
current_iteration_numberINT64
week_start_daySTRING
point_scaleSTRING
point_scale_is_customBOOL
bugs_and_chores_are_estimatableBOOL
automatic_planningBOOL
enable_tasksBOOL
velocity_averaged_overINT64
number_of_done_iterations_to_showINT64
has_google_domainBOOL
enable_incoming_emailsBOOL
initial_velocityINT64
publicBOOL
atom_enabledBOOL
enable_followingBOOL
show_story_priorityBOOL
project_typeSTRING
start_timeTIMESTAMP
_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.
idINT64
urlSTRING
kindSTRING
nameSTRING
deadlineTIMESTAMP
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
accepted_atTIMESTAMP
current_stateSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: releases__labels

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.
idINT64
kindSTRING
nameSTRING
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
_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.
idINT64
urlSTRING
kindSTRING
nameSTRING
deadlineTIMESTAMP
estimateINT64
created_atTIMESTAMP
project_idINT64
story_typeSTRING
updated_atTIMESTAMP
accepted_atTIMESTAMP
descriptionSTRING
owned_by_idINT64
current_stateSTRING
story_prioritySTRING
requested_by_idINT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: stories__labels

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.
idINT64
kindSTRING
nameSTRING
created_atTIMESTAMP
project_idINT64
updated_atTIMESTAMP
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: stories__owner_ids

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.
valueINT64
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Pivotal Tracker sync works

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

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

Common use cases for Pivotal Tracker data

Velocity tracking

Use stories and activity to measure throughput and cycle time over time.

Release progress

Join releases and epics with stories to track delivery against plan.

Workload view

Use project_memberships with stories to balance work across the team.

Use Pivotal Tracker data in your AI and BI tools

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

Was this helpful?

Still need help? Share an idea