Package Information
Documentation
🚀 n8n-nodes-confluence-cloud
A powerful n8n Community Node for seamless integration with Confluence Cloud REST API. This node provides comprehensive access to Confluence Cloud's capabilities with automatic API validation, deprecation detection, and intelligent error handling.
✨ Features
🔄 Confluence Cloud Node
- Spaces Management: Create, read, update, and delete Confluence spaces
- Pages Management: Full CRUD operations for Confluence pages
- Automatic API Version Detection: Seamlessly uses V2 API with V1 fallback for legacy operations
- Built-in Error Handling: Comprehensive error messages with actionable solutions
- OpenAPI-Generated: Automatically generated from official Confluence API specifications
🛡️ Quality Assurance
- Deprecated API Detection: Build fails if deprecated APIs are detected
- Missing Route Validation: Automatic validation of API route configurations
- Professional Error Messages: Clear, actionable error messages with documentation links
📦 Installation
Install the node using n8n's Community Nodes feature:
Via n8n Interface:
- Go to Settings → Community Nodes
- Install package:
n8n-nodes-confluence-cloud
Via npm (for self-hosted n8n):
npm install n8n-nodes-confluence-cloud
For detailed installation instructions, see the n8n Community Nodes documentation.
🔐 Credentials Setup
Required Credentials
Create a Confluence Cloud API credential with:
Field | Description | Example |
---|---|---|
Domain | Your Confluence Cloud URL | https://your-company.atlassian.net |
Your Atlassian account email | [email protected] |
|
API Token | Generated API token | ATATT3xFfGF0T... |
🔑 Creating an API Token
- Go to Atlassian Account Security
- Click "Create API token"
- Enter a label (e.g., "n8n Integration")
- Copy the generated token (⚠️ Save it immediately - you won't see it again!)
🏗️ Supported Operations
📁 Space Operations
Operation | Method | API Version | Documentation |
---|---|---|---|
Get Spaces | GET /spaces |
V2 | 📖 V2 API Docs |
Get Space By Id | GET /spaces/{id} |
V2 | 📖 V2 API Docs |
Create Space | POST /space |
V1 (Legacy) | 📖 V1 API Docs |
Update Space | PUT /space/{spaceKey} |
V1 (Legacy) | 📖 V1 API Docs |
Delete Space | DELETE /space/{spaceKey} |
V1 (Legacy) | 📖 V1 API Docs |
📄 Page Operations
Operation | Method | API Version | Documentation |
---|---|---|---|
Get Pages | GET /pages |
V2 | 📖 V2 API Docs |
Create Page | POST /pages |
V2 | 📖 V2 API Docs |
Get Page By Id | GET /pages/{id} |
V2 | 📖 V2 API Docs |
Update Page | PUT /pages/{id} |
V2 | 📖 V2 API Docs |
Delete Page | DELETE /pages/{id} |
V2 | 📖 V2 API Docs |
Get Pages In Space | GET /spaces/{id}/pages |
V2 | 📖 V2 API Docs |
📄 Template Operations
Operation | Method | API Version | Documentation |
---|---|---|---|
Get Content Templates | GET /template/page |
V1 (Legacy) | 📖 V1 API Docs |
Get Blueprint Templates | GET /template/blueprint |
V1 (Legacy) | 📖 V1 API Docs |
Create Content Template | POST /template |
V1 (Legacy) | 📖 V1 API Docs |
Update Content Template | PUT /template |
V1 (Legacy) | 📖 V1 API Docs |
Get Content Template | GET /template/{contentTemplateId} |
V1 (Legacy) | 📖 V1 API Docs |
Remove Template | DELETE /template/{contentTemplateId} |
V1 (Legacy) | 📖 V1 API Docs |
📄 Search Operations
Operation | Method | API Version | Documentation |
---|---|---|---|
Search Content By C Q L | GET /content/search |
V1 (Legacy) | 📖 V1 API Docs |
📄 Comment Operations
Operation | Method | API Version | Documentation |
---|---|---|---|
Get Page Footer Comments | GET /pages/{id}/footer-comments |
V2 | 📖 V2 API Docs |
Get Page Inline Comments | GET /pages/{id}/inline-comments |
V2 | 📖 V2 API Docs |
Get Blog Post Footer Comments | GET /blogposts/{id}/footer-comments |
V2 | 📖 V2 API Docs |
Get Blog Post Inline Comments | GET /blogposts/{id}/inline-comments |
V2 | 📖 V2 API Docs |
Get Custom Content Comments | GET /custom-content/{id}/footer-comments |
V2 | 📖 V2 API Docs |
Get Footer Comments | GET /footer-comments |
V2 | 📖 V2 API Docs |
Create Footer Comment | POST /footer-comments |
V2 | 📖 V2 API Docs |
Get Footer Comment By Id | GET /footer-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Update Footer Comment | PUT /footer-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Delete Footer Comment | DELETE /footer-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Get Footer Comment Children | GET /footer-comments/{id}/children |
V2 | 📖 V2 API Docs |
Get Inline Comments | GET /inline-comments |
V2 | 📖 V2 API Docs |
Create Inline Comment | POST /inline-comments |
V2 | 📖 V2 API Docs |
Get Inline Comment By Id | GET /inline-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Update Inline Comment | PUT /inline-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Delete Inline Comment | DELETE /inline-comments/{comment-id} |
V2 | 📖 V2 API Docs |
Get Inline Comment Children | GET /inline-comments/{id}/children |
V2 | 📖 V2 API Docs |
💡 Usage Examples
Example 1: Create a New Page
// Input Data
{
"resource": "page",
"operation": "create",
"spaceId": "123456",
"title": "My New Page",
"body": {
"storage": {
"value": "<p>This is my page content.</p>",
"representation": "storage"
}
}
}
Example 2: List All Spaces
// Simple space listing
{
"resource": "space",
"operation": "getAll"
}
🔧 Development
Prerequisites
- Node.js 18+
- npm 8+
- n8n development environment
Setup
# Clone the repository
git clone https://github.com/your-username/n8n-nodes-confluence-cloud.git
cd n8n-nodes-confluence-cloud
# Install dependencies
npm install
# Build the project
npm run build
# Build and run in dev mode
npm run dev # then open browser with http://localhost:5678
Architecture
This node uses a sophisticated build system:
- OpenAPI Code Generation: Automatically generates operations from Confluence API specifications
- Dual API Version Support: Seamlessly handles both V1 (legacy) and V2 APIs
- Quality Validation: Build fails on deprecated APIs or missing routes
- Type Safety: Full TypeScript support with generated types
Build System Features
- 📥 Automatic API Spec Download: Latest Confluence API specifications
- 🔍 Deprecated API Detection: Prevents using outdated endpoints
- ⚠️ Missing Route Validation: Ensures all configured routes exist
- 🎯 Smart Error Messages: Actionable feedback for configuration issues
🤝 Contributing
Contributions are welcome! Please read our Contributing Guide for details.
Adding New Routes
- Edit
config/confluence-routes.json
- Add your route configuration:
{ "path": "/your-endpoint", "methods": ["get", "post"], "legacy": false }
- Run
npm run dev
to generate operations - Test your changes
📋 API Compatibility
Confluence Cloud API | Support Status | Notes |
---|---|---|
REST API v2 | ✅ Full Support | Primary API version |
REST API v1 | 🟡 Legacy Support | For operations not yet in V2 |
🐛 Troubleshooting
Common Issues
❌ "API PATH NOT FOUND" Error
- Solution: Check if the route needs
"legacy": true
flag - Documentation: API Migration Guide
❌ "DEPRECATED API DETECTED" Error
- Solution: Update to the V2 API equivalent
- Check: Confluence API Deprecation Notices
❌ "CQL Parse Error" in Trigger
- Solution: Check your CQL syntax
- Reference: CQL Documentation
❌ Authentication Issues
- Verify your API token is valid
- Ensure your email address is correct
- Check domain format:
https://your-domain.atlassian.net
📚 Resources
- Confluence Cloud REST API Documentation
- Confluence Query Language (CQL)
- n8n Community Nodes
- Atlassian API Tokens
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built for the n8n automation platform
- Uses official Confluence Cloud API specifications
- Inspired by the n8n community's need for robust Confluence integration
Made with ❤️ for the n8n community