Skip to content

blogposts ​

add-blog-post-permissions ​

Add blog post permissions

Adds or replaces direct content permissions for the specified principals on a blog post. 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 blog post or administer the space.

POST /blogposts/{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 blog post.

Example:

bash
cf blogposts add-blog-post-permissions --id <id>

create-blog-post ​

Create a blog post with storage format body

POST /blogposts

FlagTypeRequiredDescription
--bodystringNoBlog post body in storage format XML (required)
--space-idstringNoSpace ID to create blog post in (required)
--titlestringNoBlog post title (required)

Example:

bash
cf blogposts create-blog-post

create-property ​

Create content property for blog post

Creates a new property for a blogpost.

Permissions required: Permission to update the blog post.

POST /blogposts/{blogpost-id}/properties

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

Example:

bash
cf blogposts create-property --blogpost-id <blogpost-id>

delete-blog-post ​

Delete a blog post (moves to trash)

DELETE /blogposts/{id}

FlagTypeRequiredDescription
--idstringNoBlog post ID to delete (required)

Example:

bash
cf blogposts delete-blog-post

delete-blog-post-permissions ​

Delete blog post permissions

Deletes direct content permissions from a blog post. See DELETE /pages/{id}/permissions for filter semantics.

Permissions required: Permission to edit the blog post or administer the space.

DELETE /blogposts/{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 blog post.
--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 blogposts delete-blog-post-permissions --id <id>

delete-property-by-id ​

Delete content property for blogpost by id

Deletes a content property for a blogpost by its id.

Permissions required: Permission to edit the blog post.

DELETE /blogposts/{blogpost-id}/properties/{property-id}

FlagTypeRequiredDescription
--blogpost-idstringYesThe ID of the blog post the property belongs to.
--property-idstringYesThe ID of the property to be deleted.

Example:

bash
cf blogposts delete-property-by-id --blogpost-id <blogpost-id> --property-id <property-id>

get-attachments ​

Get attachments for blog post

Returns the attachments of specific blog post. 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 blog post and its corresponding space.

GET /blogposts/{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 blog post 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 blogposts get-attachments --id <id>

get-blog-post-by-id ​

Get blog post by ID with storage body

GET /blogposts/{id}

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

Example:

bash
cf blogposts get-blog-post-by-id

get-blog-post-classification-level ​

Get blog post classification level

Returns the classification level for a specific blog post.

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

GET /blogposts/{id}/classification-level

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

Example:

bash
cf blogposts get-blog-post-classification-level --id <id>

get-blog-post-footer-comments ​

Get footer comments for blog post

Returns the root footer comments of specific blog post. 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 blog post and its corresponding space.

GET /blogposts/{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 blog post 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 blogposts get-blog-post-footer-comments --id <id>

get-blog-post-inline-comments ​

Get inline comments for blog post

Returns the root inline comments of specific blog post. 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 blog post and its corresponding space.

GET /blogposts/{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 blog post 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 blogposts get-blog-post-inline-comments --id <id>

get-blog-post-labels ​

Get labels for blog post

Returns the labels of specific blog post. 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 blog post and its corresponding space. Only labels that the user has permission to view will be returned.

GET /blogposts/{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 blog post 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 blogposts get-blog-post-labels --id <id>

get-blog-post-like-count ​

Get like count for blog post

Returns the count of likes of specific blog post.

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

GET /blogposts/{id}/likes/count

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

Example:

bash
cf blogposts get-blog-post-like-count --id <id>

get-blog-post-like-users ​

Get account IDs of likes for blog post

Returns the account IDs of likes of specific blog post.

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

GET /blogposts/{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 blog post for which account IDs 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 blogposts get-blog-post-like-users --id <id>

get-blog-post-operations ​

Get permitted operations for blog post

Returns the permitted operations on specific blog post.

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

GET /blogposts/{id}/operations

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

Example:

bash
cf blogposts get-blog-post-operations --id <id>

get-blog-post-permissions ​

Get blog post permissions

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

Permissions required: Permission to view the blog post.

GET /blogposts/{id}/permissions

FlagTypeRequiredDescription
--cursorstringNoOpaque cursor for pagination. Use the value from the previous response's _links.next.
--idstringYesThe ID of the blog post.
--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 blogposts get-blog-post-permissions --id <id>

get-blog-post-restriction-state ​

Get blog post restriction state

Returns the restriction state of a blog post.

Permissions required: Permission to view the blog post.

GET /blogposts/{id}/restriction-state

FlagTypeRequiredDescription
--idstringYesThe ID of the blog post.

Example:

bash
cf blogposts get-blog-post-restriction-state --id <id>

get-blog-post-version-details ​

Get version details for blog post version

Retrieves version details for the specified blog post and version number.

Permissions required: Permission to view the blog post.

GET /blogposts/{blogpost-id}/versions/{version-number}

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

Example:

bash
cf blogposts get-blog-post-version-details --blogpost-id <blogpost-id> --version-number <version-number>

get-blog-post-versions ​

Get blog post versions

Returns the versions of specific blog post.

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

GET /blogposts/{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 blog post to be queried for its versions. If you don't know the blog post ID, use Get blog posts 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 blogposts get-blog-post-versions --id <id>

get-blog-posts ​

List blog posts in a space

GET /blogposts

FlagTypeRequiredDescription
--space-idstringNoFilter blog posts by space ID

Example:

bash
cf blogposts get-blog-posts

get-content-properties ​

Get content properties for blog post

Retrieves all Content Properties tied to a specified blog post.

Permissions required: Permission to view the blog post.

GET /blogposts/{blogpost-id}/properties

FlagTypeRequiredDescription
--blogpost-idstringYesThe ID of the blog post for which content properties should be returned.
--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.
--sortstringNoUsed to sort the result by a particular field.

Example:

bash
cf blogposts get-content-properties --blogpost-id <blogpost-id>

get-content-properties-by-id ​

Get content property for blog post by id

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

Permissions required: Permission to view the blog post.

GET /blogposts/{blogpost-id}/properties/{property-id}

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

Example:

bash
cf blogposts get-content-properties-by-id --blogpost-id <blogpost-id> --property-id <property-id>

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

Get custom content by type in blog post

Returns all custom content for a given type within a given blogpost. 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 (blog post), and the corresponding space.

GET /blogposts/{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 blog post 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 blogposts get-custom-content-by-type-in-blog-post --id <id>

post-blog-post-classification-level ​

Reset blog post classification level

Resets the classification level for a specific blog post for the space
default classification level.

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

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

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

Example:

bash
cf blogposts post-blog-post-classification-level --id <id>

post-redact-blog ​

Redact Content in a Confluence Blog Post

Redacts sensitive content in a Confluence blog post 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 /blogposts/{id}/redact

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

Example:

bash
cf blogposts post-redact-blog --id <id>

put-blog-post-classification-level ​

Update blog post classification level

Updates the classification level for a specific blog post.

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

PUT /blogposts/{id}/classification-level

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

Example:

bash
cf blogposts put-blog-post-classification-level --id <id>

set-blog-post-permissions ​

Set blog post permissions

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

Permissions required: Permission to edit the blog post or administer the space.

PUT /blogposts/{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 blog post.

Example:

bash
cf blogposts set-blog-post-permissions --id <id>

set-blog-post-restriction-state ​

Set blog post restriction state

Sets the restriction state of a blog post.

Permissions required: Permission to edit the blog post or administer the space.

PUT /blogposts/{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 blog post.

Example:

bash
cf blogposts set-blog-post-restriction-state --id <id>

update-blog-post ​

Update a blog post with automatic version increment

PUT /blogposts/{id}

FlagTypeRequiredDescription
--bodystringNoBlog post body in storage format XML (required)
--idstringNoBlog post ID to update (required)
--titlestringNoBlog post title (required)

Example:

bash
cf blogposts update-blog-post

update-property-by-id ​

Update content property for blog post by id

Update a content property for blog post by its id.

Permissions required: Permission to edit the blog post.

PUT /blogposts/{blogpost-id}/properties/{property-id}

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

Example:

bash
cf blogposts update-property-by-id --blogpost-id <blogpost-id> --property-id <property-id>