Skip to main content
Connectors

Zendesk Support connector

Set up the Zendesk Support connector in Kaivo: authentication, configuration, the 42 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 Zendesk Support 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 customer support data instead of moving it.

What is the Zendesk Support connector

Sync your Zendesk Support tickets and fields into BigQuery with Kaivo to analyse support performance alongside the rest of your data.

CategoryCustomer Service
AuthenticationAPI key
SetupSelf-service

Getting started with the Zendesk Support connector

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

Authenticate with your Zendesk Support credentials. You provide:

FieldDescription
Email

The user email for your Zendesk account.

API Token

The API token for your Zendesk account. See the Zendesk documentation for more information on generating this token.

Configuring the Zendesk Support connector

When you set up the connector, you provide:

FieldDescription
Start Date

Any data before this date will not be fetched.

Subdomain

Your unique Zendesk subdomain found in your account URL. For example, in https://MY_SUBDOMAIN.zendesk.com/, MY_SUBDOMAIN is your subdomain.

Tables and columns synced from Zendesk Support

Kaivo syncs 42 tables from Zendesk Support 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.
idSTRINGThe unique identifier for the account attribute.
nameSTRINGThe name or label of the account attribute.
created_atTIMESTAMPThe timestamp indicating when the account attribute was created.
updated_atTIMESTAMPThe timestamp indicating when the account attribute was last updated.
urlSTRINGThe URL that can be used to access the account attribute.
_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.
idINT64Assigned ID when the article attachment is created.
urlSTRINGThe URL of the article attachment.
article_idINT64The associated article, if present.
display_file_nameSTRINGThe file name displayed.
file_nameSTRINGThe file name.
localeSTRINGTThe locale of translation that the attachment will be attached to and can only be set on inline attachments.
content_urlSTRINGURL where the attachment file can be downloaded.
relative_pathSTRINGRelative path of the file.
content_typeSTRINGThe file type. Example: image/png
sizeINT64The attachment file size in bytes.
inlineBOOLThe attached file is shown in the admin interface for inline attachments.
created_atTIMESTAMPThe time the article attachment was created.
updated_atTIMESTAMPThe time the article attachment was last updated.
_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_atTIMESTAMPTimestamp when the vote was created
idINT64Unique identifier for the vote
item_idINT64Identifier of the item that was voted on
item_typeSTRINGType of the item that was voted on (e.g., ticket, article)
updated_atTIMESTAMPTimestamp when the vote was last updated
urlSTRINGURL of the resource related to the vote
user_idINT64Unique identifier of the user who voted
valueINT64Value of the vote (e.g., upvote, downvote)
_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.
author_idINT64The unique identifier of the author of the comment.
bodySTRINGThe content or text of the comment.
created_atTIMESTAMPThe timestamp when the comment was created.
html_urlSTRINGThe URL link to the HTML representation of the comment.
idINT64The unique identifier of the comment.
localeSTRINGThe locale or language of the comment.
non_author_editor_idINT64The unique identifier of a non-author who edited the comment.
non_author_updated_atTIMESTAMPThe timestamp when the non-author last updated the comment.
source_idINT64The ID of the source associated with the comment.
source_typeSTRINGThe type of the source associated with the comment.
updated_atTIMESTAMPThe timestamp when the comment was last updated.
urlSTRINGThe URL link to the comment resource.
vote_countINT64The total count of votes received on the comment.
vote_sumINT64The sum of votes received on the comment, considering upvotes and downvotes.
_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_atTIMESTAMPTimestamp when the vote was created
idINT64Unique identifier for the vote
item_idINT64Identifier of the item that was voted on
item_typeSTRINGType of the item that was voted on (e.g., ticket, article)
updated_atTIMESTAMPTimestamp when the vote was last updated
urlSTRINGURL of the resource related to the vote
user_idINT64Unique identifier of the user who voted
valueINT64Value of the vote (e.g., upvote, downvote)
_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.
author_idINT64The unique identifier of the author who created the article.
bodySTRINGThe main content or body of the article.
comments_disabledBOOLIndicates whether comments are disabled for the article.
created_atTIMESTAMPThe date and time when the article was created.
draftBOOLIndicates whether the article is in draft mode.
edited_atTIMESTAMPThe date and time when the article was last edited.
html_urlSTRINGThe URL of the article in HTML format.
idINT64The unique identifier of the article.
localeSTRINGThe language locale of the article.
nameSTRINGThe name of the article.
outdatedBOOLIndicates whether the article is outdated.
permission_group_idINT64The unique identifier of the permission group for the article.
positionINT64The position order of the article within its section.
promotedBOOLIndicates whether the article is promoted.
section_idINT64The unique identifier of the section to which the article belongs.
source_localeSTRINGThe original language locale of the article.
titleSTRINGThe title or heading of the article.
updated_atTIMESTAMPThe date and time when the article was last updated.
urlSTRINGThe URL of the article.
user_segment_idINT64The unique identifier of the user segment targeted by the article.
vote_countINT64The total count of votes received for the article.
vote_sumINT64The sum of votes received for the article (considering upvotes and downvotes).
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • articles__content_tag_ids (4 columns)
  • articles__label_names (4 columns)
  • articles__outdated_locales (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
titleSTRINGTitle of the attribute definition.
subjectSTRINGSubject or topic of this attribute definition.
typeSTRINGData type of the attribute.
groupSTRINGThe group to which this attribute definition belongs.
nullableBOOLIndicates if this attribute definition can be null.
repeatableBOOLSpecifies if this attribute definition can be repeated.
conditionSTRINGThe condition that needs to be met for this attribute definition.
confitionSTRINGMissing field description, please add.
metadata__collection_keySTRINGKey for the collection associated with this metadata.
metadata__item_keySTRINGKey for the item associated with this metadata.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • attribute_definitions__operators (6 columns)
  • attribute_definitions__values (6 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
actionSTRINGThe type of action performed in the audit log.
action_labelSTRINGA human-readable label representing the action.
actor_idFLOAT64The ID of the actor (user) who performed the action.
actor_nameSTRINGThe name of the actor (user) who performed the action.
change_descriptionSTRINGDescription of the change made.
created_atTIMESTAMPThe date and time when the audit log entry was created.
idFLOAT64Unique identifier for the audit log entry.
ip_addressSTRINGThe IP address from which the action was performed.
source_idFLOAT64The ID of the source object related to the action.
source_labelSTRINGA human-readable label representing the source object.
source_typeSTRINGThe type of the source object.
urlSTRINGThe URL associated with the action or source object.
_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.
activeBOOLWhether the automation is active
created_atSTRINGThe time the automation was created
defaultBOOLIf true, the automation is a default automation
idINT64Automatically assigned when created
positionINT64The position of the automation which specifies the order it will be executed
raw_titleSTRINGThe raw title of the automation
titleSTRINGThe title of the automation
updated_atSTRINGThe time of the last update of the automation
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • automations__actions (5 columns)
  • automations__conditions__all (6 columns)
  • automations__conditions__any (6 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idINT64Unique identifier for the brand.
nameSTRINGName of the brand.
logoSTRINGURL of the brand's logo.
brand_urlSTRINGURL of the brand's website.
host_mappingSTRINGMapping for the brand's host.
subdomainSTRINGSubdomain assigned to the brand.
urlSTRINGURL of the brand's API endpoint.
signature_templateSTRINGTemplate for the brand's signature.
has_help_centerBOOLIndicates whether the brand has a help center.
help_center_stateSTRINGState of the help center for the brand.
activeBOOLIndicates whether the brand is currently active or not.
defaultBOOLIndicates if the brand is the default brand.
is_deletedBOOLIndicates if the brand has been deleted.
created_atTIMESTAMPTimestamp of when the brand was created.
updated_atTIMESTAMPTimestamp of when the brand was last updated.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • brands__ticket_form_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idINT64Unique identifier for the category.
nameSTRINGName of the category.
positionINT64The position of this category relative to other categories.
descriptionSTRINGThe description of the category.
localeSTRINGThe locale where the category is displayed.
urlSTRINGThe API url of this category.
html_urlSTRINGThe url of this category in Help Center.
source_localeSTRINGThe source (default) locale of the category.
outdatedSTRINGWhether the category is out of date.
created_atTIMESTAMPTimestamp of when the category was created.
updated_atTIMESTAMPTimestamp of when the category was last updated.
_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.
idINT64Unique identifier of the custom role
nameSTRINGName of the custom role
descriptionSTRINGBrief description of the custom role
role_typeINT64Type of the custom role (e.g., admin, agent, etc)
team_member_countINT64Number of team members with this custom role
configuration__assign_tickets_to_any_groupBOOLAllows assigning tickets to any group within the organization
configuration__chat_accessBOOLGrants access to chat functionality
configuration__manage_automationsBOOLPermission to manage automations
configuration__manage_group_membershipsBOOLAbility to manage group memberships
configuration__manage_groupsBOOLPermission to manage groups
configuration__manage_macro_content_suggestionsBOOLAbility to manage macro content suggestions
configuration__manage_organizationsBOOLAbility to manage organizations
configuration__manage_skillsBOOLAbility to manage skills
configuration__manage_suspended_ticketsBOOLAbility to manage suspended tickets
configuration__manage_triggersBOOLAbility to manage triggers
configuration__manage_slasBOOLPermission to manage SLAs (Service Level Agreements)
configuration__read_macro_content_suggestionsBOOLAccess for reading macro content suggestions
configuration__ticket_redactionBOOLAbility to redact sensitive information from tickets
configuration__view_filter_ticketsBOOLAbility to filter and search through tickets
configuration__view_reduced_countBOOLView reduced counts of specific data
configuration__manage_rolesSTRINGPermissions related to managing roles
configuration__manage_deletion_schedulesSTRINGAbility to manage deletion schedules
configuration__end_user_list_accessSTRINGEnables access to the end user list
configuration__end_user_profile_accessSTRINGAllows viewing and editing end user profiles
... and 39 more columns
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
actor__idINT64The unique identifier of the user
actor__nameSTRINGThe name of the user
idINT64The unique identifier of the deleted ticket
subjectSTRINGThe subject or title of the deleted ticket
descriptionSTRINGAdditional details or comments about the deleted ticket
deleted_atTIMESTAMPThe timestamp when the ticket was deleted
previous_stateSTRINGThe state of the ticket before it was deleted
_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.
defaultBOOLFlag indicating if this group membership is the default one.
urlSTRINGURL pointing to the group membership resource.
user_idINT64The unique identifier of the user associated with this group membership.
updated_atTIMESTAMPTimestamp indicating when the group membership was last updated.
group_idINT64The unique identifier of the group this membership belongs to.
created_atTIMESTAMPTimestamp indicating when the group membership was created.
idINT64The unique identifier of the group membership.
_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.
nameSTRINGThe name of the group.
created_atTIMESTAMPThe date and time when the group was created.
urlSTRINGThe URL of the group.
updated_atTIMESTAMPThe date and time when the group was last updated.
defaultBOOLIndicates if the group is set as the default group.
deletedBOOLIndicates if the group has been deleted.
descriptionSTRINGThe description or details about the group.
idINT64The unique identifier of the group.
is_publicBOOLIndicates whether the group is public or private.
_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.
idINT64Unique identifier for the macro
positionINT64The position/order of the macro
restriction__idINT64Unique identifier for the restriction
restriction__typeSTRINGType of restriction applied
titleSTRINGThe title of the macro
created_atTIMESTAMPThe date and time when the macro was created
urlSTRINGURL to access the macro details
descriptionSTRINGAdditional information or notes about the macro
defaultBOOLIndicates if the macro is set as the default
updated_atTIMESTAMPThe date and time when the macro was last updated
activeBOOLIndicates if the macro is currently active
raw_titleSTRINGThe title of the macro in its raw form
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • macros__restriction__ids (4 columns)
  • macros__actions (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
activeBOOLIndicates whether the organization field is currently active or not
created_atTIMESTAMPThe date and time when the organization field was created
descriptionSTRINGThe description of the organization field
idINT64The unique identifier of the organization field
keySTRINGThe key associated with the organization field
positionINT64The position of the organization field
raw_descriptionSTRINGThe raw description of the organization field
raw_titleSTRINGThe raw title of the organization field
regexp_for_validationSTRINGRegular expression for validation of the organization field data
relationship_target_typeSTRINGThe target type of the relationship for this organization field
systemBOOLIndicates whether the organization field is a system field or not
tagSTRINGTags associated with the organization field
titleSTRINGThe title of the organization field
typeSTRINGThe type of the organization field data
updated_atTIMESTAMPThe date and time when the organization field was last updated
urlSTRINGThe URL associated with the organization field
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • organization_fields__custom_field_options (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
defaultBOOLFlag indicating if this organization membership is the default one for the user.
urlSTRINGThe URL for accessing the details of this organization membership.
updated_atTIMESTAMPThe date and time when the organization membership was last updated.
created_atTIMESTAMPThe date and time when the organization membership was created.
idINT64Unique identifier for the organization membership.
user_idINT64The ID of the user associated with the organization membership.
organization_idINT64The ID of the organization associated with the membership.
organization_nameSTRINGThe name of the organization associated with the membership.
view_ticketsBOOLFlag indicating if the user can view tickets within the organization.
_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.
group_idINT64The ID of the group to which the organization belongs
created_atTIMESTAMPThe date and time when the organization was created
shared_ticketsBOOLIndicates if tickets are shared with this organization
notesSTRINGAny notes or comments related to the organization
shared_commentsBOOLIndicates if comments are shared with this organization
detailsSTRINGAdditional details about the organization
updated_atTIMESTAMPThe date and time when the organization was last updated
nameSTRINGThe name of the organization
external_idSTRINGThe external ID of the organization
urlSTRINGThe URL of the organization
idINT64The unique ID of the organization
deleted_atTIMESTAMPThe date and time when the organization was deleted
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • organizations__tags (4 columns)
  • organizations__domain_names (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_atTIMESTAMPTimestamp when the vote was created
idINT64Unique identifier for the vote
item_idINT64Identifier of the item that was voted on
item_typeSTRINGType of the item that was voted on (e.g., ticket, article)
updated_atTIMESTAMPTimestamp when the vote was last updated
urlSTRINGURL of the resource related to the vote
user_idINT64Unique identifier of the user who voted
valueINT64Value of the vote (e.g., upvote, downvote)
_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.
author_idINT64The unique identifier of the author of the comment.
bodySTRINGThe content of the comment.
created_atTIMESTAMPThe timestamp when the comment was created.
html_urlSTRINGThe URL to access the comment in HTML format.
idINT64The unique identifier of the comment.
non_author_editor_idINT64The unique identifier of the non-author editor of the comment.
non_author_updated_atTIMESTAMPThe timestamp when the comment was last updated by a non-author editor.
officialBOOLIndicates if the comment is from an official source.
post_idINT64The unique identifier of the post to which the comment belongs.
updated_atTIMESTAMPThe timestamp when the comment was last updated.
urlSTRINGThe URL to access the comment.
vote_countINT64The total count of votes the comment has received.
vote_sumINT64The sum of all votes (positive and negative) the comment has received.
_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_atTIMESTAMPTimestamp when the vote was created
idINT64Unique identifier for the vote
item_idINT64Identifier of the item that was voted on
item_typeSTRINGType of the item that was voted on (e.g., ticket, article)
updated_atTIMESTAMPTimestamp when the vote was last updated
urlSTRINGURL of the resource related to the vote
user_idINT64Unique identifier of the user who voted
valueINT64Value of the vote (e.g., upvote, downvote)
_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.
author_idFLOAT64The unique identifier of the author of the post.
closedBOOLIndicates whether the post is closed or open for further comments.
comment_countINT64The total number of comments on the post.
detailsSTRINGAdditional details or content of the post.
featuredBOOLIndicates whether the post is featured or not.
follower_countINT64The number of users following the post for updates.
frozenBOOLIndicates whether the post content is frozen or editable.
html_urlSTRINGThe URL that directs to the HTML version of the post.
idFLOAT64The unique identifier of the post.
non_author_editor_idINT64The unique identifier of a user who is not the author but edited the post.
non_author_updated_atTIMESTAMPThe date and time when a non-author user last updated the post.
pinnedBOOLIndicates if the post is pinned to stay on top of the list.
statusSTRINGThe current status of the post, such as 'open', 'solved', 'archived', etc.
titleSTRINGThe title or headline of the post.
topic_idINT64The identifier of the topic under which the post belongs.
vote_countINT64The total count of votes the post has received.
vote_sumINT64The sum of all votes received considering both upvotes and downvotes.
created_atTIMESTAMPThe date and time when the post was created.
urlSTRINGThe URL that points to the post details.
descriptionSTRINGA brief summary or overview of the post content.
updated_atTIMESTAMPThe date and time of the last update made to the post.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • posts__content_tag_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idINT64The unique identifier of the satisfaction rating entry.
assignee_idINT64The unique identifier of the user assigned to the ticket.
group_idINT64The unique identifier of the group associated with the ticket.
reason_idINT64The unique identifier of the selected satisfaction rating reason.
requester_idINT64The unique identifier of the requester who provided the rating.
ticket_idINT64The unique identifier of the ticket associated with the satisfaction rating.
updated_atTIMESTAMPThe date and time when the satisfaction rating was last updated.
created_atTIMESTAMPThe date and time when the satisfaction rating was created.
urlSTRINGThe URL to access the details of the satisfaction rating.
scoreSTRINGThe satisfaction score given by the requester (usually a numeric value).
reasonSTRINGThe reason selected by the requester for the satisfaction rating.
commentSTRINGThe feedback comment provided by the requester.
_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.
idINT64The unique identifier for the schedule
nameSTRINGThe name of the schedule
time_zoneSTRINGThe time zone in which the schedule operates
created_atTIMESTAMPThe date and time when the schedule was created
updated_atTIMESTAMPThe date and time when the schedule was last updated
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • schedules__intervals (5 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
idINT64Unique identifier for the section.
nameSTRINGThe name of the section.
category_idINT64The id of the category to which this section belongs.
parent_section_idINT64The id of the section to which this section belongs. Only writable for Guide Enterprise customers.
positionINT64The position of this section in the section list.
descriptionSTRINGThe description of the section.
localeSTRINGThe locale where the section is displayed.
urlSTRINGThe API url of this section.
html_urlSTRINGThe url of this section in Help Center.
source_localeSTRINGThe source (default) locale of the section.
theme_templateSTRINGThe theme template name used to display this section in Help Center.
outdatedSTRINGWhether the section is out of date.
created_atTIMESTAMPThe time at which the section was created.
updated_atTIMESTAMPThe time at which the section was last updated.
_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.
idINT64The unique identifier for the SLA policy.
urlSTRINGThe URL link to access the SLA policy details.
titleSTRINGThe title of the SLA policy.
descriptionSTRINGThe description of the SLA policy.
positionINT64The position of the SLA policy.
created_atTIMESTAMPThe timestamp for when the SLA policy was created.
updated_atTIMESTAMPThe timestamp for when the SLA policy was last updated.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • sla_policies__filter__all (6 columns)
  • sla_policies__filter__any (6 columns)
  • sla_policies__policy_metrics (7 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
countINT64The number of tags associated with the fetched data.
nameSTRINGThe name of the tag associated with the fetched data.
_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.
actor__idINT64
actor__nameSTRING
actor_idINT64The id of the user responsible for the ticket activity. An actor_id of -1 is a Zendesk system user, such as an automations action.
created_atTIMESTAMPWhen the record was created
descriptionSTRINGDescription of the activity
idINT64Automatically assigned on creation
titleSTRINGDescription of the activity
updated_atTIMESTAMPWhen the record was last updated
urlSTRINGThe API url of the activity
user_idINT64The id of the agent making the request
verbSTRINGThe type of activity. Can be "tickets.assignment", "tickets.comment", or "tickets.priority_increase"
_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.
author_idINT64ID of the author of the ticket audit
metadata__suspension_type_idINT64ID of the suspension type associated with the audit
metadata__trustedBOOLIndicates the trust level of the audit
metadata__decoration__channels__allow_channelbackBOOLIndicates if channelback is allowed for the audit
metadata__decoration__source__idSTRINGID of the source
metadata__decoration__source__nameSTRINGName of the source
metadata__decoration__source__zendesk_idINT64Zendesk ID associated with the source
metadata__decoration__created_atSTRINGDate and time when the audit was created
metadata__decoration__external_idSTRINGExternal ID associated with the audit
metadata__decoration__resource_typeSTRINGType of resource associated with the audit
metadata__decoration__typeSTRINGType of decoration for the audit
metadata__decoration__versionINT64Version of the audit
metadata__flags_options___2__trustedBOOLIndicates the trust level of flag option 2
metadata__flags_options___11__trustedBOOLIndicates the trust level of flag option 11
metadata__flags_options___11__message__userSTRINGUser associated with the message
metadata__flags_options___15__trustedBOOLIndicates the trust level of flag option 15
metadata__flags_options___15__message__userSTRINGUser associated with the message
metadata__system__locationSTRINGLocation details associated with the system
metadata__system__longitudeFLOAT64Longitude of the location associated with the system
metadata__system__message_idSTRINGMessage ID associated with the system
metadata__system__raw_email_identifierSTRINGRaw email identifier associated with the system
metadata__system__ip_addressSTRINGIP address associated with the system
metadata__system__json_email_identifierSTRINGJSON email identifier associated with the system
metadata__system__clientSTRINGClient associated with the system
... and 24 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • ticket_audits__events (55 columns)
  • ticket_audits__events__attachments (16 columns)
  • ticket_audits__events__attachments__thumbnails (13 columns)
  • ticket_audits__events__current_followers (4 columns)
  • ticket_audits__events__previous_followers (4 columns)
  • ticket_audits__events__via__source__from__original_recipients (4 columns)
  • ticket_audits__events__recipients (4 columns)
  • ticket_audits__metadata__notifications_suppressed_for (4 columns)
  • ticket_audits__metadata__flags (4 columns)
  • ticket_audits__via__source__from__ticket_ids (4 columns)
  • ticket_audits__via__source__from__original_recipients (4 columns)
  • ticket_audits__attachments (16 columns)
  • ticket_audits__attachments__thumbnails (3 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_atTIMESTAMPTimestamp indicating when the ticket comment was created.
timestampINT64UNIX timestamp representing the time the ticket comment was created.
bodySTRINGText body of the ticket comment.
idINT64Unique identifier for the ticket comment.
ticket_idINT64Identifier of the ticket to which the comment belongs.
event_typeSTRINGType of event associated with the ticket comment.
typeSTRINGType of the ticket comment.
via_reference_idINT64Reference ID associated with the channel through which the ticket comment was created.
html_bodySTRINGHTML formatted body of the ticket comment.
plain_bodySTRINGPlain text version of the ticket comment body.
publicBOOLFlag indicating if the ticket comment is public or private.
audit_idINT64Unique identifier for the audit associated with this ticket comment.
author_idINT64Identifier of the author of the ticket comment.
via__channelSTRING
via__source__from__subjectSTRING
via__source__from__channelSTRING
via__source__from__nameSTRING
via__source__from__addressSTRING
via__source__from__idINT64
via__source__from__ticket_idINT64
via__source__from__deletedBOOL
via__source__from__titleSTRING
via__source__to__nameSTRING
via__source__to__addressSTRING
... and 14 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • ticket_comments__via__source__from__ticket_ids (4 columns)
  • ticket_comments__via__source__from__original_recipients (4 columns)
  • ticket_comments__metadata__notifications_suppressed_for (4 columns)
  • ticket_comments__metadata__flags (4 columns)
  • ticket_comments__attachments (16 columns)
  • ticket_comments__attachments__thumbnails (13 columns)
  • ticket_comments__uploads (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_atTIMESTAMPThe date and time when the ticket field was created.
title_in_portalSTRINGThe title of the ticket field visible in the portal.
visible_in_portalBOOLIndicates whether the ticket field is visible in the portal or not.
collapsed_for_agentsBOOLSpecifies if the ticket field is collapsed for agents.
regexp_for_validationSTRINGRegular expression for validation of the ticket field value.
titleSTRINGThe title of the ticket field.
positionINT64Position of the ticket field.
typeSTRINGType of the ticket field.
editable_in_portalBOOLIndicates whether the ticket field is editable in the portal or not.
raw_title_in_portalSTRINGThe raw title of the ticket field visible in the portal.
raw_descriptionSTRINGThe raw description of the ticket field.
updated_atTIMESTAMPThe date and time when the ticket field was last updated.
tagSTRINGTag associated with the ticket field.
removableBOOLSpecifies if the ticket field is removable.
activeBOOLIndicates whether the ticket field is active or not.
urlSTRINGURL of the ticket field.
raw_titleSTRINGThe raw title of the ticket field.
requiredBOOLIndicates if the ticket field is required.
idINT64The unique identifier of the ticket field.
descriptionSTRINGDescription of the ticket field.
agent_descriptionSTRINGThe description of the ticket field visible to agents.
required_in_portalBOOLSpecifies if the ticket field is required in the portal.
keySTRINGKey associated with the ticket field.
sub_type_idINT64The subtype identifier of the ticket field.
... and 1 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • ticket_fields__custom_field_options (8 columns)
  • ticket_fields__system_field_options (4 columns)
  • ticket_fields__custom_statuses (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_atTIMESTAMPThe date and time when the ticket form was created.
nameSTRINGThe name of the ticket form.
display_nameSTRINGThe display name of the ticket form.
raw_display_nameSTRINGThe raw display name of the ticket form.
positionINT64The order position of the ticket form within a list.
raw_nameSTRINGThe raw name of the ticket form.
updated_atTIMESTAMPThe date and time when the ticket form was last updated.
activeBOOLIndicates if the ticket form is currently active.
defaultBOOLIndicates if the ticket form is the default form.
in_all_brandsBOOLIndicates if the ticket form is available in all brands.
end_user_visibleBOOLIndicates if the ticket form is visible to end users.
urlSTRINGThe URL to access the ticket form.
idINT64Unique identifier for the ticket form.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • ticket_forms__agent_conditions (4 columns)
  • ticket_forms__end_user_conditions (4 columns)
  • ticket_forms__restricted_brand_ids (4 columns)
  • ticket_forms__ticket_field_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
metricSTRINGType of metric being tracked for the ticket
idINT64Unique identifier for the ticket metric event
timeSTRINGTimestamp when the metric event occurred
instance_idINT64Unique identifier for the specific instance of the metric event
ticket_idINT64Unique identifier for the ticket associated with the metric event
typeSTRINGType of metric event (e.g., update, change, escalation)
sla__policy__idINT64Unique identifier for the SLA policy
sla__policy__titleSTRINGTitle of the SLA policy
sla__policy__descriptionSTRINGDescription of the SLA policy
sla__targetINT64Target time in minutes for the SLA
sla__business_hoursBOOLWhether the SLA target uses business hours
group_sla__policy__idINT64Unique identifier for the Group SLA policy
group_sla__policy__titleSTRINGTitle of the Group SLA policy
group_sla__policy__descriptionSTRINGDescription of the Group SLA policy
group_sla__targetINT64Target time in minutes for the Group SLA
group_sla__business_hoursBOOLWhether the Group SLA target uses business hours
status__calendarINT64Minutes the metric has been open in calendar hours
status__businessINT64Minutes the metric has been open in business hours
deletedBOOLAvailable if type is "breach". In general, any branch event can be ignored when deleted is true
_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.
metricSTRINGTicket metrics data
idINT64Unique identifier for the ticket
timeSTRINGTime related to the ticket
instance_idINT64ID of the Zendesk instance associated with the ticket
ticket_idINT64ID of the ticket
status__calendarINT64The status of the ticket in calendar hours
status__businessINT64The status of the ticket in business hours
typeSTRINGType of ticket
agent_wait_time_in_minutes__calendarINT64Time spent waiting for an agent to respond in calendar hours
agent_wait_time_in_minutes__businessINT64Time spent waiting for an agent to respond in business hours
assignee_stationsINT64Number of stations assigned to the ticket's assignee
created_atTIMESTAMPTimestamp when the ticket was created
first_resolution_time_in_minutes__calendarINT64Time taken to provide the first resolution in calendar hours
first_resolution_time_in_minutes__businessINT64Time taken to provide the first resolution in business hours
full_resolution_time_in_minutes__calendarINT64Total time taken to fully resolve the ticket in calendar hours
full_resolution_time_in_minutes__businessINT64Total time taken to fully resolve the ticket in business hours
group_stationsINT64Number of stations assigned to the ticket's group
latest_comment_added_atTIMESTAMPTimestamp when the latest comment was added
on_hold_time_in_minutes__calendarINT64Total time the ticket was on hold in calendar hours
on_hold_time_in_minutes__businessINT64Total time the ticket was on hold in business hours
reopensINT64Number of times the ticket has been reopened
repliesINT64Number of replies made on the ticket
reply_time_in_minutes__calendarINT64Average time taken to reply to the ticket in calendar hours
reply_time_in_minutes__businessINT64Average time taken to reply to the ticket in business hours
... and 16 more columns
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
created_atTIMESTAMPThe timestamp when the ticket skip entry was created
idINT64Unique identifier for the ticket skip entry
reasonSTRINGThe reason for skipping the ticket
ticket_idINT64The unique identifier of the skipped ticket
updated_atTIMESTAMPThe timestamp when the ticket skip entry was last updated
user_idINT64The unique identifier of the user who skipped the ticket
ticket__organization_idINT64
ticket__requester_idINT64
ticket__problem_idINT64
ticket__is_publicBOOL
ticket__descriptionSTRING
ticket__submitter_idINT64
ticket__generated_timestampINT64
ticket__brand_idINT64
ticket__idINT64
ticket__group_idINT64
ticket__typeSTRING
ticket__recipientSTRING
ticket__has_incidentsBOOL
ticket__created_atTIMESTAMP
ticket__raw_subjectSTRING
ticket__statusSTRING
ticket__updated_atTIMESTAMP
ticket__urlSTRING
... and 52 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • ticket_skips__ticket__follower_ids (4 columns)
  • ticket_skips__ticket__collaborator_ids (4 columns)
  • ticket_skips__ticket__tags (4 columns)
  • ticket_skips__ticket__fields (5 columns)
  • ticket_skips__ticket__custom_fields (5 columns)
  • ticket_skips__ticket__followup_ids (4 columns)
  • ticket_skips__ticket__via__source__from__original_recipients (4 columns)
  • ticket_skips__ticket__sharing_agreement_ids (4 columns)
  • ticket_skips__ticket__email_cc_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
organization_idINT64
requester_idINT64
problem_idINT64
is_publicBOOL
descriptionSTRING
submitter_idINT64
generated_timestampINT64
brand_idINT64
idINT64
group_idINT64
typeSTRING
recipientSTRING
has_incidentsBOOL
created_atTIMESTAMP
raw_subjectSTRING
statusSTRING
updated_atTIMESTAMP
urlSTRING
allow_channelbackBOOL
allow_attachmentsBOOL
due_atTIMESTAMP
prioritySTRING
assignee_idINT64
subjectSTRING
... and 47 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • tickets__follower_ids (4 columns)
  • tickets__collaborator_ids (4 columns)
  • tickets__tags (4 columns)
  • tickets__fields (5 columns)
  • tickets__custom_fields (5 columns)
  • tickets__followup_ids (4 columns)
  • tickets__via__source__from__original_recipients (4 columns)
  • tickets__sharing_agreement_ids (4 columns)
  • tickets__email_cc_ids (4 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
html_urlSTRINGThe URL of the topic in HTML format.
idFLOAT64The unique identifier of the topic.
nameSTRINGThe name/title of the topic.
urlSTRINGThe URL of the topic in API format.
created_atTIMESTAMPThe date and time when this topic was created.
community_idINT64The unique identifier of the community to which this topic belongs.
updated_atTIMESTAMPThe date and time when this topic was last updated.
descriptionSTRINGThe textual description of the topic.
manageable_bySTRINGThe user or group who can manage this topic.
follower_countFLOAT64The count of users following this topic.
positionFLOAT64The order position of this topic relative to others.
user_segment_idFLOAT64The identifier of the user segment associated with this topic.
_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.
activeBOOLWhether the ticket trigger is active
category_idSTRINGThe ID of the category the ticket trigger belongs to
created_atSTRINGThe time the ticket trigger was created
defaultBOOLIf true, the ticket trigger is a standard trigger
descriptionSTRINGThe description of the ticket trigger
idINT64Automatically assigned when created
positionINT64Position of the ticket trigger, determines the order they will execute in
raw_titleSTRINGThe raw format of the title of the ticket trigger
titleSTRINGThe title of the ticket trigger
updated_atSTRINGThe time of the last update of the ticket trigger
urlSTRINGThe url of the ticket trigger
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • triggers__actions (5 columns)
  • triggers__conditions__all (6 columns)
  • triggers__conditions__any (6 columns)
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
activeBOOLFlag indicating if the user field is currently active or not.
created_atTIMESTAMPTimestamp indicating when the user field was created.
descriptionSTRINGDetailed description of the user field.
idFLOAT64Unique identifier for the user field.
keySTRINGUnique key associated with the user field.
positionFLOAT64Position index of the user field in the user profile.
raw_descriptionSTRINGRaw HTML content for the user field description.
raw_titleSTRINGRaw HTML content for the user field title.
regexp_for_validationSTRINGRegular expression for validating the user field value.
systemBOOLFlag indicating if the user field is a system default field or a custom field.
tagSTRINGTag associated with the user field for categorization.
titleSTRINGTitle or name of the user field.
typeSTRINGData type of the user field value.
updated_atTIMESTAMPTimestamp indicating when the user field was last updated.
urlSTRINGURL pointing to the user field's endpoint for detailed information.
_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.
verifiedBOOLIndicates if the user identity is verified.
primaryBOOLIndicates if the user identity is the user's primary.
typeSTRINGThe type of user identity (e.g. email).
valueSTRINGThe user identity value.
user_idINT64The ID of the user the identity belongs to.
idINT64Unique identifier for the user identity.
created_atTIMESTAMPThe datetime when the user identity was created.
updated_atTIMESTAMPThe datetime when the user identity was updated.
_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.
verifiedBOOLIndicates if the user's account is verified.
roleSTRINGThe role or position of the user.
chat_onlyBOOLSpecifies if the user can only participate in chat interactions.
role_typeINT64The type of role assigned to the user.
phoneSTRINGThe phone number associated with the user.
organization_idINT64The ID of the organization the user belongs to.
detailsSTRINGAdditional details or information about the user.
emailSTRINGThe email address associated with the user.
only_private_commentsBOOLIndicates if the user can only create private comments.
signatureSTRINGThe user's email signature.
restricted_agentBOOLSpecifies if the user is a restricted agent.
moderatorBOOLSpecifies if the user has moderator privileges.
updated_atTIMESTAMPThe datetime when the user account was last updated.
external_idSTRINGAn external identifier for the user.
time_zoneSTRINGThe time zone of the user.
photo__widthINT64The width of the photo.
photo__urlSTRINGThe URL of the user's profile photo.
photo__inlineBOOLSpecifies if the photo should be displayed inline.
photo__content_urlSTRINGThe URL to access the photo content.
photo__content_typeSTRINGThe content type of the photo.
photo__file_nameSTRINGThe file name of the photo.
photo__sizeINT64The size of the photo.
photo__mapped_content_urlSTRINGThe mapped URL to access the photo content.
photo__idINT64The ID of the photo.
... and 23 more columns

Nested subtables

Repeating fields are split into their own tables, listed here with their column counts.

  • users__tags (4 columns)
  • users__photo__thumbnails (13 columns)

How the Zendesk Support sync works

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

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

Common use cases for Zendesk Support data

Track tickets by status, priority, and over time to monitor volume and trends.

SLA performance

Use sla_policies and schedules to measure SLA attainment and breaches.

Resolution times

Measure first response and resolution times to find where service slows down.

Support and customers together

Join Zendesk tickets with order or product data in BigQuery to connect support to the customer journey.

Use Zendesk Support data in your AI and BI tools

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

Was this helpful?

Still need help? Share an idea