Editing templates using REST APIs
available since 6.1.0
To improve readability, all JSON results will be beautified, whereas the actual results will not.
This API lets you configure templates.
On this page:
Request URI
The base request URI for all APIs on this page is as follows:
{JIRA Instance}/rest/com.okapya.jira.checklist/latest/
For more help with the Request URI, see Configuring checklists using REST APIs | Base configuration path.
Template API JSON structures
Template
When templates are manipulated through REST APIs, they are enriched with metadata information, such as the custom field and project names.
Field | Type | Description |
---|---|---|
| Numeric | get The template’s unique identifier. This is the ID used when updating or querying a single template. |
| JSON Array | get An array of template items, which are simplified checklist items. For more information on the checklist item JSON structure, see Checklist item representations. |
| String of a JSON Array | post put mandatory A string containing an array of template items, which are simplified checklist items.
|
| String | mandatory The name of the template that will be seen and searched by users. |
| String | The template’s description. |
| Numeric | mandatory The configuration scheme context to which the template can apply. This determines what features are available when adding and editing items. |
| Numeric | get The project to which the template is specific. Project-specific templates can be edited by the project’s administrator from the Project Settings page or through REST APIs. Templates that are not project-specific are considered global and will be available in all projects within the template’s custom field context. Because global templates can be used in other projects, only administrators can edit or delete them from the Manage apps or Field config context pages or through REST APIs. |
| String | get The key of the project obtained through the |
| String | get The name of the project obtained through the |
| String | post put Use this field when setting the template’s project. Either the project key or the project ID can be passed as a parameter. |
| Numeric | get The configuration scheme context’s checklist custom field ID. |
| String | The owner of the template. Defaults to the template creator. Allows users to modify their own templates when the Create / Edit Templates from Checklists parameter is enabled. |
| Boolean | Indicates whether or not this template is available when importing a template in a checklist. Defaults to Templates that are marked as “not importable” are typically used for default local items and/or post functions and are not meant to be used by end users. |
| Boolean | Indicates whether or not this template will be pinned in the template dropdown menu. Defaults to |
| String | get The configuration scheme context's name. |
| String | get The configuration scheme context’s checklist custom field name. |
| Numeric | get The avatar ID of the project obtained through the |
Template list
The template list consists of pagination information with a list of templates.
Field | Type | Description |
---|---|---|
| Numeric | The queried page. If the value is |
| Numeric | The total number of templates available through the call, omitting pagination. |
| JSON Array | The list of templates resulting from the API call. |
| Numeric | The number of templates in the list. |
| Numeric | The maximum number of templates per page, if pagination is used. |
APIs
Get all templates
get [...]/templates
You can get all templates with the option to paginate and filter the results.
| Description | Example |
---|---|---|
Query parameters | all parameters are optional
|
|
Response | Returns the full JSON representation of the list of templates with pagination information. |
Get a single template
get [...]/templates/{templateId}
By providing a template ID, you can get the contents of a single template.
| Description | Example |
---|---|---|
Response | Returns the full JSON representation of the requested template. |
Get templates available within a project
get [...]/projects/{projectKeyOrID}/templates
You can get all templates that can be used for the provided project key or ID, including global templates (templates that have no value in their projectId
field).
| Description | Example |
---|---|---|
Query parameters | all parameters are optional
|
|
Response | Returns the full JSON representation of the list of templates with pagination information. |
Get importable templates
get [...]/projects/{projectKeyOrID}/customFields/{customFieldId}/templates
You can obtain all templates that are importable for the provided project and custom field ID.
| Description | Example |
---|---|---|
Response | Returns the full JSON representation of the list of templates with empty pagination information. |
Create a template
post [...]/templates
You can create a template.
| Description | Example |
---|---|---|
Request | A web form that includes all the fields for the template that you are creating. The form can be simplified to only include the required fields. | |
Response | Returns the full JSON representation of the created template. |
Update a template
PUT [...]/templates/{templateId}
You can update the specified template’s content.
| Description | Example |
---|---|---|
Request | A JSON representation of the fields to update. The items are a JSON array of checklist items. To keep updating simple, you only have to list the fields and values that you want to update. | |
Response | Returns the full JSON representation of the updated template. |
See where a template is in use
GET [...]/templates/{templateId}/usages
You can use this query to see where the template has been used to configure default local items and Modify Checklists post functions.
| Description | Example |
---|---|---|
Response | Returns a JSON array with the list of the template is used. |
Delete a template
delete [...]/templates/{templateId}
You can delete a template. This API does not return a response.
Add template to favorites
POST [...]/templates/{templateId}/favorite
You can add a template to your personal favorites. If the template is already a favorite, the API still returns 200 OK.
This API does not return a response.
Remove template from favorites
DELETE [...]/templates/{templateId}/favorite
You can remove a template from your personal favorites. If the template is not a favorite, the API still returns 200 OK.
This API does not return a response.