Cloud
Jira Cloud platform / Reference / REST API v3

This resource represents votes cast by users on an issue. Use it to get details of votes on an issue as well as cast and withdrawal votes.

GET

Get votes

Returns details about the votes on an issue.

This operation requires the Allow users to vote on issues option to be ON. This option is set in General configuration for Jira. See Configuring Jira application options for details.

This operation can be accessed anonymously.

Permissions required:

Note that users with the necessary permissions for this operation but without the View voters and watchers project permissions are not returned details in the voters field.

Data Security Policy: Not exempt from app access rules
Scopes
ClassicRECOMMENDED:read:jira-work
Granular:read:issue.vote:jira, read:user:jira, read:application-role:jira, read:avatar:jira, read:group:jira

Connect app scope requiredREAD

Request

Path parameters

issueIdOrKey

string

Required

Responses

Returned if the request is successful.

application/json

Votes

The details of votes on an issue.

GET/rest/api/3/issue/{issueIdOrKey}/votes
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/issue/{issueIdOrKey}/votes`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 { "hasVoted": true, "self": "https://your-domain.atlassian.net/rest/api/issue/MKY-1/votes", "voters": [ { "accountId": "5b10a2844c20165700ede21g", "accountType": "atlassian", "active": false, "avatarUrls": { "16x16": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16", "24x24": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24", "32x32": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32", "48x48": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48" }, "displayName": "Mia Krystof", "key": "", "name": "", "self": "https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g" } ], "votes": 24 }
POST

Add vote

Adds the user's vote to an issue. This is the equivalent of the user clicking Vote on an issue in Jira.

This operation requires the Allow users to vote on issues option to be ON. This option is set in General configuration for Jira. See Configuring Jira application options for details.

Permissions required:

Data Security Policy: Not exempt from app access rules
Scopes
ClassicRECOMMENDED:write:jira-work
Granular:write:issue.vote:jira

Connect app scope requiredWRITE

Request

Path parameters

issueIdOrKey

string

Required

Responses

Returned if the request is successful.

application/json

any

POST/rest/api/3/issue/{issueIdOrKey}/votes
1 2 3 4 5 6 7 8 9 10 11 12 13 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/issue/{issueIdOrKey}/votes`, { method: 'POST', headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
DEL

Delete vote

Deletes a user's vote from an issue. This is the equivalent of the user clicking Unvote on an issue in Jira.

This operation requires the Allow users to vote on issues option to be ON. This option is set in General configuration for Jira. See Configuring Jira application options for details.

Permissions required:

Data Security Policy: Not exempt from app access rules
Scopes
ClassicRECOMMENDED:write:jira-work
Granular:write:issue.vote:jira

Connect app scope requiredDELETE

Request

Path parameters

issueIdOrKey

string

Required

Responses

Returned if the request is successful.

DEL/rest/api/3/issue/{issueIdOrKey}/votes
1 2 3 4 5 6 7 8 9 10 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/issue/{issueIdOrKey}/votes`, { method: 'DELETE' }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.text());

Rate this page: