Atlassian Content API

The Content API from Atlassian — 26 operation(s) for content.

Operations 10

GET /wiki/rest/api/content Atlassian Get Content #
POST /wiki/rest/api/content Atlassian Create Content #
POST /wiki/rest/api/content/archive Atlassian Archive Pages #
PUT /wiki/rest/api/content/blueprint/instance/{draftId} Atlassian Publish Shared Draft #
POST /wiki/rest/api/content/blueprint/instance/{draftId} Atlassian Publish Legacy Draft #
GET /wiki/rest/api/content/search Atlassian Search Content By Cql #
GET /wiki/rest/api/content/{id} Atlassian Get Content By Id #
PUT /wiki/rest/api/content/{id} Atlassian Update Content #
DELETE /wiki/rest/api/content/{id} Atlassian Delete Content #
GET /wiki/rest/api/content/{id}/history Atlassian Get Content History #

Documentation

📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-addon/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-webhooks/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-pullrequests/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-repositories/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-snippets/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-workspaces/
📖
Documentation
https://developer.atlassian.com/cloud/bitbucket/rest/api-group-users/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-analytics/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-audit/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/connect-modules/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v2/intro/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-content-body/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-content-states/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-group/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-inline-tasks
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-content-labels/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-long-running-task/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-relation/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-search/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-settings/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-space/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-template/
📖
Documentation
https://developer.atlassian.com/cloud/confluence/rest/v2/api-group-user/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-announcement-banner/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-custom-field-values--apps-/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-app-openapi
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-application-roles/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-attachments/
📖
Documentation
https://developer.atlassian.com/server/framework/atlassian-sdk/audit/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-avatars/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-classification-levels/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-comments/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-components/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jira-settings/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/getting-started-with-connect/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/connect-api-migration/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-service-registry/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-custom-field-options/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-dashboards/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/data-security-policy-developer-guide/
📖
Documentation
https://developer.atlassian.com/platform/forge/events-reference/jira/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jira-expressions/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-fields/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-field-configurations/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-filters/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/forge/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-groups/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-group-and-user-picker/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-groups/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-links/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-security-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issue-types/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-type-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-type-screen-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-search/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-labels/
📖
Documentation
https://developer.atlassian.com/platform/marketplace/license-api-for-cloud-apps/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-license-metrics/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permissions/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-myself/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-notification-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-permission-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issue-priorities/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-projects/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-categories/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-key-and-name-validation/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-resolutions/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-project-roles/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-screens/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-screen-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-security-level/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-server-info/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-statuses/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-status-categories/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-tasks/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-ui-modifications--apps-/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-avatars/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-users/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-versions/
📖
Documentation
https://developer.atlassian.com/server/jira/platform/webhooks/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflows/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-workflow-schemes/
📖
Documentation
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-worklogs/
📖
Documentation
https://developer.atlassian.com/cloud/admin/organization/rest/
📖
Documentation
https://developer.atlassian.com/cloud/admin/user-management/rest/
📖
Documentation
https://developer.atlassian.com/cloud/admin/user-provisioning/rest/

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-hook-events-paginated_hook_events-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-pull-requests-a_pullrequest_comment_task-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-repositories-account-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-snippets-account-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-teams-account-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-user-account-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-bitbucket-workspaces-account-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-content-body-async-content-body-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-content-states-async-id-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-group-group-array-with-links-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-inline-tasks-task-page-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-longtask-long-task-status-with-links-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-search-search-page-response-search-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-space-content-state-settings-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-template-blueprint-template-array-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-confluence-user-account-id-email-record-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-schema/atlassian-admin-domain-page-schema.json

Other Resources

🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/graphql/atlassian-graphql.md
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-hook-events-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-pull-requests-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-repositories-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-snippets-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-teams-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-user-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-bitbucket-workspaces-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-audit-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-content-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-content-body-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-content-states-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-group-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-inline-tasks-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-longtask-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-relation-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-search-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-settings-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-space-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-template-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-confluence-user-context.jsonld
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/json-ld/atlassian-admin-context.jsonld

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/atlassian-content-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

atlassian-content-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Atlassian The Confluence Cloud REST Content API
  description: This document describes the REST API and resources provided by Confluence. The REST APIs are for developers who want to integrate Confluence into their application and for administrators who want to script interactions with the Confluence server.Confluence's REST APIs provide access to resources (data entities) via URI paths. To use a REST API, your application will make an HTTP request and parse the response. The response format is JSON. Your methods will be the standard HTTP methods like GET, PUT, POST and DELETE. Because the REST API is based on open standards, you can use any web development language to access the API.
  termsOfService: https://atlassian.com/terms/
  version: 1.0.0
servers:
- url: //your-domain.atlassian.net
tags:
- name: Content
  description: ''
paths:
  /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/).<br><br>Returns all content in a Confluence instance.<br><br>By default, the following objects are expanded: `space`, `history`, `version`.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to access the Confluence site (''Can use'' global permission).<br>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 <code>page</code> 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

          <code>blogpost</code> type. Format: <code>yyyy-mm-dd</code>.'
        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'
        '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/).<br><br>Creates a new piece of content or publishes an existing draft.<br><br>To publish a draft, add the `id` and `status` properties to the body of the request.<br>Set the `id` to the ID of the draft and set the `status` to ''current''. When the<br>request is sent, a new piece of content will be created and the metadata from the<br>draft will be transferred into it.<br><br>By default, the following objects are expanded: `space`, `history`, `version`.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: ''Add'' permission for the<br>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'
        '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
  /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.<br>This API accepts the archival request and returns a task ID.<br>The archival process happens asynchronously.<br>Use the /longtask/ REST API to get the copy task status.<br><br>Each content ID needs to resolve to page objects that are not already in an archived state.<br>The content IDs need not belong to the same space.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>'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.<br><br>By default, the following objects are expanded: `body.storage`, `history`, `space`, `version`, `ancestors`.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to view the draft and ''Add'' permission for the space that<br>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'
        '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<br>will eventually be removed in favor of shared drafts. For now, this method<br>works the same as [Publish shared draft](#api-content-blueprint-instance-draftId-put).<br><br>By default, the following objects are expanded: `body.storage`, `history`, `space`, `version`, `ancestors`.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to view the draft and ''Add'' permission for the space that<br>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'
        '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/search:
    get:
      tags:
      - Content
      summary: Atlassian Search Content By Cql
      description: 'Returns the list of content that matches a Confluence Query Language<br>(CQL) query. For information on CQL, see:<br>[Advanced searching using CQL](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/).<br><br>Example initial call:<br>```<br>/wiki/rest/api/content/search?cql=type=page&limit=25<br>```<br><br>Example response:<br>```<br>{<br>  "results": [<br>    { ... },<br>    { ... },<br>    ...<br>    { ... }<br>  ],<br>  "limit": 25,<br>  "size": 25,<br>  ...<br>  "_links": {<br>    "base": "",<br>    "context": "",<br>    "next": "/rest/api/content/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg",<br>    "self": ""<br>  }<br>}<br>```<br><br>When additional results are available, returns `next` and `prev` URLs to retrieve them in subsequent calls. The URLs each contain a cursor that points to the appropriate set of results. Use `limit` to specify the number of results returned in each call.<br>Example subsequent call (taken from example response):<br>```<br>/wiki/rest/api/content/search?cql=type=page&limit=25&cursor=raNDoMsTRiNg<br>```<br>The response to this will have a `prev` URL similar to the `next` in the example response.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to access the Confluence site (''Can use'' global permission).<br>Only content that the user has permission to view will be returned.'
      operationId: atlassianSearchcontentbycql
      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
  /wiki/rest/api/content/{id}:
    get:
      tags:
      - Content
      summary: Atlassian Get Content By Id
      deprecated: true
      description: 'Deprecated, use [Confluence''s v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns a single piece of content, like a page or a blog post.<br><br>By default, the following objects are expanded: `space`, `history`, `version`.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to view the content. If the content is a blog post, ''View'' permission<br>for the space is required.'
      operationId: atlassianGetcontentbyid
      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.


          - <code>current</code> renders the latest version of the embedded content.

          - <code>version-at-save</code> 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
    put:
      tags:
      - Content
      summary: Atlassian Update Content
      deprecated: true
      description: Deprecated, use [Confluence's v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Updates a piece of content. Use this method to update the title or body<br>of a piece of content, change the status, change the parent page, and more.<br><br>Note, updating draft content is currently not supported.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>Permission to update the content.
      operationId: atlassianUpdatecontent
      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
    delete:
      tags:
      - Content
      summary: Atlassian Delete Content
      deprecated: true
      description: Deprecated, use [Confluence's v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Moves a piece of content to the space's trash or purges it from the trash,<br>depending on the content's type and status:<br><br>- If the content's type is `page`,`blogpost`, or `attachment` and its status is `current`,<br>it will be trashed.<br>- If the content's type is `page`,`blogpost`, or `attachment` and its status is `trashed`,<br>the content will be purged from the trash and deleted permanently. Note,<br>you must also set the `status` query parameter to `trashed` in your request.<br>- If the content's type is `comment`, it will be deleted<br>permanently without being trashed.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:<br>'Delete' permission for the space that the content is in.
      operationId: atlassianDeletecontent
      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
  /wiki/rest/api/content/{id}/history:
    get:
      tags:
      - Content
      summary: Atlassian Get Content History
      deprecated: true
      description: 'Deprecated, use [Confluence''s v2 API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns the most recent update for a piece of content.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**: Permission to view the content.'
      operationId: atlassianGethistoryforcontent
      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':
        

# --- truncated at 32 KB (105 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/openapi/atlassian-content-api-openapi.yml