Returns all projects which are visible for the currently logged in user. If no user is logged in, it returns the list of projects that are visible when using anonymous access.
boolean
string
integer
boolean
Project data
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Creates a new project
Project data
string
integer
integer
string
integer
string
string
string
integer
integer
Created project data
1
2
3
4
5
curl --request POST \
--url 'http://{baseurl}/rest/api/2/project' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Returns all the project types defined on the Jira instance, not taking into account whether the license to use those project types is valid or not. In case of anonymous checks if they can access at least one project.
This request has no parameters.
Returns a list with all the project types defined on the Jira instance
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/type' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the project type with the given key. In case of anonymous checks if they can access at least one project.
string
RequiredReturns a representation of the project type with the given id
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/type/{projectTypeKey}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the project type with the given key, if it is accessible to the logged in user. This takes into account whether the user is licensed on the Application that defines the project type.
string
RequiredReturns a representation of the project type with the given id
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/type/{projectTypeKey}/accessible' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns a full representation of a project in JSON format. All project keys associated with the project will only be returned if expand=projectKeys
.
string
Requiredstring
Project data
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Updates a project. Only non null values sent in JSON will be updated in the project. Values available for the assigneeType field are: "PROJECT_LEAD" and "UNASSIGNED".
string
Requiredstring
Project update data
string
integer
integer
string
integer
string
string
string
integer
integer
Updated project data
1
2
3
4
5
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Deletes a project
string
RequiredReturned if the project is successfully deleted
1
2
3
curl --request DELETE \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}' \
--user 'email@example.com:<api_token>'
Archives a project
string
RequiredReturned if the project is successfully archived
1
2
3
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/archive' \
--user 'email@example.com:<api_token>'
Updates an avatar for a project. This is step 3/3 of changing an avatar for a project.
string
RequiredAvatar data
string
string
boolean
Returned if the avatar was updated successfully
1
2
3
4
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/avatar' \
--user 'email@example.com:<api_token>' \
--header 'Content-Type: application/json'
Converts the temporary avatar into the final one. This is step 2/3 of changing an avatar for a project:
string
RequiredCropping instructions
integer
integer
integer
boolean
string
Avatar data
1
2
3
4
5
curl --request POST \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/avatar' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Creates temporary avatar using multipart. The response is sent back as JSON stored in a textarea. This is because the client uses remote iframing to submit avatars using multipart. So we must send them a valid HTML page back from which the client parses the JSON.
string
Requiredstring
boolean
object
string
integer
string
Temporary avatar cropping instructions embeded in HTML page. Error messages will also be embeded in the page.
1
2
3
4
curl --request POST \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/avatar/temporary' \
--user 'email@example.com:<api_token>' \
--header 'Accept: text/html'
Deletes avatar
string
Requiredinteger
RequiredReturned if the avatar is successfully deleted
1
2
3
curl --request DELETE \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/avatar/{id}' \
--user 'email@example.com:<api_token>'
Returns all avatars which are visible for the currently logged in user. The avatars are grouped into system and custom.
string
RequiredAvatars
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/avatars' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Contains a full representation of the specified project's components.
string
RequiredProject components
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/components' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the keys of all properties for the project identified by the key or by the id.
string
RequiredReturned if the project was found.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/properties' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the value of the property with a given key from the project identified by the key or by the id.
string
Requiredstring
RequiredReturned if the project property was found.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/properties/{propertyKey}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Sets the value of the specified project's property. You can use this resource to store a custom data against the project identified by the key or by the id. The user who stores the data is required to have permissions to administer the project.
string
Requiredstring
RequiredThe request containing value of the project's property. The value has to be a valid, non-empty JSON conforming to http://tools.ietf.org/html/rfc4627. The maximum length of the property value is 32768 bytes.
string
string
string
Returned if the project property is successfully updated.
1
2
3
4
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/properties/{propertyKey}' \
--user 'email@example.com:<api_token>' \
--header 'Content-Type: application/json'
Removes the property from the project identified by the key or by the id.
string
Requiredstring
RequiredReturned if the project property was removed successfully.
1
2
3
curl --request DELETE \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/properties/{propertyKey}' \
--user 'email@example.com:<api_token>'
Restores an archived project. In case of success restored project should be re-indexed.
string
RequiredReturned if the project is successfully restored
1
2
3
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/restore' \
--user 'email@example.com:<api_token>'
Returns all roles in the given project Id or key, with links to full details on each role.
string
RequiredList of roles and URIs to full details
1
2
3
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/role' \
--user 'email@example.com:<api_token>'
Returns the details for a given project role in a project.
string
Requiredinteger
RequiredRole details and its actors
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/role/{id}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Updates a project role to include the specified actors (users or groups). Can be also used to clear roles to not include any users or groups. For user actors, their usernames should be used.
string
Requiredinteger
RequiredThe actors to set for the role
object
integer
Role details and its actors after modification
1
2
3
4
5
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/role/{id}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Adds an actor (user or group) to a project role. For user actors, their usernames should be used.
string
Requiredinteger
RequiredThe actors to add to the role
boolean
array<string>
Role details and its actors after modification
1
2
3
4
5
curl --request POST \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/role/{id}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Deletes actors (users or groups) from a project role.
string
Requiredinteger
Requiredstring
string
No content on success
1
2
3
curl --request DELETE \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/role/{id}' \
--user 'email@example.com:<api_token>'
Get all issue types with valid status values for a project
string
RequiredIssue types with status values
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/statuses' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Updates the type of a project
string
Requiredstring
RequiredUpdated project data
1
2
3
4
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/type/{newProjectTypeKey}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns all versions for the specified project. Results are paginated. Results can be ordered by the following fields: sequence, name, startDate, releaseDate.
string
Requiredstring
integer
string
integer
Project versions
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/version' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Contains a full representation of a the specified project's versions.
string
Requiredstring
Project versions
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectIdOrKey}/versions' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the issue security scheme for project.
string
RequiredIssue security scheme
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/issuesecuritylevelscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Gets a notification scheme associated with the project. Follow the documentation of /notificationscheme/{id} resource for all details about returned value.
string
Requiredstring
Returns a full representation of the notification scheme with given id
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/notificationscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Gets a permission scheme assigned with a project
string
Requiredstring
The associated permission scheme.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/permissionscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Assigns a permission scheme with a project
string
Requiredstring
Object that contains an id of the scheme
integer
Shortened details of the newly associated permission scheme.
1
2
3
4
5
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/permissionscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Gets a full representation of a priority scheme in JSON format used by specified project. User must be global administrator or project administrator. All project keys associated with the priority scheme will only be returned if additional query parameter is provided expand=projectKeys.
string
RequiredReturned if the priority scheme exists and the user has permission to view it.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/priorityscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Assigns project with priority scheme. Priority scheme assign with migration is possible from the UI. Operation will fail if migration is needed as a result of operation eg. there are issues with priorities invalid in the destination scheme. All project keys associated with the priority scheme will only be returned if additional query parameter is provided expand=projectKeys.
string
RequiredObject that contains an id of the scheme
integer
Affected priority scheme.
1
2
3
4
5
curl --request PUT \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/priorityscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Unassigns project from priority scheme. Operation will fail for defualt priority scheme, project is not found or project is not associated with provided priority scheme. All project keys associated with the priority scheme will only be returned if additional query parameter is provided expand=projectKeys.
integer
Requiredstring
RequiredAffected priority scheme.
1
2
3
4
curl --request DELETE \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/priorityscheme/{schemeId}' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns all security levels for the project that the current logged in user has access to. If the user does not have the Set Issue Security permission, the list will be empty.
string
RequiredReturns a list of all security levels in a project for which the current user has access.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/securitylevel' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Returns the workflow scheme that is associated with requested project.
string
RequiredReturned if requested project exist and has associated workflow scheme, and the user has permission to see it.
1
2
3
4
curl --request GET \
--url 'http://{baseurl}/rest/api/2/project/{projectKeyOrId}/workflowscheme' \
--user 'email@example.com:<api_token>' \
--header 'Accept: application/json'
Rate this page: