# Confluence AI agent for Slack & Microsoft Teams

Viktor is an AI employee that connects to Confluence in one click via OAuth and helps you capture, organize, and find team or personal notes, running 69 Confluence actions for you like Get Pages, Get Tasks, and CQL Search. Ask in plain English in Slack or Microsoft Teams; Viktor does the work in Confluence and reports back. Setup takes about two minutes.

- Tool: Confluence
- Category: Productivity
- Connection: One-click OAuth
- Actions available: 69
- Works from: Slack and Microsoft Teams
- Page: https://viktor.com/integrations/confluence

## What can you ask Viktor to do in Confluence?

- "Find the Confluence doc about onboarding and turn it into a checklist."
- "Summarize what changed in Confluence this week and post it here every Friday."
- "Draft a new Confluence page from this meeting transcript."
- "Search Confluence for anything about the renewal and pull out the key facts."

## What can Viktor do in Confluence? (69 actions)

- **Add Content Label** - Tool to add labels to a piece of content. Use after obtaining the content ID to tag pages or blog posts with metadata labels.
- **CQL Search** - Searches for content in Confluence using Confluence Query Language (CQL). CQL is a powerful query language that allows you to search across all Confluence content with advanced filtering capabilities including: - Full-text search: text ~ "search term" - searches within page content - Title search: title ~ "meeting notes" - searches page titles - Label filtering: label = "important" - filters by labels - Space filtering: space = DEV - limits search to specific spaces - Type filtering: type = page or type = blogpost - filters by content type - Creator filtering: creator = currentUser() - filters by content creator - Date filtering: lastModified > now("-7d") - filters by modification date - Combined queries: text ~ "api" AND space = DOCS AND type = page This action uses the Confluence REST API v1 search endpoint which fully supports CQL.
- **Create Blogpost** - Tool to create a new Confluence blog post. Use when you need to publish content in a specific space. Response includes data.id for the post ID and data.links.base + data.links.webui for the URL.
- **Create Blogpost Property** - Tool to create a property on a specified blog post. Use when you need to add custom metadata to a blog post. Creates a new property with a key-value pair on a specified Confluence blog post. This allows users to add custom metadata relevant to the blog post.
- **Create Whiteboard Property** - Tool to create a new content property on a whiteboard. Use when you need to attach custom metadata to a Confluence whiteboard.
- **Create Footer Comment** - Tool to create a footer comment on a Confluence page, blog post, attachment, or custom content. Use when you need to add a comment without editing the page body itself.
- **Create Inline Comment** - Creates an inline comment on a Confluence page or blog post, highlighting specific text. Inline comments allow users to comment on specific portions of content without editing the page itself. Use this action when you need to add context or feedback on particular text within a page or blog post. For top-level comments, you must specify which text to highlight using inlineCommentProperties. For replies to existing inline comments, only provide the parentCommentId.
- **Create Page** - Tool to create a new Confluence page in a specified space. Use when you need to create new documentation or content.
- **Create Page Property** - Tool to create a property on a Confluence page. Use when you need to add custom metadata or settings to a page.
- **Create Private Space** - Tool to create a private Confluence space. Use when you need an isolated workspace viewable only by its creator.
- **Create Space** - Tool to create a new Confluence space. Use when setting up a new knowledge area for organization. Must include a plain.representation field, e.g., {"plain": {"representation": "plain", "value": "text here"}}. Omitting this field causes a 400 error.
- **Create Space Property** - Tool to create a new property on a Confluence space. Use after confirming the space ID when adding custom metadata.
- **Create Whiteboard** - Tool to create a new Confluence whiteboard. Use when you need to start a collaborative whiteboard session.
- **Delete Blog Post** - Deletes a Confluence blog post by ID. Use this action when you need to remove a blog post from a Confluence space. This action is irreversible — the blog post cannot be recovered once deleted (especially if purge=true). In move or migration workflows, confirm all target blog posts were successfully created before deleting source blog posts — partial creation failures combined with deletion result in unrecoverable data loss.
- **Delete Blogpost Property** - Tool to delete a blog post property. Use when you need to remove custom metadata from a specified blog post.
- **Delete Page Content Property** - Tool to delete a content property from a page by property ID. Use when you need to remove custom metadata from a page for cleanup or auditing. This action deletes a specified content property from a Confluence page using its page ID and property ID. It is useful for removing outdated or unnecessary metadata.
- **Delete Whiteboard Content Property** - Tool to delete a content property from a whiteboard by property ID. Use when you need to remove custom metadata from a whiteboard.
- **Delete Page** - Tool to delete a Confluence page. Use with caution as this permanently removes the page and its content with no recovery option. In move or migration workflows, confirm all target pages were successfully created before deleting source pages — partial creation failures combined with deletion result in unrecoverable data loss.
- **Delete Space** - Tool to delete a Confluence space by its key. Use when you need to permanently remove a space. Deletion runs as an asynchronous long-running task; this action waits (briefly) for it to finish and reports whether it actually completed.
- **Delete Space Property** - Tool to delete a space property. Use when you need to remove a property from a Confluence space after review.
- **Download Attachment** - Downloads an attachment from a Confluence page and returns a downloadable file. Use this when you need to share the attachment with users who don't have Confluence access. First use getattachments to list attachments and get the attachment ID.
- **Find Text Selections** - Finds text occurrences in a Confluence page's content to help with inline comment creation. This action retrieves the page content and searches for the specified text string, returning information about each match including character position and surrounding context. Use this action when you need to locate specific text in a page before creating inline comments, or when you want to identify all occurrences of a particular phrase or term within a page's content.
- **Get Attachment Labels** - Tool to list labels on an attachment. Use after confirming the attachment ID to fetch its labels.
- **Get Attachments** - Tool to retrieve attachments of a Confluence page. Use after confirming page ID to list its attachments (supports pagination).
- **Get Audit Logs** - Tool to retrieve Confluence audit records. Use when you need to fetch and filter audit logs for compliance or troubleshooting.
- **Get Blogpost by ID** - Tool to retrieve a specific Confluence blog post by its ID. Use when you have a blog post ID and need detailed metadata and content.
- **Get Blogpost Labels** - Tool to retrieve labels of a specific Confluence blog post by ID. Use after obtaining the blog post ID to list its labels.
- **Get Blogpost Like Count** - Tool to get like count for a Confluence blog post. Use after confirming the blog post ID to retrieve total likes.
- **Get Blogpost Operations** - Tool to retrieve permitted operations for a Confluence blog post. Use after confirming the blog post ID to see allowed actions.
- **Get Blog Posts** - Tool to retrieve a list of blog posts. Use when you need a paginated list of Confluence blog posts.
- **Get Blog Posts For Label** - Tool to list all blog posts under a specific label. Use when you have a label ID and need to retrieve associated blog posts.
- **Get Blogpost Version Details** - Tool to retrieve details for a specific version of a blog post. Use when you have a blogpostId and versionNumber and need detailed metadata for that version.
- **Get Blogpost Versions** - Tool to retrieve all versions of a specific blog post. Use when you have a blogpostId and need to list version numbers.
- **Get Child Pages** - Tool to list all direct child pages of a given Confluence page. Use when you have a parent page ID and need to discover its direct descendants. Response nests child page data under data.data.results; unwrap this before iterating. Paginate using links.next cursor until no further results to avoid missing children.
- **Get Blog Post Content Properties** - Tool to retrieve all content properties on a blog post. Use when you need to list metadata properties set on a specific Confluence blog post.
- **Get Page Content Properties** - Tool to retrieve all content properties on a page. Use when you need to list metadata properties set on a specific Confluence page.
- **Get Content Restrictions** - Tool to retrieve restrictions on a Confluence content item. Use when you need to see who can view or edit a page or blog post.
- **Get Current User** - Tool to get information about the currently authenticated user — always scoped to the account tied to the configured connection, not arbitrary users. Use CONFLUENCESEARCHUSERS to look up other users. Response contains nested metadata; key fields include accountId, displayName, and email for use in downstream logic.
- **Get Inline Comments for Blog Post** - Tool to retrieve inline comments for a Confluence blog post. Use when you need inline comment details by blog post ID.
- **Get Labels** - Tool to retrieve all labels in a Confluence site; use for label discovery when you need to list or page through labels. For label-based filtering, use CONFLUENCEGETLABELSFORPAGE or CONFLUENCEGETLABELSFORSPACECONTENT instead.
- **Get Page Labels** - Tool to retrieve labels of a specific Confluence page by ID. Labels are returned in data.results[].name and are not available in CONFLUENCEGETPAGES responses. Use after obtaining the page ID to list its labels. Paginate with cursor (plus limit): pass the token from data.links.next as cursor to fetch subsequent pages so no labels are missed when the count exceeds 25.
- **Get Labels for Space** - Tool to list labels on a space. Use when you need to retrieve labels for a specific space.
- **Get Labels for Space Content** - Tool to list labels on all content in a space. Use when you need to retrieve or filter content labels by space, with pagination and optional prefix filtering. For label discovery across a space before per-page filtering, use this tool first, then CONFLUENCEGETLABELSFORPAGE; CONFLUENCESEARCHCONTENT does not filter by labels.
- **Get Page Ancestors** - Tool to retrieve all ancestors for a given Confluence page by its ID. Use when you need the full page hierarchy.
- **Get Page by ID** - Tool to retrieve a Confluence page by its ID. Use when you have a page ID and need its detailed metadata and content. Response body is in body.storage.value as Confluence storage format (HTML); strip tags before plain-text use. Before calling CONFLUENCEUPDATEPAGE, fetch the latest version here — that tool requires version.number = current + 1, else a 409 conflict occurs.
- **Get Page Footer Comments** - Tool to retrieve footer (non-inline) comments for a Confluence page. Use when you need to collect review feedback left as standard page comments.
- **Get Page Inline Comments** - Tool to retrieve inline comments for a Confluence page. Use when you need inline comment details by page ID.
- **Get Page Like Count** - Tool to get like count for a Confluence page. Use after confirming the page ID to retrieve total likes.
- **Get Pages** - Tool to retrieve a paginated list of Confluence pages. Results are permission-scoped to the authenticated user; empty results may reflect access restrictions. Omitting filters like spaceId or status can return unexpectedly broad result sets. Labels are not included in results; use CONFLUENCEGETLABELSFORPAGE for label data. Timestamps are ISO 8601 UTC strings.
- **Get Page Versions** - Tool to retrieve all versions of a specific Confluence page. Use to audit edit history or to get the latest version.number before calling CONFLUENCEUPDATEPAGE — using a stale version.number causes a 409 Conflict error.
- **Get Space by ID** - Tool to retrieve a Confluence space by its ID. Use when you need detailed metadata of a specific space. Space names are non-unique; use the numeric spaceId or spaceKey from the response for stable identification in downstream operations such as CONFLUENCEGETSPACEPROPERTIES, CONFLUENCEGETLABELSFORSPACE, CONFLUENCEGETSPACECONTENTS, and CONFLUENCECREATEBLOGPOST.
- **Get Space Contents** - Tool to retrieve content in a Confluence space. Use when you need to list pages or blogposts of a specific space key. Results are in data.results; follow response.links.next (cursor pagination) until absent to avoid missing content. Only returns content accessible to the authenticated user — missing items may indicate permission restrictions. Attachments are not space-scopable in Confluence v2 (the /attachments endpoint is site-wide); to list a page's attachments use CONFLUENCEGETATTACHMENTS. Construct item URLs by combining data.links.base with each item's links.webui.
- **Get Space Properties** - Tool to get properties of a Confluence space. Use when you need to retrieve custom metadata or settings stored as space properties.
- **Get Spaces** - Tool to retrieve a paginated list of Confluence spaces with optional filtering. Paginate with cursor: pass the token from data.links.next (or the full next URL) as cursor to fetch the next page, and stop when no links.next is returned. Results are scoped to spaces visible to the authenticated user; absent spaces may be restricted rather than nonexistent. Use spaceKey or numeric space ID (not display name) for stable identification in downstream calls. Combined filters apply as AND logic — relax filters before concluding a space is missing.
- **Get Tasks** - Tool to list Confluence tasks (action items) with filtering by assignee, creator, space, page, blog post, status, and dates. Use when you need to retrieve user action items without unreliable keyword searching for "TODO".
- **Get Anonymous User** - Tool to retrieve information about the anonymous user. Use when you need to obtain guest user details before unauthenticated interactions.
- **List Spaces** - Retrieves a paginated list of Confluence spaces visible to the authenticated user. Use when you need to discover available spaces or iterate through all spaces in an instance. Results are scoped to spaces the user has permission to view; missing spaces may be restricted rather than nonexistent. Paginate by using the cursor from the 'links.next' field in the response until no next link is returned.
- **Search Content** - Searches for content by filtering pages from the Confluence v2 API with intelligent ranking. Since the native search endpoint is deprecated, this action: 1. Fetches pages from the v2 pages endpoint with pagination (up to 300 pages) 2. Applies intelligent client-side filtering with relevance scoring 3. Returns results ranked by match quality (exact phrase > all words > partial matches). NOTE: Only page titles are searched — queries matching only body content return no results. Results omit full body content and canonical URLs; use CONFLUENCEGETPAGEBYID for complete page data. Cannot filter by author, date, or labels. Results reflect only pages accessible to the authenticated user. When multiple pages share similar titles, verify the correct page via spaceId or pageId before performing writes.
- **Search Pages** - Searches for pages in Confluence using filters like title, space, and status. Returns a paginated list of pages matching the specified criteria. Use this action when you need to find specific pages by title or filter pages within a particular space. For full-text content search, use CONFLUENCESEARCHCONTENT instead. For advanced CQL-based queries, use CONFLUENCECQLSEARCH.
- **Search Spaces** - Searches for Confluence spaces with flexible filtering by name, key, type, status, and labels. Use this action when you need to find specific spaces by partial name/key match or filter spaces by attributes like type (global/personal), status (current/archived), or labels. Supports cursor pagination for browsing large result sets: pass the token from data.links.next (or the full next URL) as cursor to fetch the next page; a missing links.next means the last page. Results are scoped to spaces visible to the authenticated user; absence may indicate restricted access rather than nonexistence.
- **Search Users** - Searches for users using user-specific queries from the Confluence Query Language (CQL).
- **Update Blogpost** - Tool to update a Confluence blog post's title or content. Use when you need to modify an existing blog post. Ensure you have the latest version number before calling.
- **Update Blogpost Property** - Tool to update a property of a specified blog post. Use when you need to modify custom metadata on a blog post.
- **Update Page Content Property** - Tool to update a content property on a Confluence page. Use when you need to modify an existing metadata property by its ID.
- **Update Whiteboard Content Property** - Tool to update a content property on a whiteboard. Use when you need to modify metadata on a Confluence whiteboard.
- **Update Page** - Tool to update an existing Confluence page, replacing the entire page content. Use when you need to modify existing documentation or content.
- **Update Space Property** - Tool to update a space property. Use when you need to modify custom metadata stored on a Confluence space (requires fetching the current property version first).
- **Update Task** - Tool to update a Confluence task status. Use when you need to mark tasks as complete or incomplete in workflows or dashboards.
- **Validate Credential** - Validates Confluence credentials by attempting to retrieve the current authenticated user's information. Use this action when you need to verify that API credentials are valid and the connection is properly authenticated before performing other operations. Returns validation status along with basic user details if successful.

## How does Viktor work with Confluence?

1. Add Viktor to Slack or Microsoft Teams.
2. Connect Confluence with one-click OAuth - Viktor handles authentication.
3. Ask in plain English. Viktor runs the Confluence actions, chains them with your other tools when needed, and reports back. Sensitive actions wait for your approval.

## What is a Confluence AI agent?

A Confluence AI agent is an AI that connects to your Confluence account and completes work in it - it doesn't just answer questions about Confluence, it takes the actions. Viktor is that agent: an AI employee that works in Confluence on your behalf and delivers the finished result in Slack or Microsoft Teams.

Unlike workflow builders such as Zapier or Make, there is nothing to configure - no triggers to map, no workflows to maintain. You describe the outcome in plain English, and Viktor picks the right Confluence actions, chains them with the other 3,200+ tools it connects to, and asks for approval before anything sensitive runs.

### About Confluence

A tool for team collaboration and knowledge management.

## Security and permissions

- One-click OAuth - Viktor never sees your password, and you can revoke access at any time.
- Review-first approvals: sensitive Confluence actions wait for your sign-off before they run.
- Isolated compute per team, encrypted in transit and at rest - and your data is never used to train models.
- SOC 2 Type 1 compliant, with Type 2 and ISO 27001 in progress.

## FAQ

### Does Viktor integrate with Confluence?

Yes. Confluence is one of the 3,200+ tools Viktor connects to, via a managed connector. Once connected, anyone on your team can put Viktor to work in Confluence from Slack or Microsoft Teams - no workflow builder, no code.

### How do I connect Confluence to Viktor?

Ask Viktor in Slack or Microsoft Teams to connect Confluence, then approve the one-click OAuth prompt. Viktor never sees your password, handles authentication itself, and starts working right away. Setup takes about two minutes, and you can revoke access at any time.

### What can Viktor do in Confluence?

Viktor can run 69 Confluence actions, including Get Pages, Get Tasks, and CQL Search - and chain them with other tools in a single request. In practice that means Viktor helps you capture, organize, and find team or personal notes. If a task spans several actions, Viktor plans the sequence itself and reports back when the work is done.

### Do I need to build workflows to automate Confluence?

No. Viktor isn't a workflow builder - there are no triggers to map and no workflows to maintain. You ask for the outcome in plain English in Slack or Microsoft Teams, and Viktor decides which Confluence actions to take, runs them, and reports back.

### Is my Confluence data secure with Viktor?

Yes. Viktor connects to Confluence in one click via OAuth, runs in an isolated environment per team, and never trains models on your data. Sensitive actions wait for your approval, and you can revoke access at any time. Viktor is SOC 2 Type 1 compliant, with Type 2 and ISO 27001 in progress.

### How much does the Confluence integration cost?

Nothing extra - every integration, including Confluence, is available on every plan. You can start free with up to $100 in credits, no credit card required; paid plans start at $50/month.

### Can Viktor use Confluence together with my other tools?

Yes - that's the point. Viktor connects to 3,200+ tools and works across them in a single run: it can pull data from Confluence, cross-reference it with another tool - for example Slack or Gmail, and deliver the finished result in Slack or Microsoft Teams.

## Viktor uses Confluence together with

- [Slack](https://viktor.com/integrations/slack)
- [Gmail](https://viktor.com/integrations/gmail)
- [Google Sheets](https://viktor.com/integrations/google-sheets)
- [HubSpot](https://viktor.com/integrations/hubspot)
- [Notion](https://viktor.com/integrations/notion)
- [Salesforce](https://viktor.com/integrations/salesforce)

## More Productivity integrations

- [GitHub](https://viktor.com/integrations/github)
- [Asana](https://viktor.com/integrations/asana)
- [Basecamp](https://viktor.com/integrations/basecamp)
- [Monday.com](https://viktor.com/integrations/monday-com)
- [Jira](https://viktor.com/integrations/jira)
- [Linear](https://viktor.com/integrations/linear)
- [Miro](https://viktor.com/integrations/miro)
- [ServiceM8](https://viktor.com/integrations/servicem8)

## Get started

Viktor is free to start - up to $100 in credits, no credit card required. All 3,200+ integrations are included on every plan. Sign up at https://viktor.com or browse all integrations at https://viktor.com/integrations.
