Smart Checklist REST API v1.0 - beta

Welcome to the Smart Checklist for Jira Server/Data Center platform REST API reference. You can use this REST API to develop integrations between Smart Checklist, Jira, and other 3rd party applications. This page documents the REST resources available in Smart Checklist for the Jira Server/Data Center platform, along with expected HTTP response codes and sample requests.

Looking for simplier integration using Jira REST API and/or 3rd party add-ons? Follow the links below:

Authentication

Use the same authentication that you use to authenticate to Jira applications on your instances.

Resources

/rest/railsware/1.0/checklist

Get checklists GET /rest/railsware/1.0/checklist

Retrieve an existing list of checklist for the given issue key

Query parameters

  • issueKey: string (required)

Responses

  • status 200 application/json Returns a list of all checklists associated with the provided issue key in JSON format
    Example

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 { "checklists": [ { "checklistId": 5, "issueId": 10115, "items": [ { "id": 50829, "rank": 0, "label": "Release instructions", "type": "heading", "level": 1, "quotes": [] }, { "id": 50830, "rank": 1, "label": "Preparation", "type": "heading", "level": 2, "quotes": [] }, { "id": 50831, "rank": 2, "label": "Add feature permissions", "type": "item", "status": { "id": 4, "rank": 2, "name": "DONE", "color": "GREEN", "default": true, "statusState": "CHECKED" }, "quotes": [] }, { "id": 50832, "rank": 3, "label": "Send `internal` announcement with presentation", "type": "item", "status": { "id": 4, "rank": 2, "name": "DONE", "color": "GREEN", "default": true, "statusState": "CHECKED" }, "quotes": [] }, { "id": 50833, "rank": 4, "label": "Prepare branch", "type": "item", "status": { "id": 2, "rank": 6, "name": "IN PROGRESS", "color": "BLUE", "default": true, "statusState": "UNCHECKED" }, "quotes": [ { "id": 1439, "rank": 0, "text": "* merge feature to master", "label": "* merge feature to master" }, { "id": 1440, "rank": 1, "text": "* set tag", "label": "* set tag" }, { "id": 1441, "rank": 2, "text": "* update changelog.com", "label": "* update changelog.com" } ] } ], "mentionedUsers": {} } ] }

 

  • status 400 Returned if the issue key is not provided

  • status 404 Returned if the requested issue is not found

Update checklist PUT /rest/railsware/1.0/checklist/{checklistId}

Updates checklist items

Path parameters

  • checklistId: number (required)

Body parameters (application/json) - list of JSON objects:

  • id: number

  • rank: number

  • label: string

  • status: object

    • id: number (required) - new status id

Example

Changes the item 50859 position and changes label + status of item 50860:

1 2 3 4 5 6 7 8 9 10 11 12 13 [ { "id": 50859, "rank": 3 }, { "id": 50860, "label": "Add feature permissions", "status": { "id": 2 } } ]

 

Responses

  • STATUS 200 Returns a list of all checklists associated with the same issue in JSON format

  • status 400 Returned if the request body is invalid

  • status 404 Returned if the requested checklist is not found

Delete checklist items DELETE /rest/railsware/1.0/checklist/{checklistId}

Deletes all checklist items for the given checklist

 

Path parameters

  • checklistId: number (required)

Responses

  • STATUS 200 application/json returns empty checklist in JSON format

  • status 404 Returned if the requested checklist is not found

Create/Update checklist from string PUT /rest/railsware/1.0/checklist/{checklistId}/item

Creates or updates checklist items from string

Path parameters

  • checklistId: number (required)

Body parameters (application/json)

  • stringValue: string (required)

  • isReplace: boolean - replaces all checklist items by the provided string value if true, appends items to the end of the list otherwise

Example

1 2 3 4 { "isReplace": true, "stringValue": "# Release instructions2\n## Preparation\n+ Add feature permissions\n+ Send `internal` announcement with presentation\n~ Prepare branch\n> * merge feature to master\n> * set tag\n> * update changelog.com" }

Responses

  • STATUS 200 Returns a list of all checklists associated with the same issue in JSON format

/rest/railsware/1.0/template/

Get templates GET /rest/railsware/1.0/template/

Retrieve a list of checklist templates

Query parameters

  • page: number

  • projectId: number - if projectId is specified then only project templates will be returned

  • global: boolean - used in conjunction with projectId parameter. Returns global project templates (All and Multiple scope of the project) if true, returns templates with single project scope otherwise

  • reversed: boolean - specifies ASC or DESC order of templates

  • query: string - specifies the filter by template name

  • orderBy: string - specifies the order column of templates. Valid values are name enabled, issueTypes and projects

Responses

  • STATUS 200 application/json returns a list of all or project templates in JSON format

    Example:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 { "totalPages": 1, "templates": [ { "id": 16, "name": "5.2.0 TEMPLATE PROJ", "value": "- 1\n- 2\n# Definition of Done\n- Code produced (all ‘to do’ items in code completed)\n- Code commented, checked in and run against current version in source control\n- Peer reviewed (or produced with pair programming) and meeting development standards\n- Builds without errors\n- Unit tests written and passing\n- Deployed to system test environment and passed system tests\n- Passed UAT (User Acceptance Testing) and signed off as meeting requirements\n- Any build/deployment/configuration changes implemented/documented/communicated\n- Relevant documentation/diagrams produced and/or updated\n- Remaining hours for task set to zero and task closed\n# Definition of Done\n- Code produced (all ‘to do’ items in code completed)\n- Code commented, checked in and run against current version in source control\n- Peer reviewed (or produced with pair programming) and meeting development standards\n- Builds without errors\n- Unit tests written and passing\n- Deployed to system test environment and passed system tests\n- Passed UAT (User Acceptance Testing) and signed off as meeting requirements\n- Any build/deployment/configuration changes implemented/documented/communicated\n- Relevant documentation/diagrams produced and/or updated\n- Remaining hours for task set to zero and task closed\n", "enabled": true, "defaultContext": { "type": 0, "values": [] }, "scope": { "type": 2, "values": [ { "value": "10000", "label": "Project", "iconUrl": "http://localhost:8075/secure/projectavatar?size=xsmall&pid=10000&avatarId=10209", "link": "" } ] } }, { "id": 7, "name": "Acceptance Criteria PROJ", "value": "- uno uno\n~ dos dos\nx tres tres\n+ quatro quatro\n- uno uno\n~ dos dos\nx tres tres\n+ quatro quatro\n", "enabled": true, "defaultContext": { "type": 0, "values": [] }, "scope": { "type": 2, "values": [ { "value": "10000", "label": "Project", "iconUrl": "http://localhost:8075/secure/projectavatar?size=xsmall&pid=10000&avatarId=10209", "link": "" } ] } }, { "id": 13, "name": "Browser testing template PROJ", "value": "# HEADER DOD\n- Code produced (all ‘to do’ items in code completed)\n- Code commented, checked in and run against current version in source control\n- Peer reviewed (or produced with pair programming) and meeting development standards\n- Builds without errors\n- Unit tests written and passing\n- Deployed to system test environment and passed system tests\n- Passed UAT (User Acceptance Testing) and signed off as meeting requirements\n- Any build/deployment/configuration changes implemented/documented/communicated\n- Relevant documentation/diagrams produced and/or updated\n- Remaining hours for task set to zero and task closed\n# HEADER AC\n- Code produced (all ‘to do’ items in code completed)\n- Code commented, checked in and run against current version in source control\n- Peer reviewed (or produced with pair programming) and meeting development standards\n- Builds without errors\n- Unit tests written and passing\n- Deployed to system test environment and passed system tests\n- Passed UAT (User Acceptance Testing) and signed off as meeting requirements\n- Any build/deployment/configuration changes implemented/documented/communicated\n- Relevant documentation/diagrams produced and/or updated\n- Remaining hours for task set to zero and task closed\n", "enabled": true, "defaultContext": { "type": 0, "values": [] }, "scope": { "type": 2, "values": [ { "value": "10000", "label": "Project", "iconUrl": "http://localhost:8075/secure/projectavatar?size=xsmall&pid=10000&avatarId=10209", "link": "" } ] } }, { "id": 8, "name": "Definition of Done", "value": "# Header\n+ [FAILED] item 2\n- [IN QA] item 1\n+ [PASSED] item 4\n+ item 3\n+ [NOT FAILED MAYBE] item 5\n+ hoho\n+ @admin\n- bobo http://localhost:2990/jira/browse/PROJ-3?focusedCommentId=10000&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-10000\n- [bobo](http://localhost:2990/jira/browse/PROJ-3?focusedCommentId=10000&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-10000)\n- dada http://localhost:2990/jira/browse/PROJ-3?focusedCommentId=10200&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-10200\n- [IN QA] http://localhost:2990/jira/browse/PROJ-3?focusedCommentId=10000&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-10000\n- http://localhost:2990/jira/browse/PROJ-3?focusedCommentId=10000&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-10000\n", "enabled": true, "defaultContext": { "type": 0, "values": [] }, "scope": { "type": 2, "values": [ { "value": "10000", "label": "Project", "iconUrl": "http://localhost:8075/secure/projectavatar?size=xsmall&pid=10000&avatarId=10209", "link": "" } ] } }, { "id": 14, "name": "Help request tempate", "value": "- wq\n- e\n", "enabled": true, "defaultContext": { "type": 2, "values": [ { "value": "10000", "label": "Task", "iconUrl": "http://localhost:2990/jira/secure/viewavatar?size=xsmall&avatarId=10318&avatarType=issuetype" } ] }, "scope": { "type": 2, "values": [ { "value": "10100", "label": "SCRUM", "iconUrl": "http://localhost:8075/secure/projectavatar?size=xsmall&avatarId=10324", "link": "" } ] } } ] }
  • status 400 Returned if the request parameters are invalid

  • status 404 Returned if the requested project is not found

Delete template DELETE /rest/railsware/1.0/template/{id}

Deletes template by id

Path parameters

  • id: number (required)

Query parameters:

  • page: number

Responses

  • status 200 application/json Returns list of existing templates in JSON format