> ## Documentation Index
> Fetch the complete documentation index at: https://squad.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Confluence

> What agents can do in Confluence at each access level, and how to connect, limit, and disconnect Confluence.

Connect Confluence so your agents can work in your Confluence account. You choose an access level for each account, and Squad refuses any agent action outside that level.

## Access levels

Each Confluence account has an access level: **Read-only**, **Read + write**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.

| Level                          | The connect window describes this level as      | Actions agents can use |
| ------------------------------ | ----------------------------------------------- | ---------------------- |
| **Read-only**                  | "Read pages and spaces. Cannot create or edit." | 42 of 70               |
| **Read + write** (recommended) | "Read and create or edit content in spaces."    | 63 of 70               |
| **Full access**                | "Read, write, and manage space settings."       | 70 of 70               |

**Read + write** is the recommended level. The connect window selects it for you, and you can choose another level.

The Confluence sign-in page asks you to approve full access to your account. This is expected. Squad does not narrow the sign-in. It checks every agent action against the level you chose, and it refuses actions outside that level.

## What agents can do at each level

Each level opens with a short summary in plain tasks, then lists every action it adds, grouped by what the action works on. You do not need to name actions. Ask in plain words, and the agent searches for the matching action.

<Tip>**Find an action.** Open a level and use your browser's find (Ctrl+F, or Cmd+F on a Mac) with a word from the task or part of a slug. Or ask your agent in plain words, for example "What can you do in my Confluence account?" The agent can search the Confluence actions for you.</Tip>

Each action shows its name, a one-line description where the Confluence action catalog has one, and its slug. The slug is the ID that agents use when they call the action.

<AccordionGroup>
  <Accordion title="Read-only">
    Agents can use 42 of the 70 Confluence actions at this level:

    * View labels
    * View and search pages
    * View and search spaces
    * View comments
    * View properties
    * View versions
    * View attachments
    * View and search content
    * View posts
    * View and search users
    * View audit logs
    * View blog posts

    All 42 actions at this level:

    <AccordionGroup>
      <Accordion title="Attachments (2)">
        | Action              | What it does                                                                             | Slug                             |
        | ------------------- | ---------------------------------------------------------------------------------------- | -------------------------------- |
        | Download attachment | Downloads an attachment from a Confluence page and returns a publicly accessible S3 URL. | `CONFLUENCE_DOWNLOAD_ATTACHMENT` |
        | Get attachments     | Retrieve attachments of a Confluence page.                                               | `CONFLUENCE_GET_ATTACHMENTS`     |
      </Accordion>

      <Accordion title="Audit logs (1)">
        | Action         | What it does                       | Slug                        |
        | -------------- | ---------------------------------- | --------------------------- |
        | Get audit logs | Retrieve Confluence audit records. | `CONFLUENCE_GET_AUDIT_LOGS` |
      </Accordion>

      <Accordion title="Blog posts (3)">
        | Action                  | What it does                                              | Slug                                 |
        | ----------------------- | --------------------------------------------------------- | ------------------------------------ |
        | Get blogpost by ID      | Retrieve a specific Confluence blog post by its ID.       | `CONFLUENCE_GET_BLOGPOST_BY_ID`      |
        | Get blogpost like count | Get like count for a Confluence blog post.                | `CONFLUENCE_GET_BLOGPOST_LIKE_COUNT` |
        | Get blogpost operations | Retrieve permitted operations for a Confluence blog post. | `CONFLUENCE_GET_BLOGPOST_OPERATIONS` |
      </Accordion>

      <Accordion title="Comments (3)">
        | Action                            | What it does                                                 | Slug                                           |
        | --------------------------------- | ------------------------------------------------------------ | ---------------------------------------------- |
        | Get inline comments for blog post | Retrieve inline comments for a Confluence blog post.         | `CONFLUENCE_GET_INLINE_COMMENTS_FOR_BLOG_POST` |
        | Get page footer comments          | Retrieve footer (non-inline) comments for a Confluence page. | `CONFLUENCE_GET_PAGE_FOOTER_COMMENTS`          |
        | Get page inline comments          | Retrieve inline comments for a Confluence page.              | `CONFLUENCE_GET_PAGE_INLINE_COMMENTS`          |
      </Accordion>

      <Accordion title="Content (3)">
        | Action                   | What it does                                                                                 | Slug                                  |
        | ------------------------ | -------------------------------------------------------------------------------------------- | ------------------------------------- |
        | Get content restrictions | Retrieve restrictions on a Confluence content item.                                          | `CONFLUENCE_GET_CONTENT_RESTRICTIONS` |
        | Get space contents       | Retrieve content in a Confluence space.                                                      | `CONFLUENCE_GET_SPACE_CONTENTS`       |
        | Search content           | Searches for content by filtering pages from the Confluence v2 API with intelligent ranking. | `CONFLUENCE_SEARCH_CONTENT`           |
      </Accordion>

      <Accordion title="Labels (6)">
        | Action                       | What it does                                              | Slug                                      |
        | ---------------------------- | --------------------------------------------------------- | ----------------------------------------- |
        | Get attachment labels        | List labels on an attachment.                             | `CONFLUENCE_GET_ATTACHMENT_LABELS`        |
        | Get blogpost labels          | Retrieve labels of a specific Confluence blog post by ID. | `CONFLUENCE_GET_BLOGPOST_LABELS`          |
        | Get labels                   | Retrieve all labels in a Confluence site.                 | `CONFLUENCE_GET_LABELS`                   |
        | Get labels for page          | Retrieve labels of a specific Confluence page by ID.      | `CONFLUENCE_GET_LABELS_FOR_PAGE`          |
        | Get labels for space         | List labels on a space.                                   | `CONFLUENCE_GET_LABELS_FOR_SPACE`         |
        | Get labels for space content | List labels on all content in a space.                    | `CONFLUENCE_GET_LABELS_FOR_SPACE_CONTENT` |
      </Accordion>

      <Accordion title="Pages (6)">
        | Action              | What it does                                                  | Slug                             |
        | ------------------- | ------------------------------------------------------------- | -------------------------------- |
        | Get child pages     | List all direct child pages of a given Confluence page.       | `CONFLUENCE_GET_CHILD_PAGES`     |
        | Get page ancestors  | Retrieve all ancestors for a given Confluence page by its ID. | `CONFLUENCE_GET_PAGE_ANCESTORS`  |
        | Get page by ID      | Retrieve a Confluence page by its ID.                         | `CONFLUENCE_GET_PAGE_BY_ID`      |
        | Get page like count | Get like count for a Confluence page.                         | `CONFLUENCE_GET_PAGE_LIKE_COUNT` |
        | Get pages           | Retrieve a paginated list of Confluence pages.                | `CONFLUENCE_GET_PAGES`           |
        | Search pages        |                                                               | `CONFLUENCE_SEARCH_PAGES`        |
      </Accordion>

      <Accordion title="Posts (2)">
        | Action                   | What it does                                | Slug                                  |
        | ------------------------ | ------------------------------------------- | ------------------------------------- |
        | Get blog posts           | Retrieve a list of blog posts.              | `CONFLUENCE_GET_BLOG_POSTS`           |
        | Get blog posts for label | List all blog posts under a specific label. | `CONFLUENCE_GET_BLOG_POSTS_FOR_LABEL` |
      </Accordion>

      <Accordion title="Properties (3)">
        | Action                               | What it does                                    | Slug                                              |
        | ------------------------------------ | ----------------------------------------------- | ------------------------------------------------- |
        | Get content properties for blog post | Retrieve all content properties on a blog post. | `CONFLUENCE_GET_CONTENT_PROPERTIES_FOR_BLOG_POST` |
        | Get content properties for page      | Retrieve all content properties on a page.      | `CONFLUENCE_GET_CONTENT_PROPERTIES_FOR_PAGE`      |
        | Get space properties                 | Get properties of a Confluence space.           | `CONFLUENCE_GET_SPACE_PROPERTIES`                 |
      </Accordion>

      <Accordion title="Spaces (4)">
        | Action          | What it does                                                            | Slug                         |
        | --------------- | ----------------------------------------------------------------------- | ---------------------------- |
        | Get space by ID | Retrieve a Confluence space by its ID.                                  | `CONFLUENCE_GET_SPACE_BY_ID` |
        | Get spaces      | Retrieve a paginated list of Confluence spaces with optional filtering. | `CONFLUENCE_GET_SPACES`      |
        | List spaces     |                                                                         | `CONFLUENCE_LIST_SPACES`     |
        | Search spaces   |                                                                         | `CONFLUENCE_SEARCH_SPACES`   |
      </Accordion>

      <Accordion title="Tasks (1)">
        | Action    | What it does                                                                                                         | Slug                   |
        | --------- | -------------------------------------------------------------------------------------------------------------------- | ---------------------- |
        | Get tasks | List Confluence tasks (action items) with filtering by assignee, creator, space, page, blog post, status, and dates. | `CONFLUENCE_GET_TASKS` |
      </Accordion>

      <Accordion title="Users (3)">
        | Action             | What it does                                                                             | Slug                            |
        | ------------------ | ---------------------------------------------------------------------------------------- | ------------------------------- |
        | Get current user   | Get information about the currently authenticated user.                                  | `CONFLUENCE_GET_CURRENT_USER`   |
        | Get user anonymous | Retrieve information about the anonymous user.                                           | `CONFLUENCE_GET_USER_ANONYMOUS` |
        | Search users       | Searches for users using user-specific queries from the Confluence Query Language (CQL). | `CONFLUENCE_SEARCH_USERS`       |
      </Accordion>

      <Accordion title="Versions (3)">
        | Action                       | What it does                                            | Slug                                      |
        | ---------------------------- | ------------------------------------------------------- | ----------------------------------------- |
        | Get blogpost version details | Retrieve details for a specific version of a blog post. | `CONFLUENCE_GET_BLOGPOST_VERSION_DETAILS` |
        | Get blogpost versions        | Retrieve all versions of a specific blog post.          | `CONFLUENCE_GET_BLOGPOST_VERSIONS`        |
        | Get page versions            | Retrieve all versions of a specific Confluence page.    | `CONFLUENCE_GET_PAGE_VERSIONS`            |
      </Accordion>

      <Accordion title="Other actions (2)">
        | Action               | What it does                                                              | Slug                              |
        | -------------------- | ------------------------------------------------------------------------- | --------------------------------- |
        | Cql search           | Searches for content in Confluence using Confluence Query Language (CQL). | `CONFLUENCE_CQL_SEARCH`           |
        | Find text selections |                                                                           | `CONFLUENCE_FIND_TEXT_SELECTIONS` |
      </Accordion>
    </AccordionGroup>
  </Accordion>

  <Accordion title="Read + write (recommended)">
    Agents can use 63 of the 70 Confluence actions at this level: everything in **Read-only**, plus:

    * Create and update properties
    * Create and update blog posts
    * Create comments
    * Create and update pages
    * Create spaces
    * View account details
    * Create labels
    * Update tasks
    * Create whiteboards

    The 21 actions that this level adds to **Read-only**:

    | Works on            | Action                                       | What it does                                                                             | Slug                                                      |
    | ------------------- | -------------------------------------------- | ---------------------------------------------------------------------------------------- | --------------------------------------------------------- |
    | **Account details** | Who am I                                     |                                                                                          | `CONFLUENCE_WHO_AM_I`                                     |
    | **Blog posts**      | Create blogpost                              | Create a new Confluence blog post.                                                       | `CONFLUENCE_CREATE_BLOGPOST`                              |
    |                     | Update blogpost                              | Update a Confluence blog post's title or content.                                        | `CONFLUENCE_UPDATE_BLOGPOST`                              |
    | **Comments**        | Create footer comment                        | Create a footer comment on a Confluence page, blog post, attachment, or custom content.  | `CONFLUENCE_CREATE_FOOTER_COMMENT`                        |
    |                     | Create inline comment                        | Creates an inline comment on a Confluence page or blog post, highlighting specific text. | `CONFLUENCE_CREATE_INLINE_COMMENT`                        |
    | **Labels**          | Add content label                            | Add labels to a piece of content.                                                        | `CONFLUENCE_ADD_CONTENT_LABEL`                            |
    | **Pages**           | Create page                                  | Create a new Confluence page in a specified space.                                       | `CONFLUENCE_CREATE_PAGE`                                  |
    |                     | Update page                                  | Update an existing Confluence page, replacing the entire page content.                   | `CONFLUENCE_UPDATE_PAGE`                                  |
    | **Properties**      | Create blogpost property                     | Create a property on a specified blog post.                                              | `CONFLUENCE_CREATE_BLOGPOST_PROPERTY`                     |
    |                     | Create content property for whiteboard       | Create a new content property on a whiteboard.                                           | `CONFLUENCE_CREATE_CONTENT_PROPERTY_FOR_WHITEBOARD`       |
    |                     | Create page property                         | Create a property on a Confluence page.                                                  | `CONFLUENCE_CREATE_PAGE_PROPERTY`                         |
    |                     | Create space property                        | Create a new property on a Confluence space.                                             | `CONFLUENCE_CREATE_SPACE_PROPERTY`                        |
    |                     | Update blogpost property                     | Update a property of a specified blog post.                                              | `CONFLUENCE_UPDATE_BLOGPOST_PROPERTY`                     |
    |                     | Update content property for page by ID       | Update a content property on a Confluence page.                                          | `CONFLUENCE_UPDATE_CONTENT_PROPERTY_FOR_PAGE_BY_ID`       |
    |                     | Update content property for whiteboard by ID | Update a content property on a whiteboard.                                               | `CONFLUENCE_UPDATE_CONTENT_PROPERTY_FOR_WHITEBOARD_BY_ID` |
    |                     | Update space property                        | Update a space property.                                                                 | `CONFLUENCE_UPDATE_SPACE_PROPERTY`                        |
    | **Spaces**          | Create private space                         | Create a private Confluence space.                                                       | `CONFLUENCE_CREATE_PRIVATE_SPACE`                         |
    |                     | Create space                                 | Create a new Confluence space.                                                           | `CONFLUENCE_CREATE_SPACE`                                 |
    | **Tasks**           | Update task                                  | Update a Confluence task status.                                                         | `CONFLUENCE_UPDATE_TASK`                                  |
    | **Whiteboards**     | Create whiteboard                            | Create a new Confluence whiteboard.                                                      | `CONFLUENCE_CREATE_WHITEBOARD`                            |
    | **Other actions**   | Validate credential                          |                                                                                          | `CONFLUENCE_VALIDATE_CREDENTIAL`                          |
  </Accordion>

  <Accordion title="Full access">
    Agents can use 70 of the 70 Confluence actions at this level: everything in **Read + write**, plus:

    * Delete properties
    * Delete blog posts
    * Delete pages
    * Delete spaces

    The 7 actions that this level adds to **Read + write**:

    | Works on       | Action                                       | What it does                                                | Slug                                                      |
    | -------------- | -------------------------------------------- | ----------------------------------------------------------- | --------------------------------------------------------- |
    | **Blog posts** | Delete blogpost                              |                                                             | `CONFLUENCE_DELETE_BLOGPOST`                              |
    | **Pages**      | Delete page                                  | Delete a Confluence page.                                   | `CONFLUENCE_DELETE_PAGE`                                  |
    | **Properties** | Delete blogpost property                     | Delete a blog post property.                                | `CONFLUENCE_DELETE_BLOGPOST_PROPERTY`                     |
    |                | Delete content property for page by ID       | Delete a content property from a page by property ID.       | `CONFLUENCE_DELETE_CONTENT_PROPERTY_FOR_PAGE_BY_ID`       |
    |                | Delete content property for whiteboard by ID | Delete a content property from a whiteboard by property ID. | `CONFLUENCE_DELETE_CONTENT_PROPERTY_FOR_WHITEBOARD_BY_ID` |
    |                | Delete space property                        | Delete a space property.                                    | `CONFLUENCE_DELETE_SPACE_PROPERTY`                        |
    | **Spaces**     | Delete space                                 | Delete a Confluence space by its key.                       | `CONFLUENCE_DELETE_SPACE`                                 |
  </Accordion>
</AccordionGroup>

## Connect Confluence

Before you start:

* You need a Confluence account that you can sign in to.
* Your Squad subscription must be active. Squad does not connect apps while the subscription is not active.

<Steps>
  <Step title="Open Integrations">
    Open **Settings** > **Integrations**.
  </Step>

  <Step title="Add an integration">
    On the **Connected apps** tab, click **+ Add integration**.
  </Step>

  <Step title="Find Confluence">
    Find **Confluence** in the catalog and click it. You can type the name in **Search the catalog…**.
  </Step>

  <Step title="Choose an access level">
    Under **Default scope**, choose an access level. This level applies to every agent.
  </Step>

  <Step title="Click Connect Confluence">
    Click **Connect Confluence**. The Confluence sign-in page opens in a new tab.
  </Step>

  <Step title="Sign in to Confluence">
    Sign in to Confluence and approve the request.
  </Step>
</Steps>

Check that it works: Confluence shows under **YOUR CONNECTIONS**, with a row for the account and its access level.

## Change the access level

1. Under **YOUR CONNECTIONS**, find the Confluence account.
2. Open the account menu (⋯) and click **Manage scope**.
3. Under **Default scope**, choose the new level.
4. Click **Save access**.

The change does not need a new sign-in. Agents get the new level from their next call.

## Set access for one agent

Every agent uses the account's level unless you set something else for it. You can narrow one agent to a lower level, or block it.

1. Under **YOUR CONNECTIONS**, open the account menu (⋯) on the Confluence account.
2. Click **Manage scope**.
3. Under **Per-agent access**, find the agent.
4. Choose the **Default** option to follow the account's level, choose a lower level, or choose **No access**.
5. Click **Save access**.

An agent never gets more than the account's level, even if you choose a higher level for it. Changes apply from the agent's next call. An agent with **No access** does not see the account.

## Use more than one Confluence account

Click **+ Account** on the Confluence card to connect another account. Agents use the primary account unless they are asked to use a specific one.

* After you click **+ Account**, follow the connect steps above.
* Each account has its own access level.
* The first account you connect becomes the primary account. It shows **★ PRIMARY**.
* To change the primary account, open the account menu (⋯) and click **Make primary**.
* To tell accounts apart, open the account menu (⋯) and click **Rename**.

## Reconnect or disconnect

Reconnect when the connection has expired, or when you need to change what the account can reach on the Confluence side:

1. Open the account menu (⋯) and click **Reconnect**.
2. Click **Reauthorize on Confluence**.
3. Sign in to Confluence and approve the request.

Reconnect signs in to the same account again. It does not add a second connection.

Open the account menu (⋯) on the Confluence account and click **Disconnect**. Agents lose access to that account at once.

<Warning>**Disconnect** acts at once, with no confirmation step. If it was the primary account, another connected Confluence account becomes primary.</Warning>

## Costs

Confluence actions do not use Squad credits. Connected apps never use credits. For what does use credits, see [What Squad costs](/docs/costs).

## Troubleshooting

An agent reports that an action is not allowed on this account.

* Cause: the action is outside the account's access level, or outside the level you set for that agent.
* Fix: choose a higher level in **Manage scope**, or change the agent's row under **Per-agent access**.

An agent says it has no access to Confluence, or it does not see the account.

* Cause: the agent is set to **No access** under **Per-agent access**, or the account is not connected.
* Fix: open **Manage scope** and change the agent's row. If the account is missing, connect it again.

Connecting or saving fails with "Your subscription isn't active."

* Cause: your Squad subscription is not active.
* Fix: resubscribe. See [Manage your subscription](/docs/billing).

An agent says the Confluence connection has expired.

* Cause: the sign-in for that account is no longer valid.
* Fix: use **Reconnect** on the account.

## Common questions

<AccordionGroup>
  <Accordion title="Can I limit what agents can do in Confluence?">
    Each Confluence account has an access level: **Read-only**, **Read + write**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.
  </Accordion>

  <Accordion title="Can I connect more than one Confluence account?">
    Click **+ Account** on the Confluence card to connect another account. Agents use the primary account unless they are asked to use a specific one.
  </Accordion>

  <Accordion title="How do I disconnect Confluence?">
    Open the account menu (⋯) on the Confluence account and click **Disconnect**. Agents lose access to that account at once.
  </Accordion>
</AccordionGroup>

## Related pages

<CardGroup cols={2}>
  <Card title="Connect apps" icon="plug" href="/docs/integrations" />

  <Card title="Add an MCP server or an API key" icon="server" href="/docs/custom-integrations">
    Use this when an action you need is not in this app.
  </Card>
</CardGroup>
