# Class: MyPermissionsClient

## MyPermissionsClient

## Constructor

#### new MyPermissionsClient(jiraClient)

Used to access Jira REST endpoints in '/rest/api/2/mypermissions'

##### Parameters:

Name | Type | Description
--- | --- | ---
`jiraClient` | JiraClient |

Source:
  - api/myPermissions.js, line 5

### Methods

#### getMyPermissions(opts, callback)

Returns all permissions in the system and whether the currently logged in user has them. You can optionally provide a specific context to get permissions for (projectKey OR projectId OR issueKey OR issueId)

- When no context supplied the project related permissions will return true if the user has that permission in ANY project
- If a project context is provided, project related permissions will return true if the user has the permissions in the specified project. For permissions that are determined using issue data (e.g Current Assignee), true will be returned if the user meets the permission criteria in ANY issue in that project
- If an issue context is provided, it will return whether or not the user has each permission in that specific issue

NB: The above means that for issue-level permissions (EDIT_ISSUE for example), hasPermission may be true when no context is provided, or when a project context is provided, but may be false for any given (or all) issues. This would occur (for example) if Reporters were given the EDIT_ISSUE permission. This is because any user could be a reporter, except in the context of a concrete issue, where the reporter is known.

Global permissions will still be returned for all scopes.

##### Parameters:

Name | Type | Description
--- | --- | ---
`opts` |  | The request options sent to the Jira API
`callback` |  | Called when the permissions have been returned.

Source:
  - api/myPermissions.js, line 14