Atlassian Confluence Space API
The Atlassian Confluence Space API enables programmatic management of Confluence spaces including creation, permissions, and content organization.
The Atlassian Confluence Space API enables programmatic management of Confluence spaces including creation, permissions, and content organization.
openapi: 3.0.1
info:
title: 'Atlassian wiki/rest/api/space/'
description: Needs description.
termsOfService: https://atlassian.com/terms/
version: 1.0.0
externalDocs:
description: The online and complete version of the Confluence Cloud REST API docs.
url: https://developer.atlassian.com/cloud/confluence/rest/
servers:
- url: //your-domain.atlassian.net
tags:
- name: Content States
- name: Content Watches
- name: Experimental
- name: Space
- name: Space Permissions
- name: Space Properties
- name: Space Settings
- name: Themes
paths:
/wiki/rest/api/space/_private:
post:
tags:
- Space
summary: Atlassian Create Private Space
description: >-
Creates a new space that is only visible to the creator. This method
is<br>the same as the [Create space](#api-space-post) method with
permissions<br>set to the current user only. Note, currently you cannot
set space<br>labels when creating a
space.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Create Space(s)' global permission.
operationId: atlassianCreateprivatespace
requestBody:
description: The space to be created.
content:
application/json:
schema:
$ref: '#/components/schemas/SpaceCreate'
required: true
responses:
'200':
description: Returned if the space is created.
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
'400':
description: |-
Returned if any of the following is true:
- The request is invalid.
- The space already exists.
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 to create a space.
content: {}
security:
- basicAuth: []
- oAuthDefinitions:
- write:confluence-space
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- write:confluence-space
- scheme: oAuthDefinitions
state: Beta
scopes:
- read:space-details:confluence
- write:space:confluence
- write:space.permission:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-codegen-request-body-name: SpacePrivateCreate
x-atlassian-connect-scope: WRITE
/wiki/rest/api/space/{spaceKey}:
get:
tags:
- Space
summary: Atlassian Get Space
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns
a space. This includes information like the name, description,<br>and
permissions, but not the content in the
space.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'View' permission for the space.
operationId: atlassianGetspace
parameters:
- name: spaceKey
in: path
description: The key of the space to be returned.
required: true
schema:
type: string
- $ref: '#/components/parameters/spaceExpand'
responses:
'200':
description: Returned if the requested space is returned.
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
content: {}
security:
- basicAuth: []
- oAuthDefinitions:
- read:confluence-space.summary
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- read:confluence-space.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:
- Space
summary: Atlassian Update Space
description: >-
Updates the name, description, or homepage of a space.<br><br>- For
security reasons, permissions cannot be updated via the API and<br>must
be changed via the user interface instead.<br>- Currently you cannot
set space labels when updating a
space.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Admin' permission for the space.
operationId: atlassianUpdatespace
parameters:
- name: spaceKey
in: path
description: The key of the space to update.
required: true
schema:
type: string
requestBody:
description: The updated space.
content:
application/json:
schema:
$ref: '#/components/schemas/SpaceUpdate'
required: true
responses:
'200':
description: Returned if the space is updated.
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key
- The calling user does not have permission to update the space.
content: {}
security:
- basicAuth: []
- oAuthDefinitions:
- write:confluence-space
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- write:confluence-space
- scheme: oAuthDefinitions
state: Beta
scopes:
- read:space-details:confluence
- write:space:confluence
- write:space.permission:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-codegen-request-body-name: body
x-atlassian-connect-scope: WRITE
delete:
tags:
- Space
summary: Atlassian Delete Space
description: >-
Deletes a space. Note, the space will be deleted in a long running
task.<br>Therefore, the space may not be deleted yet when this method
has<br>returned. Clients should poll the status link that is returned in
the<br>response until the task
completes.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Admin' permission for the space.
operationId: atlassianDeletespace
parameters:
- name: spaceKey
in: path
description: The key of the space to delete.
required: true
schema:
type: string
responses:
'202':
description: Returns a pointer to the status of the space deletion task.
content:
application/json:
schema:
$ref: '#/components/schemas/LongTask'
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to delete the space.
content: {}
security:
- basicAuth: []
- oAuthDefinitions:
- write:confluence-space
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- write:confluence-space
- scheme: oAuthDefinitions
state: Beta
scopes:
- read:content.metadata:confluence
- delete:space:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-connect-scope: DELETE
/wiki/rest/api/space/{spaceKey}/content:
get:
tags:
- Space
summary: Atlassian Get Content For Space
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 space. The returned content is grouped by
type<br>(pages then blogposts), then ordered by content ID in ascending
order.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'View' permission for the space. Note, the returned list
will only<br>contain content that the current user has permission to
view.
operationId: atlassianGetcontentforspace
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its content.
required: true
schema:
type: string
- name: depth
in: query
description: >-
Filter the results to content at the root level of the space or all
content.
schema:
type: string
default: all
enum:
- all
- root
- $ref: '#/components/parameters/contentExpand'
- 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 content is returned.
content:
application/json:
schema:
type: object
properties:
page:
$ref: '#/components/schemas/ContentArray'
blogpost:
$ref: '#/components/schemas/ContentArray'
_links:
$ref: '#/components/schemas/GenericLinks'
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
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
/wiki/rest/api/space/{spaceKey}/permission:
post:
tags:
- Space Permissions
summary: Atlassian Add New Permission To Space
description: >-
Adds new permission to space.<br><br>If the permission to be added is a
group permission, the group can be identified<br>by its group name or
group id.<br><br>Note: Apps cannot access this REST resource - including
when utilizing user
impersonation.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Admin' permission for the space.
operationId: atlassianAddpermissiontospace
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its content.
required: true
schema:
type: string
requestBody:
description: The permission to be created.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePermissionRequest'
required: true
responses:
'200':
description: Returned if the requested content is returned.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePermissionV2'
'400':
description: |-
Used for various errors. Such as:
- Permission already exists for the given user or group.
- 'read space' permission doesn't exist for the given user or group.
- No group found with the given groupName or groupId
content: {}
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'403':
description: Returned if the user isn't authorized.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
content: {}
x-codegen-request-body-name: body
security:
- basicAuth: []
- oAuthDefinitions:
- read:space.permission:confluence
- write:space.permission:confluence
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- read:space.permission:confluence
- write:space.permission:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: INACCESSIBLE
/wiki/rest/api/space/{spaceKey}/permission/custom-content:
post:
tags:
- Space Permissions
summary: Atlassian Add New Custom Content Permission To Space
description: >-
Adds new custom content permission to space.<br><br>If the permission to
be added is a group permission, the group can be identified<br>by its
group name or group id.<br><br>Note: Only apps can access this REST
resource and only make changes to the respective app
permissions.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Admin' permission for the space.
operationId: atlassianAddcustomcontentpermissions
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its content.
required: true
schema:
type: string
requestBody:
description: The permissions to be created.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePermissionCustomContent'
required: true
responses:
'200':
description: Returned if the requested content is returned.
content: {}
'400':
description: |-
Used for various errors. Such as:
- Permission already exists for the given user or group.
- 'read space' permission doesn't exist for the given user or group.
- No group found with the given groupName or groupId
content: {}
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'403':
description: Returned if the user isn't authorized.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
content: {}
x-codegen-request-body-name: body
security:
- basicAuth: []
- oAuthDefinitions:
- read:space.permission:confluence
- write:space.permission:confluence
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- read:space.permission:confluence
- write:space.permission:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: WRITE
/wiki/rest/api/space/{spaceKey}/permission/{id}:
delete:
tags:
- Space Permissions
summary: Atlassian Remove A Space Permission
description: >-
Removes a space permission. Note that removing Read Space permission for
a user or group will remove all<br>the space permissions for that user
or group.<br><br>Note: Apps cannot access this REST resource - including
when utilizing user
impersonation.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'Admin' permission for the space.
operationId: atlassianRemovepermission
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its content.
required: true
schema:
type: string
- name: id
in: path
description: Id of the permission to be deleted.
required: true
schema:
type: integer
responses:
'204':
description: Permission successfully removed.
content: {}
'400':
description: |-
Used for various errors. Such as:
- All of the admin permissions cannot be removed from a space.
content: {}
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'403':
description: Returned if the user isn't authorized.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no permission with the given id.
- There is no space with the given key.
- The calling user does not have permission to view the space.
content: {}
security:
- basicAuth: []
- oAuthDefinitions:
- write:space.permission:confluence
x-atlassian-oauth2-scopes:
- scheme: oAuthDefinitions
state: Current
scopes:
- write:space.permission:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: INACCESSIBLE
/wiki/rest/api/space/{spaceKey}/content/{type}:
get:
tags:
- Space
summary: Atlassian Get Content By Type For Space
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns
all content of a given type, in a space. The returned content
is<br>ordered by content ID in ascending
order.<br><br>**[Permissions](https://confluence.atlassian.com/x/_AozKw)
required**:<br>'View' permission for the space. Note, the returned list
will only<br>contain content that the current user has permission to
view.
operationId: atlassianGetcontentbytypeforspace
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its content.
required: true
schema:
type: string
- name: type
in: path
description: >-
The type of content to return. `page`, `blogpost`,
`<some_customContentType>`.
required: true
schema:
type: string
- name: depth
in: query
description: |-
Filter the results to content at the root level of the space or all
content.
schema:
type: string
default: all
enum:
- all
- root
- $ref: '#/components/parameters/contentExpand'
- 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 content is returned.
content:
application/json:
schema:
$ref: '#/components/schemas/ContentArray'
'401':
description: |-
Returned if the authentication credentials are incorrect or missing
from the request.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
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
/wiki/rest/api/space/{spaceKey}/property:
get:
tags:
- Space Properties
summary: Atlassian Get Space Properties
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns
all properties for the given space. Space properties are a key-value
storage associated with a space.<br><br>**[Permissions
required](https://confluence.atlassian.com/x/_AozKw)**: ‘View’
permission for the space.
operationId: atlassianGetspaceproperties
parameters:
- name: spaceKey
in: path
description: The key of the space to be queried for its properties.
required: true
schema:
type: string
- name: expand
in: query
description: |-
A multi-value parameter indicating which properties of the space
property to expand. By default, the `version` object is expanded.
- `version` returns information about the version of the content.
- `space` returns the space that the properties are in.
style: form
explode: false
schema:
type: array
items:
type: string
enum:
- version
- space
- name: start
in: query
description: The starting index of the returned objects.
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 space properties are returned.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePropertyArray'
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
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: true
x-atlassian-connect-scope: READ
post:
tags:
- Space Properties
summary: Atlassian Create Space Property
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Creates
a new space property.<br><br>**[Permissions
required](https://confluence.atlassian.com/x/_AozKw)**:<br>‘Admin’
permission for the space.
operationId: atlassianCreatespaceproperty
parameters:
- name: spaceKey
in: path
description: The key of the space that the property will be created in.
required: true
schema:
type: string
requestBody:
description: The space property to be created.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePropertyCreate'
required: true
responses:
'200':
description: Returned if the space property is created.
content:
application/json:
schema:
$ref: '#/components/schemas/SpaceProperty'
'400':
description: |-
Returned if any of the following is true:
- The space already has a value with the given key.
- No property value was provided.
content: {}
'403':
description: Returned if the user does not have 'Admin' permission for the space.
content: {}
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- The calling user does not have permission to view the space.
content: {}
'409':
description: Returned if the key already exists within the space.
content: {}
'413':
description: Returned if the value for the property 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:space.property:confluence
- write:space.property:confluence
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-codegen-request-body-name: body
x-atlassian-connect-scope: WRITE
/wiki/rest/api/space/{spaceKey}/property/{key}:
get:
tags:
- Space Properties
summary: Atlassian Get Space Property
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Returns
a space property.<br><br>**[Permissions
required](https://confluence.atlassian.com/x/_AozKw)**: ‘View’
permission for the space.
operationId: atlassianGetspaceproperty
parameters:
- name: spaceKey
in: path
description: The key of the space that the property is in.
required: true
schema:
type: string
- name: key
in: path
description: The key of the space property.
required: true
schema:
type: string
- name: expand
in: query
description: |-
A multi-value parameter indicating which properties of the space
property to expand. By default, the `version` object is expanded.
- `version` returns information about the version of the content.
- `space` returns the space that the properties are in.
style: form
explode: false
schema:
type: array
items:
type: string
enum:
- version
- space
responses:
'200':
description: Returned if the requested space property is returned.
content:
application/json:
schema:
$ref: '#/components/schemas/SpaceProperty'
'404':
description: |-
Returned if any of the following is true:
- There is no space with the given key.
- There is no property with the given key.
- The calling user does not have permission to view the space.
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: true
x-atlassian-connect-scope: READ
put:
tags:
- Space Properties
summary: Atlassian Update Space Property
deprecated: true
description: >-
Deprecated, use [Confluence's v2
API](https://developer.atlassian.com/cloud/confluence/rest/v2/intro/).<br><br>Updates
a space property. Note, you cannot update the key of a
space<br>property, only the value.<br><br>**[Permissions
required](https://confluence.atlassian.com/x/_AozKw)**:<br>‘Admin’
permission for the space.
operationId: atlassianUpdatespaceproperty
parameters:
- name: spaceKey
in: path
description: The key of the space that the property is in.
required: true
schema:
type: string
- name: key
in: path
description: The key of the property to be updated.
required: true
schema:
type: string
requestBody:
description: The space property being updated.
content:
application/json:
schema:
$ref: '#/components/schemas/SpacePropertyUpdate'
required: true
responses:
'200':
description: Returned if the space property is updated.
content:
application/json:
schema:
$ref: '#/components/schemas/SpaceProperty'
'400':
description: >-
Returned if any of the following is true:
- The given property has a different spaceKey to the one in the
path.
- The property has a different key to the one in the path.
content: {}
'403':
description: |-
Returned if the user does not have permission to edit the space with
the given spaceKey
content: {}
'404':
description: |-
# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/openapi/atlassian-wiki-rest-api-space--openapi-original.yml