Skip to content

pages ​

add-permissions ​

Add page permissions

Adds or replaces direct content permissions for the specified principals on a page. Permissions for other principals are preserved; use PUT to replace all permissions at once.

A principal can hold only one read or update permission. Adding read for a principal that currently has update downgrades that principal to read; adding update upgrades them. If the same request contains both operations for a principal, update takes precedence.

Reasserting a principal's existing permission is idempotent and returns a successful response without creating a duplicate entry.

Permissions required: Permission to edit the page or administer the space.

POST /pages/{id}/permissions

FlagTypeRequiredDescription
--allow-self-lockoutstringNoIf false (default), the request is rejected when it would remove the calling user's own edit access.
Set to true to allow the operation even when it locks out the caller.
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page.

Example:

bash
cf pages add-permissions --id <id>

create ​

Create a page with storage format body

POST /pages

FlagTypeRequiredDescription
--bodystringNoPage body in storage format XML (required)
--parent-idstringNoParent page ID (optional)
--space-idstringNoSpace ID to create page in (required)
--titlestringNoPage title (required)

Example:

bash
cf pages create

create-property ​

Create content property for page

Creates a new content property for a page.

Permissions required: Permission to update the page.

POST /pages/{page-id}/properties

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--page-idstringYesThe ID of the page to create a property for.

Example:

bash
cf pages create-property --page-id <page-id>

delete ​

Delete a page (moves to trash)

DELETE /pages/{id}

FlagTypeRequiredDescription
--idstringNoPage ID to delete (required)

Example:

bash
cf pages delete

delete-permissions ​

Delete page permissions

Deletes direct content permissions from a page. Filters narrow the deletion scope; omitting all filters deletes all direct permissions.

The following filter combinations are supported:

  • No filters: deletes all direct permissions.
  • principal-type + principal-id: deletes the principal's direct read or update permission.
  • operation + principal-type + principal-id: deletes the permission only when its operation matches.

Providing operation without principal-type/principal-id, or providing only one of principal-type/principal-id, returns a 400 error.

Permissions required: Permission to edit the page or administer the space.

DELETE /pages/{id}/permissions

FlagTypeRequiredDescription
--allow-self-lockoutstringNoIf false (default), the request is rejected when it would remove the calling user's own edit access.
Set to true to allow the operation even when it locks out the caller.
--idstringYesThe ID of the page.
--operationstringNoFilter by operation. Must be provided together with principal-type and principal-id.
--principal-idstringNoFilter by principal ID. Must be provided together with principal-type.
--principal-typestringNoFilter by principal type. Must be provided together with principal-id.

Example:

bash
cf pages delete-permissions --id <id>

delete-property-by-id ​

Delete content property for page by id

Deletes a content property for a page by its id.

Permissions required: Permission to edit the page.

DELETE /pages/{page-id}/properties/{property-id}

FlagTypeRequiredDescription
--page-idstringYesThe ID of the page the property belongs to.
--property-idstringYesThe ID of the property to be deleted.

Example:

bash
cf pages delete-property-by-id --page-id <page-id> --property-id <property-id>

get ​

List pages in a space

GET /pages

FlagTypeRequiredDescription
--space-idstringNoFilter pages by space ID

Example:

bash
cf pages get

get-ancestors ​

Get all ancestors of page

Returns all ancestors for a given page by ID in top-to-bottom order (that is, the highest ancestor is the first item in the response payload). The number of results is limited by the limit parameter and additional results (if available) will be available by calling this endpoint with the ID of first ancestor in the response payload.

This endpoint returns minimal information about each ancestor. To fetch more details, use a related endpoint, such as Get page by id.

Permissions required: Permission to access the Confluence site ('Can use' global permission).

GET /pages/{id}/ancestors

FlagTypeRequiredDescription
--idstringYesThe ID of the page.
--limitstringNoMaximum number of pages per result to return. If more results exist, call this endpoint with the highest ancestor's ID to fetch the next set of results.

Example:

bash
cf pages get-ancestors --id <id>

get-attachments ​

Get attachments for page

Returns the attachments of specific page. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to view the content of the page and its corresponding space.

GET /pages/{id}/attachments

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--filenamestringNoFilters on the file-name of attachments. Only one may be specified.
--idstringYesThe ID of the page for which attachments should be returned.
--limitstringNoMaximum number of attachments per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--mediaTypestringNoFilters on the mediaType of attachments. Only one may be specified.
--sortstringNoUsed to sort the result by a particular field.
--statusstringNoFilter the results to attachments based on their status. By default, current and archived are used.

Example:

bash
cf pages get-attachments --id <id>

get-by-id ​

Get page by ID with storage body

GET /pages/{id}

FlagTypeRequiredDescription
--body-formatstringNoBody format (default: storage)
--idstringNoPage ID (required)

Example:

bash
cf pages get-by-id

get-child ​

Get child pages

Returns all child pages for given page id. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to access the Confluence site ('Can use' global permission). Only pages that the user has permission to view will be returned.

GET /pages/{id}/children

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the parent page. If you don't know the page ID, use Get pages and filter the results.
--limitstringNoMaximum number of pages per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf pages get-child --id <id>

get-classification-level ​

Get page classification level

Returns the classification level for a specific page.

Permissions required: 'Permission to access the Confluence site ('Can use' global permission) and permission to view the page. 'Permission to edit the page is required if trying to view classification level for a draft.

GET /pages/{id}/classification-level

FlagTypeRequiredDescription
--idstringYesThe ID of the page for which classification level should be returned.
--statusstringNoStatus of page from which classification level will fetched.

Example:

bash
cf pages get-classification-level --id <id>

get-content-properties ​

Get content properties for page

Retrieves Content Properties tied to a specified page.

Permissions required: Permission to view the page.

GET /pages/{page-id}/properties

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--keystringNoFilters the response to return a specific content property with matching key (case sensitive).
--limitstringNoMaximum number of attachments per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--page-idstringYesThe ID of the page for which content properties should be returned.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf pages get-content-properties --page-id <page-id>

get-content-properties-by-id ​

Get content property for page by id

Retrieves a specific Content Property by ID that is attached to a specified page.

Permissions required: Permission to view the page.

GET /pages/{page-id}/properties/{property-id}

FlagTypeRequiredDescription
--page-idstringYesThe ID of the page for which content properties should be returned.
--property-idstringYesThe ID of the content property being requested.

Example:

bash
cf pages get-content-properties-by-id --page-id <page-id> --property-id <property-id>

get-custom-content-by-type-in ​

Get custom content by type in page

Returns all custom content for a given type within a given page. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to view the custom content, the container of the custom content (page), and the corresponding space.

GET /pages/{id}/custom-content

FlagTypeRequiredDescription
--body-formatstringNoThe content format types to be returned in the body field of the response. If available, the representation will be available under a response field of the same name under the body field.

Note: If the custom content body type is storage, the storage and atlas_doc_format body formats are able to be returned. If the custom content body type is raw, only the raw body format is able to be returned. | | --cursor | string | No | Used for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results. | | --id | string | Yes | The ID of the page for which custom content should be returned. | | --limit | string | No | Maximum number of pages per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results. | | --sort | string | No | Used to sort the result by a particular field. | | --type | string | No | The type of custom content being requested. See: https://developer.atlassian.com/cloud/confluence/custom-content/ for additional details on custom content. |

Example:

bash
cf pages get-custom-content-by-type-in --id <id>

get-descendants ​

Get descendants of page

Returns descendants in the content tree for a given page by ID in top-to-bottom order (that is, the highest descendant is the first item in the response payload). The number of results is limited by the limit parameter and additional results (if available) will be available by calling this endpoint with the cursor in the response payload. There is also a depth parameter specifying depth of descendants to be fetched.

The following types of content will be returned:

  • Database
  • Embed
  • Folder
  • Page
  • Whiteboard

This endpoint returns minimal information about each descendant. To fetch more details, use a related endpoint based on the content type, such as:

Permissions required: Permission to access the Confluence site ('Can use' global permission). Permission to view the page and its corresponding space

GET /pages/{id}/descendants

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--depthstringNoMaximum depth of descendants to return. If more results are required, use the endpoint corresponding to the content type of the deepest descendant to fetch more descendants.
--idstringYesThe ID of the page.
--limitstringNoMaximum number of items per result to return. If more results exist, call the endpoint with the cursor to fetch the next set of results.

Example:

bash
cf pages get-descendants --id <id>

get-direct-children ​

Get direct children of a page

Returns all children for given page id in the content tree. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

The following types of content will be returned:

  • Database
  • Embed
  • Folder
  • Page
  • Whiteboard

This endpoint returns minimal information about each child. To fetch more details, use a related endpoint based on the content type, such as:

Permissions required: Permission to access the Confluence site ('Can use' global permission). Only content that the user has permission to view will be returned.

GET /pages/{id}/direct-children

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the parent page.
--limitstringNoMaximum number of items per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf pages get-direct-children --id <id>

Get footer comments for page

Returns the root footer comments of specific page. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to view the content of the page and its corresponding space.

GET /pages/{id}/footer-comments

FlagTypeRequiredDescription
--body-formatstringNoThe content format type to be returned in the body field of the response. If available, the representation will be available under a response field of the same name under the body field.
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the page for which footer comments should be returned.
--limitstringNoMaximum number of footer comments per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--sortstringNoUsed to sort the result by a particular field.
--statusstringNoFilter the footer comment being retrieved by its status.

Example:

bash
cf pages get-footer-comments --id <id>

get-inline-comments ​

Get inline comments for page

Returns the root inline comments of specific page. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to view the content of the page and its corresponding space.

GET /pages/{id}/inline-comments

FlagTypeRequiredDescription
--body-formatstringNoThe content format type to be returned in the body field of the response. If available, the representation will be available under a response field of the same name under the body field.
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the page for which inline comments should be returned.
--limitstringNoMaximum number of inline comments per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--resolution-statusstringNoFilter the inline comment being retrieved by its resolution status.
--sortstringNoUsed to sort the result by a particular field.
--statusstringNoFilter the inline comment being retrieved by its status.

Example:

bash
cf pages get-inline-comments --id <id>

get-labels ​

Get labels for page

Returns the labels of specific page. The number of results is limited by the limit parameter and additional results (if available) will be available through the next URL present in the Link response header.

Permissions required: Permission to view the content of the page and its corresponding space. Only labels that the user has permission to view will be returned.

GET /pages/{id}/labels

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the page for which labels should be returned.
--limitstringNoMaximum number of labels per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--prefixstringNoFilter the results to labels based on their prefix.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf pages get-labels --id <id>

get-like-count ​

Get like count for page

Returns the count of likes of specific page.

Permissions required: Permission to view the content of the page and its corresponding space.

GET /pages/{id}/likes/count

FlagTypeRequiredDescription
--idstringYesThe ID of the page for which like count should be returned.

Example:

bash
cf pages get-like-count --id <id>

get-like-users ​

Get account IDs of likes for page

Returns the account IDs of likes of specific page.

Permissions required: Permission to view the content of the page and its corresponding space.

GET /pages/{id}/likes/users

FlagTypeRequiredDescription
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the page for which like count should be returned.
--limitstringNoMaximum number of account IDs per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.

Example:

bash
cf pages get-like-users --id <id>

get-operations ​

Get permitted operations for page

Returns the permitted operations on specific page.

Permissions required: Permission to view the parent content of the page and its corresponding space.

GET /pages/{id}/operations

FlagTypeRequiredDescription
--idstringYesThe ID of the page for which operations should be returned.

Example:

bash
cf pages get-operations --id <id>

get-permissions ​

Get page permissions

Returns the direct content permissions on a page with optional filtering by operation, principal-type, and principal-id. Results are cursor-paginated (max 250 per page).

Permissions required: Permission to view the page.

GET /pages/{id}/permissions

FlagTypeRequiredDescription
--cursorstringNoOpaque cursor for pagination. Use the value from the previous response's _links.next.
--idstringYesThe ID of the page.
--limitstringNoMaximum number of permission entries to return. Must be between 1 and 250.
--operationstringNoFilter by operation (read or update).
--principal-idstringNoFilter by principal ID. Must be provided together with principal-type.
--principal-typestringNoFilter by principal type (user or group). May be used without principal-id to return all permissions for that type.

Example:

bash
cf pages get-permissions --id <id>

get-restriction-state ​

Get page restriction state

Returns the restriction state of a page.

Permissions required: Permission to view the page.

GET /pages/{id}/restriction-state

FlagTypeRequiredDescription
--idstringYesThe ID of the page.

Example:

bash
cf pages get-restriction-state --id <id>

get-version-details ​

Get version details for page version

Retrieves version details for the specified page and version number.

Permissions required: Permission to view the page.

GET /pages/{page-id}/versions/{version-number}

FlagTypeRequiredDescription
--page-idstringYesThe ID of the page for which version details should be returned.
--version-numberstringYesThe version number of the page to be returned.

Example:

bash
cf pages get-version-details --page-id <page-id> --version-number <version-number>

get-versions ​

Get page versions

Returns the versions of specific page.

Permissions required: Permission to view the page and its corresponding space.

GET /pages/{id}/versions

FlagTypeRequiredDescription
--body-formatstringNoThe content format types to be returned in the body field of the response. If available, the representation will be available under a response field of the same name under the body field.
--cursorstringNoUsed for pagination, this opaque cursor will be returned in the next URL in the Link response header. Use the relative URL in the Link header to retrieve the next set of results.
--idstringYesThe ID of the page to be queried for its versions. If you don't know the page ID, use Get pages and filter the results.
--limitstringNoMaximum number of versions per result to return. If more results exist, use the Link header to retrieve a relative URL that will return the next set of results.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf pages get-versions --id <id>

post-classification-level ​

Reset page classification level

Resets the classification level for a specific page for the space default classification level.

Permissions required: 'Permission to access the Confluence site ('Can use' global permission) and permission to view the page.

POST /pages/{id}/classification-level/reset

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page for which classification level should be updated.

Example:

bash
cf pages post-classification-level --id <id>

post-redact ​

Redact Content in a Confluence Page

Redacts sensitive content in a Confluence page by replacing specified text ranges with redaction markers. Each redaction in the response includes a unique UUID for restoration (except code block redactions). The response metadata items maintain the same order as the input redaction pointers, and completely overlapping redactions are merged into a single redaction with one UUID.

Note: This endpoint requires Atlassian Guard Premium.

POST /pages/{id}/redact

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page to redact content from.

Example:

bash
cf pages post-redact --id <id>

put-classification-level ​

Update page classification level

Updates the classification level for a specific page.

Permissions required: 'Permission to access the Confluence site ('Can use' global permission) and permission to edit the page.

PUT /pages/{id}/classification-level

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page for which classification level should be updated.

Example:

bash
cf pages put-classification-level --id <id>

set-permissions ​

Set page permissions

Replaces all direct content permissions on a page with the provided set. Any permissions not included in the request body are removed.

Permissions required: Permission to edit the page or administer the space.

PUT /pages/{id}/permissions

FlagTypeRequiredDescription
--allow-self-lockoutstringNoIf false (default), the request is rejected when it would remove the calling user's own edit access.
Set to true to allow the operation even when it locks out the caller.
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page.

Example:

bash
cf pages set-permissions --id <id>

set-restriction-state ​

Set page restriction state

Sets the restriction state of a page.

Permissions required: Permission to edit the page or administer the space.

PUT /pages/{id}/restriction-state

FlagTypeRequiredDescription
--allow-self-lockoutstringNoIf false (default), the request is rejected when it would remove the calling user's own edit access.
Set to true to allow the operation even when it locks out the caller.
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page.

Example:

bash
cf pages set-restriction-state --id <id>

update ​

Update a page with automatic version increment

PUT /pages/{id}

FlagTypeRequiredDescription
--bodystringNoPage body in storage format XML (required)
--idstringNoPage ID to update (required)
--titlestringNoPage title (required)

Example:

bash
cf pages update

update-property-by-id ​

Update content property for page by id

Update a content property for a page by its id.

Permissions required: Permission to edit the page.

PUT /pages/{page-id}/properties/{property-id}

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--page-idstringYesThe ID of the page the property belongs to.
--property-idstringYesThe ID of the property to be updated.

Example:

bash
cf pages update-property-by-id --page-id <page-id> --property-id <property-id>

update-title ​

Update page title

Updates the title of a specified page.

Permissions required: Permission to view the page and its corresponding space. Permission to update pages in the space.

PUT /pages/{id}/title

FlagTypeRequiredDescription
--bodystringNorequest body (JSON string, @file, or - for stdin)
--idstringYesThe ID of the page to be updated. If you don't know the page ID, use Get Pages and filter the results

Example:

bash
cf pages update-title --id <id>