> AI agents: this is one page from PostHog's docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt # Linking Confluence as a source Canonical URL: https://posthog.com/docs/data-pipelines/sources/confluence > **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) - [Sync limitations](#sync-limitations) - [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 Confluence connector pulls your Atlassian Confluence Cloud content — spaces, pages, blog posts, attachments, and more — into the PostHog data warehouse. Only Confluence Cloud sites (`your-domain.atlassian.net`) are supported. ## 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 Confluence. 3. You need your Confluence Cloud subdomain, account email, and an API token. Create an API token from your [Atlassian account settings](https://id.atlassian.com/manage-profile/security/api-tokens). For the **Subdomain**, you can paste the full URL from your browser (e.g., `https://acme.atlassian.net/wiki/home`), the host (`acme.atlassian.net`), or just the subdomain (`acme`). Use the **Email** address tied to the Atlassian account that owns the token. 4. Back in PostHog, enter the `Subdomain`, `Email`, and `API token`, then 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 Confluence data in PostHog. ## Available tables | Table | Description | Sync method | | --- | --- | --- | | `spaces` | Confluence spaces | Full refresh | | `pages` | Pages across your site | Full refresh | | `blogposts` | Blog posts | Full refresh | | `attachments` | Attachments | Full refresh | | `tasks` | Tasks | Full refresh | | `labels` | Labels | Full refresh | | `footer_comments` | Footer comments | Full refresh | | `inline_comments` | Inline comments | Full refresh | **Incremental** tables sync only new or updated records on each run. **Full refresh** tables reload all data on each sync. ## Sync limitations All Confluence tables are full refresh only. The Confluence Cloud v2 list endpoints do not expose a server-side timestamp filter, so each sync reloads the full collection. ## Configuration | Option | Type | Required | | --- | --- | --- | | `Subdomain` | text | Yes | | `Email` | email | Yes | | `API token` | password | Yes | ## Supported tables | Table | Description | Sync method | Incremental field | Primary key | | --- | --- | --- | --- | --- | | `spaces` | A Confluence space — a top-level container that groups related pages and content. | Full refresh | — | — | | `pages` | A Confluence page — a unit of content that lives within a space. | Full refresh | — | — | | `blogposts` | A Confluence blog post — a dated post that lives within a space. | Full refresh | — | — | | `attachments` | A file attachment associated with a page, blog post, or other Confluence content. | Full refresh | — | — | | `tasks` | An action item (checkbox task) embedded within Confluence content. | Full refresh | — | — | | `labels` | A label (tag) that can be applied to Confluence content for categorization. | Full refresh | — | — | | `footer_comments` | A footer comment left at the bottom of a Confluence page or blog post. | Full refresh | — | — | | `inline_comments` | An inline comment anchored to specific text within a Confluence page or blog post. | Full refresh | — | — | | `page_permissions` | A direct read or update restriction on a Confluence page, granted to one user or group. | Full refresh | — | — | | `blogpost_permissions` | A direct read or update restriction on a Confluence blog post, granted to one user or group. | Full refresh | — | — |