54b077bfc9
Confluence REST API, 6 commands: CQL search, get page, create/update page, list spaces. Basic (email + API token) auth, stdlib-only. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
87 lines
3.1 KiB
YAML
87 lines
3.1 KiB
YAML
id: confluence
|
|
name: Confluence
|
|
version: 1.0.0
|
|
description: "Atlassian Confluence (REST API) — runbook and knowledge handling: search content (CQL), read a page, create and update pages, and list spaces. Basic (email + API token) authentication; stdlib-only, no extra Python dependencies."
|
|
changelog: "1.0.0 — Initial release: search content, get page, create/update page, list spaces."
|
|
category: productivity
|
|
|
|
# Per-instance configuration. HTTP Basic auth with an email + API token (Cloud)
|
|
# or username + password (Server/DC).
|
|
config_schema:
|
|
properties:
|
|
base_url:
|
|
type: string
|
|
description: "Confluence base URL (e.g. https://your.atlassian.net/wiki)"
|
|
email:
|
|
type: string
|
|
description: "Account email (Cloud) or username (Server)"
|
|
api_token:
|
|
type: string
|
|
description: "API token (Cloud) or password (Server)"
|
|
x-soar-sensitive: true
|
|
required:
|
|
- base_url
|
|
- email
|
|
- api_token
|
|
|
|
commands:
|
|
- id: search
|
|
name: confluence-search
|
|
description: "Search content using CQL."
|
|
risk: read
|
|
inputs_schema:
|
|
properties:
|
|
cql: { type: string, description: "CQL query (e.g. text ~ \"phishing runbook\")" }
|
|
limit: { type: number, description: "Max results (default 25)" }
|
|
required: [cql]
|
|
outputs_schema: { properties: {} }
|
|
- id: get_page
|
|
name: confluence-get-page
|
|
description: "Get a page by ID (with body)."
|
|
risk: read
|
|
inputs_schema:
|
|
properties:
|
|
page_id: { type: string, description: "Page (content) ID" }
|
|
required: [page_id]
|
|
outputs_schema: { properties: {} }
|
|
- id: create_page
|
|
name: confluence-create-page
|
|
description: "Create a page in a space."
|
|
inputs_schema:
|
|
properties:
|
|
space_key: { type: string, description: "Space key" }
|
|
title: { type: string, description: "Page title" }
|
|
body: { type: string, description: "Page body (storage/HTML format)" }
|
|
parent_id: { type: string, description: "Optional parent page ID" }
|
|
required: [space_key, title, body]
|
|
outputs_schema: { properties: {} }
|
|
- id: update_page
|
|
name: confluence-update-page
|
|
description: "Update a page's title/body (increments the version)."
|
|
inputs_schema:
|
|
properties:
|
|
page_id: { type: string, description: "Page ID" }
|
|
title: { type: string, description: "New title" }
|
|
body: { type: string, description: "New body (storage/HTML)" }
|
|
version: { type: number, description: "New version number (current version + 1)" }
|
|
required: [page_id, title, body, version]
|
|
outputs_schema: { properties: {} }
|
|
- id: list_spaces
|
|
name: confluence-list-spaces
|
|
description: "List spaces."
|
|
risk: read
|
|
inputs_schema:
|
|
properties:
|
|
limit: { type: number, description: "Max spaces (default 25)" }
|
|
required: []
|
|
outputs_schema: { properties: {} }
|
|
|
|
- id: test_connection
|
|
name: confluence-test-connection
|
|
description: "Verify connectivity and credentials (used by the Test button)."
|
|
risk: read
|
|
inputs_schema:
|
|
properties: {}
|
|
required: []
|
|
outputs_schema: { properties: {} }
|