> AI agents: this is one page from PostHog's docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt # Linking PandaDoc as a source Canonical URL: https://posthog.com/docs/data-pipelines/sources/pandadoc > **Cloud region:** This page uses US Cloud hosts. For an EU Cloud project, use `https://eu.posthog.com` instead of `https://app.posthog.com` (app host for links). ## On this page - [Adding a data source](#adding-a-data-source) - [Available tables](#available-tables) - [Configuration](#configuration) - [Supported tables](#supported-tables) ![](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` ![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 The PandaDoc connector syncs your PandaDoc data – documents, templates, forms, contacts, and more – into the PostHog data warehouse. ## Adding a data source 1. Go to the [sources tab](https://app.posthog.com/data-management/sources) of the data pipeline section in PostHog. 2. Click **\+ New source** and then click **Link** next to PandaDoc. 3. You need an API key from PandaDoc. Go to your [PandaDoc developer dashboard](https://app.pandadoc.com/a/#/settings/api-dashboard/configuration) and copy your API key. Use a production key — sandbox keys are heavily rate limited. 4. Back in PostHog, enter the key in the **API key** field and click **Next**. 5. Select the tables you want to sync, set the sync method and frequency, then click **Import**. Once the syncs are complete, you can start using PandaDoc data in PostHog. ## Available tables | Table | Description | Sync method | | --- | --- | --- | | `documents` | Documents in your PandaDoc workspace | Incremental | | `templates` | Document templates | Full refresh | | `forms` | Forms | Full refresh | | `contacts` | Contacts | Full refresh | | `members` | Workspace members | Full refresh | | `document_folders` | Document folders | Full refresh | | `template_folders` | Template folders | Full refresh | **Incremental** tables sync only new or updated records on each run. The `documents` table supports `date_modified` and `date_created` as incremental cursor fields. **Full refresh** tables reload all data on each sync. ## Configuration | Option | Type | Required | | --- | --- | --- | | `API key` | password | Yes | ## Supported tables | Table | Description | Sync method | Incremental field | Primary key | | --- | --- | --- | --- | --- | | `documents` | A document in PandaDoc — a proposal, quote, or contract that can be sent and signed. | Incremental, Full refresh | date\_modified, date\_created | — | | `templates` | A reusable template used to create documents with predefined content and fields. | Full refresh | — | — | | `forms` | A PandaDoc form that collects responses and can generate documents from submissions. | Full refresh | — | — | | `contacts` | A contact stored in PandaDoc that can be added as a recipient on documents. | Full refresh | — | — | | `members` | A member (user) of the PandaDoc workspace. | Full refresh | — | — | | `document_folders` | A folder used to organize documents in PandaDoc. | Full refresh | — | — | | `template_folders` | A folder used to organize templates in PandaDoc. | Full refresh | — | — |