This project contains a Node.js module which wraps Atlassian's Confluence API.
Install confluence-api via npm:
$ npm install @illia.kudria/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. REST API V2 is used by default. 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",
useApiV1: true, // set to use REST API V1, optional
version: 4 // Confluence major version, optional
};
var confluence = new Confluence(config);
confluence.getPageById("page-id", function(err, data) {
// do something interesting with data; for instance,
// data.body.storage.value contains the stored markup for the first
console.log(data);
});
Confluence currently exposes the following API...
Kind: global class
this: {Confluence}
- Confluence
- REST API V2
- REST API V1
- 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.useApiV2 | boolean |
Default true, Optional |
config.version | number |
Optional |
Get spaces.
Kind: instance method of Confluence
Param | Type |
---|---|
callback | function |
Get space by id.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
id | string |
ID of the space |
callback | function |
Creates a page in the space.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
data | object |
data of new page |
data.spaceId | string |
ID of the space |
data.status | string |
the status of the page, published or draft |
data.title | string |
title of the page, required if page status is not draft |
data.parentId | string |
the parent content ID of the page |
data.body | object |
|
data.body.representation | string |
type of content representation used for the value field. Valid values: storage, atlas_doc_format, wiki |
data.body.value | string |
body of the page, in the format found in the representation field |
callback | function |
Get page by id.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
id | string |
ID of the page |
callback | function |
Update a page by id.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
data | object |
page data |
data.id | string |
ID of the page |
data.status | string |
the updated status of the page. Valid values: current, draft |
data.title | string |
title of the page |
data.body | object |
|
data.body.representation | string |
type of content representation used for the value field. Valid values: storage, atlas_doc_format, wiki |
data.body.value | string |
body of the page, in the format found in the representation field |
data.version | object |
|
data.version.number | number |
the new version of the updated page |
data.version.message | string |
an optional message to be stored with the version |
callback | function |
Delete a page by id.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
id | string |
ID of the page |
callback | function |
Returns the versions of specific page.
Kind: instance method of Confluence
Param | Type | Value |
---|---|---|
id | string |
ID of the page |
callback | function |
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