openapi: 3.0.1
info:
title: ' atlassian-connect/1/app/module/'
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: Dynamic Modules
paths:
/atlassian-connect/1/app/module/dynamic:
get:
tags:
- Dynamic Modules
summary: Atlassian Get Modules
description: >-
Returns all modules registered dynamically by the calling
app.
**[Permissions](#permissions) required:** Only Connect apps
can make this request.
operationId: atlassianGetmodules
responses:
'200':
description: Returned if the request is successful.
content:
'*/*':
schema:
$ref: '#/components/schemas/ConnectModules'
'401':
description: Returned if the call is not from a Connect app.
content:
'*/*':
schema:
$ref: '#/components/schemas/DynamicModulesErrorMessage'
message:
example: The request is not from a Connect app.
deprecated: false
x-experimental: true
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: INACCESSIBLE
post:
tags:
- Dynamic Modules
summary: Atlassian Register Modules
description: >-
Registers a list of modules. For the list of modules that support
dynamic registration, see [Dynamic
modules](https://developer.atlassian.com/cloud/confluence/dynamic-modules/).
**[Permissions](#permissions)
required:** Only Connect apps can make this request.
operationId: atlassianRegistermodules
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/ConnectModules'
required: true
responses:
'200':
description: Returned if the request is successful.
content: {}
'400':
description: >-
Returned if:
* any of the provided modules is invalid. For example, required
properties are missing.
* any of the modules conflict with registered dynamic modules or
modules defined in the app descriptor. For example, there are
duplicate keys.
Details of the issues encountered are included in the error message.
content:
'*/*':
schema:
$ref: '#/components/schemas/DynamicModulesErrorMessage'
message:
example: >-
Installation failed. The app com.example.app.key has duplicate
module keys: [module-key]. Please contact the app vendor.
'401':
description: Returned if the call is not from a Connect app.
content:
'*/*':
schema:
$ref: '#/components/schemas/DynamicModulesErrorMessage'
message:
example: The request is not from a Connect app.
deprecated: false
x-experimental: true
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-codegen-request-body-name: body
x-atlassian-connect-scope: INACCESSIBLE
delete:
tags:
- Dynamic Modules
summary: Atlassian Remove Modules
description: >-
Remove all or a list of modules registered by the calling
app.
**[Permissions](#permissions) required:** Only Connect apps
can make this request.
operationId: atlassianRemovemodules
parameters:
- name: moduleKey
in: query
description: >-
The key of the module to remove. To include multiple module keys,
provide multiple copies of this parameter.
For example,
`moduleKey=dynamic-attachment-entity-property&moduleKey=dynamic-select-field`.
Nonexistent keys are ignored.
required: true
style: form
explode: false
schema:
type: array
items:
type: string
responses:
'204':
description: Returned if the request is successful.
content: {}
'401':
description: Returned if the call is not from a Connect app.
content:
'*/*':
schema:
$ref: '#/components/schemas/DynamicModulesErrorMessage'
message:
example: The request is not from a Connect app.
deprecated: false
x-experimental: true
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: INACCESSIBLE
components:
schemas: {}
x-atlassian-narrative:
documents:
- title: About
anchor: about
body: >-
This is the reference for the Confluence Cloud REST API. This API is the
primary way to get and
modify data in Confluence Cloud, whether you are developing an app or
any other integration.
Use it to interact with Confluence entities, like pages and blog posts,
spaces, users, groups,
and more.
- title: Authentication and authorization
anchor: auth
body: >-
**Authentication:** If you are building a Cloud app, authentication is
implemented via JWT or OAuth 2.0, depending on what you are building
(see [Security
overview](https://developer.atlassian.com/cloud/confluence/security-overview/)).
Otherwise, if you are authenticating directly against the REST API, the
REST API supports basic auth (see [Basic auth for REST
APIs](https://developer.atlassian.com/cloud/confluence/basic-auth-for-rest-apis/)).
**Authorization:** If you are building a Cloud app, authorization can be
implemented by
[scopes](https://developer.atlassian.com/cloud/confluence/scopes/) or by
[OAuth 2.0 user
impersonation](https://developer.atlassian.com/cloud/confluence/oauth-2-jwt-bearer-tokens-for-apps).
Otherwise, if you are making calls directly against the REST API,
authorization is based on the user used in the authentication process.
See [Security
overview](https://developer.atlassian.com/cloud/confluence/security-overview/)
for more details on authentication and authorization.
- title: Status codes
anchor: status-code
body: >-
The Confluence REST API uses the [standard HTTP status
codes](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
Responses that return an error status code will also return a response
body, similar to the following:
```json
{
"statusCode": 404,
"data": {
"authorized": false,
"valid": false,
"errors": [
{
"message": {
"translation": "This is an example error message.",
"args": []
}
}
],
"successful": false
},
"message": "This is an example error message."
}
```
- title: Using the REST API
anchor: using
body: >-
**Expansion:** The Confluence REST API uses resource expansion: some
parts of a resource are not returned unless explicitly specified. This
simplifies responses and minimizes network traffic.
To expand part of a resource in a request, use the `expand` query
parameter and specify the entities to be expanded. If you need to expand
nested entities, use the `.` dot notation. For example, the following
request will expand information about the requested content's space and
labels:
```
GET /wiki/rest/api/content/{id}?expand=space,metadata.labels
```
**Pagination:** The Confluence REST API uses pagination: a method that
returns a response with multiple objects can only return a limited
number at one time. This limits the size of responses and conserves
server resources.
Use the 'limit' and 'start' query parameters to specify pagination:
- `limit` is the number of objects to return per page. This may be
restricted by system limits.
- `start` is the index of the first item returned in the page of
results. The base index is 0.
For example, the following request will return ten content objects,
starting from the fifth object.
```
GET /wiki/rest/api/content?start=4&limit=10
```
**Special headers:**
- `X-Atlassian-Token: no-check` request header must be specified for
methods
that are protected from Cross Site Request Forgery (XSRF/CSRF) attacks.
This is
stated in the method description, if required. For more information, see
this
[KB
article](https://confluence.atlassian.com/cloudkb/xsrf-check-failed-when-calling-cloud-apis-826874382.html).
- title: Capabilities
anchor: capabilities
body: >-
**Webhooks:** A webhook is a user-defined callback over HTTP. You can
use Confluence webhooks to notify your app or web application when
certain events occur in Confluence. For example, when a page is created
or updated. To learn more, see
[Webhooks](https://developer.atlassian.com/cloud/confluence/modules/webhook/).
**Content properties:** Content properties are a key-value storage
associated with a piece of Confluence content. If you are building an
app, this is one form of persistence that you can use. You can use the
Confluence REST API to get, update, and delete content properties. To
learn more, see [Content properties in the REST
API](https://developer.atlassian.com/cloud/confluence/content-properties/).
**CQL:** The Confluence Query Language (CQL) allows you to perform
complex searches for content using an SQL-like syntax in the `search`
resource. To learn more, see [Advanced searching using
CQL](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/).