Skip to main content
Confluence Cloud API logo

Confluence Cloud API

Overview

Confluence is a team collaboration and knowledge management platform that helps teams create, organize, and share content. Integrate Confluence with Superblocks to automate content creation, manage spaces and pages, and build powerful knowledge management workflows.

Setting up Confluence Cloud

Create an access token

To get started you'll need a Confluence API token. To generate a token:

  1. Log in to your Atlassian account and navigate to the API Tokens page
  2. Click Create API token
  3. Label the API token and click Create
  4. Fill in your credentials in the integration configuration form using your email as the username and API Key as the password

Learn more about basic auth for Confluence REST APIs

Add integration

Once you have an access token, you're ready to set up your Superblocks integration.

  1. In the web app, navigate to the Integrations page
  2. Click on the Confluence Cloud API tile
  3. Name the integration
  4. Paste your credentials into the relevant fields
  5. Optionally, add more configurations to set credentials for different environments
  6. Click Create
tip

Confluence Cloud connected!
Now you can use Confluence Cloud in any Application, Workflow, or Scheduled Job.

Use Confluence Cloud in APIs

Once your Confluence Cloud integration is created, you can start calling Confluence Cloud actions in Superblocks APIs.

Confluence Cloud actions are REST requests. To learn more about REST requests in Superblocks, see the Building REST requests guide.

Supported actions

Get audit records

Returns all records in the audit log, optionally for a certain date range. This contains information about events like space exports, group membership changes, app installations, etc. For more information, see [Audit log](https://confluence.atlassian.com/confcloud/audit-log-802164269.html) in the Confluence administrator's guide. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Create audit record

Creates a record in the audit log. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Export audit records

Exports audit records as a CSV file or ZIP file. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Get retention period

Returns the retention period for records in the audit log. The retention period is how long an audit record is kept for, from creation date until it is deleted. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Set retention period

Sets the retention period for records in the audit log. The retention period can be set to a maximum of 1 year. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Get audit records for time period

Returns records from the audit log, for a time period back from the current date. For example, you can use this method to get the last 3 months of records. This contains information about events like space exports, group membership changes, app installations, etc. For more information, see [Audit log](https://confluence.atlassian.com/confcloud/audit-log-802164269.html) in the Confluence administrator's guide. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission.

Archive pages

Archives a list of pages. The pages to be archived are specified as a list of content IDs. This API accepts the archival request and returns a task ID. The archival process happens asynchronously. Use the /longtask/<taskId> REST API to get the copy task status. Each content ID needs to resolve to page objects that are not already in an archived state. The content IDs need not belong to the same space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Archive' permission for each of the pages in the corresponding space it belongs to.

Publish legacy draft

Publishes a legacy draft of a page created from a blueprint. Legacy drafts will eventually be removed in favor of shared drafts. For now, this method works the same as [Publish shared draft](#api-content-blueprint-instance-draftId-put). By default, the following objects are expanded: `body.storage`, `history`, `space`, `version`, `ancestors`. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the draft and 'Add' permission for the space that the content will be created in.

Publish shared draft

Publishes a shared draft of a page created from a blueprint. By default, the following objects are expanded: `body.storage`, `history`, `space`, `version`, `ancestors`. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the draft and 'Add' permission for the space that the content will be created in.

Search content by CQL

Returns the list of content that matches a Confluence Query Language (CQL) query. For information on CQL, see: [Advanced searching using CQL](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/). Example initial call: ``` /wiki/rest/api/content/search?cql=type=page&limit=25 ``` Example response: ``` { "results": [ { ... }, { ... }, ... { ... } ], "limit": 25, "size": 25, ... "_links": { "base": "<url>", "context": "<url>", "next": "/rest/api/content/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg", "self": "<url>" } } ``` When additional results are available, returns `next` and `prev` URLs to retrieve them in subsequent calls. The URLs each contain a cursor that points to the appropriate set of results. Use `limit` to specify the number of results returned in each call. Example subsequent call (taken from example response): ``` /wiki/rest/api/content/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg ``` The response to this will have a `prev` URL similar to the `next` in the example response. If the expand query parameter is used with the `body.export_view` and/or `body.styled_view` properties, then the query limit parameter will be restricted to a maximum value of 25. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission). Only content that the user has permission to view will be returned.

Delete page tree

Moves a pagetree rooted at a page to the space's trash: - If the content's type is `page` and its status is `current`, it will be trashed including all its descendants. - For every other combination of content type and status, this API is not supported. This API accepts the pageTree delete request and returns a task ID. The delete process happens asynchronously. Response example: <pre><code> { "id" : "1180606", "links" : { "status" : "/rest/api/longtask/1180606" } } </code></pre> Use the `/longtask/<taskId>` REST API to get the copy task status. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Delete' permission for the space that the content is in.

Move a page to a new location relative to a target page

Move a page to a new location relative to a target page: * `before` - move the page under the same parent as the target, before the target in the list of children * `after` - move the page under the same parent as the target, after the target in the list of children * `append` - move the page to be a child of the target Caution: This API can move pages to the top level of a space. Top-level pages are difficult to find in the UI because they do not show up in the page tree display. To avoid this, never use `before` or `after` positions when the `targetId` is a top-level page.

Create attachment

Adds an attachment to a piece of content. This method only adds a new attachment. If you want to update an existing attachment, use [Create or update attachments](#api-content-id-child-attachment-put). Note, you must set a `X-Atlassian-Token: nocheck` header on the request for this method, otherwise it will be blocked. This protects against XSRF attacks, which is necessary as this method accepts multipart/form-data. The media type 'multipart/form-data' is defined in [RFC 7578](https://www.ietf.org/rfc/rfc7578.txt). Most client libraries have classes that make it easier to implement multipart posts, like the [MultipartEntityBuilder](https://hc.apache.org/httpcomponents-client-5.1.x/current/httpclient5/apidocs/) Java class provided by Apache HTTP Components. Note, according to [RFC 7578](https://tools.ietf.org/html/rfc7578#section-4.5), in the case where the form data is text, the charset parameter for the "text/plain" Content-Type may be used to indicate the character encoding used in that part. In the case of this API endpoint, the `comment` body parameter should be sent with `type=text/plain` and `charset=utf-8` values. This will force the charset to be UTF-8. Example: This curl command attaches a file ('example.txt') to a container (id='123') with a comment and `minorEdits`=true. ``` bash curl -D- \ -u admin:admin \ -X POST \ -H 'X-Atlassian-Token: nocheck' \ -F 'file=@"example.txt"' \ -F 'minorEdit="true"' \ -F 'comment="Example attachment comment"; type=text/plain; charset=utf-8' \ https://myhost/wiki/rest/api/content/123/child/attachment ``` **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Create or update attachment

Adds an attachment to a piece of content. If the attachment already exists for the content, then the attachment is updated (i.e. a new version of the attachment is created). Note, you must set a `X-Atlassian-Token: nocheck` header on the request for this method, otherwise it will be blocked. This protects against XSRF attacks, which is necessary as this method accepts multipart/form-data. The media type 'multipart/form-data' is defined in [RFC 7578](https://www.ietf.org/rfc/rfc7578.txt). Most client libraries have classes that make it easier to implement multipart posts, like the [MultipartEntityBuilder](https://hc.apache.org/httpcomponents-client-5.1.x/current/httpclient5/apidocs/) Java class provided by Apache HTTP Components. Note, according to [RFC 7578](https://tools.ietf.org/html/rfc7578#section-4.5), in the case where the form data is text, the charset parameter for the "text/plain" Content-Type may be used to indicate the character encoding used in that part. In the case of this API endpoint, the `comment` body parameter should be sent with `type=text/plain` and `charset=utf-8` values. This will force the charset to be UTF-8. Example: This curl command attaches a file ('example.txt') to a piece of content (id='123') with a comment and `minorEdits`=true. If the 'example.txt' file already exists, it will update it with a new version of the attachment. ``` bash curl -D- \ -u admin:admin \ -X PUT \ -H 'X-Atlassian-Token: nocheck' \ -F 'file=@"example.txt"' \ -F 'minorEdit="true"' \ -F 'comment="Example attachment comment"; type=text/plain; charset=utf-8' \ http://myhost/rest/api/content/123/child/attachment ``` **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Update attachment properties

Updates the attachment properties, i.e. the non-binary data of an attachment like the filename, media-type, comment, and parent container. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Update attachment data

Updates the binary data of an attachment, given the attachment ID, and optionally the comment and the minor edit field. This method is essentially the same as [Create or update attachments](#api-content-id-child-attachment-put), except that it matches the attachment ID rather than the name. Note, you must set a `X-Atlassian-Token: nocheck` header on the request for this method, otherwise it will be blocked. This protects against XSRF attacks, which is necessary as this method accepts multipart/form-data. The media type 'multipart/form-data' is defined in [RFC 7578](https://www.ietf.org/rfc/rfc7578.txt). Most client libraries have classes that make it easier to implement multipart posts, like the [MultipartEntityBuilder](https://hc.apache.org/httpcomponents-client-5.1.x/current/httpclient5/apidocs/) Java class provided by Apache HTTP Components. Note, according to [RFC 7578](https://tools.ietf.org/html/rfc7578#section-4.5), in the case where the form data is text, the charset parameter for the "text/plain" Content-Type may be used to indicate the character encoding used in that part. In the case of this API endpoint, the `comment` body parameter should be sent with `type=text/plain` and `charset=utf-8` values. This will force the charset to be UTF-8. Example: This curl command updates an attachment (id='att456') that is attached to a piece of content (id='123') with a comment and `minorEdits`=true. ``` bash curl -D- \ -u admin:admin \ -X POST \ -H 'X-Atlassian-Token: nocheck' \ -F 'file=@"example.txt"' \ -F 'minorEdit="true"' \ -F 'comment="Example attachment comment"; type=text/plain; charset=utf-8' \ http://myhost/rest/api/content/123/child/attachment/att456/data ``` **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Get URI to download attachment

Redirects the client to a URL that serves an attachment's binary data.

Get content descendants

Returns a map of the descendants of a piece of content. This is similar to [Get content children](#api-content-id-child-get), except that this method returns child pages at all levels, rather than just the direct child pages. A piece of content has different types of descendants, depending on its type: - `page`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `whiteboard`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `database`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `embed`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `folder`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `blogpost`: descendant is `comment`, `attachment` - `attachment`: descendant is `comment` - `comment`: descendant is `attachment` The map will always include all descendant types that are valid for the content. However, if the content has no instances of a descendant type, the map will contain an empty array for that descendant type. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space, and permission to view the content if it is a page.

Get content descendants by type

Returns all descendants of a given type, for a piece of content. This is similar to [Get content children by type](#api-content-id-child-type-get), except that this method returns child pages at all levels, rather than just the direct child pages. A piece of content has different types of descendants, depending on its type: - `page`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `whiteboard`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `database`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `embed`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `folder`: descendant is `page`, `whiteboard`, `database`, `embed`, `folder`, `comment`, `attachment` - `blogpost`: descendant is `comment`, `attachment` - `attachment`: descendant is `comment` - `comment`: descendant is `attachment` Custom content types that are provided by apps can also be returned. If the expand query parameter is used with the `body.export_view` and/or `body.styled_view` properties, then the query limit parameter will be restricted to a maximum value of 25. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space, and permission to view the content if it is a page.

Get macro body by macro ID

Returns the body of a macro in storage format, for the given macro ID. This includes information like the name of the macro, the body of the macro, and any macro parameters. This method is mainly used by Cloud apps. About the macro ID: When a macro is created in a new version of content, Confluence will generate a random ID for it, unless an ID is specified (by an app). The macro ID will look similar to this: '50884bd9-0cb8-41d5-98be-f80943c14f96'. The ID is then persisted as new versions of content are created, and is only modified by Confluence if there are conflicting IDs. For Forge macros, the value for macro ID is the "local ID" of that particular ADF node. This value can be retrieved either client-side by calling view.getContext() and accessing "localId" on the resulting object, or server-side by examining the "local-id" parameter node inside the "parameters" node. Note that there are other attributes named "local-id", but only this particular one is used to store the macro ID. Example: <ac:adf-node type="extension"> <ac:adf-attribute key="extension-type">com.atlassian.ecosystem</ac:adf-attribute> <ac:adf-attribute key="parameters"> <ac:adf-parameter key="local-id">e9c4aa10-73fa-417c-888d-48c719ae4165</ac:adf-parameter> </ac:adf-parameter> </ac:adf-node> Note, to preserve backwards compatibility this resource will also match on the hash of the macro body, even if a macro ID is found. This check will eventually become redundant, as macro IDs are generated for pages and transparently propagate out to all instances. This backwards compatibility logic does not apply to Forge macros; those can only be retrieved by their ID. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content that the macro is in.

Get macro body by macro ID and convert the representation synchronously

Returns the body of a macro in format specified in path, for the given macro ID. This includes information like the name of the macro, the body of the macro, and any macro parameters. About the macro ID: When a macro is created in a new version of content, Confluence will generate a random ID for it, unless an ID is specified (by an app). The macro ID will look similar to this: '50884bd9-0cb8-41d5-98be-f80943c14f96'. The ID is then persisted as new versions of content are created, and is only modified by Confluence if there are conflicting IDs. For Forge macros, the value for macro ID is the "local ID" of that particular ADF node. This value can be retrieved either client-side by calling view.getContext() and accessing "localId" on the resulting object, or server-side by examining the "local-id" parameter node inside the "parameters" node. Note that there are other attributes named "local-id", but only this particular one is used to store the macro ID. Example: <ac:adf-node type="extension"> <ac:adf-attribute key="extension-type">com.atlassian.ecosystem</ac:adf-attribute> <ac:adf-attribute key="parameters"> <ac:adf-parameter key="local-id">e9c4aa10-73fa-417c-888d-48c719ae4165</ac:adf-parameter> </ac:adf-parameter> </ac:adf-node> Note, to preserve backwards compatibility this resource will also match on the hash of the macro body, even if a macro ID is found. This check will eventually become redundant, as macro IDs are generated for pages and transparently propagate out to all instances. This backwards compatibility logic does not apply to Forge macros; those can only be retrieved by their ID. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content that the macro is in.

Get macro body by macro ID and convert representation Asynchronously

Returns Async Id of the conversion task which will convert the macro into a content body of the desired format. The result will be available for 5 minutes after completion of the conversion. About the macro ID: When a macro is created in a new version of content, Confluence will generate a random ID for it, unless an ID is specified (by an app). The macro ID will look similar to this: '884bd9-0cb8-41d5-98be-f80943c14f96'. The ID is then persisted as new versions of content are created, and is only modified by Confluence if there are conflicting IDs. For Forge macros, the value for macro ID is the "local ID" of that particular ADF node. This value can be retrieved either client-side by calling view.getContext() and accessing "localId" on the resulting object, or server-side by examining the "local-id" parameter node inside the "parameters" node. Note that there are other attributes named "local-id", but only this particular one is used to store the macro ID. Example: <ac:adf-node type="extension"> <ac:adf-attribute key="extension-type">com.atlassian.ecosystem</ac:adf-attribute> <ac:adf-attribute key="parameters"> <ac:adf-parameter key="local-id">e9c4aa10-73fa-417c-888d-48c719ae4165</ac:adf-parameter> </ac:adf-parameter> </ac:adf-node> Note, to preserve backwards compatibility this resource will also match on the hash of the macro body, even if a macro ID is found. This check will eventually become redundant, as macro IDs are generated for pages and transparently propagate out to all instances. This backwards compatibility logic does not apply to Forge macros; those can only be retrieved by their ID. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content that the macro is in.

Add labels to content

Adds labels to a piece of content. Does not modify the existing labels. Notes: - Labels can also be added when creating content ([Create content](#api-content-post)). - Labels can be updated when updating content ([Update content](#api-content-id-put)). This will delete the existing labels and replace them with the labels in the request. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Remove label from content using query parameter

Removes a label from a piece of content. Labels can't be deleted from archived content. This is similar to [Remove label from content](#api-content-id-label-label-delete) except that the label name is specified via a query parameter. Use this method if the label name has "/" characters, as [Remove label from content using query parameter](#api-content-id-label-delete) does not accept "/" characters for the label name. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Remove label from content

Removes a label from a piece of content. Labels can't be deleted from archived content. This is similar to [Remove label from content using query parameter](#api-content-id-label-delete) except that the label name is specified via a path parameter. Use this method if the label name does not have "/" characters, as the path parameter does not accept "/" characters for security reasons. Otherwise, use [Remove label from content using query parameter](#api-content-id-label-delete). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Get watches for page

Returns the watches for a page. A user that watches a page will receive receive notifications when the page is updated. If you want to manage watches for a page, use the following `user` methods: - [Get content watch status for user](#api-user-watch-content-contentId-get) - [Add content watch](#api-user-watch-content-contentId-post) - [Remove content watch](#api-user-watch-content-contentId-delete) **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get watches for space

Returns all space watches for the space that the content is in. A user that watches a space will receive receive notifications when any content in the space is updated. If you want to manage watches for a space, use the following `user` methods: - [Get space watch status for user](#api-user-watch-space-spaceKey-get) - [Add space watch](#api-user-watch-space-spaceKey-post) - [Remove space watch](#api-user-watch-space-spaceKey-delete) **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Copy page hierarchy

Copy page hierarchy allows the copying of an entire hierarchy of pages and their associated properties, permissions and attachments. The id path parameter refers to the content id of the page to copy, and the new parent of this copied page is defined using the destinationPageId in the request body. The titleOptions object defines the rules of renaming page titles during the copy; for example, search and replace can be used in conjunction to rewrite the copied page titles. Response example: <pre><code> { "id" : "1180606", "links" : { "status" : "/rest/api/longtask/1180606" } } </code></pre> Use the /longtask/<taskId> REST API to get the copy task status.

Copy single page

Copies a single page and its associated properties, permissions, attachments, and custom contents. The `id` path parameter refers to the content ID of the page to copy. The target of the page to be copied is defined using the `destination` in the request body and can be one of the following types. - `space`: page will be copied to the specified space as a root page on the space - `parent_page`: page will be copied as a child of the specified parent page - `parent_content`: page will be copied as a child of the specified parent content - `existing_page`: page will be copied and replace the specified page By default, the following objects are expanded: `space`, `history`, `version`. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Add' permission for the space that the content will be copied in and permission to update the content if copying to an `existing_page`.

Check content permissions

Check if a user or a group can perform an operation to the specified content. The `operation` to check must be provided. The user’s account ID or the ID of the group can be provided in the `subject` to check permissions against a specified user or group. The following permission checks are done to make sure that the user or group has the proper access: - site permissions - space permissions - content restrictions **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission) if checking permission for self, otherwise 'Confluence Administrator' global permission is required.

Get restrictions

Returns the restrictions on a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Add restrictions

Adds restrictions to a piece of content. Note, this does not change any existing restrictions on the content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Update restrictions

Updates restrictions for a piece of content. This removes the existing restrictions and replaces them with the restrictions in the request. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Delete restrictions

Removes all restrictions (read and update) on a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Get restrictions by operation

Returns restrictions on a piece of content by operation. This method is similar to [Get restrictions](#api-content-id-restriction-get) except that the operations are properties of the return object, rather than items in a results array. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Get restrictions for operation

Returns the restictions on a piece of content for a given operation (read or update). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Get content restriction status for group

Returns whether the specified content restriction applies to a group. For example, if a page with `id=123` has a `read` restriction for the `123456` group id, the following request will return `true`: `/wiki/rest/api/content/123/restriction/byOperation/read/byGroupId/123456` Note that a response of `true` does not guarantee that the group can view the page, as it does not account for account-inherited restrictions, space permissions, or even product access. For more information, see [Confluence permissions](https://confluence.atlassian.com/x/_AozKw). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Add group to content restriction

Adds a group to a content restriction by Group Id. That is, grant read or update permission to the group for a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Remove group from content restriction

Removes a group from a content restriction. That is, remove read or update permission for the group for a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Get content restriction status for user

Returns whether the specified content restriction applies to a user. For example, if a page with `id=123` has a `read` restriction for a user with an account ID of `384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192`, the following request will return `true`: `/wiki/rest/api/content/123/restriction/byOperation/read/user?accountId=384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192` Note that a response of `true` does not guarantee that the user can view the page, as it does not account for account-inherited restrictions, space permissions, or even product access. For more information, see [Confluence permissions](https://confluence.atlassian.com/x/_AozKw). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Add user to content restriction

Adds a user to a content restriction. That is, grant read or update permission to the user for a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Remove user from content restriction

Removes a group from a content restriction. That is, remove read or update permission for the group for a piece of content. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Get content state

Gets the current content state of the draft or current version of content. To specify the draft version, set the parameter status to draft, otherwise archived or current will get the relevant published state. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.

Set the content state of a content and publishes a new version of the content.

Sets the content state of the content specified and creates a new version (publishes the content without changing the body) of the content with the new state. You may pass in either an id of a state, or the name and color of a desired new state. If all 3 are passed in, id will be used. If the name and color passed in already exist under the current user's existing custom states, the existing state will be reused. If custom states are disabled in the space of the content (which can be determined by getting the content state space settings of the content's space) then this set will fail. You may not remove a content state via this PUT request. You must use the DELETE method. A specified state is required in the body of this request. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Removes the content state of a content and publishes a new version.

Removes the content state of the content specified and creates a new version (publishes the content without changing the body) of the content with the new status. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Gets available content states for content.

Gets content states that are available for the content to be set as. Will return all enabled Space Content States. Will only return most the 3 most recently published custom content states to match UI editor list. To get all custom content states, use the /content-states endpoint. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to edit the content.

Restore content version

Restores a historical version to be the latest version. That is, a new version is created with the content of the historical version. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Delete content version

Delete a historical version. This does not delete the changes made to the content in that version, rather the changes for the deleted version are rolled up into the next version. Note, you cannot delete the current version. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Get Custom Content States

Get custom content states that authenticated user has created. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required** Must have user authentication.

Asynchronously convert content body

Converts a content body from one format to another format asynchronously. Returns the asyncId for the asynchronous task. Supported conversions: - atlas_doc_format: editor, export_view, storage, styled_view, view - storage: atlas_doc_format, editor, export_view, styled_view, view - editor: storage No other conversions are supported at the moment. Once a conversion is completed, it will be available for 5 minutes at the result endpoint. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: If request specifies 'contentIdContext', 'View' permission for the space, and permission to view the content.

Get asynchronously converted content body from the id or the current status of the task.

Returns the asynchronous content body for the corresponding id if the task is complete or returns the status of the task. After the task is completed, the result can be obtained for 5 minutes, or until an identical conversion request is made again, with allowCache query param set to false. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: If request specifies 'contentIdContext', 'View' permission for the space, and permission to view the content.

Get asynchronous content body conversion task result in bulk

Returns the content body for the corresponding `asyncId` of a completed conversion task. If the task is not completed, the task status is returned instead. Once a conversion task is completed, the result can be obtained for up to 5 minutes, or until an identical conversion request is made again with the `allowCache` parameter set to false. Note that there is a maximum limit of 50 task results per request to this endpoint. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Create asynchronous content body conversion tasks in bulk

Asynchronously converts content bodies from one format to another format in bulk. Use the Content body REST API to get the status of conversion tasks. Note that there is a maximum limit of 10 conversions per request to this endpoint. Supported conversions: - storage: editor, export_view, styled_view, view - editor: storage Once a conversion task is completed, it is available for polling for up to 5 minutes. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space, and permission to view the content if the `spaceKeyContext` or `contentIdContext` are present.

Get label information

Returns label information and a list of contents associated with the label. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission). Only contents that the user is permitted to view is returned.

Get groups

Returns all user groups. The returned groups are ordered alphabetically in ascending order by group name. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Create new user group

Creates a new user group. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: User must be a site admin.

Get group

Returns a user group for a given group id. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Delete user group

Delete user group. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: User must be a site admin.

Search groups by partial query

Get search results of groups by partial query provided.

Get group members

Returns the users that are members of a group. Use updated Get group API **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Add member to group by groupId

Adds a user as a member in a group represented by its groupId **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: User must be a site admin.

Remove member from group using group id

Remove user as a member from a group. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: User must be a site admin.

Get long-running tasks

Returns information about all active long-running tasks (e.g. space export), such as how long each task has been running and the percentage of each task that has completed. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get long-running task

Returns information about an active long-running task (e.g. space export), such as how long it has been running and the percentage of the task that has completed. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Find target entities related to a source entity

Returns all target entities that have a particular relationship to the source entity. Note, relationships are one way. For example, the following method finds all content that the current user has an 'ignore' relationship with: `GET /wiki/rest/api/relation/ignore/from/user/current/to/content` Note, 'ignore' is an example custom relationship type. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view both the target entity and source entity.

Find relationship from source to target

Find whether a particular type of relationship exists from a source entity to a target entity. Note, relationships are one way. For example, you can use this method to find whether the current user has selected a particular page as a favorite (i.e. 'save for later'): `GET /wiki/rest/api/relation/favourite/from/user/current/to/content/123` **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view both the target entity and source entity.

Create relationship

Creates a relationship between two entities (user, space, content). The 'favourite' relationship is supported by default, but you can use this method to create any type of relationship between two entities. For example, the following method creates a 'sibling' relationship between two pieces of content: `PUT /wiki/rest/api/relation/sibling/from/content/123/to/content/456` **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Delete relationship

Deletes a relationship between two entities (user, space, content). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission). For favourite relationships, the current user can only delete their own favourite relationships. A space administrator can delete favourite relationships for any user.

Find source entities related to a target entity

Returns all target entities that have a particular relationship to the source entity. Note, relationships are one way. For example, the following method finds all users that have a 'collaborator' relationship to a piece of content with an ID of '1234': `GET /wiki/rest/api/relation/collaborator/to/content/1234/from/user` Note, 'collaborator' is an example custom relationship type. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view both the target entity and source entity.

Search content

Searches for content using the [Confluence Query Language (CQL)](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/). **Note that CQL input queries submitted through the `/wiki/rest/api/search` endpoint no longer support user-specific fields like `user`, `user.fullname`, `user.accountid`, and `user.userkey`.** See this [deprecation notice](https://developer.atlassian.com/cloud/confluence/deprecation-notice-search-api/) for more details. Example initial call: ``` /wiki/rest/api/search?cql=type=page&limit=25 ``` Example response: ``` { "results": [ { ... }, { ... }, ... { ... } ], "limit": 25, "size": 25, ... "_links": { "base": "<url>", "context": "<url>", "next": "/rest/api/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg", "self": "<url>" } } ``` When additional results are available, returns `next` and `prev` URLs to retrieve them in subsequent calls. The URLs each contain a cursor that points to the appropriate set of results. Use `limit` to specify the number of results returned in each call. Example subsequent call (taken from example response): ``` /wiki/rest/api/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg ``` The response to this will have a `prev` URL similar to the `next` in the example response. If the expand query parameter is used with the `body.export_view` and/or `body.styled_view` properties, then the query limit parameter will be restricted to a maximum value of 25. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the entities. Note, only entities that the user has permission to view will be returned.

Search users

Searches for users using user-specific queries from the [Confluence Query Language (CQL)](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/). Note that CQL input queries submitted through the `/wiki/rest/api/search/user` endpoint only support user-specific fields like `user`, `user.fullname`, `user.accountid`, and `user.userkey`. Note that some user fields may be set to null depending on the user's privacy settings. These are: email, profilePicture, displayName, and timeZone.

Get look and feel settings

Returns the look and feel settings for the site or a single space. This includes attributes such as the color scheme, padding, and border radius. The look and feel settings for a space can be inherited from the global look and feel settings or provided by a theme. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: None

Select look and feel settings

Sets the look and feel settings to the default (global) settings, the custom settings, or the current theme's settings for a space. The custom and theme settings can only be selected if there is already a theme set for a space. Note, the default space settings are inherited from the current global settings. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Update look and feel settings

Updates the look and feel settings for the site or for a single space. If custom settings exist, they are updated. If no custom settings exist, then a set of custom settings is created. Note, if a theme is selected for a space, the space look and feel settings are provided by the theme and cannot be overridden. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Reset look and feel settings

Resets the custom look and feel settings for the site or a single space. This changes the values of the custom settings to be the same as the default settings. It does not change which settings (default or custom) are selected. Note, the default space settings are inherited from the current global settings. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Get system info

Returns the system information for the Confluence Cloud tenant. This information is used by Atlassian. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get themes

Returns all themes, not including the default theme. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: None

Get global theme

Returns the globally assigned theme. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: None

Get theme

Returns a theme. This includes information about the theme name, description, and icon. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: None

Create space

Creates a new space. Note, currently you cannot set space labels when creating a space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Create Space(s)' global permission.

Create private space

Creates a new space that is only visible to the creator. This method is the same as the [Create space](#api-space-post) method with permissions set to the current user only. Note, currently you cannot set space labels when creating a space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Create Space(s)' global permission.

Update space

Updates the name, description, or homepage of a space. - For security reasons, permissions cannot be updated via the API and must be changed via the user interface instead. - Currently you cannot set space labels when updating a space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Delete space

Permanently deletes a space without sending it to the trash. Note, the space will be deleted in a long running task. Therefore, the space may not be deleted yet when this method has returned. Clients should poll the status link that is returned in the response until the task completes. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Add new permission to space

Adds new permission to space. If the permission to be added is a group permission, the group can be identified by its group name or group id. Note: Apps cannot access this REST resource - including when utilizing user impersonation. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Add new custom content permission to space

Adds new custom content permission to space. If the permission to be added is a group permission, the group can be identified by its group name or group id. Note: Only apps can access this REST resource and only make changes to the respective app permissions. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Remove a space permission

Removes a space permission. Note that removing Read Space permission for a user or group will remove all the space permissions for that user or group. Note: Apps cannot access this REST resource - including when utilizing user impersonation. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Get space settings

Returns the settings of a space. Currently only the `routeOverrideEnabled` setting can be returned. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space.

Update space settings

Updates the settings for a space. Currently only the `routeOverrideEnabled` setting can be updated. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Get space suggested content states

Get content states that are suggested in the space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space.

Get content state settings for space

Get object describing whether content states are allowed at all, if custom content states or space content states are restricted, and a list of space content states allowed for the space if they are not restricted. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Get content in space with given content state

Returns all content that has the provided content state in a space. If the expand query parameter is used with the `body.export_view` and/or `body.styled_view` properties, then the query limit parameter will be restricted to a maximum value of 25. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space.

Get space theme

Returns the theme selected for a space, if one is set. If no space theme is set, this means that the space is inheriting the global look and feel settings. **[Permissions required](https://confluence.atlassian.com/x/_AozKw)**: ‘View’ permission for the space.

Set space theme

Sets the theme for a space. Note, if you want to reset the space theme to the default Confluence theme, use the 'Reset space theme' method instead of this method. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Reset space theme

Resets the space theme. This means that the space will inherit the global look and feel settings **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space.

Get space watchers

Returns a list of watchers of a space

Get Space Labels

Returns a list of labels associated with a space. Can provide a prefix as well as other filters to select different types of labels.

Add labels to a space

Adds labels to a piece of content. Does not modify the existing labels. Notes: - Labels can also be added when creating content ([Create content](#api-content-post)). - Labels can be updated when updating content ([Update content](#api-content-id-put)). This will delete the existing labels and replace them with the labels in the request. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to update the content.

Remove label from a space

Create content template

Creates a new content template. Note, blueprint templates cannot be created via the REST API. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space to create a space template or 'Confluence Administrator' global permission to create a global template.

Update content template

Updates a content template. Note, blueprint templates cannot be updated via the REST API. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space to update a space template or 'Confluence Administrator' global permission to update a global template.

Get blueprint templates

Returns all templates provided by blueprints. Use this method to retrieve all global blueprint templates or all blueprint templates in a space. Note, all global blueprints are inherited by each space. Space blueprints can be customised without affecting the global blueprints. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space to view blueprints for the space and permission to access the Confluence site ('Can use' global permission) to view global blueprints.

Get content templates

Returns all content templates. Use this method to retrieve all global content templates or all content templates in a space. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space to view space templates and permission to access the Confluence site ('Can use' global permission) to view global templates.

Get content template

Returns a content template. This includes information about template, like the name, the space or blueprint that the template is in, the body of the template, and more. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'View' permission for the space to view space templates and permission to access the Confluence site ('Can use' global permission) to view global templates.

Remove template

Deletes a template. This results in different actions depending on the type of template: - If the template is a content template, it is deleted. - If the template is a modified space-level blueprint template, it reverts to the template inherited from the global-level blueprint template. - If the template is a modified global-level blueprint template, it reverts to the default global-level blueprint template. Note, unmodified blueprint templates cannot be deleted. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Admin' permission for the space to delete a space template or 'Confluence Administrator' global permission to delete a global template.

Get user

Returns a user. This includes information about the user, such as the display name, account ID, profile picture, and more. The information returned may be restricted by the user's profile visibility settings. **Note:** to add, edit, or delete users in your organization, see the [user management REST API](/cloud/admin/user-management/about/). **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get anonymous user

Returns information about how anonymous users are represented, like the profile picture and display name. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get current user

Returns the currently logged-in user. This includes information about the user, like the display name, userKey, account ID, profile picture, and more. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get group memberships for user

Returns the groups that a user is a member of. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get multiple users using ids

Returns user details for the ids provided in the request. Currently this API returns a maximum of 100 results. If more than 100 account ids are passed in, then the first 100 will be returned. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get content watch status

Returns whether a user is watching a piece of content. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Add content watcher

Adds a user as a watcher to a piece of content. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. Note, you must add the `X-Atlassian-Token: no-check` header when making a request, as this operation has XSRF protection. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Remove content watcher

Removes a user as a watcher from a piece of content. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Get label watch status

Returns whether a user is watching a label. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Add label watcher

Adds a user as a watcher to a label. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. Note, you must add the `X-Atlassian-Token: no-check` header when making a request, as this operation has XSRF protection. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Remove label watcher

Removes a user as a watcher from a label. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Get space watch status

Returns whether a user is watching a space. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Add space watcher

Adds a user as a watcher to a space. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. Note, you must add the `X-Atlassian-Token: no-check` header when making a request, as this operation has XSRF protection. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Remove space watch

Removes a user as a watcher from a space. Choose the user by doing one of the following: - Specify a user via a query parameter: Use the `accountId` to identify the user. - Do not specify a user: The currently logged-in user will be used. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: 'Confluence Administrator' global permission if specifying a user, otherwise permission to access the Confluence site ('Can use' global permission).

Get user email address

Returns a user's email address regardless of the user’s profile visibility settings. For Connect apps, this API is only available to apps approved by Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603). For Forge apps, this API only supports access via asApp() requests. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get user email addresses in batch

Returns a user's email address regardless of the user’s profile visibility settings. For Connect apps, this API is only available to apps approved by Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603). For Forge apps, this API only supports access via asApp() requests. Any accounts which are not available will not be included in the result. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get modules

Returns all modules registered dynamically by the calling app. **[Permissions](#permissions) required:** Only Connect apps can make this request.

Register modules

Registers a list of modules. For the list of modules that support dynamic registration, see [Dynamic modules](https://developer.atlassian.com/cloud/confluence/dynamic-modules/). **[Permissions](#permissions) required:** Only Connect apps can make this request.

Remove modules

Remove all or a list of modules registered by the calling app. **[Permissions](#permissions) required:** Only Connect apps can make this request.

Get views

Get the total number of views a piece of content has.

Get viewers

Get the total number of distinct viewers a piece of content has.

Get user properties

Returns the properties for a user as list of property keys. For more information about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/). `Note`, these properties stored against a user are on a Confluence site level and not space/content level. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Get user property

Returns the property corresponding to `key` for a user. For more information about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/). `Note`, these properties stored against a user are on a Confluence site level and not space/content level. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Create user property by key

Creates a property for a user. For more information about user properties, see [Confluence entity properties] (https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/). `Note`, these properties stored against a user are on a Confluence site level and not space/content level. `Note:` the number of properties which could be created per app in a tenant for each user might be restricted by fixed system limits. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Update user property

Updates a property for the given user. Note, you cannot update the key of a user property, only the value. For more information about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/). `Note`, these properties stored against a user are on a Confluence site level and not space/content level. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).

Delete user property

Deletes a property for the given user. For more information about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/). `Note`, these properties stored against a user are on a Confluence site level and not space/content level. **[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to access the Confluence site ('Can use' global permission).
and 115 more

Generic HTTP Request

Every SaaS integration in Superblocks comes with a built in Generic HTTP Request Action. This is a powerful action you can use to call Confluence Cloud API endpoints not in the Superblocks supported actions.

To use this action simply add the method, path, required query parameters, and body for the desired endpoint.

info

Learn more about REST requests in Superblocks in our Building REST requests guide.

Generic HTTP Requests use the authentication set up and base URL you've configured for your integration, making it an easy for your team to extend Superblocks Integrations to meet their needs.