openapi: 3.1.0 info: title: Atlassian Admin Account Content API description: The Atlassian Admin API provides programmatic access to manage Atlassian organizations, users, domains, policies, and events. It enables administrators to automate organization management tasks, integrate with identity providers, and ensure appropriate access to Atlassian products. version: 1.0.0 contact: name: Atlassian Developer url: https://developer.atlassian.com/cloud/admin/ license: name: Atlassian Developer Terms url: https://developer.atlassian.com/platform/marketplace/atlassian-developer-terms/ x-logo: url: https://wac-cdn.atlassian.com/assets/img/favicons/atlassian/favicon.png servers: - url: https://api.atlassian.com description: Atlassian Cloud API security: - bearerAuth: [] - oauth2: [] tags: - name: Content paths: /repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri: get: tags: - Content summary: Atlassian Get Cache Content Uri description: This API operation retrieves a temporary content URI for accessing a specific pipeline cache in a Bitbucket repository. By providing the workspace ID, repository slug, and cache UUID as path parameters, you can obtain a pre-signed URL that allows direct access to download the cached content. This is useful for retrieving build artifacts, dependencies, or other cached data that was stored during previous pipeline executions, enabling faster build times by reusing previously downloaded or generated files. The returned URI is typically time-limited and provides secure, temporary access to the cache content without requiring additional authentication once generated. operationId: getCacheContentUri parameters: - name: workspace description: The account. required: true in: path schema: type: string - name: repo_slug description: The repository. required: true in: path schema: type: string - name: cache_uuid description: The UUID of the cache. required: true in: path schema: type: string responses: '200': description: The cache content uri. content: application/json: schema: $ref: '#/components/schemas/pipeline_cache_content_uri' examples: pipeline-cache-content-uri: $ref: '#/components/examples/pipeline-cache-content-uri' '404': description: The workspace, repository or cache_uuid with given UUID was not found. content: application/json: schema: $ref: '#/components/schemas/error' x-atlassian-oauth2-scopes: - state: Current scheme: oauth2 scopes: - read:pipeline:bitbucket security: - oauth2: - pipeline - basic: [] - api_key: [] x-api-evangelist-processing: WriteDescription: true ChooseTags: true GenerateExampleFromOperationResponseSchema: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/search: get: tags: - Content summary: Atlassian Search Content by Cql description: This API operation allows you to search for Confluence content using the Confluence Query Language (CQL), providing a powerful and flexible way to retrieve pages, blog posts, attachments, and other content types based on specific criteria. By sending a GET request to the /wiki/rest/api/content/search endpoint with a CQL query string parameter, you can filter content by various attributes such as type, space, creator, creation date, labels, title text, or any combination of these conditions. The operation returns a paginated list of content objects matching your search criteria, including metadata like content IDs, titles, types, and links, making it useful for building custom dashboards, reports, or integrations that need to locate and retrieve specific Confluence content programmatically. operationId: searchContentByCql parameters: - name: cql in: query description: The CQL string that is used to find the requested content. required: true schema: type: string - name: cqlcontext in: query description: 'The space, content, and content status to execute the search against. Specify this as an object with the following properties: - `spaceKey` Key of the space to search against. Optional. - `contentId` ID of the content to search against. Optional. Must be in the space spacified by `spaceKey`. - `contentStatuses` Content statuses to search against. Optional.' schema: type: string - $ref: '#/components/parameters/contentExpand' - name: cursor in: query description: Pointer to a set of search results, returned as part of the `next` or `prev` URL from the previous search call. schema: type: string - name: limit in: query description: 'The maximum number of content objects to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 25 responses: '200': description: Returned if the requested list of content is returned. content: application/json: schema: $ref: '#/components/schemas/ContentArray' '400': description: Returned if the CQL is invalid or missing. content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} security: - basicAuth: [] - oAuthDefinitions: - search:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - search:confluence - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}: get: tags: - Content summary: Atlassian Get Content by Id deprecated: true description: The Get Content By Id operation retrieves a single piece of content from Atlassian Confluence using its unique identifier. This REST API endpoint accepts the content ID as a path parameter and returns detailed information about the specified content, including its type (page, blog post, comment, etc.), title, body, version information, space details, metadata, and associated properties. The response can be customized using query parameters to expand specific fields, limit the body representation format, or filter the returned data. This operation requires appropriate read permissions for the content being accessed and is commonly used to fetch complete content details for display, editing, or integration purposes in both native Confluence applications and third-party tools that need to programmatically access wiki content. operationId: getContentById parameters: - name: id in: path description: 'The ID of the content to be returned. If you don''t know the content ID, use [Get content](#api-content-get) and filter the results.' required: true schema: type: string - name: status in: query description: 'Filter the results to a set of content based on their status. If set to `any`, content with any status is returned. Note, the `historical` status is currently not supported.' style: form explode: true schema: type: array items: type: string default: - current enum: - current - trashed - deleted - historical - draft - any - name: version in: query description: The version number of the content to be returned. schema: type: integer format: int32 - name: embeddedContentRender in: query description: 'The version of embedded content (e.g. attachments) to render. - current renders the latest version of the embedded content. - version-at-save renders the version of the embedded content at the time of save.' schema: type: string default: current enum: - current - version-at-save - $ref: '#/components/parameters/contentExpandWithSubExpandLimit' - name: trigger in: query description: 'If set to `viewed`, the request will trigger a ''viewed'' event for the content. When this event is triggered, the page/blogpost will appear on the ''Recently visited'' tab of the user''s Confluence dashboard.' schema: type: string enum: - viewed responses: '200': description: Returned if the requested content is returned. content: application/json: schema: $ref: '#/components/schemas/Content' '400': description: 'Returned if; - The content id is invalid. - The sub-expansions limit exceeds.' content: {} '401': description: Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the calling user can not view the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The requesting user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Update Content deprecated: true description: This API operation updates an existing piece of content in Atlassian Confluence by sending a PUT request to the specified content ID endpoint. It allows you to modify various aspects of content such as the title, body, version number, and metadata of pages, blog posts, or other content types within your Confluence instance. The operation requires you to provide the complete updated content object in the request body, including mandatory fields like version information to ensure proper conflict handling and version tracking. You must have appropriate permissions to edit the content, and the version number must be incremented from the current version to successfully complete the update. This operation is commonly used for programmatically editing wiki pages, updating documentation, or integrating Confluence content management into automated workflows. operationId: updateContent parameters: - name: id in: path description: The ID of the content to be updated. required: true schema: type: string - name: status in: query description: 'The updated status of the content. Use this parameter to change the status of a piece of content without passing the entire request body.' schema: type: string default: current enum: - current - trashed - deleted - historical - draft - name: conflictPolicy in: query description: 'The action that should be taken when conflicts are discovered. Only used when publishing a draft page.' schema: type: string default: abort enum: - abort requestBody: description: The updated content. content: application/json: schema: $ref: '#/components/schemas/ContentUpdate' required: true responses: '200': description: Returned if the content is updated. content: application/json: schema: $ref: '#/components/schemas/Content' '400': description: 'Returned if; - The request body is missing required parameters (version, type, title). - The type property has been set incorrectly.' content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '403': description: Returned if the calling user can not update the content with specified id. content: {} '404': description: 'Returned if a draft with current content cannot be found when setting the status parameter to draft and the content status is current.' content: {} '409': description: 'Returned if; - The page is a draft (draft pages cannot be updated). - The version property has not been set correctly for the content type.' content: {} '501': description: 'Indicates that the server does not support the functionality needed to serve the request. For example, - trying to publish edit draft and passing content status as historical.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: content x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Delete Content deprecated: true description: Deletes a piece of content from Confluence by specifying its unique identifier in the URL path. When executed, this operation permanently removes the content item, which can include pages, blog posts, comments, or attachments, from the Confluence space. The deletion is typically irreversible through the API, though Confluence may retain the content in trash for a limited time depending on instance configuration. This endpoint requires appropriate permissions, as users must have delete rights for the specific content being removed. The operation accepts the content ID as a path parameter and may support additional query parameters to control deletion behavior, such as whether to purge the content immediately or move it to trash. operationId: deleteContent parameters: - name: id in: path description: The ID of the content to be deleted. required: true schema: type: string - name: status in: query description: Set this to `trashed`, if the content's status is `trashed` and you want to purge it. schema: type: string responses: '204': description: Returned if the content is successfully trashed or purged. content: {} '400': description: Returned if the content id is invalid. content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '403': description: Returned if the calling user can not delete the content with specified id. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The requesting user does not have permission to trash or purge the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - delete:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: DELETE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/child: get: tags: - Content summary: Atlassian Get Content Children deprecated: true description: This API operation retrieves the direct children of a specified Confluence content item by its ID. When called with a GET request to the endpoint, it returns a paginated list of child pages, comments, or attachments depending on the parent content type. The operation supports query parameters to filter results by child content type, expand additional properties, set pagination limits, and sort the returned children. This is commonly used to navigate the content hierarchy in Confluence, such as retrieving all sub-pages under a parent page or fetching comments associated with a blog post. operationId: getContentChildren parameters: - name: id in: path description: The ID of the content to be queried for its children. required: true schema: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the children to expand, where: - `attachment` returns all attachments for the content. - `comments` returns all comments for the content. - `page` returns all child pages of the content. - Custom content types that are provided by apps are also supported.' style: form explode: false schema: type: array items: type: string - name: parentVersion in: query description: 'The version of the parent content to retrieve children for. Currently, this only works for the latest version.' schema: type: integer format: int32 default: 0 responses: '200': description: Returned if the requested content children are returned. content: application/json: schema: $ref: '#/components/schemas/ContentChildren' '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/child/comment: get: tags: - Content summary: Atlassian Get Content Comments deprecated: true description: This API operation retrieves all comments that are children of a specific piece of content in Atlassian Confluence. By making a GET request to the endpoint with a content ID, you can fetch a paginated list of comments associated with that content, which may include inline comments, page comments, or footer comments. The response typically includes comment metadata such as the comment body, author information, creation date, modification history, and version details. This endpoint is useful for applications that need to display, analyze, or process user feedback and discussions related to Confluence pages, blog posts, or other content types. Optional query parameters can be used to expand specific fields, limit the number of results, or control pagination through the comment collection. operationId: getContentComments parameters: - name: id in: path description: The ID of the content to be queried for its comments. required: true schema: type: string - $ref: '#/components/parameters/contentExpand' - name: parentVersion in: query description: 'The version of the parent content to retrieve children for. Currently, this only works for the latest version.' schema: minimum: 0 type: integer format: int32 default: 0 - name: start in: query description: The starting index of the returned comments. schema: type: integer format: int32 - name: limit in: query description: 'The maximum number of comments to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 25 - name: location in: query description: 'The location of the comments in the page. Multiple locations can be specified. If no location is specified, comments from all locations are returned.' style: form explode: true schema: type: array items: type: string enum: - inline - footer - resolved - name: depth in: query description: 'Currently, this parameter is not used. Comments are returned at the root level only.' schema: type: string responses: '200': description: Returned if the requested comments are returned. content: application/json: schema: $ref: '#/components/schemas/ContentArray' '404': description: 'Returned if; - There is no parent content with the given ID. - The calling user does not have permission to view the parent content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/child/{type}: get: tags: - Content summary: Atlassian Get Content Children by Type deprecated: true description: This API operation retrieves child content of a specific type for a given Confluence page or content item. By specifying the parent content ID and the desired child type (such as page, comment, or attachment) in the URL path, the endpoint returns a paginated list of all child elements matching that type. This is useful for navigating content hierarchies, accessing page comments, retrieving attachments, or discovering child pages within a Confluence space structure. The response includes metadata about each child item along with pagination parameters for handling large result sets. operationId: getContentChildrenByType parameters: - name: id in: path description: The ID of the content to be queried for its children. required: true schema: type: string - name: type in: path description: The type of children to return. required: true schema: type: string - $ref: '#/components/parameters/contentExpand' - name: parentVersion in: query description: 'The version of the parent content to retrieve children for. Currently, this only works for the latest version.' schema: minimum: 0 type: integer format: int32 default: 0 - name: start in: query description: The starting index of the returned content. schema: type: integer format: int32 - name: limit in: query description: 'The maximum number of content to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 25 responses: '200': description: Returned if the requested content is returned. content: application/json: schema: $ref: '#/components/schemas/ContentArray' '400': description: 'Returned if the parent type and desired child content type are not compatible. Eg: Cannot find `page` children of a `blogpost`.' content: {} '404': description: 'Returned if: - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/descendant: get: tags: - Content summary: Atlassian Get Content Descendants description: This API operation retrieves all descendants of a specified Confluence content item by its ID. Descendants include all child pages, nested subpages, comments, and attachments that exist below the specified content in the content hierarchy tree. The endpoint returns a paginated list of content objects that are hierarchically related to the parent content, allowing developers to traverse and map the complete content structure beneath a given page or blog post. This is particularly useful for operations that need to work with entire content trees, such as exporting documentation sections, analyzing content relationships, or performing bulk operations on related pages. operationId: getContentDescendants parameters: - name: id in: path description: The ID of the content to be queried for its descendants. required: true schema: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the children to expand, where: - `attachment` returns all attachments for the content. - `comments` returns all comments for the content. - `page` returns all child pages of the content.' style: form explode: false schema: type: array items: type: string enum: - attachment - comment - page responses: '200': description: Returned if the requested descendants are returned. content: application/json: schema: $ref: '#/components/schemas/ContentChildren' '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/history: get: tags: - Content summary: Atlassian Get Content History deprecated: true description: This operation retrieves the version history and other historical metadata for a specific piece of Confluence content identified by its unique ID. When called, it returns information about who created and last modified the content, timestamps for these actions, version numbers, and potentially contributor details. This is useful for tracking changes, auditing content modifications, understanding content evolution over time, and displaying version information to users. The endpoint follows RESTful conventions and requires appropriate authentication and permissions to access the content's historical data. operationId: getContentHistory parameters: - name: id in: path description: The ID of the content to be queried for its history. required: true schema: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the content history to expand. Maximum sub-expansions allowed is `8`. - `lastUpdated` returns information about the most recent update of the content, including who updated it and when it was updated. - `previousVersion` returns information about the update prior to the current content update. For this method, it contains the same information as `lastUpdated`. - `contributors` returns all of the users who have contributed to the content. - `nextVersion` This parameter is not used for this method.' style: form explode: false schema: type: array items: type: string enum: - lastUpdated - previousVersion - contributors - nextVersion responses: '200': description: Returned if the requested content history is returned. content: application/json: schema: $ref: '#/components/schemas/ContentHistory' '400': description: Returned if sub-expansions limit exceeds. content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content.metadata:confluence - read:user:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/label: get: tags: - Content summary: Atlassian Get Labels for Content deprecated: true description: This API operation retrieves all labels that have been applied to a specific piece of Confluence content identified by its unique ID. When you make a GET request to this endpoint, it returns a collection of labels associated with the specified content, which can include both user-created labels and system-generated ones. Labels in Confluence are used for categorization, organization, and searchability of content such as pages, blog posts, and attachments. The response typically includes details about each label such as its name, prefix (if applicable), and ID, allowing developers to programmatically access and manage the tagging metadata of content within a Confluence space. operationId: getLabelsForContent parameters: - name: id in: path description: The ID of the content to be queried for its labels. required: true schema: type: string - name: prefix in: query description: 'Filters the results to labels with the specified prefix. If this parameter is not specified, then labels with any prefix will be returned. - `global` prefix is used by default when a user adds a label via the UI. - `my` prefix can be explicitly added by a user when adding a label via the UI, e.g. ''my:example-label''. Also, when a page is selected as a favourite, the ''my:favourite'' label is automatically added. - `team` can used when adding labels via [Add labels to content](#api-content-id-label-post) but is not used in the UI.' schema: type: string enum: - global - my - team - name: start in: query description: The starting index of the returned labels. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: 'The maximum number of labels to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 200 responses: '200': description: Returned if the requested labels are returned. content: application/json: schema: $ref: '#/components/schemas/LabelArray' '403': description: Returned if the calling user can view but not edit the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:label:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Content summary: Atlassian Add Labels to Content description: This API operation allows you to add one or more labels to a specific piece of Confluence content by making a POST request to the endpoint with the content's unique identifier. Labels are metadata tags that help organize, categorize, and improve the discoverability of pages, blog posts, and other content within Confluence. When calling this endpoint, you must provide the content ID in the URL path and include an array of label objects in the request body, specifying properties such as the label prefix (typically 'global') and the label name. The operation requires appropriate permissions to modify the target content, and upon successful execution, it returns the newly added labels along with their metadata. This functionality is commonly used for bulk tagging operations, automated content categorization workflows, or integrating external systems that need to apply consistent labeling schemes across Confluence spaces. operationId: addLabelsToContent parameters: - name: id in: path description: The ID of the content that will have labels added to it. required: true schema: type: string requestBody: description: The labels to add to the content. content: application/json: schema: oneOf: - $ref: '#/components/schemas/LabelCreateArray' - $ref: '#/components/schemas/LabelCreate' required: true responses: '200': description: Returned if the labels are added to the content. content: application/json: schema: $ref: '#/components/schemas/LabelArray' '400': description: 'Returned if; - The body contains labels with invalid characters or too many characters. - The body contains too many labels. - The target content would contain too many labels after the operation. - The calling user does not have permission to edit labels.' content: {} '403': description: Returned if the calling user can view but not edit the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:label:confluence - write:label:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Remove Label From Content Using Query Parameter description: This API operation removes a label from a specific piece of Confluence content by specifying the content ID in the URL path and the label name as a query parameter. When executed with a DELETE HTTP method, it allows users to untag or dissociate a previously applied label from a page, blog post, or other content item in Confluence. The operation requires appropriate permissions to modify labels on the target content and will return a success response once the label has been successfully removed from the specified content item. operationId: removeLabelFromContentUsingQueryParameter parameters: - name: id in: path description: The ID of the content that the label will be removed from. required: true schema: type: string - name: name in: query description: The name of the label to be removed. required: true schema: type: string responses: '204': description: Returned if the label is removed. The response body will be empty. content: {} '403': description: Returned if the calling user can view but not edit the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:label:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/label/{label}: delete: tags: - Content summary: Atlassian Remove Label From Content description: Removes a specific label from a Confluence content item identified by its content ID. This DELETE operation targets the endpoint /wiki/rest/api/content/{id}/label/{label} where {id} represents the unique identifier of the content (such as a page or blog post) and {label} is the name of the label to be removed. When executed successfully, the API removes the association between the specified label and the content, effectively unlabeling that content item. This operation is useful for content management workflows where labels are used for categorization, organization, or search purposes and need to be dynamically updated or removed. The operation requires appropriate permissions to modify labels on the target content and returns a success response when the label is successfully removed from the content item. operationId: removeLabelFromContent parameters: - name: id in: path description: The ID of the content that the label will be removed from. required: true schema: type: string - name: label in: path description: The name of the label to be removed. required: true schema: type: string responses: '204': description: Returned if the label is removed. The response body will be empty. content: {} '400': description: Returned if the label name has a "/" character. content: {} '403': description: Returned if the calling user can view but not edit the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:label:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/permission/check: post: tags: - Content summary: Atlassian Check Content Permissions description: 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. operationId: checkContentPermissions parameters: - name: id in: path description: The ID of the content to check permissions against. required: true schema: type: string requestBody: description: The content permission request. content: application/json: schema: $ref: '#/components/schemas/ContentPermissionRequest' required: true responses: '200': description: Returned if the permission check completed successfully content: application/json: schema: $ref: '#/components/schemas/PermissionCheckResponse' '400': description: 'Returned if; - If any of the required fields are missing. - If specified `subject` or `operation` is invalid.' content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '403': description: Returned if the user does not have permission perform the check. content: {} '404': description: Returned if there is no content with the given ID. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.permission x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.permission - scheme: oAuthDefinitions state: Beta scopes: - read:content.permission:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/property: get: tags: - Content summary: Atlassian Get Content Properties deprecated: true description: This API operation retrieves all properties associated with a specific Confluence content item identified by its unique ID. Properties are custom key-value pairs that can be attached to content for storing additional metadata or application-specific information. The endpoint returns a paginated list of property objects, each containing the property key, value, and version information. This is useful for applications that need to read custom data attached to pages, blog posts, or other Confluence content without modifying the content itself. Authentication is required to access this endpoint, and the user must have permission to view the specified content item. operationId: getContentProperties parameters: - name: id in: path description: The ID of the content to be queried for its properties. required: true schema: type: string - name: key in: query description: The key of the content property. explode: true schema: type: array items: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. By default, the `version` object is expanded. - `content` returns the content that the property is stored against. - `version` returns information about the version of the property, such as the version number, when it was created, etc.' style: form explode: false schema: type: array items: type: string enum: - content - version - name: start in: query description: The starting index of the returned properties. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: 'The maximum number of properties to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 10 responses: '200': description: Returned if the requested properties are returned. content: application/json: schema: $ref: '#/components/schemas/ContentPropertyArray' '404': description: 'Returned if; - There is no content with the given ID - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Content summary: Atlassian Create Content Property deprecated: true description: Creates a new content property for an existing Confluence content item identified by its ID. Content properties are custom key-value pairs that allow you to store additional metadata or configuration data associated with a specific piece of content such as a page, blog post, or attachment. The property must include a unique key within the scope of that content item and a value, which can be a simple string or a complex JSON object. This operation requires appropriate permissions to modify the specified content, and the property key must not already exist on that content item, otherwise the request will fail with a conflict error. operationId: createContentProperty parameters: - name: id in: path description: The ID of the content to add the property to. required: true schema: type: string requestBody: description: The content property to be created. content: application/json: schema: $ref: '#/components/schemas/ContentPropertyCreate' required: true responses: '200': description: Returned if the content property is created. content: application/json: schema: $ref: '#/components/schemas/ContentProperty' '400': description: 'Returned if; - The content already has a property with the given key. - The key is too long. - The key is empty.' content: {} '403': description: 'Returned if the user does not have permission to edit the content with the given ID.' content: {} '413': description: Returned if the value is too long. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - read:content.property:confluence - write:content.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/property/{key}: get: tags: - Content summary: Atlassian Get Content Property deprecated: true description: Returns a specific property from the content identified by the content ID and property key. Content properties are custom key-value pairs that can be attached to Confluence content to store additional metadata or application-specific information. This endpoint retrieves the value and details of a single property rather than listing all properties associated with the content. The property must exist on the specified content item, and the user must have permission to view the content to access its properties. The response includes the property key, value, and version information that can be useful for tracking changes or implementing optimistic locking when updating properties. operationId: getContentProperty parameters: - name: id in: path description: The ID of the content to be queried for the property. required: true schema: type: string - name: key in: path description: The key of the content property. required: true schema: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. By default, the `version` object is expanded. - `content` returns the content that the property is stored against. - `version` returns information about the version of the property, such as the version number, when it was created, etc.' style: form explode: false schema: type: array items: type: string enum: - content - version - name: status in: query description: 'Filter the results to a set of content based on their status. If set to `any`, content with any status is returned. By default it will fetch current and archived statuses `?status=current&status=archived`. All supported statuses - any - archived - current - deleted - draft - trashed' style: form explode: true schema: type: array items: type: string default: - current - archived enum: - any - archived - current - deleted - draft - trashed responses: '200': description: Returned if the content property is returned. content: application/json: schema: $ref: '#/components/schemas/ContentProperty' '404': description: 'Returned if; - The calling user does not have permission to view the content. - There is no content with the given ID. - There is no property with the given key.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Update Content Property deprecated: true description: Updates an existing content property in Atlassian Confluence by replacing its value with new data. This PUT endpoint requires both the content ID and property key to be specified in the URL path, allowing you to modify custom metadata or additional attributes attached to a specific piece of content such as a page, blog post, or attachment. The request body must contain the new property value along with its version number to ensure proper conflict handling and maintain data integrity. This operation is useful for storing application-specific data, custom attributes, or metadata alongside Confluence content without modifying the content itself, and it returns the updated property information upon successful completion. operationId: updateContentProperty parameters: - name: id in: path description: The ID of the content that the property belongs to. required: true schema: type: string - name: key in: path description: The key of the property. required: true schema: type: string requestBody: description: The content property being updated. content: application/json: schema: $ref: '#/components/schemas/ContentPropertyUpdate' required: true responses: '200': description: Returned if the content property is created. content: application/json: schema: $ref: '#/components/schemas/ContentProperty' '400': description: 'Returned if; - The content already a property with the given key. - The key is too long. - The key is empty.' content: {} '403': description: 'Returned if the user does not have permission to edit the content with the given ID.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - There is no property with the given key and the version number is not 1.' content: {} '409': description: Returned if the property version is not correctly incremented. content: {} '413': description: Returned if the value is too long. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - read:content.property:confluence - write:content.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Content summary: Atlassian Create Content Property for Key deprecated: true description: Creates a new content property for the specified content ID and property key in Confluence. This endpoint allows you to store custom metadata or additional information associated with a specific piece of content by posting a JSON payload containing the property value. The property is identified by a unique key and is scoped to the individual content item, making it useful for storing application-specific data, custom attributes, or extended metadata that needs to be associated with pages, blog posts, or other Confluence content types. If a property with the specified key already exists for that content, the operation will fail, requiring you to use an update operation instead. operationId: createContentPropertyForKey parameters: - name: id in: path description: The ID of the content to add the property to. required: true schema: type: string - name: key in: path description: The key of the content property. Required. required: true schema: type: string requestBody: description: The content property to be created. content: application/json: schema: $ref: '#/components/schemas/ContentPropertyCreateNoKey' required: true responses: '200': description: Returned if the content property is created. content: application/json: schema: $ref: '#/components/schemas/ContentProperty' '400': description: 'Returned if; - The content already has a property with the given key. - The key is too long. - The key is empty.' content: {} '403': description: 'Returned if the user does not have permission to edit the content with the given ID.' content: {} '413': description: Returned if the value is too long. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - read:content.property:confluence - write:content.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Delete Content Property deprecated: true description: The Delete Content Property operation removes a specific property from a Confluence content item by making a DELETE request to the endpoint with the content ID and property key as path parameters. This API call permanently deletes custom metadata or additional information that was previously attached to a page, blog post, or other content type, allowing developers to clean up obsolete properties or manage content attributes programmatically. Authentication is required, and successful deletion typically returns a 204 No Content response, while attempting to delete a non-existent property will result in a 404 error. operationId: deleteContentProperty parameters: - name: id in: path description: The ID of the content that the property belongs to. required: true schema: type: string - name: key in: path description: The key of the property. required: true schema: type: string responses: '204': description: Returned if the content property is deleted. content: {} '403': description: 'Returned if the user does not have permission to delete content with the given ID.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-props x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-props - scheme: oAuthDefinitions state: Beta scopes: - write:content.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/restriction/byOperation/{operationKey}/group/{groupName}: get: tags: - Content summary: Atlassian Get Content Restriction Status for Group deprecated: true description: 'The Atlassian Confluence Content API endpoint `/wiki/rest/api/content/{id}/restriction/byOperation/{operationKey}/group/{groupName}` using the GET method retrieves the restriction status for a specific group on a particular piece of content. This operation allows administrators and authorized users to check whether a designated group has restrictions applied for a specific operation (such as read or update) on content identified by its unique ID. The endpoint requires three path parameters: the content ID, the operation key that defines the type of action being restricted, and the group name for which to check restrictions. The response returns details about whether the specified group is restricted from performing the given operation on the content, helping manage fine-grained access control within Confluence spaces and pages.' operationId: getContentRestrictionStatusForGroup parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupName in: path description: 'The name of the group to be queried for whether the content restriction applies to it.' required: true schema: type: string responses: '200': description: 'Returns true if the content restriction applies to the group. The response will not return a response body.' content: {} '400': description: 'Returned if; - Group name is missing' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or group is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Add Group to Content Restriction deprecated: true description: 'The PUT operation on the Atlassian Confluence Content API endpoint `/wiki/rest/api/content/{id}/restriction/byOperation/{operationKey}/group/{groupName}` adds a specified group to an existing content restriction for a particular operation type. This allows administrators to grant a group access to perform specific operations (such as read, update, or delete) on restricted Confluence content by including the group in the restriction''s allowed list. The endpoint requires three path parameters: the content ID identifying the specific page or blog post, the operation key specifying the type of operation being restricted (like ''read'' or ''update''), and the group name identifying which user group should be granted access. This operation is essential for managing collaborative permissions and implementing fine-grained access control within Confluence spaces, enabling teams to secure sensitive content while selectively allowing specific groups to interact with it based on their operational needs.' operationId: addGroupToContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupName in: path description: The name of the group to add to the content restriction. required: true schema: type: string responses: '200': description: 'Returned if the group is added to the content restriction. The response body will be empty.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or group is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Remove Group From Content Restriction deprecated: true description: This API operation removes a specific group from content restrictions for a given operation on a Confluence page or blog post. By sending a DELETE request to this endpoint with the content ID, operation key (such as 'read' or 'update'), and group name, administrators can revoke the specified group's access permissions for that particular operation on the content. This is useful for managing granular access control when you need to remove a group's ability to perform specific actions on restricted content without affecting other groups or individual user restrictions that may be in place. operationId: removeGroupFromContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupName in: path description: The name of the group to remove from the content restriction. required: true schema: type: string responses: '200': description: 'Returned if the group is removed from the content restriction. The response body will be empty.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - The restriction to be deleted does not exist.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/restriction/byOperation/{operationKey}/byGroupId/{groupId}: get: tags: - Content summary: Atlassian Get Content Restriction Status for Group description: 'This API endpoint retrieves the restriction status for a specific group on a piece of Confluence content. It requires three path parameters: the content ID, an operation key (typically ''read'' or ''update''), and a group ID. When called, it returns information about whether the specified group has restrictions applied for the given operation on that content, helping administrators and developers understand access control configurations. This is useful for auditing permissions, validating security policies, or building custom permission management interfaces that need to check if a particular group''s access to content is restricted for specific operations.' operationId: getContentRestrictionStatusForGroup parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupId in: path description: 'The id of the group to be queried for whether the content restriction applies to it.' required: true schema: type: string responses: '200': description: 'Returns true if the content restriction applies to the group. The response will not return a response body.' content: {} '403': description: 'Returned if the calling user does not have permission to view the content.' content: {} '404': description: 'Returned if - There is no content with the given ID. - An invalid operation or group is specified. - Given groupId is blank or has invalid characters' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Add Group to Content Restriction description: 'This PUT operation adds a specified group to content restrictions for a particular operation on a Confluence page or blog post. The endpoint requires three path parameters: the content ID, an operation key (such as ''read'' or ''update''), and the group ID to be added to the restriction. When executed, it grants the specified group permission to perform the designated operation on the content, effectively managing fine-grained access control at the group level. This is useful for administrators who need to programmatically control which groups can view, edit, or otherwise interact with specific Confluence content while maintaining existing restrictions for other operations or groups.' operationId: addGroupToContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupId in: path description: The groupId of the group to add to the content restriction. required: true schema: type: string responses: '200': description: 'Returned if the group is added to the content restriction by Group Id. The response body will be empty.' content: {} '400': description: 'Returned if; - Group Id is not valid' content: {} '403': description: 'Returned if the calling user does not have permission to update the content.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or group id is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Remove Group From Content Restriction description: 'This API operation removes a specific group from content restrictions in Atlassian Confluence by deleting the association between a group and an operation-based restriction on a particular piece of content. It requires three path parameters: the content ID identifying the restricted content, the operationKey specifying the type of operation (such as read or update), and the groupId representing the group to be removed from the restriction. When executed successfully, this DELETE request revokes the specified group''s access permissions for the given operation on the content, effectively removing that group from the restriction list without affecting other groups or users who may still have restrictions or permissions on the same content.' operationId: removeGroupFromContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - name: groupId in: path description: The id of the group to remove from the content restriction. required: true schema: type: string responses: '200': description: 'Returned if the group is removed from the content restriction. The response body will be empty.' content: {} '400': description: Returned if given group id is blank content: {} '403': description: Returned if the calling user does not have permission to view the content. content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - The restriction to be deleted does not exist.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/restriction/byOperation/{operationKey}/user: get: tags: - Content summary: Atlassian Get Content Restriction Status for User description: Retrieves the restriction status for a specific user on a piece of Confluence content based on a given operation key. This endpoint allows you to check whether a particular user has access to perform a specific operation (such as read, update, or delete) on content identified by its ID. The operation key parameter specifies which type of operation restriction to check, while the request targets a specific user to determine if content restrictions apply to them. This is useful for administrators and developers who need to programmatically verify user permissions and content access controls within Confluence spaces, enabling them to enforce security policies and manage content visibility at a granular level. operationId: getContentRestrictionStatusForUser parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that is restricted. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: 'Return true if the content restriction applies to the user. The response body will be empty.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or user is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Add User to Content Restriction description: Updates content restrictions by adding a user to a specific operation-based restriction on a Confluence content item. This endpoint allows administrators to grant a particular user permission to perform a specified operation (such as 'read' or 'update') on restricted content by adding them to the allowlist for that operation. The request requires the content ID, the operation key (the type of restriction being modified), and the user details to be added. This is useful for managing granular access control on individual pages or blog posts when you need to give specific users access to restricted content without changing the broader space or content permissions. operationId: addUserToContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: 'Returned if the user is added to the content restriction. The response body will be empty.' content: {} '400': description: 'Returned if; - Provided restrictions are invalid' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or group is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Remove User From Content Restriction description: This API operation removes a specific user from content restrictions for a given operation type in Atlassian Confluence. By making a DELETE request to the endpoint with the content ID, operation key (such as 'read' or 'update'), and user account ID as parameters, administrators can revoke previously granted or denied permissions for that user on the specified content. This is useful for managing access control when a user's permissions need to be changed or when cleaning up outdated restrictions, effectively removing the user from the restriction list without affecting other users' permissions on the same content. operationId: removeUserFromContentRestriction parameters: - name: id in: path description: The ID of the content that the restriction applies to. required: true schema: type: string - name: operationKey in: path description: The operation that the restriction applies to. required: true schema: type: string enum: - read - update - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: 'Returned if the user is removed from the content restriction. The response body will be empty.' content: {} '404': description: 'Returned if; - There is no content with the given ID. - The calling user does not have permission to view the content. - An invalid operation or group is specified.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content.restriction:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/state: get: tags: - Content summary: Atlassian Get Content State description: This API operation retrieves the current state of a specific Confluence content item by its unique identifier. When called, it returns information about the content's workflow state, including details such as the state name, color coding, and any associated metadata that indicates where the content sits within its defined lifecycle or approval process. This is particularly useful for tracking content through editorial workflows, publication processes, or custom state management systems configured within Confluence, allowing developers and administrators to programmatically monitor and respond to content status changes. operationId: getContentState parameters: - name: id in: path description: The id of the content whose content state is of interest. required: true schema: type: string - name: status in: query description: Set status to one of [current,draft,archived]. Default value is current. schema: type: string default: current enum: - current - draft - archived responses: '200': description: Returned if permission allows viewing of content. content: application/json: schema: $ref: '#/components/schemas/ContentStateResponse' '401': description: Returned if the authentication credentials are incorrect or missing from the request. '403': description: Returned if user does not have content view permission. '404': description: Returned if the content with given id can not be found. security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK put: tags: - Content summary: Atlassian Set the Content State of Content and Publishes New Version of the Content description: This API operation allows you to set or update the content state of a specific Confluence page or blog post by its ID, which triggers the creation and publication of a new version of that content. When invoked via a PUT request to the endpoint, it accepts the content ID as a path parameter and the desired state information in the request body, then applies that state to the content item while automatically incrementing its version number. This is particularly useful for implementing workflow states, approval processes, or status tracking within Confluence content, as it not only changes the state metadata but also ensures the change is captured as a new version in the content's history, maintaining a complete audit trail of state transitions. operationId: setTheContentStateOfContentAndPublishesNewVersionOfTheContent requestBody: description: Content state fields for state. Pass in id for an existing state, or new name and color for best matching existing state, or new state if allowed in space. content: application/json: schema: $ref: '#/components/schemas/ContentStateRestInput' required: true parameters: - name: id in: path description: The Id of the content whose content state is to be set. required: true schema: type: string - name: status in: query description: 'Status of content onto which state will be placed. If draft, then draft state will change. If current, state will be placed onto a new version of the content with same body as previous version.' schema: type: string enum: - current - draft responses: '200': description: Returned if content state is set successfully. content: application/json: schema: $ref: '#/components/schemas/ContentStateResponse' '400': description: 'Invalid Name/Color, non-existent id of content state, or type of state desired is not allowed. Name must be less than or exactly 20 characters. Color must be a valid hex string. Status must be in [draft,current].' '401': description: Returned if the authentication credentials are incorrect or missing from the request. '403': description: Returned if user does not have content edit permission. '404': description: Returned if the content with given id can not be found. security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content:confluence - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Removes the Content State of Content and Publishes New Version description: This API operation removes the current content state from a specified Confluence page or blog post and automatically publishes a new version of that content. By sending a DELETE request to the endpoint with the content ID, the system clears any workflow or review state that was previously applied to the content item, essentially resetting it to a stateless condition. This action is irreversible and creates a new version in the content's history, allowing teams to track when state information was removed while ensuring the content returns to a neutral status that can be freely edited or assigned a new state as needed. operationId: removesTheContentStateOfContentAndPublishesNewVersion parameters: - name: id in: path description: The Id of the content whose content state is to be set. required: true schema: type: string - name: status in: query description: status of content state from which to delete state. Can be draft or archived schema: type: string enum: - current - draft responses: '200': description: Returned if content state is removed from content. content: application/json: schema: $ref: '#/components/schemas/ContentStateResponse' '401': description: Returned if the authentication credentials are incorrect or missing from the request. '403': description: Returned if user does not have content edit permission. '404': description: Returned if the content with given id can not be found. security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content:confluence - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/state/available: get: tags: - Content summary: Atlassian Gets Available Content States for Content description: This API endpoint retrieves all available content states that can be applied to a specific piece of content in Atlassian Confluence. By providing the content ID in the path parameter, users can query which workflow states or status options are accessible for that particular content item, helping them understand what state transitions are possible. This is useful for managing content workflows, determining valid state changes, and building integrations that need to programmatically manage content lifecycle states within Confluence spaces. operationId: getsAvailableContentStatesForContent parameters: - name: id in: path description: id of content to get available states for required: true schema: type: string responses: '200': description: Returned if the content is found and permission is valid. content: application/json: schema: $ref: '#/components/schemas/AvailableContentStates' '400': description: Invalid status for content. Must be in [current,draft,archived]. '401': description: Returned if the authentication credentials are incorrect or missing from the request. '403': description: Returned if user does not have content edit permission. '404': description: Returned if the content with given id can not be found. security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/version: get: tags: - Content summary: Atlassian Get Content Versions deprecated: true description: This API operation retrieves version history information for a specific piece of Confluence content identified by its unique ID. When called, it returns a paginated list of all versions associated with the content, including details such as version numbers, creation dates, authors, and version messages. The endpoint supports query parameters to filter results, limit the number of versions returned, and navigate through pages of version history. This is particularly useful for tracking changes made to a page or blog post over time, auditing content modifications, or implementing version comparison features in applications that integrate with Confluence. operationId: getContentVersions parameters: - name: id in: path description: The ID of the content to be queried for its versions. required: true schema: type: string - name: start in: query description: The starting index of the returned versions. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: 'The maximum number of versions to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 200 - name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. By default, the `content` object is expanded. - `collaborators` returns the users that collaborated on the version. - `content` returns the content for the version.' style: form explode: false schema: type: array items: type: string responses: '200': description: Returned if the requested versions are returned. content: application/json: schema: $ref: '#/components/schemas/VersionArray' '403': description: 'Returned if the calling user does not have permission to view the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Content summary: Atlassian Restore Content Version description: The Restore Content Version operation is a POST request to the Atlassian Confluence Content API endpoint /wiki/rest/api/content/{id}/version that allows you to restore a previously saved version of a specific piece of content by its ID. This operation takes the content ID as a path parameter and requires authentication with appropriate permissions to modify the content. When executed, it reverts the current content back to a specified historical version, effectively making that older version the new current version while preserving the version history. This is useful for recovering from unwanted changes, reverting edits, or rolling back content to a known good state. The operation requires the version number to be specified in the request body and returns the restored content object with updated version information upon successful completion. operationId: restoreContentVersion parameters: - name: id in: path description: The ID of the content for which the history will be restored. required: true schema: type: string - name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. By default, the `content` object is expanded. - `collaborators` returns the users that collaborated on the version. - `content` returns the content for the version.' style: form explode: false schema: type: array items: type: string requestBody: description: The content version to be restored. content: application/json: schema: $ref: '#/components/schemas/VersionRestore' required: true responses: '200': description: Returned if the version is restored. content: application/json: schema: $ref: '#/components/schemas/Version' '400': description: 'Returned if; - There is no content with the given ID. - There is no version with the given version number. - The version number is the current version.' content: {} '403': description: 'Returned if the calling user doesn''t have permission to edit the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/{id}/version/{versionNumber}: get: tags: - Content summary: Atlassian Get Content Version deprecated: true description: Returns a specific version of a piece of content identified by its content ID and version number. This operation retrieves historical versions of Confluence content such as pages or blog posts, allowing users to view previous iterations and track changes over time. The endpoint requires both the unique content identifier and the specific version number to return the requested content version along with its metadata, body content, and version details. This is particularly useful for auditing purposes, reviewing edit history, or restoring previous versions of content. operationId: getContentVersion parameters: - name: id in: path description: The ID of the content to be queried for its version. required: true schema: type: string - name: versionNumber in: path description: The number of the version to be retrieved. required: true schema: type: integer format: int32 - name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. By default, the `content` object is expanded. - `collaborators` returns the users that collaborated on the version. - `content` returns the content for the version.' style: form explode: false schema: type: array items: type: string responses: '200': description: Returned if the version is returned. content: application/json: schema: $ref: '#/components/schemas/Version' '403': description: 'Returned if the calling user does not have permission to view the content.' content: {} '404': description: Returned if the content or version cannot be found. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: tags: - Content summary: Atlassian Delete Content Version description: This API operation allows you to delete a specific version of a Confluence content page by providing both the content ID and the version number you wish to remove. When executed, it permanently removes that particular historical version from the content's version history while preserving other versions, enabling content administrators to clean up unwanted or erroneous page revisions. The operation requires appropriate permissions and uses the DELETE HTTP method with the content ID and version number as path parameters in the endpoint URL. operationId: deleteContentVersion parameters: - name: id in: path description: The ID of the content that the version will be deleted from. required: true schema: type: string - name: versionNumber in: path description: 'The number of the version to be deleted. The version number starts from 1 up to current version.' required: true schema: type: integer format: int32 responses: '204': description: Returned if the version is deleted. content: {} '400': description: 'Returned if; - The content or version cannot be found. - The current version is specified.' content: {} '403': description: 'Returned if the calling user doesn''t have permission to edit the content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - delete:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: DELETE x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/contentbody/convert/{to}: post: tags: - Content summary: Atlassian Convert Content Body description: 'Converts a content body from one format to another format.

Supported conversions:

- storage: view, export_view, styled_view, editor
- editor: storage
- view: none
- export_view: none
- styled_view: none

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
If request specifies ''contentIdContext'', ''View'' permission for the space, and permission to view the content.' operationId: convertContentBody parameters: - name: to in: path description: The name of the target format for the content body. required: true schema: type: string - name: spaceKeyContext in: query description: 'The space key used for resolving embedded content (page includes, files, and links) in the content body. For example, if the source content contains the link `` and the `spaceKeyContext=TEST` parameter is provided, then the link will be converted to a link to the "Example page" page in the "TEST" space.' schema: type: string - name: contentIdContext in: query description: 'The content ID used to find the space for resolving embedded content (page includes, files, and links) in the content body. For example, if the source content contains the link `` and the `contentIdContext=123` parameter is provided, then the link will be converted to a link to the "Example page" page in the same space that has the content with ID=123. Note, `spaceKeyContext` will be ignored if this parameter is provided.' schema: type: string - name: embeddedContentRender in: query description: 'Mode used for rendering embedded content, like attachments. - `current` renders the embedded content using the latest version. - `version-at-save` renders the embedded content using the version at the time of save.' schema: type: string default: current enum: - current - version-at-save - $ref: '#/components/parameters/bodyConversionExpand' requestBody: description: The content body to convert. content: application/json: schema: $ref: '#/components/schemas/ContentBodyCreate' required: true responses: '200': description: Returned if the content is converted. content: application/json: schema: $ref: '#/components/schemas/ContentBody' '400': description: Returned if the content body is invalid or if the value is improperly formed. content: {} '404': description: Returned if content cannot be found with the provided context. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.metadata:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/contentbody/convert/async/{to}: post: tags: - Content summary: Atlassian Asynchronously Convert Content Body description: The Atlassian Confluence Content Body API endpoint `/wiki/rest/api/contentbody/convert/async/{to}` allows users to asynchronously convert content body from one format to another by making a POST request. The `{to}` path parameter specifies the target format for the conversion, such as storage, view, or editor format. This asynchronous operation is particularly useful for handling large content conversions that might take longer to process, as it allows the client to submit the conversion request and receive a job identifier or callback mechanism rather than waiting synchronously for the conversion to complete. The request body typically includes the source content and its original format, while the response provides information about the conversion job status that can be polled or monitored separately until the conversion is finished. operationId: asynchronouslyConvertContentBody parameters: - name: to in: path description: The name of the target format for the content body. required: true schema: type: string enum: - export_view - $ref: '#/components/parameters/bodyConversionExpand' - name: spaceKeyContext in: query description: 'The space key used for resolving embedded content (page includes, files, and links) in the content body. For example, if the source content contains the link `` and the `spaceKeyContext=TEST` parameter is provided, then the link will be converted to a link to the "Example page" page in the "TEST" space.' schema: type: string - name: contentIdContext in: query description: 'The content ID used to find the space for resolving embedded content (page includes, files, and links) in the content body. For example, if the source content contains the link `` and the `contentIdContext=123` parameter is provided, then the link will be converted to a link to the "Example page" page in the same space that has the content with ID=123. Note, `spaceKeyContext` will be ignored if this parameter is provided.' schema: type: string - name: allowCache in: query description: "If this field is false, the cache will erase its current value and begin a new conversion.\nIf this field is true, the cache will not erase its current value, and will set the status of the\nasync conversion to RERUNNING. Once the data is updated, the status will change to COMPLETED. \nLarge macros that take long to convert, and whose data need not immediately up to date (same as previous conversion's result within last 5 minutes)\nshould set this fields to true. Cache values are stored per user per content body and expansions." schema: type: boolean default: false - name: embeddedContentRender in: query description: 'Mode used for rendering embedded content, like attachments. - `current` renders the embedded content using the latest version. - `version-at-save` renders the embedded content using the version at the time of save.' schema: type: string default: current enum: - current - version-at-save requestBody: description: The content body to convert. content: application/json: schema: $ref: '#/components/schemas/ContentBodyCreate' required: true responses: '200': description: Returned if the content is added to the messaging queue for conversion. This id will be available for 5 minutes after the conversion is complete. content: application/json: schema: $ref: '#/components/schemas/AsyncId' '400': description: 'Returned - if the content body or conversion context is invalid or null - if the value is improperly formed - any conversion type other than export_view' content: {} '404': description: Returned if content cannot be found with the provided context. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.metadata:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-codegen-request-body-name: body x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/contentbody/convert/async/{id}: get: tags: - Content summary: Atlassian Get Asynchronously Converted Content Body From the Id or the Current Status of the Task description: This API endpoint retrieves the result of an asynchronous content body conversion operation in Atlassian Confluence using a unique task identifier. When content conversion is initiated asynchronously (such as converting between different markup formats like storage format, view format, or editor format), this GET operation allows you to check the current status of the conversion task and fetch the converted content once the operation is complete. The endpoint accepts the task ID as a path parameter and returns either the converted content body if the conversion has finished successfully, the current progress status if the task is still running, or an error message if the conversion failed. This is particularly useful for handling large or complex content conversions that may take significant time to process, allowing clients to poll for completion rather than blocking while waiting for the conversion to finish. operationId: getAsynchronouslyConvertedContentBodyFromTheIdOrTheCurrentStatusOfTheTask parameters: - name: id in: path description: The asyncId of the macro task to get the converted body. required: true schema: type: string responses: '200': description: Returned if successfully found an async conversion task associated with the id. content: application/json: schema: $ref: '#/components/schemas/AsyncContentBody' '400': description: Returned if the async id is invalid. content: {} '401': description: Returned if the request was not made by an anonymous user and user is not authenticated. content: {} '403': description: Returned if the requesting user is not the user who made the conversion request. content: {} '404': description: Returned if async macro conversion task cannot be found with the provided id. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.all x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.all - scheme: oAuthDefinitions state: Beta scopes: - read:content.metadata:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-codegen-request-body-name: body x-atlassian-connect-scope: READ x-api-evangelist-processing: PascalCaseOperationSummaries: true CaselCaseOperationIds: true WriteDescription: true ChooseTags: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /wiki/rest/api/content/archive: post: tags: - Content summary: Atlassian Archive Pages description: 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/ 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. operationId: atlassianArchivepages requestBody: description: The pages to be archived. content: application/json: schema: type: object properties: pages: type: array items: type: object required: - id properties: id: type: integer format: int64 description: The `id` of the page to be archived. responses: '202': description: Returned if the archive request has been submitted. content: application/json: schema: $ref: '#/components/schemas/LongTask' '400': description: "Returned if:\n- there is an archival job already running for the tenant.\n- the number of pages to archive is larger than the limit of 300.\n- any of the content IDs specified in the array do not resolve to pages.\n- any of the specified pages are already archived.\n- the request is coming from a free edition tenant.\n- the request is coming from a non premium edition tenant with more than 1 page ID\n in the archive request." content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content.metadata:confluence - write:page:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-experimental: true x-atlassian-connect-scope: WRITE /wiki/rest/api/content/blueprint/instance/{draftId}: put: tags: - Content summary: Atlassian Publish Shared Draft description: '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.' operationId: atlassianPublishshareddraft parameters: - name: draftId in: path description: 'The ID of the draft page that was created from a blueprint. You can find the `draftId` in the Confluence application by opening the draft page and checking the page URL.' required: true schema: type: string - name: status in: query description: 'The status of the content to be updated, i.e. the draft. This is set to ''draft'' by default, so you shouldn''t need to specify it.' schema: type: string default: draft - $ref: '#/components/parameters/contentExpand' requestBody: content: application/json: schema: $ref: '#/components/schemas/ContentBlueprintDraft' required: true responses: '200': description: Returned if the draft was successfully published. content: application/json: schema: $ref: '#/components/schemas/Content_2' '400': description: 'Returned if a title is not specified or a page with the title already exists.' content: {} '409': description: Returned if the version is not set to 1. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE post: tags: - Content summary: Atlassian Publish Legacy Draft description: '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.' operationId: atlassianPublishlegacydraft parameters: - name: draftId in: path description: 'The ID of the draft page that was created from a blueprint. You can find the `draftId` in the Confluence application by opening the draft page and checking the page URL.' required: true schema: type: string - name: status in: query description: 'The status of the content to be updated, i.e. the draft. This is set to ''draft'' by default, so you shouldn''t need to specify it.' schema: type: string default: draft - $ref: '#/components/parameters/contentExpand' requestBody: content: application/json: schema: $ref: '#/components/schemas/ContentBlueprintDraft' required: true responses: '200': description: Returned if the draft was successfully published. content: application/json: schema: $ref: '#/components/schemas/Content_2' '400': description: 'Returned if a title is not specified or a page with the title already exists.' content: {} '409': description: Returned if the version is not set to 1. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE /wiki/rest/api/content: get: tags: - Content summary: Atlassian Get Content deprecated: true description: 'Deprecated, use [Confluence''s v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).

Returns all content in a Confluence instance.

By default, the following objects are expanded: `space`, `history`, `version`.

**[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.' operationId: atlassianGetcontent parameters: - name: type in: query description: "The type of content to return. For example:\n - page\n - blogpost" schema: type: string default: page - name: spaceKey in: query description: The key of the space to be queried for its content. schema: type: string - name: title in: query description: The title of the page to be returned. Required for page type. schema: type: string - name: status in: query description: 'Filter the results to a set of content based on their status. If set to `any`, content with any status is returned. Note, the `historical` status is currently not supported.' style: form explode: true schema: type: array items: type: string default: - current enum: - current - trashed - deleted - historical - draft - any - name: postingDay in: query description: 'The posting date of the blog post to be returned. Required for blogpost type. Format: yyyy-mm-dd.' schema: type: string - $ref: '#/components/parameters/contentExpandWithSubExpandLimit' - name: trigger in: query description: 'If set to `viewed`, the request will trigger a ''viewed'' event for the content. When this event is triggered, the page/blogpost will appear on the ''Recently visited'' tab of the user''s Confluence dashboard.' schema: type: string enum: - viewed - name: orderby in: query description: 'Orders the content by a particular field. Specify the field and sort direction for this parameter, as follows: ''fieldpath asc/desc''. For example, ''history.createdDate desc''.' schema: type: string - name: start in: query description: The starting index of the returned content. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: 'The maximum number of content objects to return per page. Note, this may be restricted by fixed system limits.' schema: minimum: 0 type: integer format: int32 default: 25 responses: '200': description: Returned if the requested list of content is returned. content: application/json: schema: $ref: '#/components/schemas/ContentArray_3' '400': description: Returned if sub-expansions limit exceeds. content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '403': description: Returned if the user does not have correct permission to read this content. content: {} '404': description: 'Returned if the calling user does not have permission to view the requested content.' content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ post: tags: - Content summary: Atlassian Create Content deprecated: true description: 'Deprecated, use [Confluence''s v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).

Creates a new piece of content or publishes an existing draft.

To publish a draft, add the `id` and `status` properties to the body of the request.
Set the `id` to the ID of the draft and set the `status` to ''current''. When the
request is sent, a new piece of content will be created and the metadata from the
draft will be transferred into it.

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 created in, and permission to view the draft if publishing a draft.' operationId: atlassianCreatecontent parameters: - name: status in: query description: Filter the returned content by status. schema: type: string default: current - $ref: '#/components/parameters/contentExpandWithSubExpandLimit' requestBody: description: 'The new content to be created. Set the `representation` to the name of the body format type. For example, if you use `storage` for the body format, set ''`representation`=`storage`''. See [Confluence storage format](https://confluence.atlassian.com/x/AJkiLw). If you are not sure how to generate the different formats, you can create a page in the Confluence application, retrieve the content using [Get content](#api-content-get), and expand the desired content format, e.g. `expand=body.storage`.' content: application/json: schema: $ref: '#/components/schemas/ContentCreate' required: true responses: '200': description: Returned if the content is created. content: application/json: schema: $ref: '#/components/schemas/Content_3' '400': description: 'Returned if; - The content type is invalid. - The sub-expansions limit exceeds.' content: {} '401': description: 'Returned if the authentication credentials are incorrect or missing from the request.' content: {} '403': description: 'Returned if; - The space that the content is being created in does not exist. - If the requesting user does not have permission to create content in it.' content: {} '404': description: 'Returned if; - The parent content is invalid -- user does not have permission or it does not exist.' '413': description: Returned if request is too large. Requests for this resource can be at most 5242880 bytes content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence - write:content:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-codegen-request-body-name: content x-atlassian-connect-scope: WRITE components: schemas: NavigationLookAndFeel_2: required: - color - hoverOrFocus type: object nullable: true properties: color: type: string highlightColor: type: string nullable: true hoverOrFocus: required: - backgroundColor - color type: object properties: backgroundColor: type: string color: type: string Content_2: required: - status - type nullable: true type: object additionalProperties: true properties: id: type: string type: type: string description: Can be "page", "blogpost", "attachment" or "content" status: type: string title: type: string space: $ref: '#/components/schemas/Space' history: $ref: '#/components/schemas/ContentHistory_2' version: $ref: '#/components/schemas/Version_2' ancestors: nullable: true type: array items: $ref: '#/components/schemas/Content_2' operations: type: array items: $ref: '#/components/schemas/OperationCheckResult' children: $ref: '#/components/schemas/ContentChildren_2' childTypes: $ref: '#/components/schemas/ContentChildType' descendants: $ref: '#/components/schemas/ContentChildren_2' container: $ref: '#/components/schemas/Container' body: type: object properties: view: $ref: '#/components/schemas/ContentBody_2' export_view: $ref: '#/components/schemas/ContentBody_2' styled_view: $ref: '#/components/schemas/ContentBody_2' storage: $ref: '#/components/schemas/ContentBody_2' wiki: $ref: '#/components/schemas/ContentBody_2' editor: $ref: '#/components/schemas/ContentBody_2' editor2: $ref: '#/components/schemas/ContentBody_2' anonymous_export_view: $ref: '#/components/schemas/ContentBody_2' atlas_doc_format: $ref: '#/components/schemas/ContentBody_2' dynamic: $ref: '#/components/schemas/ContentBody_2' raw: $ref: '#/components/schemas/ContentBody_2' _expandable: type: object properties: editor: type: string view: type: string export_view: type: string styled_view: type: string storage: type: string editor2: type: string anonymous_export_view: type: string atlas_doc_format: type: string wiki: type: string dynamic: type: string raw: type: string restrictions: type: object properties: read: $ref: '#/components/schemas/ContentRestriction_2' update: $ref: '#/components/schemas/ContentRestriction_2' _expandable: type: object properties: read: type: string update: type: string _links: $ref: '#/components/schemas/GenericLinks' metadata: $ref: '#/components/schemas/ContentMetadata' macroRenderedOutput: type: object additionalProperties: type: object extensions: type: object _expandable: type: object properties: childTypes: type: string container: type: string metadata: type: string operations: type: string children: type: string restrictions: type: string history: type: string ancestors: type: string body: type: string version: type: string descendants: type: string space: type: string extensions: type: string schedulePublishDate: type: string schedulePublishInfo: type: string macroRenderedOutput: type: string _links: $ref: '#/components/schemas/GenericLinks' description: Base object for all content types. ContentRestriction_2: required: - _expandable - _links - operation type: object properties: operation: type: string enum: - administer - copy - create - delete - export - move - purge - purge_version - read - restore - update - use restrictions: type: object properties: user: $ref: '#/components/schemas/UserArray' group: $ref: '#/components/schemas/GroupArray' _expandable: type: object properties: user: type: string group: type: string content: $ref: '#/components/schemas/Content_2' _expandable: type: object properties: restrictions: type: string content: type: string _links: $ref: '#/components/schemas/GenericLinks' UsersUserKeys: required: - userAccountIds nullable: true type: object additionalProperties: true properties: users: type: array items: $ref: '#/components/schemas/User' example: [] userKeys: type: array items: type: string example: [] _links: $ref: '#/components/schemas/GenericLinks' UserDetails_2: type: object properties: business: type: object properties: position: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' department: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' location: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' personal: type: object properties: phone: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' im: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' website: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' email: type: string description: 'This property has been deprecated due to privacy changes. Use the `User.email` property instead. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' User_2: required: - type type: object additionalProperties: true nullable: true properties: type: type: string enum: - known - unknown - anonymous - user username: $ref: '#/components/schemas/GenericUserName' userKey: $ref: '#/components/schemas/GenericUserKey' accountId: $ref: '#/components/schemas/GenericAccountId' accountType: type: string description: The account type of the user, may return empty string if unavailable. App is if the user is a bot user created on behalf of an Atlassian app. enum: - atlassian - app - '' email: nullable: true type: string description: The email address of the user. Depending on the user's privacy setting, this may return an empty string. publicName: type: string description: The public name or nickname of the user. Will always contain a value. profilePicture: $ref: '#/components/schemas/Icon_2' displayName: nullable: true type: string description: The displays name of the user. Depending on the user's privacy setting, this may be the same as publicName. timeZone: nullable: true type: string description: This displays user time zone. Depending on the user's privacy setting, this may return null. isExternalCollaborator: type: boolean description: Whether the user is an external collaborator user externalCollaborator: type: boolean description: Whether the user is an external collaborator user operations: nullable: true type: array items: $ref: '#/components/schemas/OperationCheckResult_2' details: $ref: '#/components/schemas/UserDetails_2' personalSpace: $ref: '#/components/schemas/Space_2' _expandable: type: object properties: operations: type: string details: type: string personalSpace: type: string _links: $ref: '#/components/schemas/GenericLinks' TopNavigationLookAndFeel: required: - highlightColor type: object properties: color: type: string nullable: true example: example_value highlightColor: type: string example: example_value hoverOrFocus: type: object properties: backgroundColor: type: string color: type: string example: example_value HeaderLookAndFeel: required: - backgroundColor - button - primaryNavigation - search - secondaryNavigation type: object properties: backgroundColor: type: string example: example_value button: $ref: '#/components/schemas/ButtonLookAndFeel' primaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel' secondaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel' search: $ref: '#/components/schemas/SearchFieldLookAndFeel' ContentUpdate: required: - type - version type: object additionalProperties: true properties: version: nullable: true required: - number type: object additionalProperties: true properties: number: type: integer description: The version number. format: int32 message: type: string description: An optional message to be stored with the corresponding version. nullable: true description: 'The new version for the updated content. Set this to the current version number incremented by one, unless you are changing the status to ''draft'' which must have a version number of 1. To get the current version number, use [Get content by ID](#api-content-id-get) and retrieve `version.number`.' example: example_value title: nullable: true maxLength: 255 type: string description: The updated title of the content. If you are updating a non-draft `page` or `blogpost`, title is required. If you are not changing the title, set this field to the the current title. example: Example Title type: nullable: true type: string description: The type of content. Set this to the current type of the content. For example, - page - blogpost - comment - attachment example: example_value status: type: string description: 'The updated status of the content. Note, if you change the status of a page from ''current'' to ''draft'' and it has an existing draft, the existing draft will be deleted in favor of the updated page.' enum: - current - trashed - deleted - historical - draft example: current ancestors: nullable: true type: array description: The new parent for the content. Only one parent content 'id' can be specified. items: required: - id type: object additionalProperties: true properties: id: oneOf: - type: integer - type: string description: The `id` of the parent content. example: [] body: type: object properties: view: $ref: '#/components/schemas/ContentBodyCreate' export_view: $ref: '#/components/schemas/ContentBodyCreate' styled_view: $ref: '#/components/schemas/ContentBodyCreate' storage: $ref: '#/components/schemas/ContentBodyCreateStorage' editor: $ref: '#/components/schemas/ContentBodyCreate' editor2: $ref: '#/components/schemas/ContentBodyCreate' wiki: $ref: '#/components/schemas/ContentBodyCreate' atlas_doc_format: $ref: '#/components/schemas/ContentBodyCreate' anonymous_export_view: $ref: '#/components/schemas/ContentBodyCreate' description: 'The updated body of the content. Does not apply to attachments. If you are not sure how to generate these formats, you can create a page in the Confluence application, retrieve the content using [Get content](#api-content-get), and expand the desired content format, e.g. `expand=body.storage`.' example: example_value SuperBatchWebResources: type: object properties: uris: type: object properties: all: oneOf: - type: array items: type: string - type: string css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string example: example_value tags: type: object properties: all: type: string css: type: string data: type: string js: type: string example: example_value metatags: type: string example: example_value _expandable: type: object additionalProperties: true example: example_value AvailableContentStates: required: - spaceContentStates - customContentStates type: object properties: spaceContentStates: type: array items: type: object $ref: '#/components/schemas/ContentState' description: 'Space suggested content states that can be used in the space. This can be null if space content states are disabled in the space. This list can be empty if there are no space content states defined in the space. All spaces start with 3 default space content states, and this can be modified in the UI under space settings.' example: [] customContentStates: type: array items: type: object $ref: '#/components/schemas/ContentState' description: "Custom content states that can be used by the user on the content of this call.\nThis can be null if custom content states are disabled in the space of the content.\nThis list can be empty if there are no custom content states defined by the user.\nThis will at most have 3 of the most recently published content states. \nOnly the calling user has access to place these states on content, but all users can see these states once they are placed." example: [] ContentBodyCreate_2: required: - representation - value type: object additionalProperties: true properties: value: type: string description: The body of the content in the relevant format. representation: type: string description: 'The content format type. Set the value of this property to the name of the format being used, e.g. ''storage''.' enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format - plain - raw description: This object is used when creating or updating content. ContentPropertyCreateNoKey: required: - value type: object additionalProperties: true properties: value: oneOf: - type: array items: type: string - type: boolean - type: object additionalProperties: true properties: {} - type: string description: The value of the content property. This can be empty or a complex object. example: example_value ContentBodyCreate: required: - representation - value type: object additionalProperties: true properties: value: type: string description: The body of the content in the relevant format. example: example_value representation: type: string description: 'The content format type. Set the value of this property to the name of the format being used, e.g. ''storage''.' enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format - plain - raw example: view description: This object is used when creating or updating content. ContentArray_2: required: - _links - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Content_2' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' SpaceSettings_2: nullable: true required: - _links - routeOverrideEnabled type: object properties: routeOverrideEnabled: type: boolean description: 'Defines whether an override for the space home should be used. This is used in conjunction with a space theme provided by an app. For example, if this property is set to true, a theme can display a page other than the space homepage when users visit the root URL for a space. This property allows apps to provide content-only theming without overriding the space home.' editor: required: - page - blogpost - default type: object properties: page: type: string blogpost: type: string default: type: string spaceKey: type: string _links: $ref: '#/components/schemas/GenericLinks' ContentState: required: - id - name - color type: object properties: id: type: integer description: identifier of content state. If 0, 1, or 2, this is a default space state format: int64 example: abc123 name: type: string description: name of content state. example: Example Title color: type: string description: hex string representing color of state example: example_value SpaceDescription: required: - embeddedContent - representation - value type: object additionalProperties: true properties: value: type: string example: example_value representation: type: string enum: - plain - view example: plain embeddedContent: type: array items: type: object properties: {} example: [] GenericUserKey: type: string nullable: true description: 'This property is no longer available and will be removed from the documentation soon. Use `accountId` instead. See the [deprecation notice](/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' WebResourceDependencies_2: type: object properties: _expandable: type: object additionalProperties: true properties: uris: oneOf: - type: string - type: object additionalProperties: true keys: type: array items: type: string contexts: type: array items: type: string uris: type: object properties: all: oneOf: - type: array items: type: string - type: string css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string _expandable: type: object additionalProperties: true properties: css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string tags: type: object properties: all: type: string css: type: string data: type: string js: type: string _expandable: type: object additionalProperties: true superbatch: $ref: '#/components/schemas/SuperBatchWebResources_2' ContentMetadata: type: object additionalProperties: true properties: currentuser: type: object properties: favourited: type: object properties: isFavourite: type: boolean favouritedDate: type: string format: date-time lastmodified: type: object properties: version: $ref: '#/components/schemas/Version' friendlyLastModified: type: string lastcontributed: type: object properties: status: type: string when: type: string format: date-time viewed: type: object properties: lastSeen: type: string format: date-time friendlyLastSeen: type: string scheduled: type: object _expandable: type: object properties: favourited: type: string lastmodified: type: string lastcontributed: type: string viewed: type: string scheduled: type: string example: example_value properties: $ref: '#/components/schemas/GenericLinks' frontend: type: object additionalProperties: true example: example_value labels: oneOf: - $ref: '#/components/schemas/LabelArray' - type: array items: $ref: '#/components/schemas/Label' example: example_value description: Metadata object for page, blogpost, comment content HorizontalHeaderLookAndFeel_2: required: - backgroundColor - primaryNavigation type: object properties: backgroundColor: type: string button: $ref: '#/components/schemas/ButtonLookAndFeel_2' primaryNavigation: $ref: '#/components/schemas/TopNavigationLookAndFeel_2' secondaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel_2' search: $ref: '#/components/schemas/SearchFieldLookAndFeel_2' ContentCreate: required: - type type: object nullable: true additionalProperties: true properties: id: nullable: true type: string description: The ID of the draft content. Required when publishing a draft. title: nullable: true maxLength: 255 type: string type: type: string description: The type of the new content. Custom content types defined by apps are also supported. eg. 'page', 'blogpost', 'comment' etc. space: nullable: true required: - key type: object properties: id: nullable: true type: integer format: int64 name: nullable: true type: string icon: $ref: '#/components/schemas/Icon_2' identifiers: $ref: '#/components/schemas/GlobalSpaceIdentifier' description: type: object nullable: true properties: plain: $ref: '#/components/schemas/SpaceDescription_2' view: $ref: '#/components/schemas/SpaceDescription_2' _expandable: type: object properties: view: type: string plain: type: string homepage: $ref: '#/components/schemas/Content_3' type: nullable: true type: string metadata: nullable: true type: object properties: labels: $ref: '#/components/schemas/LabelArray_2' _expandable: type: object operations: nullable: true type: array items: $ref: '#/components/schemas/OperationCheckResult_2' permissions: nullable: true type: array items: $ref: '#/components/schemas/SpacePermission_2' status: nullable: true type: string settings: $ref: '#/components/schemas/SpaceSettings_2' theme: $ref: '#/components/schemas/Theme_2' lookAndFeel: $ref: '#/components/schemas/LookAndFeel_2' history: required: - createdDate type: object properties: createdDate: type: string format: date-time createdBy: $ref: '#/components/schemas/User_2' key: type: string description: The key of the space. links: nullable: true type: object additionalProperties: true description: The space that the content is being created in. status: type: string description: The status of the new content. default: current enum: - current - deleted - historical - draft container: nullable: true required: - id - type type: object additionalProperties: true properties: id: oneOf: - type: integer - type: string description: The `id` of the container. type: type: string description: The `type` of the container. description: 'The container of the content. Required if type is `comment` or certain types of custom content. If you are trying to create a comment that is a child of another comment, specify the parent comment in the ancestors field, not in this field.' ancestors: nullable: true type: array description: 'The parent content of the new content. If you are creating a top-level `page` or `comment`, this can be left blank. If you are creating a child page, this is where the parent page id goes. If you are creating a child comment, this is where the parent comment id goes. Only one parent content id can be specified.' items: required: - id type: object additionalProperties: true properties: id: type: string description: The `id` of the parent content. body: type: object properties: view: $ref: '#/components/schemas/ContentBodyCreate_2' export_view: $ref: '#/components/schemas/ContentBodyCreate_2' styled_view: $ref: '#/components/schemas/ContentBodyCreate_2' storage: $ref: '#/components/schemas/ContentBodyCreate_2' editor: $ref: '#/components/schemas/ContentBodyCreate_2' editor2: $ref: '#/components/schemas/ContentBodyCreate_2' wiki: $ref: '#/components/schemas/ContentBodyCreate_2' anonymous_export_view: $ref: '#/components/schemas/ContentBodyCreate_2' plain: $ref: '#/components/schemas/ContentBodyCreate_2' atlas_doc_format: $ref: '#/components/schemas/ContentBodyCreate_2' raw: $ref: '#/components/schemas/ContentBodyCreate_2' description: 'The body of the new content. Does not apply to attachments. Only one body format should be specified as the property for this object, e.g. `storage`. Note, `editor2` format is used by Atlassian only. `anonymous_export_view` is the same as `export_view` format but only content viewable by an anonymous user is included.' SpacePermission: required: - anonymousAccess - operation - unlicensedAccess type: object properties: id: type: integer format: int64 example: abc123 subjects: type: object properties: user: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/User' size: type: integer format: int32 start: type: integer format: int32 limit: type: integer format: int32 group: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Group' size: type: integer format: int32 start: type: integer format: int32 limit: type: integer format: int32 _expandable: type: object properties: user: type: string group: type: string description: The users and/or groups that the permission applies to. example: example_value operation: $ref: '#/components/schemas/OperationCheckResult' anonymousAccess: type: boolean description: Grant anonymous users permission to use the operation. default: false example: true unlicensedAccess: type: boolean description: 'Grants access to unlicensed users from JIRA Service Desk when used with the ''read space'' operation.' default: false example: true description: "This object represents a permission for given space. Permissions consist of\nat least one operation object with an accompanying subjects object.\n\nThe following combinations of `operation` and `targetType` values are\nvalid for the `operation` object:\n\n - 'create': 'page', 'blogpost', 'comment', 'attachment'\n - 'read': 'space'\n - 'delete': 'page', 'blogpost', 'comment', 'attachment'\n - 'export': 'space'\n - 'administer': 'space'" ContentArray: required: - _links - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Content' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 _links: $ref: '#/components/schemas/GenericLinks' ContentChildType_2: type: object properties: attachment: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' comment: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' page: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' _expandable: type: object properties: all: type: string attachment: type: string comment: type: string page: type: string whiteboard: type: string additionalProperties: true description: 'Shows whether a piece of content has attachments, comments, or child pages/whiteboards. Note, this doesn''t actually contain the child objects.' LongTask: required: - id - links type: object properties: ari: type: string description: the ARI for the long task, based on its ID id: type: string description: a unique identifier for the long task links: type: object additionalProperties: true properties: status: type: string description: The URL to retrive status of long task. ContentRestriction: required: - _expandable - _links - operation type: object properties: operation: type: string enum: - administer - copy - create - delete - export - move - purge - purge_version - read - restore - update - use example: administer restrictions: type: object properties: user: $ref: '#/components/schemas/UserArray' group: $ref: '#/components/schemas/GroupArray' _expandable: type: object properties: user: type: string group: type: string example: example_value content: $ref: '#/components/schemas/Content' _expandable: type: object properties: restrictions: type: string content: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' Embeddable: type: object additionalProperties: true UserArray_2: required: - results type: object properties: results: type: array items: $ref: '#/components/schemas/User_2' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 totalSize: type: integer format: int64 default: 0 description: 'This property will return total count of the objects before pagination is applied. This value is returned if `shouldReturnTotalSize` is set to `true`.' _links: $ref: '#/components/schemas/GenericLinks' Icon_2: required: - height - isDefault - path - width type: object nullable: true properties: path: type: string width: type: integer format: int32 height: type: integer format: int32 isDefault: type: boolean description: This object represents an icon. If used as a profilePicture, this may be returned as null, depending on the user's privacy setting. ContentBody_3: required: - representation - value type: object properties: value: type: string representation: type: string enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format - raw embeddedContent: type: array items: $ref: '#/components/schemas/EmbeddedContent_2' webresource: $ref: '#/components/schemas/WebResourceDependencies_2' mediaToken: type: object properties: collectionIds: type: array items: type: string contentId: type: string expiryDateTime: type: string fileIds: type: array items: type: string token: type: string _expandable: type: object properties: content: type: string embeddedContent: type: string webresource: type: string mediaToken: type: string _links: $ref: '#/components/schemas/GenericLinks' SpaceDescription_2: required: - embeddedContent - representation - value type: object additionalProperties: true properties: value: type: string representation: type: string enum: - plain - view embeddedContent: type: array items: type: object properties: {} ContainerLookAndFeel: required: - background - backgroundColor - backgroundImage - backgroundSize - borderRadius - padding type: object nullable: true properties: background: type: string example: example_value backgroundAttachment: type: string nullable: true example: example_value backgroundBlendMode: type: string nullable: true example: example_value backgroundClip: type: string nullable: true example: example_value backgroundColor: type: string nullable: true example: example_value backgroundImage: type: string nullable: true example: example_value backgroundOrigin: type: string nullable: true example: example_value backgroundPosition: type: string nullable: true example: example_value backgroundRepeat: type: string nullable: true example: example_value backgroundSize: type: string nullable: true example: example_value padding: type: string example: example_value borderRadius: type: string example: example_value GroupArray_2: required: - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/Group_2' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 MenusLookAndFeel: required: - color - hoverOrFocus type: object properties: hoverOrFocus: required: - backgroundColor type: object properties: backgroundColor: type: string example: example_value color: type: string example: example_value ButtonLookAndFeel_2: required: - backgroundColor - color type: object nullable: true properties: backgroundColor: type: string color: type: string ContentBodyCreateStorage: required: - representation - value type: object additionalProperties: true properties: value: type: string description: The body of the content in the relevant format. example: example_value representation: type: string description: 'The content format type. Set the value of this property to the name of the format being used, e.g. ''storage''.' enum: - storage - view - export_view - styled_view - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format example: storage description: This object is used when creating or updating content. Version_3: required: - minorEdit - number - when type: object nullable: true additionalProperties: true properties: by: $ref: '#/components/schemas/User_2' when: type: string format: date-time nullable: true friendlyWhen: type: string nullable: true message: type: string nullable: true number: type: integer format: int32 description: Set this to the current version number incremented by one minorEdit: description: 'If `minorEdit` is set to ''true'', no notification email or activity stream will be generated for the change.' type: boolean content: $ref: '#/components/schemas/Content_3' collaborators: $ref: '#/components/schemas/UsersUserKeys_2' _expandable: type: object properties: content: type: string collaborators: type: string _links: $ref: '#/components/schemas/GenericLinks' contentTypeModified: type: boolean description: True if content type is modifed in this version (e.g. page to blog) confRev: type: string nullable: true description: The revision id provided by confluence to be used as a revision in Synchrony syncRev: type: string nullable: true description: The revision id provided by Synchrony syncRevSource: type: string nullable: true description: Source of the synchrony revision MenusLookAndFeel_2: required: - color - hoverOrFocus type: object properties: hoverOrFocus: required: - backgroundColor type: object properties: backgroundColor: type: string color: type: string SpacePermission_2: required: - anonymousAccess - operation - unlicensedAccess type: object properties: id: type: integer format: int64 subjects: type: object properties: user: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/User_2' size: type: integer format: int32 start: type: integer format: int32 limit: type: integer format: int32 group: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Group_2' size: type: integer format: int32 start: type: integer format: int32 limit: type: integer format: int32 _expandable: type: object properties: user: type: string group: type: string description: The users and/or groups that the permission applies to. operation: $ref: '#/components/schemas/OperationCheckResult_2' anonymousAccess: type: boolean description: Grant anonymous users permission to use the operation. default: false unlicensedAccess: type: boolean description: 'Grants access to unlicensed users from JIRA Service Desk when used with the ''read space'' operation.' default: false description: "This object represents a permission for given space. Permissions consist of\nat least one operation object with an accompanying subjects object.\n\nThe following combinations of `operation` and `targetType` values are\nvalid for the `operation` object:\n\n - 'create': 'page', 'blogpost', 'comment', 'attachment'\n - 'read': 'space'\n - 'delete': 'page', 'blogpost', 'comment', 'attachment'\n - 'export': 'space'\n - 'administer': 'space'" ContentStateRestInput: type: object properties: name: type: string description: Name of content state. Maximum 20 characters. example: Example Title color: type: string description: "Color of state. Must be in 6 digit hex form (#FFFFFF). The default colors offered in the UI are:\n #ff7452 (red),\n #2684ff (blue),\n #ffc400 (yellow),\n #57d9a3 (green), and\n #8777d9 (purple)" example: example_value id: type: integer description: id of state. This can be 0,1, or 2 if you wish to specify a default space state. format: int64 example: abc123 Version_2: required: - minorEdit - number - when type: object nullable: true additionalProperties: true properties: by: $ref: '#/components/schemas/User' when: type: string format: date-time nullable: true friendlyWhen: type: string nullable: true message: type: string nullable: true number: type: integer format: int32 description: Set this to the current version number incremented by one minorEdit: description: 'If `minorEdit` is set to ''true'', no notification email or activity stream will be generated for the change.' type: boolean content: $ref: '#/components/schemas/Content_2' collaborators: $ref: '#/components/schemas/UsersUserKeys' _expandable: type: object properties: content: type: string collaborators: type: string _links: $ref: '#/components/schemas/GenericLinks' contentTypeModified: type: boolean description: True if content type is modifed in this version (e.g. page to blog) confRev: type: string nullable: true description: The revision id provided by confluence to be used as a revision in Synchrony syncRev: type: string nullable: true description: The revision id provided by Synchrony syncRevSource: type: string nullable: true description: Source of the synchrony revision Icon: required: - height - isDefault - path - width type: object nullable: true properties: path: type: string example: example_value width: type: integer format: int32 example: 10 height: type: integer format: int32 example: 10 isDefault: type: boolean example: true description: This object represents an icon. If used as a profilePicture, this may be returned as null, depending on the user's privacy setting. GenericAccountId: type: string nullable: true description: 'The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, `384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192`.' UsersUserKeys_2: required: - userAccountIds nullable: true type: object additionalProperties: true properties: users: type: array items: $ref: '#/components/schemas/User_2' userKeys: type: array items: type: string _links: $ref: '#/components/schemas/GenericLinks' AsyncId: required: - asyncId type: object properties: asyncId: type: string example: '500123' ContentBody: required: - representation - value type: object properties: value: type: string example: example_value representation: type: string enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format - raw example: view embeddedContent: type: array items: $ref: '#/components/schemas/EmbeddedContent' example: [] webresource: $ref: '#/components/schemas/WebResourceDependencies' mediaToken: type: object properties: collectionIds: type: array items: type: string contentId: type: string expiryDateTime: type: string fileIds: type: array items: type: string token: type: string example: example_value _expandable: type: object properties: content: type: string embeddedContent: type: string webresource: type: string mediaToken: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' SuperBatchWebResources_2: type: object properties: uris: type: object properties: all: oneOf: - type: array items: type: string - type: string css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string tags: type: object properties: all: type: string css: type: string data: type: string js: type: string metatags: type: string _expandable: type: object additionalProperties: true EmbeddedContent_2: type: object additionalProperties: true properties: entityId: type: integer format: int64 entityType: type: string entity: $ref: '#/components/schemas/Embeddable' VersionArray: required: - _links - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/Version' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 _links: $ref: '#/components/schemas/GenericLinks' Content_3: required: - status - type nullable: true type: object additionalProperties: true properties: id: type: string type: type: string description: Can be "page", "blogpost", "attachment" or "content" status: type: string title: type: string space: $ref: '#/components/schemas/Space_2' history: $ref: '#/components/schemas/ContentHistory_3' version: $ref: '#/components/schemas/Version_3' ancestors: nullable: true type: array items: $ref: '#/components/schemas/Content_3' operations: type: array items: $ref: '#/components/schemas/OperationCheckResult_2' children: $ref: '#/components/schemas/ContentChildren_3' childTypes: $ref: '#/components/schemas/ContentChildType_2' descendants: $ref: '#/components/schemas/ContentChildren_3' container: $ref: '#/components/schemas/Container' body: type: object properties: view: $ref: '#/components/schemas/ContentBody_3' export_view: $ref: '#/components/schemas/ContentBody_3' styled_view: $ref: '#/components/schemas/ContentBody_3' storage: $ref: '#/components/schemas/ContentBody_3' wiki: $ref: '#/components/schemas/ContentBody_3' editor: $ref: '#/components/schemas/ContentBody_3' editor2: $ref: '#/components/schemas/ContentBody_3' anonymous_export_view: $ref: '#/components/schemas/ContentBody_3' atlas_doc_format: $ref: '#/components/schemas/ContentBody_3' dynamic: $ref: '#/components/schemas/ContentBody_3' raw: $ref: '#/components/schemas/ContentBody_3' _expandable: type: object properties: editor: type: string view: type: string export_view: type: string styled_view: type: string storage: type: string editor2: type: string anonymous_export_view: type: string atlas_doc_format: type: string wiki: type: string dynamic: type: string raw: type: string restrictions: type: object properties: read: $ref: '#/components/schemas/ContentRestriction_3' update: $ref: '#/components/schemas/ContentRestriction_3' _expandable: type: object properties: read: type: string update: type: string _links: $ref: '#/components/schemas/GenericLinks' metadata: $ref: '#/components/schemas/ContentMetadata_2' macroRenderedOutput: type: object additionalProperties: type: object extensions: type: object _expandable: type: object properties: childTypes: type: string container: type: string metadata: type: string operations: type: string children: type: string restrictions: type: string history: type: string ancestors: type: string body: type: string version: type: string descendants: type: string space: type: string extensions: type: string schedulePublishDate: type: string schedulePublishInfo: type: string macroRenderedOutput: type: string _links: $ref: '#/components/schemas/GenericLinks' description: Base object for all content types. Version: required: - minorEdit - number - when type: object nullable: true additionalProperties: true properties: by: $ref: '#/components/schemas/User' when: type: string format: date-time nullable: true example: '2026-01-15T10:30:00Z' friendlyWhen: type: string nullable: true example: example_value message: type: string nullable: true example: example_value number: type: integer format: int32 description: Set this to the current version number incremented by one example: 10 minorEdit: description: 'If `minorEdit` is set to ''true'', no notification email or activity stream will be generated for the change.' type: boolean example: true content: $ref: '#/components/schemas/Content' collaborators: $ref: '#/components/schemas/UsersUserKeys' _expandable: type: object properties: content: type: string collaborators: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' contentTypeModified: type: boolean description: True if content type is modifed in this version (e.g. page to blog) example: true confRev: type: string nullable: true description: The revision id provided by confluence to be used as a revision in Synchrony example: example_value syncRev: type: string nullable: true description: The revision id provided by Synchrony example: example_value syncRevSource: type: string nullable: true description: Source of the synchrony revision example: example_value Theme_2: required: - themeKey type: object properties: themeKey: type: string name: type: string description: type: string icon: $ref: '#/components/schemas/Icon_2' _links: $ref: '#/components/schemas/GenericLinks' PermissionCheckResponse: required: - hasPermission type: object properties: hasPermission: type: boolean example: true errors: type: array items: $ref: '#/components/schemas/Message' example: [] _links: $ref: '#/components/schemas/GenericLinks' description: 'This object represents the response for the content permission check API. If the user or group does not have permissions, the following errors may be returned: - Group does not have permission to the space - Group does not have permission to the content - User is not allowed to use Confluence - User does not have permission to the space - User does not have permission to the content - Anonymous users are not allowed to use Confluence - Anonymous user does not have permission to the space - Anonymous user does not have permission to the content' ContentStateResponse: type: object properties: contentState: $ref: '#/components/schemas/ContentState' description: Null or content state lastUpdated: type: string description: Timestamp of last publish event where content state changed example: example_value UserDetails: type: object properties: business: type: object properties: position: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' department: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' location: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' example: example_value personal: type: object properties: phone: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' im: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' website: type: string description: 'This property has been deprecated due to privacy changes. There is no replacement. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' email: type: string description: 'This property has been deprecated due to privacy changes. Use the `User.email` property instead. See the [migration guide](https://developer.atlassian.com/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' example: example_value HorizontalHeaderLookAndFeel: required: - backgroundColor - primaryNavigation type: object properties: backgroundColor: type: string example: example_value button: $ref: '#/components/schemas/ButtonLookAndFeel' primaryNavigation: $ref: '#/components/schemas/TopNavigationLookAndFeel' secondaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel' search: $ref: '#/components/schemas/SearchFieldLookAndFeel' ButtonLookAndFeel: required: - backgroundColor - color type: object nullable: true properties: backgroundColor: type: string example: example_value color: type: string example: example_value ContentPropertyUpdate: required: - value - version type: object additionalProperties: true properties: value: oneOf: - type: array items: type: string - type: boolean - type: object additionalProperties: true properties: {} - type: string description: The value of the content property. This can be empty or a complex object. example: example_value version: required: - number type: object nullable: true additionalProperties: true properties: number: oneOf: - type: integer - type: string description: 'The new version for the updated content property. Set this to the current version number incremented by one. To get the current version number, use ''Get content property'' and retrieve `version.number`.' format: int32 minorEdit: type: boolean description: 'If `minorEdit` is set to ''true'', no notification email or activity stream will be generated for the change.' default: true description: The version number of the property. example: example_value LabelCreate: required: - name - prefix type: object additionalProperties: true properties: prefix: type: string description: The prefix for the label. `global`, `my` `team`, etc. example: example_value name: type: string description: The name of the label, which will be shown in the UI. example: Example Title HeaderLookAndFeel_2: required: - backgroundColor - button - primaryNavigation - search - secondaryNavigation type: object properties: backgroundColor: type: string button: $ref: '#/components/schemas/ButtonLookAndFeel_2' primaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel_2' secondaryNavigation: $ref: '#/components/schemas/NavigationLookAndFeel_2' search: $ref: '#/components/schemas/SearchFieldLookAndFeel_2' error: type: object title: Error description: Base type for most resource objects. It defines the common `type` element that identifies an object's type. It also identifies the element as Swagger's `discriminator`. properties: type: type: string example: example_value error: type: object properties: message: type: string detail: type: string data: type: object description: Optional structured data that is endpoint-specific. properties: {} additionalProperties: true required: - message additionalProperties: false example: example_value required: - type additionalProperties: true Message: required: - args type: object additionalProperties: true properties: translation: type: string example: example_value args: type: array items: oneOf: - type: string - type: object additionalProperties: true example: [] ContentMetadata_2: type: object additionalProperties: true properties: currentuser: type: object properties: favourited: type: object properties: isFavourite: type: boolean favouritedDate: type: string format: date-time lastmodified: type: object properties: version: $ref: '#/components/schemas/Version_3' friendlyLastModified: type: string lastcontributed: type: object properties: status: type: string when: type: string format: date-time viewed: type: object properties: lastSeen: type: string format: date-time friendlyLastSeen: type: string scheduled: type: object _expandable: type: object properties: favourited: type: string lastmodified: type: string lastcontributed: type: string viewed: type: string scheduled: type: string properties: $ref: '#/components/schemas/GenericLinks' frontend: type: object additionalProperties: true labels: oneOf: - $ref: '#/components/schemas/LabelArray_2' - type: array items: $ref: '#/components/schemas/Label_2' description: Metadata object for page, blogpost, comment content ContentChildType: type: object properties: attachment: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' example: example_value comment: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' example: example_value page: required: - _links - value type: object properties: value: type: boolean _links: $ref: '#/components/schemas/GenericLinks' example: example_value _expandable: type: object properties: all: type: string attachment: type: string comment: type: string page: type: string whiteboard: type: string example: example_value additionalProperties: true description: 'Shows whether a piece of content has attachments, comments, or child pages/whiteboards. Note, this doesn''t actually contain the child objects.' ContentChildren_3: type: object additionalProperties: true properties: attachment: $ref: '#/components/schemas/ContentArray_3' comment: $ref: '#/components/schemas/ContentArray_3' page: $ref: '#/components/schemas/ContentArray_3' _expandable: type: object additionalProperties: true properties: attachment: type: string comment: type: string page: type: string _links: $ref: '#/components/schemas/GenericLinks' VersionRestore: required: - operationKey - params type: object properties: operationKey: type: string description: Set to 'restore'. enum: - restore example: restore params: required: - message - versionNumber type: object properties: versionNumber: type: integer description: The version number to be restored. format: int32 message: type: string description: Description for the version. restoreTitle: type: boolean default: false description: If true, the content title will be the same as the title from the version restored. Defaults to `false`. example: example_value ContentHistory: required: - latest type: object nullable: true properties: latest: type: boolean example: true createdBy: $ref: '#/components/schemas/User' ownedBy: $ref: '#/components/schemas/User' lastOwnedBy: $ref: '#/components/schemas/User' createdDate: type: string format: date-time example: '2026-01-15T10:30:00Z' lastUpdated: $ref: '#/components/schemas/Version' previousVersion: $ref: '#/components/schemas/Version' contributors: type: object properties: publishers: $ref: '#/components/schemas/UsersUserKeys' example: example_value nextVersion: $ref: '#/components/schemas/Version' _expandable: type: object properties: lastUpdated: type: string previousVersion: type: string contributors: type: string nextVersion: type: string ownedBy: type: string lastOwnedBy: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' Group_2: required: - name - type - id type: object properties: type: type: string default: group enum: - group name: type: string id: type: string _links: $ref: '#/components/schemas/GenericLinks' ScreenLookAndFeel: required: - background type: object properties: background: type: string example: example_value backgroundAttachment: type: string nullable: true example: example_value backgroundBlendMode: type: string nullable: true example: example_value backgroundClip: type: string nullable: true example: example_value backgroundColor: type: string nullable: true example: example_value backgroundImage: type: string nullable: true example: example_value backgroundOrigin: type: string nullable: true example: example_value backgroundPosition: type: string nullable: true example: example_value backgroundRepeat: type: string nullable: true example: example_value backgroundSize: type: string nullable: true example: example_value layer: type: object properties: width: type: string height: type: string nullable: true example: example_value gutterTop: type: string nullable: true example: example_value gutterRight: type: string nullable: true example: example_value gutterBottom: type: string nullable: true example: example_value gutterLeft: type: string nullable: true example: example_value ContentRestriction_3: required: - _expandable - _links - operation type: object properties: operation: type: string enum: - administer - copy - create - delete - export - move - purge - purge_version - read - restore - update - use restrictions: type: object properties: user: $ref: '#/components/schemas/UserArray_2' group: $ref: '#/components/schemas/GroupArray_2' _expandable: type: object properties: user: type: string group: type: string content: $ref: '#/components/schemas/Content_3' _expandable: type: object properties: restrictions: type: string content: type: string _links: $ref: '#/components/schemas/GenericLinks' Group: required: - name - type - id type: object properties: type: type: string default: group enum: - group example: group name: type: string example: Example Title id: type: string example: abc123 _links: $ref: '#/components/schemas/GenericLinks' ContentPropertyArray: required: - _links - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/ContentProperty' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 _links: $ref: '#/components/schemas/GenericLinks' UserArray: required: - results type: object properties: results: type: array items: $ref: '#/components/schemas/User' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 totalSize: type: integer format: int64 default: 0 description: 'This property will return total count of the objects before pagination is applied. This value is returned if `shouldReturnTotalSize` is set to `true`.' example: 10 _links: $ref: '#/components/schemas/GenericLinks' OperationCheckResult_2: required: - operation - targetType type: object properties: operation: type: string description: The operation itself. enum: - administer - archive - clear_permissions - copy - create - create_space - delete - export - move - purge - purge_version - read - restore - restrict_content - update - use targetType: type: string description: The space or content type that the operation applies to. Could be one of- - application - page - blogpost - comment - attachment - space description: An operation and the target entity that it applies to, e.g. create page. PermissionSubjectWithGroupId: required: - identifier - type type: object properties: type: type: string enum: - user - group example: user identifier: type: string description: 'for `type=user`, identifier should be user''s accountId or `anonymous` for anonymous users for `type=group`, identifier should be ID of the group' example: example_value description: The user or group that the permission applies to. Label: required: - id - label - name - prefix type: object properties: prefix: type: string example: example_value name: type: string example: Example Title id: type: string example: abc123 label: type: string example: Example Title ContentHistory_3: required: - latest type: object nullable: true properties: latest: type: boolean createdBy: $ref: '#/components/schemas/User_2' ownedBy: $ref: '#/components/schemas/User_2' lastOwnedBy: $ref: '#/components/schemas/User_2' createdDate: type: string format: date-time lastUpdated: $ref: '#/components/schemas/Version_3' previousVersion: $ref: '#/components/schemas/Version_3' contributors: type: object properties: publishers: $ref: '#/components/schemas/UsersUserKeys_2' nextVersion: $ref: '#/components/schemas/Version_3' _expandable: type: object properties: lastUpdated: type: string previousVersion: type: string contributors: type: string nextVersion: type: string ownedBy: type: string lastOwnedBy: type: string _links: $ref: '#/components/schemas/GenericLinks' ContentBody_2: required: - representation - value type: object properties: value: type: string representation: type: string enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format - raw embeddedContent: type: array items: $ref: '#/components/schemas/EmbeddedContent' webresource: $ref: '#/components/schemas/WebResourceDependencies' mediaToken: type: object properties: collectionIds: type: array items: type: string contentId: type: string expiryDateTime: type: string fileIds: type: array items: type: string token: type: string _expandable: type: object properties: content: type: string embeddedContent: type: string webresource: type: string mediaToken: type: string _links: $ref: '#/components/schemas/GenericLinks' ContentProperty: required: - _links - id - key - value type: object additionalProperties: true properties: id: type: string example: abc123 key: type: string example: example_value value: oneOf: - type: array items: type: string - type: boolean - type: object additionalProperties: true properties: {} - type: string description: The value of the content property. This can be empty or a complex object. example: example_value version: required: - message - minorEdit - number - when type: object additionalProperties: true properties: when: type: string format: date-time message: type: string number: type: integer format: int32 minorEdit: type: boolean contentTypeModified: type: boolean description: True if content type is modifed in this version (e.g. page to blog) example: example_value _links: $ref: '#/components/schemas/GenericLinks' _expandable: type: object properties: content: type: string additionalProperties: type: string example: example_value ContentChildren: type: object additionalProperties: true properties: attachment: $ref: '#/components/schemas/ContentArray' comment: $ref: '#/components/schemas/ContentArray' page: $ref: '#/components/schemas/ContentArray' _expandable: type: object additionalProperties: true properties: attachment: type: string comment: type: string page: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' LookAndFeel: required: - bordersAndDividers - content - header - headings - links - menus type: object properties: headings: required: - color type: object properties: color: type: string example: example_value links: required: - color type: object properties: color: type: string example: example_value menus: $ref: '#/components/schemas/MenusLookAndFeel' header: $ref: '#/components/schemas/HeaderLookAndFeel' horizontalHeader: $ref: '#/components/schemas/HorizontalHeaderLookAndFeel' content: $ref: '#/components/schemas/ContentLookAndFeel' bordersAndDividers: required: - color type: object properties: color: type: string example: example_value spaceReference: type: object nullable: true example: example_value OperationCheckResult: required: - operation - targetType type: object properties: operation: type: string description: The operation itself. enum: - administer - archive - clear_permissions - copy - create - create_space - delete - export - move - purge - purge_version - read - restore - restrict_content - update - use example: administer targetType: type: string description: The space or content type that the operation applies to. Could be one of- - application - page - blogpost - comment - attachment - space example: example_value description: An operation and the target entity that it applies to, e.g. create page. AsyncContentBody: type: object properties: value: type: string example: example_value representation: type: string enum: - view - export_view - styled_view - storage - editor - editor2 - anonymous_export_view - wiki - atlas_doc_format example: view renderTaskId: type: string example: '500123' error: type: string example: example_value status: description: Rerunning is reserved for when the job is working, but there is a previous run's value in the cache. You may choose to continue polling, or use the cached value. type: string enum: - WORKING - QUEUED - FAILED - COMPLETED - RERUNNING example: WORKING embeddedContent: type: array items: $ref: '#/components/schemas/EmbeddedContent' example: [] webresource: $ref: '#/components/schemas/WebResourceDependencies' mediaToken: type: object properties: collectionIds: type: array items: type: string contentId: type: string expiryDateTime: type: string fileIds: type: array items: type: string token: type: string example: example_value _expandable: type: object properties: content: type: string embeddedContent: type: string webresource: type: string mediaToken: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' ContentLookAndFeel: type: object properties: screen: $ref: '#/components/schemas/ScreenLookAndFeel' container: $ref: '#/components/schemas/ContainerLookAndFeel' header: $ref: '#/components/schemas/ContainerLookAndFeel' body: $ref: '#/components/schemas/ContainerLookAndFeel' NavigationLookAndFeel: required: - color - hoverOrFocus type: object nullable: true properties: color: type: string example: example_value highlightColor: type: string nullable: true example: example_value hoverOrFocus: required: - backgroundColor - color type: object properties: backgroundColor: type: string color: type: string example: example_value LabelCreateArray: type: array items: $ref: '#/components/schemas/LabelCreate' ContentChildren_2: type: object additionalProperties: true properties: attachment: $ref: '#/components/schemas/ContentArray_2' comment: $ref: '#/components/schemas/ContentArray_2' page: $ref: '#/components/schemas/ContentArray_2' _expandable: type: object additionalProperties: true properties: attachment: type: string comment: type: string page: type: string _links: $ref: '#/components/schemas/GenericLinks' LabelArray: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Label' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 _links: $ref: '#/components/schemas/GenericLinks' Space: required: - _expandable - _links - key - name - status - type nullable: true type: object properties: id: type: integer format: int64 example: abc123 key: type: string example: example_value name: type: string example: Example Title icon: $ref: '#/components/schemas/Icon' description: type: object properties: plain: $ref: '#/components/schemas/SpaceDescription' view: $ref: '#/components/schemas/SpaceDescription' _expandable: type: object properties: view: type: string plain: type: string example: A sample description. homepage: $ref: '#/components/schemas/Content' type: type: string example: example_value metadata: type: object properties: labels: $ref: '#/components/schemas/LabelArray' _expandable: type: object example: example_value operations: type: array items: $ref: '#/components/schemas/OperationCheckResult' example: [] permissions: type: array items: $ref: '#/components/schemas/SpacePermission' example: [] status: type: string example: example_value settings: $ref: '#/components/schemas/SpaceSettings' theme: $ref: '#/components/schemas/Theme' lookAndFeel: $ref: '#/components/schemas/LookAndFeel' history: required: - createdDate type: object properties: createdDate: type: string format: date-time createdBy: $ref: '#/components/schemas/User' example: example_value _expandable: type: object properties: settings: type: string metadata: type: string operations: type: string lookAndFeel: type: string permissions: type: string icon: type: string description: type: string theme: type: string history: type: string homepage: type: string identifiers: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' GenericLinks: type: object additionalProperties: oneOf: - type: object additionalProperties: true - type: string ContentPermissionRequest: required: - operation - subject type: object properties: subject: $ref: '#/components/schemas/PermissionSubjectWithGroupId' operation: type: string description: The content permission operation to check. enum: - read - update - delete example: read description: This object represents the request for the content permission check API. SearchFieldLookAndFeel_2: required: - backgroundColor - color type: object nullable: true properties: backgroundColor: type: string color: type: string SearchFieldLookAndFeel: required: - backgroundColor - color type: object nullable: true properties: backgroundColor: type: string example: example_value color: type: string example: example_value EmbeddedContent: type: object additionalProperties: true properties: entityId: type: integer format: int64 example: '500123' entityType: type: string example: example_value entity: $ref: '#/components/schemas/Embeddable' WebResourceDependencies: type: object properties: _expandable: type: object additionalProperties: true properties: uris: oneOf: - type: string - type: object additionalProperties: true example: example_value keys: type: array items: type: string example: [] contexts: type: array items: type: string example: [] uris: type: object properties: all: oneOf: - type: array items: type: string - type: string css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string _expandable: type: object additionalProperties: true properties: css: oneOf: - type: array items: type: string - type: string js: oneOf: - type: array items: type: string - type: string example: example_value tags: type: object properties: all: type: string css: type: string data: type: string js: type: string _expandable: type: object additionalProperties: true example: example_value superbatch: $ref: '#/components/schemas/SuperBatchWebResources' ContentArray_3: required: - _links - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Content_3' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' GlobalSpaceIdentifier: type: object nullable: true required: - spaceIdentifier properties: spaceIdentifier: type: string LookAndFeel_2: required: - bordersAndDividers - content - header - headings - links - menus type: object properties: headings: required: - color type: object properties: color: type: string links: required: - color type: object properties: color: type: string menus: $ref: '#/components/schemas/MenusLookAndFeel_2' header: $ref: '#/components/schemas/HeaderLookAndFeel_2' horizontalHeader: $ref: '#/components/schemas/HorizontalHeaderLookAndFeel_2' content: $ref: '#/components/schemas/ContentLookAndFeel' bordersAndDividers: required: - color type: object properties: color: type: string spaceReference: type: object nullable: true Theme: required: - themeKey type: object properties: themeKey: type: string example: example_value name: type: string example: Example Title description: type: string example: A sample description. icon: $ref: '#/components/schemas/Icon' _links: $ref: '#/components/schemas/GenericLinks' TopNavigationLookAndFeel_2: required: - highlightColor type: object properties: color: type: string nullable: true highlightColor: type: string hoverOrFocus: type: object properties: backgroundColor: type: string color: type: string ContentPropertyCreate: required: - key - value type: object additionalProperties: true properties: key: maxLength: 255 type: string description: The key of the new property. example: example_value value: oneOf: - type: array items: type: string - type: boolean - type: object additionalProperties: true properties: {} - type: string description: The value of the content property. This can be empty or a complex object. example: example_value LabelArray_2: required: - results - size type: object properties: results: type: array items: $ref: '#/components/schemas/Label_2' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' Space_2: required: - _expandable - _links - key - name - status - type nullable: true type: object properties: id: type: integer format: int64 key: type: string name: type: string icon: $ref: '#/components/schemas/Icon_2' description: type: object properties: plain: $ref: '#/components/schemas/SpaceDescription_2' view: $ref: '#/components/schemas/SpaceDescription_2' _expandable: type: object properties: view: type: string plain: type: string homepage: $ref: '#/components/schemas/Content_3' type: type: string metadata: type: object properties: labels: $ref: '#/components/schemas/LabelArray_2' _expandable: type: object operations: type: array items: $ref: '#/components/schemas/OperationCheckResult_2' permissions: type: array items: $ref: '#/components/schemas/SpacePermission_2' status: type: string settings: $ref: '#/components/schemas/SpaceSettings_2' theme: $ref: '#/components/schemas/Theme_2' lookAndFeel: $ref: '#/components/schemas/LookAndFeel_2' history: required: - createdDate type: object properties: createdDate: type: string format: date-time createdBy: $ref: '#/components/schemas/User_2' _expandable: type: object properties: settings: type: string metadata: type: string operations: type: string lookAndFeel: type: string permissions: type: string icon: type: string description: type: string theme: type: string history: type: string homepage: type: string identifiers: type: string _links: $ref: '#/components/schemas/GenericLinks' pipeline_cache_content_uri: type: object title: Pipeline Cache Content URI description: A representation of the location of pipeline cache content. properties: uri: type: string format: uri description: The uri for pipeline cache content. example: https://www.example.com Container: type: object nullable: true additionalProperties: true description: 'Container for content. This can be either a space (containing a page or blogpost) or a page/blog post (containing an attachment or comment)' User: required: - type type: object additionalProperties: true nullable: true properties: type: type: string enum: - known - unknown - anonymous - user example: known username: $ref: '#/components/schemas/GenericUserName' userKey: $ref: '#/components/schemas/GenericUserKey' accountId: $ref: '#/components/schemas/GenericAccountId' accountType: type: string description: The account type of the user, may return empty string if unavailable. App is if the user is a bot user created on behalf of an Atlassian app. enum: - atlassian - app - '' example: atlassian email: nullable: true type: string description: The email address of the user. Depending on the user's privacy setting, this may return an empty string. example: user@example.com publicName: type: string description: The public name or nickname of the user. Will always contain a value. example: example_value profilePicture: $ref: '#/components/schemas/Icon' displayName: nullable: true type: string description: The displays name of the user. Depending on the user's privacy setting, this may be the same as publicName. example: example_value timeZone: nullable: true type: string description: This displays user time zone. Depending on the user's privacy setting, this may return null. example: example_value isExternalCollaborator: type: boolean description: Whether the user is an external collaborator user example: true externalCollaborator: type: boolean description: Whether the user is an external collaborator user example: true operations: nullable: true type: array items: $ref: '#/components/schemas/OperationCheckResult' example: [] details: $ref: '#/components/schemas/UserDetails' personalSpace: $ref: '#/components/schemas/Space' _expandable: type: object properties: operations: type: string details: type: string personalSpace: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' ContentHistory_2: required: - latest type: object nullable: true properties: latest: type: boolean createdBy: $ref: '#/components/schemas/User' ownedBy: $ref: '#/components/schemas/User' lastOwnedBy: $ref: '#/components/schemas/User' createdDate: type: string format: date-time lastUpdated: $ref: '#/components/schemas/Version_2' previousVersion: $ref: '#/components/schemas/Version_2' contributors: type: object properties: publishers: $ref: '#/components/schemas/UsersUserKeys' nextVersion: $ref: '#/components/schemas/Version_2' _expandable: type: object properties: lastUpdated: type: string previousVersion: type: string contributors: type: string nextVersion: type: string ownedBy: type: string lastOwnedBy: type: string _links: $ref: '#/components/schemas/GenericLinks' GroupArray: required: - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/Group' example: [] start: type: integer format: int32 example: 10 limit: type: integer format: int32 example: 10 size: type: integer format: int32 example: 10 Content: required: - status - type nullable: true type: object additionalProperties: true properties: id: type: string example: abc123 type: type: string description: Can be "page", "blogpost", "attachment" or "content" example: example_value status: type: string example: example_value title: type: string example: Example Title space: $ref: '#/components/schemas/Space' history: $ref: '#/components/schemas/ContentHistory' version: $ref: '#/components/schemas/Version' ancestors: nullable: true type: array items: $ref: '#/components/schemas/Content' example: [] operations: type: array items: $ref: '#/components/schemas/OperationCheckResult' example: [] children: $ref: '#/components/schemas/ContentChildren' childTypes: $ref: '#/components/schemas/ContentChildType' descendants: $ref: '#/components/schemas/ContentChildren' container: $ref: '#/components/schemas/Container' body: type: object properties: view: $ref: '#/components/schemas/ContentBody' export_view: $ref: '#/components/schemas/ContentBody' styled_view: $ref: '#/components/schemas/ContentBody' storage: $ref: '#/components/schemas/ContentBody' wiki: $ref: '#/components/schemas/ContentBody' editor: $ref: '#/components/schemas/ContentBody' editor2: $ref: '#/components/schemas/ContentBody' anonymous_export_view: $ref: '#/components/schemas/ContentBody' atlas_doc_format: $ref: '#/components/schemas/ContentBody' dynamic: $ref: '#/components/schemas/ContentBody' raw: $ref: '#/components/schemas/ContentBody' _expandable: type: object properties: editor: type: string view: type: string export_view: type: string styled_view: type: string storage: type: string editor2: type: string anonymous_export_view: type: string atlas_doc_format: type: string wiki: type: string dynamic: type: string raw: type: string example: example_value restrictions: type: object properties: read: $ref: '#/components/schemas/ContentRestriction' update: $ref: '#/components/schemas/ContentRestriction' _expandable: type: object properties: read: type: string update: type: string _links: $ref: '#/components/schemas/GenericLinks' example: example_value metadata: $ref: '#/components/schemas/ContentMetadata' macroRenderedOutput: type: object additionalProperties: type: object example: example_value extensions: type: object example: example_value _expandable: type: object properties: childTypes: type: string container: type: string metadata: type: string operations: type: string children: type: string restrictions: type: string history: type: string ancestors: type: string body: type: string version: type: string descendants: type: string space: type: string extensions: type: string schedulePublishDate: type: string schedulePublishInfo: type: string macroRenderedOutput: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' description: Base object for all content types. Label_2: required: - id - label - name - prefix type: object properties: prefix: type: string name: type: string id: type: string label: type: string GenericUserName: type: string nullable: true description: 'This property is no longer available and will be removed from the documentation soon. Use `accountId` instead. See the [deprecation notice](/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' ContentBlueprintDraft: required: - title - type - version type: object properties: version: required: - number type: object properties: number: type: integer description: The version number. Set this to `1`. format: int32 additionalProperties: true description: The version for the new content. title: maxLength: 255 type: string description: 'The title of the content. If you don''t want to change the title, set this to the current title of the draft.' type: type: string description: The type of content. Set this to `page`. enum: - page status: type: string description: The status of the content. Set this to `current` or omit it altogether. default: current enum: - current space: required: - key type: object properties: key: type: string description: The key of the space format: int32 additionalProperties: true description: The space for the content. ancestors: type: array description: 'The new ancestor (i.e. parent page) for the content. If you have specified an ancestor, you must also specify a `space` property in the request body for the space that the ancestor is in. Note, if you specify more than one ancestor, the last ID in the array will be selected as the parent page for the content.' items: required: - id type: object properties: id: type: string description: The content ID of the ancestor. nullable: true additionalProperties: true SpaceSettings: nullable: true required: - _links - routeOverrideEnabled type: object properties: routeOverrideEnabled: type: boolean description: 'Defines whether an override for the space home should be used. This is used in conjunction with a space theme provided by an app. For example, if this property is set to true, a theme can display a page other than the space homepage when users visit the root URL for a space. This property allows apps to provide content-only theming without overriding the space home.' example: true editor: required: - page - blogpost - default type: object properties: page: type: string blogpost: type: string default: type: string example: example_value spaceKey: type: string example: example_value _links: $ref: '#/components/schemas/GenericLinks' parameters: userLookupAccountId: name: accountId in: query description: 'The account ID of the user. The accountId uniquely identifies the user across all Atlassian products. For example, `384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192`.' schema: type: string contentExpand: name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. - `childTypes.all` returns whether the content has attachments, comments, or child pages/whiteboards. Use this if you only need to check whether the content has children of a particular type. - `childTypes.attachment` returns whether the content has attachments. - `childTypes.comment` returns whether the content has comments. - `childTypes.page` returns whether the content has child pages. - `container` returns the space that the content is in. This is the same as the information returned by [Get space](#api-space-spaceKey-get). - `metadata.currentuser` returns information about the current user in relation to the content, including when they last viewed it, modified it, contributed to it, or added it as a favorite. - `metadata.properties` returns content properties that have been set via the Confluence REST API. - `metadata.labels` returns the labels that have been added to the content. - `metadata.frontend` this property is only used by Atlassian. - `operations` returns the operations for the content, which are used when setting permissions. - `children.page` returns pages that are descendants at the level immediately below the content. - `children.attachment` returns all attachments for the content. - `children.comment` returns all comments on the content. - `restrictions.read.restrictions.user` returns the users that have permission to read the content. - `restrictions.read.restrictions.group` returns the groups that have permission to read the content. Note that this may return deleted groups, because deleting a group doesn''t remove associated restrictions. - `restrictions.update.restrictions.user` returns the users that have permission to update the content. - `restrictions.update.restrictions.group` returns the groups that have permission to update the content. Note that this may return deleted groups because deleting a group doesn''t remove associated restrictions. - `history` returns the history of the content, including the date it was created. - `history.lastUpdated` returns information about the most recent update of the content, including who updated it and when it was updated. - `history.previousVersion` returns information about the update prior to the current content update. - `history.contributors` returns all of the users who have contributed to the content. - `history.nextVersion` returns information about the update after to the current content update. - `ancestors` returns the parent content, if the content is a page or whiteboard. - `body` returns the body of the content in different formats, including the editor format, view format, and export format. - `body.storage` returns the body of content in storage format. - `body.view` returns the body of content in view format. - `version` returns information about the most recent update of the content, including who updated it and when it was updated. - `descendants.page` returns pages that are descendants at any level below the content. - `descendants.attachment` returns all attachments for the content, same as `children.attachment`. - `descendants.comment` returns all comments on the content, same as `children.comment`. - `space` returns the space that the content is in. This is the same as the information returned by [Get space](#api-space-spaceKey-get). In addition, the following comment-specific expansions can be used: - `extensions.inlineProperties` returns inline comment-specific properties. - `extensions.resolution` returns the resolution status of each comment.' style: form explode: false schema: type: array items: type: string userLookupUsername: name: username in: query deprecated: true description: 'This parameter is no longer available and will be removed from the documentation soon. Use `accountId` instead. See the [deprecation notice](/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' schema: type: string contentExpandWithSubExpandLimit: name: expand in: query description: 'A multi-value parameter indicating which properties of the content to expand. Maximum sub-expansions allowed is `8`. - `childTypes.all` returns whether the content has attachments, comments, or child pages/whiteboards. Use this if you only need to check whether the content has children of a particular type. - `childTypes.attachment` returns whether the content has attachments. - `childTypes.comment` returns whether the content has comments. - `childTypes.page` returns whether the content has child pages. - `container` returns the space that the content is in. This is the same as the information returned by [Get space](#api-space-spaceKey-get). - `metadata.currentuser` returns information about the current user in relation to the content, including when they last viewed it, modified it, contributed to it, or added it as a favorite. - `metadata.properties` returns content properties that have been set via the Confluence REST API. - `metadata.labels` returns the labels that have been added to the content. - `metadata.frontend` this property is only used by Atlassian. - `operations` returns the operations for the content, which are used when setting permissions. - `children.page` returns pages that are descendants at the level immediately below the content. - `children.attachment` returns all attachments for the content. - `children.comment` returns all comments on the content. - `restrictions.read.restrictions.user` returns the users that have permission to read the content. - `restrictions.read.restrictions.group` returns the groups that have permission to read the content. Note that this may return deleted groups, because deleting a group doesn''t remove associated restrictions. - `restrictions.update.restrictions.user` returns the users that have permission to update the content. - `restrictions.update.restrictions.group` returns the groups that have permission to update the content. Note that this may return deleted groups because deleting a group doesn''t remove associated restrictions. - `history` returns the history of the content, including the date it was created. - `history.lastUpdated` returns information about the most recent update of the content, including who updated it and when it was updated. - `history.previousVersion` returns information about the update prior to the current content update. - `history.contributors` returns all of the users who have contributed to the content. - `history.nextVersion` returns information about the update after to the current content update. - `ancestors` returns the parent content, if the content is a page or whiteboard. - `body` returns the body of the content in different formats, including the editor format, view format, and export format. - `body.storage` returns the body of content in storage format. - `body.view` returns the body of content in view format. - `version` returns information about the most recent update of the content, including who updated it and when it was updated. - `descendants.page` returns pages that are descendants at any level below the content. - `descendants.attachment` returns all attachments for the content, same as `children.attachment`. - `descendants.comment` returns all comments on the content, same as `children.comment`. - `space` returns the space that the content is in. This is the same as the information returned by [Get space](#api-space-spaceKey-get). In addition, the following comment-specific expansions can be used: - `extensions.inlineProperties` returns inline comment-specific properties. - `extensions.resolution` returns the resolution status of each comment.' style: form explode: false schema: type: array items: type: string userLookupKey: name: key in: query deprecated: true description: 'This parameter is no longer available and will be removed from the documentation soon. Use `accountId` instead. See the [deprecation notice](/cloud/confluence/deprecation-notice-user-privacy-api-migration-guide/) for details.' schema: type: string examples: pipeline-cache-content-uri: uri: https://example.com/pipeline/cache/content/12345 securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: API Key description: Use an Atlassian API key as a Bearer token. Create API keys at https://admin.atlassian.com. oauth2: type: oauth2 description: OAuth 2.0 authorization for Atlassian Cloud APIs. flows: authorizationCode: authorizationUrl: https://auth.atlassian.com/authorize tokenUrl: https://auth.atlassian.com/oauth/token scopes: read:org:admin: Read organization information. write:org:admin: Modify organization settings. read:user:admin: Read user information. write:user:admin: Modify user accounts. read:policy:admin: Read organization policies. write:policy:admin: Modify organization policies. read:event:admin: Read organization events. externalDocs: description: Atlassian Admin REST API Documentation url: https://developer.atlassian.com/cloud/admin/organization/rest/intro/