> AI agents: this is one page from PostHog's docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt

# Linking Klaus as a source - Docs

Copy page

# Linking Klaus as a source - Docs

![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_9608fcca70)

![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_dark_a92b0e022d)

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

`npx @posthog/wizard warehouse`

[Learn more](/wizard.md)

![PostHog Wizard hedgehog](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png)

![](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png)Let AI connect your sources for you

**Alpha release**

This source is currently in **alpha**. The interface and available tables may change.

The Klaus connector syncs your Zendesk QA (formerly Klaus) quality assurance data – conversation reviews, AutoQA results, CSAT responses, disputes, scorecards, calibration sessions, and quizzes – into PostHog.

## Prerequisites

You need a Zendesk QA account with API access. Only admins and account managers can create the API token the connector uses.

## Adding a data source

1.  In PostHog, go to the [Sources tab](https://app.posthog.com/data-management/sources) of the data pipeline section.
2.  Click **\+ New source** and click **Link** next to this source.
3.  Enter your credentials (see [Configuration](#configuration) below) and click **Next**.
4.  Select the tables you want to sync, choose a sync method and frequency, then click **Import**.

Once the syncs are complete, you can start querying this data in PostHog.

When linking Zendesk QA, you'll need:

-   **Zendesk subdomain** – the first part of your Zendesk URL. For `yourcompany.zendesk.com`, enter `yourcompany`.
-   **API token** – created by an admin or account manager in Zendesk QA under **Settings > Auto QA and integrations > API**.

## Sync modes

Each table can be synced in one of several modes, depending on what the source supports:

-   **Webhook** (when available) – the source pushes changes to PostHog in real time. Fastest freshness, lowest ongoing cost, and the only mode that reliably captures updates and deletes.
-   **Incremental** – only new or updated rows are synced on each run, using a cursor field (such as an `updated_at` timestamp). Cheaper than a full refresh, but deletes aren't captured.
-   **Append only** – new rows are appended using a cursor field; existing rows are never updated. Ideal for immutable, append-only tables like event logs.
-   **Full refresh** – the whole table is reloaded on every sync. Use it when a table has no reliable cursor or when you need deletions reflected.

See [sync methods](/docs/cdp/sources.md#sync-methods) for a full explanation of how each mode works and how to choose between them.

The Zendesk QA public API is heavily rate limited, so large initial syncs can take a while. Syncs pace themselves around the rate limit and resume automatically if interrupted. We recommend incremental sync where available to keep follow-up syncs small.

## Configuration

| Option | Type | Required |
| --- | --- | --- |
| Zendesk subdomain | text | Yes |
| API token | password | Yes |

## Supported tables

| Table | Description | Sync method | Incremental field | Primary key |
| --- | --- | --- | --- | --- |
| reviews | Reviewed conversations with their manual reviews and comments, one row per conversation. | Incremental, Full refresh | createdAtISO | — |
| autoqa_reviews | AutoQA (automatic quality assurance) reviews, one row per automatically reviewed conversation. | Incremental, Full refresh | conversationCreatedAt | — |
| autoqa_ratings | Per-category AutoQA rating rows, one row per rated category per AutoQA review. | Incremental, Full refresh | conversationCreatedAt | — |
| csat | CSAT (customer satisfaction) survey responses on tickets. | Incremental, Full refresh | ticketCreatedAt | — |
| users | Users in the Zendesk QA account. | Full refresh | — | — |
| workspaces | Workspaces in the Zendesk QA account. | Full refresh | — | — |
| quizzes | Quizzes created in the account, with participation statistics. | Full refresh | — | — |
| scorecards | Scorecards configured in each workspace, with their rating categories and groups. | Full refresh | — | — |
| disputes | Disputes raised against reviews in each workspace. | Full refresh | — | — |
| calibration_sessions | Calibration sessions in each workspace, used to align reviewers on grading. | Incremental, Full refresh | createdAt | — |

## Troubleshooting

-   **Invalid credentials**: check the subdomain matches your Zendesk URL and that the API token was created by an admin or account manager and hasn't been revoked.
-   **Slow syncs**: the Zendesk QA public API enforces a strict rate limit, so a full history import can take hours on large accounts. Later incremental syncs only fetch recent data and finish much faster.

If your sync is failing or data looks wrong, see the [Data warehouse troubleshooting guide](/docs/data-warehouse/troubleshooting.md). If that doesn't help, [contact support](https://us.posthog.com/#panel=support%3Asupport%3Adata_warehouse%3A%3Atrue) – we're happy to help.

### Was this page useful?

HelpfulCould be better