Confluence REST API documentation

This document describes the REST API and resources provided by Confluence. The REST APIs are for developers who want to integrate Confluence into their application and for administrators who want to script interactions with the Confluence server.

Confluence's REST APIs provide access to resources (data entities) via URI paths. To use a REST API, your application will make an HTTP request and parse the response. The response format is JSON. Your methods will be the standard HTTP methods like GET, PUT, POST and DELETE.

Because the REST API is based on open standards, you can use any web development language to access the API.

Structure of the REST URIs

URIs for the Confluence REST API resource have the following structure:

With context: http://host:port/context/rest/api/resource-name

Or without context: http://host:port/rest/api/resource-name

Example with context: http://example.com:8080/confluence/rest/api/space/ds

Example without context: http://confluence.myhost.com:8095/rest/api/space/ds

How to use expansion in the REST APIs

In order to minimise network traffic from the client perspective, our API uses a technique called expansion.

You can use the expand query parameter to specify a comma-separated list of entities that you want expanded, identifying each entity by a given identifier. For example, the value space,attachments requests the expansion of entities for which the expand identifier is space and attachments.

You can use the . dot notation to specify expansion of entities within another entity. For example body.view would expand the content body and expand the view rendering of it.

Index

This documents the current REST API provided by Confluence.

Resources

/rest/api/content

REST wrapper for the ContentService. Provides methods for finding, creating, modifying and deleting Content.

Methods

GET

/rest/api/content?type&spaceKey&title&postingDay&expand&start&limit

Returns a paginated list of Content.

Example request URI(s):

  • http://example.com/rest/api/content?spaceKey=TST&Title=Cheese&expand=space,body.view,version,container
  • http://example.com/rest/api/content?type=blogpost&spaceKey=TST&title=Bacon&postingDay=2014-02-13&expand=space,body.view,version,container

request query parameters
parameter value description

type

string

Default: page

the content type to return. Default value: page. Valid values: page, blogpost.

spaceKey

string

the space key to find content under. Required.

title

string

the title of the page to find. Required for page type.

postingDay

string

the posting day of the blog post. Required for blogpost type. Format: yyyy-mm-dd. Example: 2013-02-13

expand

string

Default:

a comma separated list of properties to expand on the content. Default value: history,space,version.

start

int

the start point of the collection to return

limit

int

Default: 25

the limit of the number of items to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a list of content

POST

Creates a new piece of Content.

acceptable request representations:

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a piece of content

/rest/api/content/{id}

resource-wide template parameters
parameter value description

id

string

the id of the content

Methods

DELETE

Deletes a piece of Content.

available response representations:

  • 204 [expand]

    Returned if successfully deleted.

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

PUT

Updates a piece of Content.

The body contains the representation of the content. Must include the new version number.

acceptable request representations:

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a piece of content

GET

/rest/api/content/{id}?expand

Returns a piece of Content.

Example request URI(s):

  • http://example.com/rest/api/content/1234?expand=space,body.view,version,container

request query parameters
parameter value description

expand

string

Default: history,space,version

A comma separated list of properties to expand on the content. Default value: history,space,version

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a piece of content

/rest/api/content/{id}/history

resource-wide template parameters
parameter value description

id

string

the id of the content

Methods

GET

/rest/api/content/{id}/history?expand

Returns the history of a particular piece of content

Example request URI(s):

  • http://example.com/rest/api/content/1234/history

request query parameters
parameter value description

expand

string

Default:

the properties on content history to expand

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (history) [expand]

    Returns a full JSON representation of the content's history

/rest/api/content/{id}/history/{version}/macro/hash/{hash}

resource-wide template parameters
parameter value description

id

string

a string containing the id of the content

hash

string

the hash of the macro body

version

int

the version of the content which the hash belongs

Methods

GET

Returns the body of a macro (in storage format) with the given hash. This resource is primarily used by connect applications that require the body of macro to perform their work.

The hash is generated by connect during render time of the local macro holder and is usually only relevant during the scope of one request. For optimisation purposes, this hash will usually live for multiple requests.

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content, or there is no macro matching the given hash.

available response representations:

  • 200 - application/json (macro) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.937+0000","message":"initial edit","number":1,"minorEdit":false},"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"storage":{"value":"<h1>Example</h1><ac:macro ac:name=\"macro\"><ac:rich-text-body><p>This is the body of a macro.</p></ac:rich-text-body></ac:macro>","representation":"storage","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"ancestors":"","children":"","descendants":"","metadata":""}}

    Returns a json representation of a macro.

/rest/api/content/{id}/child

REST wrapper for the {@link ChildContentService}.

resource-wide template parameters
parameter value description

id

string

a string containing the id of the content to retrieve children for

Methods

GET

/rest/api/content/{id}/child?expand

Returns a map of the direct children of a piece of Content. Content can have multiple types of children - for example a Page can have children that are also Pages, but it can also have Comments and Attachments.

The {@link ContentType}(s) of the children returned is specified by the "expand" query parameter in the request - this parameter can include expands for multiple child types.
If no types are included in the expand parameter, the map returned will just list the child types that are available to be expanded for the {@link Content} referenced by the "id" path parameter.

Example request URI(s):

  • http://example.com/rest/api/content/1234/children
  • http://example.com/rest/api/content/1234/children?expand=page.body.VIEW
  • http://example.com/rest/api/content/1234/children?expand=page&start=20&limit=10

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the children

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (children_map) [expand]

    Example
    {"page":{"results":[{"id":"1234","type":"page","title":"Example Content title","links":{},"space":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"history":null,"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.970+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","links":{},"space":null,"history":null,"ancestors":null,"children":null,"descendants":null,"container":null,"body":null,"metadata":null}],"children":null,"descendants":null,"container":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"body":{"view":{"representation":"view","value":"<p><h1>Example</h1>Some example content body</p>","content":null}},"metadata":null}],"size":1}}

    Returns a JSON map representing multiple ordered collections of content children, keyed by content type

/rest/api/content/{id}/child/{type}

resource-wide template parameters
parameter value description

id

string

a string containing the id of the content to retrieve children for

id

string

a string containing the id of the content to retrieve children for

type

string

a {@link ContentType} to filter children on.

Methods

GET

/rest/api/content/{id}/child/{type}?expand&start&limit

Returns the direct children of a piece of Content, limited to a single child type.

The {@link ContentType}(s) of the children returned is specified by the "type" path parameter in the request.

Example request URI(s):

  • http://example.com/rest/api/content/1234/children/page
  • http://example.com/rest/api/content/1234/children/comment
  • http://example.com/rest/api/content/1234/children/page?expand=body.VIEW
  • http://example.com/rest/api/content/1234/children/comment?start=20&limit=10

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the children

start

int

(optional, default: 0) the index of the first item within the result set that should be returned

limit

int

Default: 25

(optional, default: site limit) how many items should be returned after the start index

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (children) [expand]

    Example
    {"page":{"results":[{"id":"1234","type":"page","title":"Example Content title","links":{},"space":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"history":null,"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.970+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","links":{},"space":null,"history":null,"ancestors":null,"children":null,"descendants":null,"container":null,"body":null,"metadata":null}],"children":null,"descendants":null,"container":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"body":{"view":{"representation":"view","value":"<p><h1>Example</h1>Some example content body</p>","content":null}},"metadata":null}],"size":1}}

    Returns a JSON map representing multiple ordered collections of content children, keyed by content type

/rest/api/content/{id}/child/attachment

CRUD operations for Attachments on Content.

resource-wide template parameters
parameter value description

id

string

a string containing the id of the attachments content container

Methods

GET

/rest/api/content/{id}/child/attachment?expand&start&limit&filename&mediaType

Returns a paginated list of attachment Content entities within a single container.

Example request URI(s):

  • http://example.com/rest/api/content/1234/attachments?start=0&limit=10
  • http://example.com/rest/api/content/1234/attachments?filename=myfile.txt&expand=version,container

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the Attachments returned. Optional.

start

int

the index of the first item within the result set that should be returned. Optional.

limit

int

Default: 50

how many items should be returned after the start index. Optional.

filename

string

(optional) filter parameter to return only the Attachment with the matching file name. Optional.

mediaType

string

(optional) filter parameter to return only Attachments with a matching Media-Type. Optional.

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (attachments) [expand]

    Example
    {"results":[{"id":"att5678","type":"attachment","title":"myfile.txt","version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"container":{"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}},"metadata":{"comment":"This is my File","mediaType":"text/plain"},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/att5678"},"_expandable":{"body":"","ancestors":"","children":"","descendants":""}}],"size":1,"_links":{"base":"http://myhost:8080/confluence","context":"/confluence"}}

    Returns a JSON representation of a list of attachment Content entities

POST

Add one or more attachments to a Confluence Content entity, with optional comments.

Comments are optional, but if included there must be as many comments as there are files, and the comments must be in the same order as the files.

This resource expects a multipart post. The media-type multipart/form-data is defined in RFC 1867. Most client libraries have classes that make dealing with multipart posts simple. For instance, in Java the Apache HTTP Components library provides a MultiPartEntity that makes it simple to submit a multipart POST.

In order to protect against XSRF attacks, because this method accepts multipart/form-data, it has XSRF protection on it. This means you must submit a header of X-Atlassian-Token: nocheck with the request, otherwise it will be blocked.

The name of the multipart/form-data parameter that contains attachments must be "file"

A simple example to attach a file called "myfile.txt" to the container with id "123", with a comment included:

curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: nocheck" -F "file=@myfile.txt;comment=This is my File" http://myhost/rest/api/1/content/123/attachments

A example to attach a file called "myfile.txt" to the container with id "123", with a comment, and set the minorEdits flag to be true:

curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: nocheck" -F "file=@myfile.txt;minorEdit=true;comment=This is my
                  File" http://myhost/rest/api/1/content/123/attachments

An example to upload the same file, with no comment:

curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: nocheck" -F "file=@myfile.txt" http://myhost/rest/api/1/content/123/attachments/456/data

Example request URI(s):

  • http://example.com/rest/api/content/1234/attachments

available response representations:

  • 404 [expand]

    Returned if the requested content is not found, the user does not have permission to view it, or if the attachments exceeds the maximum configured attachment size.

available response representations:

  • 200 - application/json [expand]

    Example
    {"results":[{"id":"att5678","type":"attachment","title":"myfile.txt","version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"container":{"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}},"metadata":{"comment":"This is my File","mediaType":"text/plain"},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/att5678"},"_expandable":{"body":"","ancestors":"","children":"","descendants":""}}],"size":1,"_links":{"base":"http://myhost:8080/confluence","context":"/confluence"}}

available response representations:

  • 403 [expand]

    Returned if attachments is disabled or if you don't have permission to add attachments to this content.

/rest/api/content/{id}/child/attachment/{attachmentId}

resource-wide template parameters
parameter value description

id

string

a string containing the id of the attachments content container

attachmentId

string

the id of the attachment to update

Methods

PUT

Update the non-binary data of an Attachment.

This resource can be used to update an attachment's filename, media-type, comment, and parent container.

Example request URI(s):

  • http://example.com/rest/api/content/1234/attachments/5678

acceptable request representations:

available response representations:

  • 409 [expand]

    Returned if the version of the supplied Attachment does not match the next version of the Attachment stored in the database.

available response representations:

  • 404 [expand]

    Returned if no attachment is found for the attachmentId.

available response representations:

  • 200 - application/json [expand]

    Example
    {"id":"att5678","type":"attachment","title":"myfile.txt","version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.949+0000","message":"change message for this edit","number":2,"minorEdit":false},"container":{"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.949+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}},"metadata":{"comment":"This is my File","mediaType":"text/plain"},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/att5678"},"_expandable":{"body":"","ancestors":"","children":"","descendants":""}}

available response representations:

  • 400 [expand]

    Returned if the attachment id or the attachment version number are invalid.

available response representations:

  • 403 [expand]

    Returned if you are not permitted to update or move the attachment to a different container.

/rest/api/content/{id}/child/attachment/{attachmentId}/data

resource-wide template parameters
parameter value description

id

string

a string containing the id of the attachments content container

attachmentId

string

the id of the attachment to upload a new file for

Methods

POST

Update the binary data of an Attachment, and optionally the comment.

Comments are optional, but if included there must be as many comments as there are files, and the comments must be in the same order as the files.

This resource expects a multipart post. The media-type multipart/form-data is defined in RFC 1867. Most client libraries have classes that make dealing with multipart posts simple. For instance, in Java the Apache HTTP Components library provides a MultiPartEntity that makes it simple to submit a multipart POST.

In order to protect against XSRF attacks, because this method accepts multipart/form-data, it has XSRF protection on it. This means you must submit a header of X-Atlassian-Token: nocheck with the request, otherwise it will be blocked.

The name of the multipart/form-data parameter that contains attachments must be "file"

A simple example to upload a file called "myfile.txt" to the Attachment with id "456" in a container with id "123", with the comment updated, and minorEdit set to true:

curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: nocheck" -F "file=@myfile.txt;minorEdit=true;comment=This is my
                  updated File" http://myhost/rest/api/1/content/123/attachments/456/data

An example to upload the same file, with no comment:

curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: nocheck" -F "file=@myfile.txt" http://myhost/rest/api/1/content/123/attachments/456/data

Example request URI(s):

  • http://example.com/rest/api/content/1234/attachments/5678/data

available response representations:

  • 404 [expand]

    Returned if no attachment is found for the attachmentId.

available response representations:

  • 200 - application/json [expand]

    Example
    {"results":[{"id":"att5678","type":"attachment","title":"myfile.txt","version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"container":{"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.978+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}},"metadata":{"comment":"This is my File","mediaType":"text/plain"},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/att5678"},"_expandable":{"body":"","ancestors":"","children":"","descendants":""}}],"size":1,"_links":{"base":"http://myhost:8080/confluence","context":"/confluence"}}

available response representations:

  • 400 [expand]

    Returned if the attachment id is invalid.

/rest/api/content/{id}/descendant

REST wrapper for the {@link ChildContentService}, when {@link Depth} is ALL.

resource-wide template parameters
parameter value description

id

string

a string containing the id of the content to retrieve descendants for

Methods

GET

/rest/api/content/{id}/descendant?expand

Returns a map of the descendants of a piece of Content. Content can have multiple types of descendants - for example a Page can have descendants that are also Pages, but it can also have Comments and Attachments.

The {@link ContentType}(s) of the descendants returned is specified by the "expand" query parameter in the request - this parameter can include expands for multiple descendant types.
If no types are included in the expand parameter, the map returned will just list the descendant types that are available to be expanded for the {@link Content} referenced by the "id" path parameter.

Currently the only supported descendants are comment descendants of non-comment Content.

Example request URI(s):

  • http://example.com/rest/api/content/1234/descendant
  • http://example.com/rest/api/content/1234/descendant?expand=comment.body.VIEW
  • http://example.com/rest/api/content/1234/descendant?expand=comment&start=20&limit=10

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the descendants

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (descendants_map) [expand]

    Example
    {"page":{"results":[{"id":"1234","type":"page","title":"Example Content title","links":{},"space":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"history":null,"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.970+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","links":{},"space":null,"history":null,"ancestors":null,"children":null,"descendants":null,"container":null,"body":null,"metadata":null}],"children":null,"descendants":null,"container":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"body":{"view":{"representation":"view","value":"<p><h1>Example</h1>Some example content body</p>","content":null}},"metadata":null}],"size":1}}

    Returns a JSON map representing multiple ordered collections of content descendants, keyed by content type

/rest/api/content/{id}/descendant/{type}

resource-wide template parameters
parameter value description

id

string

a string containing the id of the content to retrieve descendants for

id

string

a string containing the id of the content to retrieve descendants for

type

string

a {@link ContentType} to filter descendants on.

Methods

GET

/rest/api/content/{id}/descendant/{type}?expand&start&limit

Returns the direct descendants of a piece of Content, limited to a single descendant type.

The {@link ContentType}(s) of the descendants returned is specified by the "type" path parameter in the request.

Currently the only supported descendants are comment descendants of non-comment Content.

Example request URI(s):

  • http://example.com/rest/api/content/1234/descendant/comment
  • http://example.com/rest/api/content/1234/descendant/comment?expand=body.VIEW
  • http://example.com/rest/api/content/1234/descendant/comment?start=20&limit=10

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the descendants

start

int

(optional, default: 0) the index of the first item within the result set that should be returned

limit

int

Default: 25

(optional, default: site limit) how many items should be returned after the start index

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (descendants) [expand]

    Example
    {"page":{"results":[{"id":"1234","type":"page","title":"Example Content title","links":{},"space":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"history":null,"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.970+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","links":{},"space":null,"history":null,"ancestors":null,"children":null,"descendants":null,"container":null,"body":null,"metadata":null}],"children":null,"descendants":null,"container":{"id":11,"key":"TST","name":"Example space","icon":null,"description":{"plain":{"representation":"plain","value":"This is an example space"}},"homepage":null,"type":"global"},"body":{"view":{"representation":"view","value":"<p><h1>Example</h1>Some example content body</p>","content":null}},"metadata":null}],"size":1}}

    Returns a JSON map representing multiple ordered collections of content descendants, keyed by content type

/rest/api/content/{id}/label

REST wrapper for the {@link ContentLabelService}.

resource-wide template parameters
parameter value description

id

string

A string containing the id of the labels content container

Methods

GET

/rest/api/content/{id}/label?prefix&start&limit

Returns the list of labels on a piece of Content.

Example request URI(s):

  • http://example.com/rest/api/content/1234/labels
  • http://example.com/rest/api/content/1234/labels?prefix=global&start=0&limit=200

request query parameters
parameter value description

prefix

string

the prefixes to filter the labels with {@see Label.Prefix}

start

int

the start point of the collection to return

limit

int

Default: 200

the limit of the number of labels to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (labels) [expand]

    Returns a JSON representation of the labels on a piece of content

POST

Adds a list of labels to the specified content.

The body is the json representation of the list.

Example body: [ { "prefix": "global", "name": "label2" }, { "prefix": "global", "name": "label2" } ]

acceptable request representations:

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (labels) [expand]

    Returns a JSON representation of the labels on a piece of content

/rest/api/content/{id}/property

A REST resource for manipulating content properties.

Content properties are a key / value store of properties attached to a piece of Content. The key is a string, and the value is a JSON object.

resource-wide template parameters
parameter value description

id

string

the content to find properties under. Required.

Methods

POST

Creates a new content property.

acceptable request representations:

available response representations:

  • 200 - application/json (contentproperty) [expand]

    Example
    {"key":"example-property-key","value":{"anything":"goes"},"content":{"id":"1234","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}},"version":{"number":2,"minorEdit":false},"_links":{"base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234/property/example-property-key"}}

    Returns a full JSON representation of the content property

available response representations:

  • 400 [expand]

    Returned if the given property has a different ContentId to the one in the path, or if the content already has a value with the given key, or the value is missing, or the value is too long.

available response representations:

  • 403 [expand]

    Returned if the user does not have permission to edit the content with the given ContentId

GET

/rest/api/content/{id}/property?expand&start&limit

Returns a paginated list of content properties.

Example request URI:

  • http://example.com/rest/api/content/1234/property?expand=content,version

request query parameters
parameter value description

expand

string

a comma separated list of properties to expand on the content properties. Default value: version.

start

int

the start point of the collection to return

limit

int

Default: 10

the limit of the number of items to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (contentproperty) [expand]

    Example
    {"results":[{"key":"example-property-key","value":{"anything":"goes"},"content":{"id":"1234","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}},"version":{"number":2,"minorEdit":false},"_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234/property/example-property-key"}}],"size":1,"_links":{"base":"http://myhost:8080/confluence","context":"/confluence"}}

    Returns a full JSON representation of the content property list

/rest/api/content/{id}/property/{key}

resource-wide template parameters
parameter value description

id

string

the content to find properties under. Required.

id

string

the content to find the property under. Required.

key

string

the key of the content property. Required.

Methods

DELETE

Deletes a content property.

available response representations:

  • 204 [expand]

    Returned if successfully deleted.

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

POST

Creates a new content property.

acceptable request representations:

available response representations:

  • 200 - application/json (contentproperty) [expand]

    Example
    {"key":"example-property-key","value":{"anything":"goes"},"content":{"id":"1234","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}},"version":{"number":2,"minorEdit":false},"_links":{"base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234/property/example-property-key"}}

    Returns a full JSON representation of the content property

available response representations:

  • 400 [expand]

    Returned if the given property has a different ContentId to the one in the path, or if the content already has a value with the given key, or the value is missing, or the value is too long.

available response representations:

  • 403 [expand]

    Returned if the user does not have permission to edit the content with the given ContentId

PUT

Updates a content property.

The body contains the representation of the content property. Must include the property id, and the new version number. Attempts to create a new content property if the given version number is 1, just like {@link #create(com.atlassian.confluence.api.model.content.id.ContentId, String, com.atlassian.confluence.api.model.content.JsonContentProperty)}.

acceptable request representations:

available response representations:

  • 409 [expand]

    Returned if the given version is does not match the expected target version of the updated property

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or no property with the given key, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (contentproperty) [expand]

    Example
    {"key":"example-property-key","value":{"anything":"goes"},"content":{"id":"1234","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}},"version":{"number":2,"minorEdit":false},"_links":{"base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234/property/example-property-key"}}

    Returns a full JSON representation of a piece of content

available response representations:

  • 400 [expand]

    Returned if the given property has a different ContentId to the one in the path, or if the property has a different key to the one in the path, or the value is missing, or the value is too long.

available response representations:

  • 403 [expand]

    Returned if the user does not have permission to edit the content with the given ContentId

GET

/rest/api/content/{id}/property/{key}?expand

Returns a content property.

Example request URI:

  • http://example.com/rest/api/content/1234/property/example-property-key?expand=content,version

request query parameters
parameter value description

expand

string

a comma separated list of properties to expand on the content properties. Default value: version.

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or no property with the given key, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (contentproperty) [expand]

    Example
    {"key":"example-property-key","value":{"anything":"goes"},"content":{"id":"1234","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}},"version":{"number":2,"minorEdit":false},"_links":{"base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234/property/example-property-key"}}

    Returns a full JSON representation of the content property

/rest/api/contentbody/convert/{to}

Used for converting ContentBody objects from one format to another.

resource-wide template parameters
parameter value description

to

string

the representation to convert to

Methods

POST

Converts between content body representations.

Not all representations can be converted to/from other formats. Supported conversions:

Source RepresentationDestination Representation Supported
storageview,export_view,editor
editorstorage
viewNone
export_viewNone

Example request URI(s):

  • http://example.com/rest/api/contentbody/convert/view

acceptable request representations:

available response representations:

/rest/api/longtask

REST wrapper for the LongTaskService.

Methods

GET

/rest/api/longtask?expand&start&limit

Returns information about all tracked long-running tasks.

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the tasks

start

int

limit

int

Default: 100

available response representations:

  • 200 - application/json (longtask) [expand]

    Returns a full JSON representation of a list of long tasks

/rest/api/longtask/{id}

resource-wide template parameters
parameter value description

id

string

the key of the task to be returned

Methods

GET

/rest/api/longtask/{id}?expand

Returns information about a long-running task.

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the task

available response representations:

  • 404 [expand]

    Returned if there is no task with the given key, or if the calling user does not have permission to view it

available response representations:

  • 200 - application/json (longtask) [expand]

    Returns a full JSON representation of a long task

/rest/api/space

REST wrapper for the SpaceService.

Methods

GET

/rest/api/space?spaceKey&expand&start&limit

Returns information about a number of spaces.

Example request URI(s):

  • http://example.com/rest/api/space?spaceKey=TST&spaceKey=ds

request query parameters
parameter value description

spaceKey

string

a list of space keys

expand

string

Default:

a comma separated list of properties to expand on the spaces

start

int

the start point of the collection to return

limit

int

Default: 25

the limit of the number of spaces to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if there is no space with the given key, or if the calling user does not have permission to view the space.

available response representations:

  • 200 - application/json (space) [expand]

    Returns a full JSON representation of a space

POST

Creates a new Space.

The incoming Space does not include an id, but must include a Key and Name, and should include a Description.

acceptable request representations:

available response representations:

  • 200 - application/json (space) [expand]

    Example
    {"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"collection":"/rest/api/space","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/space/TST"}}

    Returns a full JSON representation of a space

/rest/api/space/_private

Methods

POST

Creates a new private Space, viewable only by its creator.

The incoming Space does not include an id, but must include a Key and Name, and should include a Description.

acceptable request representations:

available response representations:

  • 200 - application/json (space) [expand]

    Example
    {"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"collection":"/rest/api/space","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/space/TST"}}

    Returns a full JSON representation of a space

/rest/api/space/{spaceKey}

resource-wide template parameters
parameter value description

spaceKey

string

the key of the space to update

Methods

DELETE

Deletes a Space.

The space is deleted in a long running task, so the space cannot be considered deleted when this resource returns. Clients can follow the status link in the response and poll it until the task completes.

available response representations:

  • 202 - application/json (longtask) [expand]

    Returns a pointer to the status of the space-deletion task

available response representations:

  • 404 [expand]

    Returned if there is no space with the given key, or if the calling user does not have permission to delete it.

PUT

Updates a Space.

Currently only the Space name, description and homepage can be updated.

acceptable request representations:

available response representations:

  • 404 [expand]

    Returned if there is no space with the given key, or if the calling user does not have permission to update it.

available response representations:

  • 200 - application/json (space) [expand]

    Example
    {"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"collection":"/rest/api/space","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/space/TST"}}

    Returns a full JSON representation of a space

/rest/api/space/{spaceKey}

resource-wide template parameters
parameter value description

spaceKey

string

a string containing the key of the space

Methods

GET

/rest/api/space/{spaceKey}?expand

Returns information about a space.

Example request URI(s):

  • http://example.com/rest/api/space/TST?expand=description

request query parameters
parameter value description

expand

string

Default:

a comma separated list of properties to expand on the space

available response representations:

  • 404 [expand]

    Returned if there is no space with the given key, or if the calling user does not have permission to view the space.

available response representations:

  • 200 - application/json (space) [expand]

    Returns a full JSON representation of a space

/rest/api/space/{spaceKey}/content

resource-wide template parameters
parameter value description

spaceKey

string

a string containing the key of the space

Methods

GET

/rest/api/space/{spaceKey}/content?depth&expand&start&limit

Returns the content in this given space

Example request URI(s):

  • http://example.com/rest/api/space/TEST/content?expand=history

request query parameters
parameter value description

depth

string

Default: all

a string indicating if all content, or just the root content of the space is returned. Default value: all. Valid values: all, root.

expand

string

Default:

a comma separated list of properties to expand on each piece of content retrieved

start

int

the start point of the collection to return

limit

int

Default: 25

the limit of the number of labels to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a piece of content

/rest/api/space/{spaceKey}/content/{type}

resource-wide template parameters
parameter value description

spaceKey

string

a string containing the key of the space

type

string

the type of content to return with the space. Valid values: page, blogpost.

Methods

GET

/rest/api/space/{spaceKey}/content/{type}?depth&expand&start&limit

Returns the content in this given space with the given type

Example request URI(s):

  • http://example.com/rest/api/space/TEST/content/page?expand=history

request query parameters
parameter value description

depth

string

Default: all

a string indicating if all content, or just the root content of the space is returned. Default value: all. Valid values: all, root.

expand

string

Default:

a comma separated list of properties to expand on each piece of content retrieved

start

int

the start point of the collection to return

limit

int

Default: 25

the limit of the number of labels to return, this may be restricted by fixed system limits

available response representations:

  • 404 [expand]

    Returned if there is no content with the given id, or if the calling user does not have permission to view the content.

available response representations:

  • 200 - application/json (content) [expand]

    Example
    {"id":"1234","type":"page","title":"Example Content title","space":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"version":{"by":{"type":"known","username":"username","displayName":"Full Name","userKey":""},"when":"2014-10-09T22:40:13.872+0000","message":"change message for this edit","number":2,"minorEdit":false},"ancestors":[{"id":"123","type":"page","_links":{"self":"http://myhost:8080/confluence/rest/api/content/123"},"_expandable":{"body":"","container":"","ancestors":"","children":"","descendants":"","metadata":""}}],"container":{"id":11,"key":"TST","name":"Example space","description":{"plain":{"value":"This is an example space","representation":"plain"}},"type":"global","_links":{"self":"http://myhost:8080/confluence/rest/api/space/TST"}},"body":{"view":{"value":"<p><h1>Example</h1>Some example content body</p>","representation":"view","_expandable":{"content":"/rest/api/content/1234"}}},"_links":{"collection":"/rest/api/content","base":"http://myhost:8080/confluence","context":"/confluence","self":"http://myhost:8080/confluence/rest/api/content/1234"},"_expandable":{"children":"","descendants":"","metadata":""}}

    Returns a full JSON representation of a piece of content