This project contains a Node.js module which wraps Atlassian's Confluence API.
Install confluence-api via npm:
$ npm install confluence-api
Create an instance of Confluence by providing a username and password (or token) and a baseUrl used for all future requests. Confluence uses basic http authentication. For instance:
var Confluence = require("confluence-api");
var config = {
username: "testuser",
password: "test-user-pw-or-rest-api-token",
baseUrl: "https://confluence-api-test.atlassian.net/wiki",
version: 4 // Confluence major version, optional
};
var confluence = new Confluence(config);
confluence.getContentByPageTitle("space-name", "page-title", function(err, data) {
// do something interesting with data; for instance,
// data.results[0].body.storage.value contains the stored markup for the first
// page found in space 'space-name' matching page title 'page-title'
console.log(data);
});
Confluence currently exposes the following API...
Kind: global class
this: {Confluence}
- Confluence
- new Confluence(config)
- .getSpace(space, callback)
- .getSpaceHomePage(space, callback)
- .getContentById(id, callback)
- .getCustomContentById(options, callback)
- .getContentByPageTitle(space, title, callback)
- .postContent(space, title, content, parentId, callback, representation)
- .putContent(space, id, version, title, content, callback, minorEdit, representation)
- .deleteContent(id, callback)
- .getAttachments(space, id, callback)
- .createAttachment(space, id, filepath, callback)
- .updateAttachmentData(space, id, attachmentId, filepath, callback)
- .getLabels(id, callback)
- .postLabels(id, labels, callback)
- .deleteLabel(id, label, callback)
- .search(query, callback)
Construct Confluence.
Param | Type | Description |
---|---|---|
config | Object |
|
config.username | string |
|
config.password | string |
The password or REST API Token for the user (docs) |
config.baseUrl | string |
|
config.version | number |
Optional |
Get space information.
Kind: instance method of Confluence
Param | Type |
---|---|
space | string |
callback | function |
Get space home page.
Kind: instance method of Confluence
Param | Type |
---|---|
space | string |
callback | function |
Get stored content for a specific space and page title.
Kind: instance method of Confluence
Param | Type |
---|---|
id | string |
callback | function |
Get stored content for a specific page id with optional custom expanders.
Kind: instance method of Confluence
Param | Type | Description |
---|---|---|
options | object |
for the custom content request |
callback | function |
Get stored content for a specific space and page title.
Kind: instance method of Confluence
Param | Type |
---|---|
space | string |
title | string |
callback | function |
Post content to a new page.
Kind: instance method of Confluence
Param | Type | Description |
---|---|---|
space | string |
|
title | string |
|
content | string |
|
parentId | number |
A null value will cause the page to be added under the space's home page |
callback | function |
|
representation | string |
Optional |
Put/update stored content for a page.
Kind: instance method of Confluence
Param | Type | Description |
---|---|---|
space | string |
|
id | string |
|
version | number |
|
title | string |
|
content | string |
|
callback | function |
|
minorEdit | boolean |
Optional |
representation | string |
Optional |
Delete a page.
Kind: instance method of Confluence
Param | Type |
---|---|
id | string |
callback | function |
Get attachments
Kind: instance method of Confluence
Param | Type |
---|---|
space | string |
id | string |
callback | function |
This allows you to post attachments to the pages you create.
Kind: instance method of Confluence
Param | Type | Description |
---|---|---|
space | string |
|
id | string |
|
filepath | string |
absolute path of the file you are sending |
callback | function |
This allows you to update posted attachments data
Kind: instance method of Confluence
Param | Type |
---|---|
space | string |
id | string |
attachmentId | string |
filepath | string |
callback | function |
Get labels from content
Kind: instance method of Confluence
Param | Type |
---|---|
id | string |
callback | function |
Post content labels to a existing page.
Kind: instance method of Confluence
Param | Type |
---|---|
id | string |
labels | Array.<{prefix:string, name:string}> |
callback | function |
Delete a label from a page.
Kind: instance method of Confluence
Param | Type |
---|---|
id | string |
label | string |
callback | function |
Search by query
Kind: instance method of Confluence
Param | Type |
---|---|
query | string |
callback | function |
Node.js wrapper for Atlassian's Confluence API. See https://developer.atlassian.com/confdev/confluence-rest-api
Copyright (c) 2015, John Duane Released under the MIT License