Skip to content

Atlassian: Get votes

Atlassian issueVotes.getVotes: arguments, response, policy and SDK examples.

← Issue votes operations · Get started

Operation atlassian.getvotes

Provider route: GET /{cloudId}/rest/api/3/issue/{issueIdOrKey}/votes. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/atlassian with npm, or alter-sdk-atlassian with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { AtlassianIntegration } from "@alter-ai/atlassian";
async function execute(input: Parameters<AtlassianIntegration["issueVotes"]["getVotes"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new AtlassianIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.issueVotes.getVotes(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_atlassian import AtlassianIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = AtlassianIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.issue_votes.get_votes(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.cloudIdstringRequired within parentPattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
path.issueIdOrKeystringRequired within parent

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$ModelRootExpand Get votes — response body

Referenced models: Get votes — response body

3 more schemas are linked from the tables above, on the schema pages.

Get votes — response body
FieldTypePresenceDescription and constraints
$objectRootThe details of votes on an issue.
hasVotedJSONOptional
hasVoted (anyOf 1)booleanAlternativeWhether the user making this request has voted on the issue.
Read only: true
hasVoted (anyOf 2)nullAlternative
selfJSONOptional
self (anyOf 1)stringAlternativeThe URL of these issue vote details.
Format: uri
Read only: true
self (anyOf 2)nullAlternative
votersJSONOptional
voters (anyOf 1)arrayAlternativeList of the users who have voted on this issue. An empty list is returned when the calling user doesn't have the *View voters and watchers* project permission.
Read only: true
voters (anyOf 1)[]ModelEach itemExpand Get user — response body
voters (anyOf 2)nullAlternative
votesJSONOptional
votes (anyOf 1)JSONAlternative
votes (anyOf 1) (anyOf 1)integerAlternativeThe number of votes on the issue.
Format: int64
Read only: true
votes (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
votes (anyOf 2)nullAlternative

Referenced models: Get user — response body

Get user — response body
FieldTypePresenceDescription and constraints
$objectRootA user with details as permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions:

* User record deleted from Atlassian: This occurs as the result of a right to be forgotten request. In this case, `displayName` provides an indication and other parameters have default values or are blank (for example, email is blank).
* User record corrupted: This occurs as a results of events such as a server import and can only happen to deleted users. In this case, `accountId` returns *unknown* and all other parameters have fallback values.
* User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values.
accountIdJSONOptional
accountId (anyOf 1)stringAlternativeThe account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required in requests.
Maximum length: 128
accountId (anyOf 2)nullAlternative
accountTypeJSONOptional
accountType (anyOf 1)stringAlternativeThe user account type. Can take the following values:

* `atlassian` regular Atlassian user account
* `app` system account used for Connect applications and OAuth to represent external systems
* `customer` Jira Service Desk account representing an external service desk
Known values: atlassian, app, customer, unknown
Read only: true
accountType (anyOf 2)nullAlternative
activeJSONOptional
active (anyOf 1)booleanAlternativeWhether the user is active.
Read only: true
active (anyOf 2)nullAlternative
appTypeJSONOptional
appType (anyOf 1)stringAlternativeThe app type of the user account when accountType is 'app'. Can take the following values:

* `service` Service Account
* `agent` Rovo Agent Account
* `unknown` Unknown app type
Read only: true
appType (anyOf 2)nullAlternative
applicationRolesJSONOptional
applicationRoles (anyOf 1)ModelAlternativeExpand Get user — response body — application Roles callback, items, max-results, paging Callback, size
The application roles the user is assigned to.
Read only: true
applicationRoles (anyOf 2)nullAlternative
avatarUrlsJSONOptional
avatarUrls (anyOf 1)ModelAlternativeExpand Get user — response body — avatar Urls 16x16, 24x24, 32x32, 48x48
The avatars of the user.
Read only: true
avatarUrls (anyOf 2)nullAlternative
displayNameJSONOptional
displayName (anyOf 1)stringAlternativeThe display name of the user. Depending on the user’s privacy setting, this may return an alternative value.
Read only: true
displayName (anyOf 2)nullAlternative
emailAddressJSONOptional
emailAddress (anyOf 1)stringAlternativeThe email address of the user. Depending on the user’s privacy setting, this may be returned as null.
Read only: true
emailAddress (anyOf 2)nullAlternative
expandJSONOptional
expand (anyOf 1)stringAlternativeExpand options that include additional user details in the response.
Read only: true
expand (anyOf 2)nullAlternative
groupsJSONOptional
groups (anyOf 1)ModelAlternativeExpand Get user — response body — groups callback, items, max-results, paging Callback, size
The groups that the user belongs to.
Read only: true
groups (anyOf 2)nullAlternative
guestJSONOptional
guest (anyOf 1)booleanAlternativeWhether the user is a guest.
Read only: true
guest (anyOf 2)nullAlternative
keyJSONOptional
key (anyOf 1)stringAlternativeThis property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.
key (anyOf 2)nullAlternative
localeJSONOptional
locale (anyOf 1)stringAlternativeThe locale of the user. Depending on the user’s privacy setting, this may be returned as null.
Read only: true
locale (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternativeThis property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.
name (anyOf 2)nullAlternative
selfJSONOptional
self (anyOf 1)stringAlternativeThe URL of the user.
Format: uri
Read only: true
self (anyOf 2)nullAlternative
timeZoneJSONOptional
timeZone (anyOf 1)stringAlternativeThe time zone specified in the user's profile. If the user's time zone is not visible to the current user (due to user's profile setting), or if a time zone has not been set, the instance's default time zone will be returned.
Read only: true
timeZone (anyOf 2)nullAlternative

Referenced models: Get user — response body — avatar Urls 16x16, 24x24, 32x32, 48x48, Get user — response body — application Roles callback, items, max-results, paging Callback, size, Get user — response body — groups callback, items, max-results, paging Callback, size

Get user — response body — avatar Urls 16x16, 24x24, 32x32, 48x48
FieldTypePresenceDescription and constraints
$objectRoot
16x16JSONOptional
16x16 (anyOf 1)stringAlternativeThe URL of the item's 16x16 pixel avatar.
Format: uri
16x16 (anyOf 2)nullAlternative
24x24JSONOptional
24x24 (anyOf 1)stringAlternativeThe URL of the item's 24x24 pixel avatar.
Format: uri
24x24 (anyOf 2)nullAlternative
32x32JSONOptional
32x32 (anyOf 1)stringAlternativeThe URL of the item's 32x32 pixel avatar.
Format: uri
32x32 (anyOf 2)nullAlternative
48x48JSONOptional
48x48 (anyOf 1)stringAlternativeThe URL of the item's 48x48 pixel avatar.
Format: uri
48x48 (anyOf 2)nullAlternative
Get user — response body — groups callback, items, max-results, paging Callback, size callback object
FieldTypePresenceDescription and constraints
$objectRoot
Get user groups — response body — item
FieldTypePresenceDescription and constraints
$objectRootDetails about a group.
groupIdJSONOptional
groupId (anyOf 1)JSONAlternative
groupId (anyOf 1) (anyOf 1)stringAlternativeThe ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*.
groupId (anyOf 1) (anyOf 2)nullAlternative
groupId (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternativeThe name of group.
name (anyOf 2)nullAlternative
selfJSONOptional
self (anyOf 1)stringAlternativeThe URL for these group details.
Format: uri
Read only: true
self (anyOf 2)nullAlternative

SDK function policy ID: atlassian.getvotes. Catalog operation: getvotes. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Required provider scopes: ["read:jira-work"]

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.