Integrations / Confluence
Confluence
Team wiki: find, read and create pages and spaces.
6 actions
OAuth 2
4 read1 write1 destructive
Calls api.atlassian.com
Connect
const conn = await setu.connections.initiate({ userId: "user_1", toolkit: "confluence" });
console.log(conn.connectUrl); // show this to your user
await conn.waitUntilActive();Permissions requested
| Scope | Why it is requested |
|---|---|
read:confluence-content.all | Read pages and blog posts |
write:confluence-content | Create and edit pages |
read:confluence-space.summary | See space names |
search:confluence | Search your content |
offline_access | Stay connected without asking you to sign in again |
Actions
Create pagewriteconfluence.create_pageCreate a page in a space. The body is Confluence storage format (simple HTML such as <p>text</p>).
Needs scope: write:confluence-content
| Input | Type | Description | |
|---|---|---|---|
cloud_id | string | Required | Site ID from list_sites (call that first) |
space_id | string | Required | Space ID from list_spaces |
title | string | Required | Page title |
body | string | Required | Page body as simple HTML |
await setu.execute({
userId: "user_1",
action: "confluence.create_page",
input: {
"cloud_id": "<cloud_id>",
"space_id": "<space_id>",
"title": "<title>",
"body": "<body>"
},
});Delete pagedestructiveconfluence.delete_pageMove a page to the trash.
Needs scope: write:confluence-content
| Input | Type | Description | |
|---|---|---|---|
cloud_id | string | Required | Site ID from list_sites (call that first) |
page_id | string | Required | Page ID |
await setu.execute({
userId: "user_1",
action: "confluence.delete_page",
input: {
"cloud_id": "<cloud_id>",
"page_id": "<page_id>"
},
confirm: true,
});Get pagereadconfluence.get_pageRead a page's title and body.
Needs scope: read:confluence-content.all
| Input | Type | Description | |
|---|---|---|---|
cloud_id | string | Required | Site ID from list_sites (call that first) |
page_id | string | Required | Page ID |
await setu.execute({
userId: "user_1",
action: "confluence.get_page",
input: {
"cloud_id": "<cloud_id>",
"page_id": "<page_id>"
},
});List sitesreadconfluence.list_sitesList the Atlassian sites this connection can use. Call this first to get a cloud_id for the other tools.
Needs scope: read:confluence-space.summary
No input.
await setu.execute({
userId: "user_1",
action: "confluence.list_sites",
input: {},
});List spacesreadconfluence.list_spacesList Confluence spaces on a site.
Needs scope: read:confluence-space.summary
| Input | Type | Description | |
|---|---|---|---|
cloud_id | string | Required | Site ID from list_sites (call that first) |
await setu.execute({
userId: "user_1",
action: "confluence.list_spaces",
input: {
"cloud_id": "<cloud_id>"
},
});Search contentreadconfluence.searchSearch pages with a CQL query, for example text ~ "onboarding" AND type = page.
Needs scope: search:confluence
| Input | Type | Description | |
|---|---|---|---|
cloud_id | string | Required | Site ID from list_sites (call that first) |
cql | string | Required | CQL query |
limit | integer | Optional |
await setu.execute({
userId: "user_1",
action: "confluence.search",
input: {
"cloud_id": "<cloud_id>",
"cql": "<cql>"
},
});