GET

Get request comments

Returns all comments on a customer request, for a given request Id/key.

Permissions:

Only comments that the calling user can see are returned.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

internal

string

public

string

start

number

limit

number

Responses

Returns the requested comments, at the specified page of the results.

application/json

object
GET/servicedeskapi/request/{issueIdOrKey}/comment
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/comment' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "id": "<string>", "body": "<string>", "public": true, "author": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": {} }, "created": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "_links": { "self": "<string>" } } ] }
POST

Add request comment

Add a public or internal comment on an existing customer request. The currently logged-in user will be the author of the comment. The comment visibility is set by the public field.

Permissions:

Setting comment visibility depends on the calling user's permissions. For example, Agents can create either public or internal comments, Unlicensed users can only create internal comments, and Customers can only create public comments.

Request

Path parameters

issueIdOrKey

string

Required

Request bodyapplication/json

The comment to create.

body

string

public

boolean

Responses

Return the newly created comment.

application/json

CommentDTO
POST/servicedeskapi/request/{issueIdOrKey}/comment
1 2 3 4 5 6 7 8 9 curl --request POST \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/comment' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "body": "<string>", "public": true }'
201Response
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 { "id": "<string>", "body": "<string>", "public": true, "author": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } }, "created": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "_links": { "self": "<string>" } }
GET

Get request comment by ID

Returns a specific comment of a specific customer request based on the provided comment ID.

Permissions:

The calling user must have permission to view the comment. For example, customers can only view public comments on requests where they are the reporter or a participant whereas agents can see both internal and public comments.

Request

Path parameters

issueIdOrKey

string

Required
commentId

string

Required

Responses

Return the requested comment.

application/json

CommentDTO
GET/servicedeskapi/request/{issueIdOrKey}/comment/{commentId}
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/comment/{commentId}' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "id": "<string>", "body": "<string>", "public": true, "author": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } }, "created": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "_links": { "self": "<string>" } }
GET

Get my customer requests

Returns all customer requests for the user that is executing the query. That is, the customer requests where the user is the creator of the customer request or has participated in the customer request. Returned customer requests are ordered chronologically by the latest activity on each customer request. For example, the latest status transition or comment.

Request

Query parameters

expand

string

searchTerm

string

serviceDeskId

string

requestOwnership

string

requestTypeId

string

requestStatus

string

start

number

limit

number

Responses

Returns the requested customer requests, at the specified page of the results.

application/json

object
GET/servicedeskapi/request
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 118 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "_expands": [ "<string>" ], "issueId": "<string>", "issueKey": "<string>", "requestTypeId": "<string>", "requestType": { "id": "<string>", "_links": {}, "name": "<string>", "description": "<string>", "helpText": "<string>", "serviceDeskId": "<string>", "groupIds": [ "<string>" ], "icon": {}, "restrictionStatus": "OPEN" }, "serviceDeskId": "<string>", "serviceDesk": { "id": "<string>", "projectId": "<string>", "projectName": "<string>", "projectKey": "<string>", "_links": {} }, "createdDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "reporter": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": {} }, "requestFieldValues": [ { "fieldId": "<string>", "label": "<string>", "value": {}, "renderedValue": {} } ], "currentStatus": { "status": "<string>", "statusDate": {} }, "status": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": {}, "values": [ {} ] }, "participants": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": {}, "values": [ {} ] }, "sla": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": {}, "values": [ {} ] }, "_links": { "jiraRest": "<string>", "web": "<string>", "self": "<string>" } } ] }
POST

Create customer request

Creates a customer request in a service project. The service project and request type are required. The fields that are mandatory for the request type are also required. If you need the list of the fields required for the request type, you can get it via this resource: servicedesk/{serviceDeskId}/requesttype/{requestTypeId}/field

Notes:

  • The fields for a request type may vary based on the permissions of the currently authenticated user:
    • raiseOnBehalfOf field - Not available to users who only have the Service Desk Customer permission.
    • requestParticipants field - Not available to users who only have the Service Desk Customer permission or if the feature is turned off for customers.
  • Schema of requestFieldValues field is a map of Jira's field's ID and its value, which are JSON ready objects. The object value will be interpreted with JSON semantics according to the specific field requirements. So a simple field like summary or number customer field might take String / Integer while other fields like Multi User Picker will take a more complex object that has JSON semantics. Refer to Field input formats reference on what field types take what values.

Request

Request bodyapplication/json

The request to create.

serviceDeskId

string

requestTypeId

string

requestFieldValues

object

requestParticipants

array<string>

raiseOnBehalfOf

string

Responses

Returned if the customer request was successfully created.

application/json

CustomerRequestDTO
POST/servicedeskapi/request
1 2 3 4 5 6 7 8 9 10 11 12 13 14 curl --request POST \ --url 'http://{baseurl}/rest/servicedeskapi/request' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "serviceDeskId": "<string>", "requestTypeId": "<string>", "requestFieldValues": {}, "requestParticipants": [ "<string>" ], "raiseOnBehalfOf": "<string>" }'
201Response
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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 { "_expands": [ "<string>" ], "issueId": "<string>", "issueKey": "<string>", "requestTypeId": "<string>", "requestType": { "id": "<string>", "_links": { "self": "<string>" }, "name": "<string>", "description": "<string>", "helpText": "<string>", "serviceDeskId": "<string>", "groupIds": [ "<string>" ], "icon": { "id": "<string>", "_links": {} }, "restrictionStatus": "OPEN" }, "serviceDeskId": "<string>", "serviceDesk": { "id": "<string>", "projectId": "<string>", "projectName": "<string>", "projectKey": "<string>", "_links": { "self": "<string>", "portal": "<string>" } }, "createdDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "reporter": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } }, "requestFieldValues": [ { "fieldId": "<string>", "label": "<string>", "value": {}, "renderedValue": {} } ], "currentStatus": { "status": "<string>", "statusDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 } }, "status": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "status": "<string>", "statusDate": {} } ] }, "participants": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": {} } ] }, "sla": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "id": "<string>", "name": "<string>", "_links": {}, "completedCycles": [ {} ], "ongoingCycle": {} } ] }, "_links": { "jiraRest": "<string>", "web": "<string>", "self": "<string>" } }
GET

Get customer request by ID or key

Returns the customer request for a given request Id/key.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

expand

string

Responses

Returns the requested customer request.

application/json

CustomerRequestDTO
GET/servicedeskapi/request/{issueIdOrKey}
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 { "_expands": [ "<string>" ], "issueId": "<string>", "issueKey": "<string>", "requestTypeId": "<string>", "requestType": { "id": "<string>", "_links": { "self": "<string>" }, "name": "<string>", "description": "<string>", "helpText": "<string>", "serviceDeskId": "<string>", "groupIds": [ "<string>" ], "icon": { "id": "<string>", "_links": {} }, "restrictionStatus": "OPEN" }, "serviceDeskId": "<string>", "serviceDesk": { "id": "<string>", "projectId": "<string>", "projectName": "<string>", "projectKey": "<string>", "_links": { "self": "<string>", "portal": "<string>" } }, "createdDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "reporter": { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } }, "requestFieldValues": [ { "fieldId": "<string>", "label": "<string>", "value": {}, "renderedValue": {} } ], "currentStatus": { "status": "<string>", "statusDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 } }, "status": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "status": "<string>", "statusDate": {} } ] }, "participants": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": {} } ] }, "sla": { "_expands": [ "<string>" ], "size": 2154, "start": 2154, "limit": 2154, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "id": "<string>", "name": "<string>", "_links": {}, "completedCycles": [ {} ], "ongoingCycle": {} } ] }, "_links": { "jiraRest": "<string>", "web": "<string>", "self": "<string>" } }
GET

Get request participants

Returns all users participating in a customer request, for a given request Id/key.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

start

number

limit

number

Responses

Returns the participants of the customer request, at the specified page of the results.

application/json

object
GET/servicedeskapi/request/{issueIdOrKey}/participant
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/participant' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } } ] }
POST

Add request participants

Adds users as participants to an existing customer request.

Note, you can also add participants when creating a request via the request resource, by using the requestParticipants field.

Permissions:

The calling user must have permission to manage participants for this customer request.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

start

number

limit

number

Request bodyapplication/json

usernames

array<string>

Responses

Returns the participants of the customer request.

application/json

object
POST/servicedeskapi/request/{issueIdOrKey}/participant
1 2 3 4 5 6 7 8 9 10 curl --request POST \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/participant' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "usernames": [ "<string>" ] }'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } } ] }
DEL

Remove request participants

Removes participants from an existing customer request.

Permissions:

The calling user must have permission to manage participants for this customer request.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

start

number

limit

number

Request bodyapplication/json

usernames

array<string>

Responses

Returns the first page of participants of the customer request after removing the specified users.

application/json

object
DEL/servicedeskapi/request/{issueIdOrKey}/participant
1 2 3 4 5 6 7 8 9 10 curl --request DELETE \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/participant' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "usernames": [ "<string>" ] }'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "name": "<string>", "key": "<string>", "emailAddress": "<string>", "displayName": "<string>", "active": true, "timeZone": "<string>", "_links": { "jiraRest": "<string>", "avatarUrls": {}, "self": "<string>" } } ] }
GET

Get SLA information

Returns the SLA information for a customer request for a given request Id/key.A request can have zero or more SLA values. Each SLA value can have zero or more "completed cycles" and zero or 1 "ongoing cycles".Each cycle has information on when it started and stopped, and whether it breached the SLA goal.

Permissions:

The calling user must be an agent.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

start

number

limit

number

Responses

Returns the SLA information of the customer request, at the specified page of the results.

application/json

object
GET/servicedeskapi/request/{issueIdOrKey}/sla
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/sla' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "id": "<string>", "name": "<string>", "_links": { "self": "<string>" }, "completedCycles": [ { "startTime": {}, "stopTime": {}, "breached": true, "goalDuration": {}, "elapsedTime": {}, "remainingTime": {} } ], "ongoingCycle": { "startTime": {}, "breachTime": {}, "breached": true, "paused": true, "withinCalendarHours": true, "goalDuration": {}, "elapsedTime": {}, "remainingTime": {} } } ] }
GET

Get SLA information by ID

Returns the SLA information for a customer request for a given request Id/key and SLA metric Id.A request can have zero or more SLA values. Each SLA value can have zero or more "completed cycles" and zero or 1 "ongoing cycles".Each cycle has information on when it started and stopped, and whether it breached the SLA goal.

Permissions:

The calling user must be an agent.

Request

Path parameters

issueIdOrKey

string

Required
slaMetricId

string

Required

Responses

Returns the SLA information of the customer request, at the specified page of the results.

application/json

SlaInformationDTO
GET/servicedeskapi/request/{issueIdOrKey}/sla/{slaMetricId}
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/sla/{slaMetricId}' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "id": "<string>", "name": "<string>", "_links": { "self": "<string>" }, "completedCycles": [ { "startTime": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "stopTime": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "breached": true, "goalDuration": { "millis": 2154, "friendly": "<string>" }, "elapsedTime": { "millis": 2154, "friendly": "<string>" }, "remainingTime": { "millis": 2154, "friendly": "<string>" } } ], "ongoingCycle": { "startTime": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "breachTime": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 }, "breached": true, "paused": true, "withinCalendarHours": true, "goalDuration": { "millis": 2154, "friendly": "<string>" }, "elapsedTime": { "millis": 2154, "friendly": "<string>" }, "remainingTime": { "millis": 2154, "friendly": "<string>" } } }
GET

Get customer request status

Returns the status transitions for a customer request for a given request Id/key. The status transitions are returned in chronological order.

Request

Path parameters

issueIdOrKey

string

Required

Query parameters

start

number

limit

number

Responses

Returns the requested customer request status, at the specified page of the results.

application/json

object
GET/servicedeskapi/request/{issueIdOrKey}/status
1 2 3 4 curl --request GET \ --url 'http://{baseurl}/rest/servicedeskapi/request/{issueIdOrKey}/status' \ --user 'email@example.com:<api_token>' \ --header 'Accept: application/json'
200Response
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 { "_expands": [ "<string>" ], "size": 1, "start": 0, "limit": 50, "isLastPage": true, "_links": { "base": "<string>", "context": "<string>", "next": "<string>", "prev": "<string>", "self": "<string>" }, "values": [ { "status": "<string>", "statusDate": { "iso8601": "<string>", "jira": "<string>", "friendly": "<string>", "epochMillis": 2154 } } ] }

Rate this page: