openapi: 3.0.1 info: title: 'Atlassian wiki/rest/api/template/' 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: Template paths: /wiki/rest/api/template/blueprint: get: tags: - Template summary: Atlassian Get Blueprint Templates description: >- Returns all templates provided by blueprints. Use this method to retrieve
all global blueprint templates or all blueprint templates in a space.

Note, all global blueprints are inherited by each space. Space blueprints
can be customised without affecting the global blueprints.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'View' permission for the space to view blueprints for the space and permission
to access the Confluence site ('Can use' global permission) to view global blueprints. operationId: atlassianGetblueprinttemplates parameters: - name: spaceKey in: query description: |- The key of the space to be queried for templates. If the `spaceKey` is not specified, global blueprint templates will be returned. schema: type: string - name: start in: query description: The starting index of the returned templates. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: |- The maximum number of templates to return per page. Note, this may be restricted by fixed system limits. schema: minimum: 0 type: integer format: int32 default: 25 - name: expand in: query description: |- A multi-value parameter indicating which properties of the template to expand. - `body` returns the content of the template in storage format. style: form explode: false schema: type: array items: type: string enum: - body responses: '200': description: Returned if the requested templates are returned. content: application/json: schema: $ref: '#/components/schemas/BlueprintTemplateArray' '403': description: |- Returned if the calling user does not have permission to view blueprint templates. 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:template:confluence - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/template/page: get: tags: - Template summary: Atlassian Get Content Templates description: >- Returns all content templates. Use this method to retrieve all global
content templates or all content templates in a space.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'View' permission for the space to view space templates and permission to
access the Confluence site ('Can use' global permission) to view global templates. operationId: atlassianGetcontenttemplates parameters: - name: spaceKey in: query description: |- The key of the space to be queried for templates. If the `spaceKey` is not specified, global templates will be returned. schema: type: string - name: start in: query description: The starting index of the returned templates. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: |- The maximum number of templates to return per page. Note, this may be restricted by fixed system limits. schema: minimum: 0 type: integer format: int32 default: 25 - name: expand in: query description: |- A multi-value parameter indicating which properties of the template to expand. - `body` returns the content of the template in storage format. style: form explode: false schema: type: array items: type: string enum: - body responses: '200': description: Returned if the requested templates are returned. content: application/json: schema: $ref: '#/components/schemas/ContentTemplateArray' '403': description: |- Returned if the calling user does not have permission to view the content templates. 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:template:confluence - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/template/{contentTemplateId}: get: tags: - Template summary: Atlassian Get Content Template description: >- Returns a content template. This includes information about template,
like the name, the space or blueprint that the template is in, the body
of the template, and more.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'View' permission for the space to view space templates and permission to
access the Confluence site ('Can use' global permission) to view global templates. operationId: atlassianGetcontenttemplate parameters: - name: contentTemplateId in: path description: The ID of the content template to be returned. required: true schema: type: string responses: '200': description: Returned if the requested template is returned. content: application/json: schema: $ref: '#/components/schemas/ContentTemplate' '403': description: |- Returned if; - There is no template with the given ID. - The calling user does not have permission to view the template. 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:template:confluence - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ delete: tags: - Template summary: Atlassian Remove Template description: >- Deletes a template. This results in different actions depending on the
type of template:

- If the template is a content template, it is deleted.
- If the template is a modified space-level blueprint template, it reverts
to the template inherited from the global-level blueprint template.
- If the template is a modified global-level blueprint template, it reverts
to the default global-level blueprint template.

Note, unmodified blueprint templates cannot be deleted.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Admin' permission for the space to delete a space template or 'Confluence Administrator'
global permission to delete a global template. operationId: atlassianRemovetemplate parameters: - name: contentTemplateId in: path description: The ID of the template to be deleted. required: true schema: type: string responses: '204': description: Returned if the template has been successfully been deleted. content: {} '403': description: |- Returned if; - There is no template with the given ID. - The calling user does not have permission to delete the template. security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:template:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: DELETE components: schemas: BlueprintTemplateArray: required: - _links - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/BlueprintTemplate' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' ContentTemplateArray: required: - _links - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/ContentTemplate' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' ContentTemplate: required: - _links - description - labels - name - templateId - templateType type: object properties: templateId: type: string originalTemplate: type: object properties: pluginKey: type: string moduleKey: type: string referencingBlueprint: type: string name: type: string description: type: string space: type: object additionalProperties: true labels: type: array items: $ref: '#/components/schemas/Label' templateType: type: string editorVersion: type: string body: $ref: '#/components/schemas/ContentTemplateBody' _expandable: type: object properties: body: type: string _links: $ref: '#/components/schemas/GenericLinks' 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/).