| name | confluence-template |
| description | Work with page templates and blueprints. ALWAYS use when user wants to create standardized pages or manage templates. |
| triggers | ["template","blueprint","create from template","page template","list templates","update template"] |
Confluence Template Skill
Work with Confluence page templates and blueprints.
⚠️ PRIMARY USE CASE
This skill manages page templates. Use for:
- Listing available templates
- Creating pages from templates
- Managing template content
- Working with blueprints
When to Use / When NOT to Use
| Use This Skill | Use Instead |
|---|
| List templates | - |
| Create from template | - |
| Update template | - |
| Create page directly | confluence-page |
| Search templates | confluence-search |
Risk Levels
| Operation | Risk | Notes |
|---|
| List templates | - | Read-only |
| Get template | - | Read-only |
| Create from template | - | Creates new page |
| Update template | ⚠️ | Affects future pages |
| Delete template | ⚠️⚠️ | Cannot be recovered |
Overview
Templates in Confluence allow you to standardize page creation. Blueprints are pre-built templates provided by Confluence or apps. This skill primarily uses the Confluence v1 REST API (/rest/api/template/*) for template management, while create-from uses the v2 API (/api/v2/pages) for page creation.
CLI Commands
confluence template list
List available page templates and blueprints in your Confluence instance.
Usage:
confluence template list
confluence template list --space DOCS
confluence template list --type page
confluence template list --blueprints
confluence template list --output json
confluence template list --limit 50
Arguments:
--space, -s: Filter templates by space key
--type, -t: Filter by template type (page or blogpost)
--blueprints: List blueprints instead of templates
--output, -o: Output format (text or json)
--limit, -l: Maximum number of results (default: 100, max: 250)
confluence template get
Retrieve detailed information about a specific template or blueprint.
Usage:
confluence template get tmpl-123
confluence template get tmpl-123 --body
confluence template get tmpl-123 --body --format markdown
confluence template get bp-456 --blueprint
confluence template get tmpl-123 --output json
Arguments:
template_id: Template ID or blueprint ID
--body: Include template body content
--format: Body format (storage or markdown)
--blueprint: Get blueprint instead of template
--output, -o: Output format (text or json)
confluence template create-from
Create a new Confluence page based on an existing template or blueprint.
Usage:
confluence template create-from --template tmpl-123 --space DOCS --title "New Page"
confluence template create-from --template tmpl-123 --space DOCS --title "Page" --parent-id 12345
confluence template create-from --blueprint bp-456 --space DOCS --title "Project Plan"
confluence template create-from --template tmpl-123 --space DOCS --title "Page" --labels "tag1,tag2"
confluence template create-from --template tmpl-123 --space DOCS --title "Page" --content "<p>Custom content</p>"
confluence template create-from --template tmpl-123 --space DOCS --title "Page" --file content.md
Arguments:
--template: Template ID to use
--blueprint: Blueprint ID to use (alternative to --template)
--space: Space key for the new page (required)
--title: Title for the new page (required)
--parent-id: Parent page ID
--labels: Comma-separated labels
--content: Custom HTML/XHTML content
--file: File with content (Markdown or HTML)
--output, -o: Output format (text or json)
confluence template create
Create a new page template in Confluence.
Usage:
confluence template create --name "Meeting Notes" --space DOCS
confluence template create --name "Status Report" --space DOCS --description "Weekly status report"
confluence template create --name "Template" --space DOCS --file template.html
confluence template create --name "Template" --space DOCS --file template.md
confluence template create --name "Template" --space DOCS --labels "template,meeting"
confluence template create --name "Blog Template" --space DOCS --type blogpost
confluence template create --name "Custom" --space DOCS --blueprint-id com.atlassian...
Arguments:
--name: Template name (required)
--space, -s: Space key (required)
--description: Template description
--content: Template body content (HTML/XHTML) - required if --file not provided
--file: File with template content (Markdown or HTML) - required if --content not provided
--labels: Comma-separated labels
--type, -t: Template type - page or blogpost (default: page)
--blueprint-id: Base on existing blueprint
--output, -o: Output format (text or json)
Note: Either --content or --file must be provided to specify the template body.
confluence template update
Update an existing page template.
Usage:
confluence template update tmpl-123 --name "Updated Template"
confluence template update tmpl-123 --description "New description"
confluence template update tmpl-123 --file updated.html
confluence template update tmpl-123 --file updated.md
confluence template update tmpl-123 --content "<h1>Updated</h1>"
confluence template update tmpl-123 --add-labels "tag1,tag2"
confluence template update tmpl-123 --remove-labels "old-tag"
confluence template update tmpl-123 --name "New Name" --description "New desc" --add-labels "new"
Arguments:
template_id: Template ID to update (required)
--name: New template name
--description: New description
--content: New body content (HTML/XHTML)
--file: File with new content (Markdown or HTML)
--add-labels: Comma-separated labels to add
--remove-labels: Comma-separated labels to remove
--output, -o: Output format (text or json)
Note: At least one field must be specified to update.
API Endpoints Used
This skill uses the Confluence REST API:
v1 API (template management):
GET /rest/api/template/page - List page templates
GET /rest/api/template/blueprint - List blueprints
GET /rest/api/template/{templateId} - Get template details
POST /rest/api/template - Create template
PUT /rest/api/template/{templateId} - Update template
v2 API (page creation):
POST /api/v2/pages - Create page from template (used by create-from)
Examples
Finding and Using Templates
confluence template list
confluence template list --space DOCS
confluence template get tmpl-123 --body --format markdown
confluence template create-from --template tmpl-123 --space DOCS --title "My Meeting Notes"
Creating Custom Templates
confluence template create --name "Weekly Report" --space DOCS --description "Template for weekly status reports"
confluence template create --name "Project Plan" --space DOCS --file project-template.md --labels "template,planning"
Maintaining Templates
confluence template update tmpl-123 --file updated-template.md
confluence template update tmpl-123 --add-labels "engineering,documentation"
confluence template update tmpl-123 --name "New Template Name" --description "Updated description"
Tips
-
Template IDs: Template IDs are typically in the format tmpl-123 or similar. Use confluence template list to find IDs.
-
Markdown Support: All scripts support Markdown input files, which are automatically converted to Confluence's storage format (XHTML).
-
Blueprints vs Templates: Blueprints are system-provided templates. You can create pages from blueprints but typically cannot modify them. Use --blueprint flag to work with blueprints.
-
Labels: Use labels to organize and categorize templates for easier discovery.
-
Preserving Content: When updating templates, only the fields you specify are changed. Other fields are preserved.
-
Parent Pages: When creating pages from templates, you can specify a parent page to create a page hierarchy.
Troubleshooting
Template not found: Verify the template ID with confluence template list. Template IDs are space-specific in some cases.
Permission denied: Ensure you have permission to create/modify templates in the specified space. Template management typically requires space admin permissions.
Content format issues: If template content doesn't render correctly, ensure HTML/XHTML is well-formed. Use Markdown files for easier authoring.