YouTrack Standalone 2020.6 Help

Projects

This resource provides access to projects.

Resource

/api/admin/projects

Returned entity

Project. For the description of the entity attributes, see Supported Fields section.

Supported methods

Supported sub-resources

Project attributes

Represents a YouTrack project.

Extends IssueFolder

This table describes attributes of the Project entity.

  • To receive an attribute in the response from server, specify it explicitly in the request parameter fields.

  • To update an attribute, provide it in the body of a POST request.

Field

Type

Description

startingNumber

Long

Starting number for issues in project. This property can be set only during creation of the new project.

shortName

String

The ID of the project. This short name is also a prefix for an issue ID. Can be null.

description

String

The description of the project as shown on the project profile page. Can be null.

leader

User

The user who is set as the project lead. Can be null.

createdBy

User

The user who created the project. Can be null.

issues

Array of Issues

A list of all issues that belong to the project.

customFields

The set of custom fields that are available in the project.

archived

Boolean

If the project is currently archived, this property is `true`.

fromEmail

String

The email address that is used to send notifications for the project. If a 'From' address is not set for the project, the default 'From' address for the YouTrack server is returned.

replyToEmail

String

The email address that is used as the reply email to send notifications for the project. If it is not set for the project, the default address for the YouTrack server is returned. Can be null.

template

Boolean

If true, this project is a template.

iconUrl

String

The URL of the icon of the project. Read-only. Can be null.

team

UserGroup

Read-only user group representing all members of the project team. Read-only. Can be null.

name

String

The name of the issue folder. Can be null.

Read a List of Projects

Get a list of all available projects in the system.

Request syntax

GET /api/admin/projects?{fields}&{$top}&{$skip}

Request parameters

Parameter

Type

Description

fields

String

A list of Project attributes that should be returned in the response. If no field is specified,only the entityID is returned

$skip

Int

Optional. Lets you set a number of returned entities to skip before returning the first one.

$top

Int

Optional. Lets you specify the maximum number of entries that are returned in the response.

Sample

Sample request

https://example.myjetbrains.com/youtrack/api/admin/projects?fields=id,name,shortName,createdBy(login,name,id),leader(login,name,id),key&$top=2

Sample response body

[ { "shortName": "KNBN", "leader": { "login": "john.doe", "name": "John Doe", "id": "1-2", "$type": "User" }, "createdBy": { "login": "john.doe", "name": "John Doe", "id": "1-2", "$type": "User" }, "name": "Another Kanban project from REST", "id": "0-14", "$type": "Project" }, { "shortName": "SCR", "leader": { "login": "john.doe", "name": "John Doe", "id": "1-2", "$type": "User" }, "createdBy": { "login": "john.doe", "name": "John Doe", "id": "1-2", "$type": "User" }, "name": "AnotherScrum project from REST", "id": "0-10", "$type": "Project" } ]

Add a New Project

When creating a new project, you must provide project's name, short name, and the project leader. Other attributes are optional. To create a project that is based on a template, like Scrum or Kanban, you need to add template query parameter to the endpoint URL.

Required permissions

Requires Create Project permission.

Request syntax

POST /api/admin/projects?{fields}&{template}

Request parameters

Parameter

Type

Description

fields

String

A list of Project attributes that should be returned in the response. If no field is specified,only the entityID is returned

template

String

If the template is not specified, then the new project will use the default settings. Optional. Lets you specify the template to use for the new project. Possible values: scrum, kanban.

Sample 1

This sample shows a minimal viable request to create a new project. To check the attributes of a newly created project, we added fields request parameters.

Sample request

curl -L -X POST 'https://example.myjetbrains.com/youtrack/api/admin/projects?fields=id,shortName,name,leader(id,login,name)' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer perm:am9obi5kb2U=.UG9zdG1hbiBKb2huIERvZQ==.jJe0eYhhkV271j1lCpfknNYOEakNk7' \ --data-raw '{ "description": "A new project created from rest api", "name": "GRA Project", "shortName": "GRP", "leader":{ "id":"1-2" } }'

Sample request body

{ "description": "A new project created from rest api", "name": "GRA Project", "shortName": "GRP", "leader": { "id": "1-2" } }

Sample response body

{ "shortName": "NP", "leader": { "login": "john.doe", "name": "John Doe", "id": "1-2", "$type": "User" }, "name": "New Project", "id": "0-16", "$type": "Project" }

Sample 2

This sample shows a request to create a new project with the Scrum template.

Sample request

https://example.myjetbrains.com/youtrack/api/admin/projects?fields=id,shortName,name,leader(id,login,name)&template=scrum

Sample request body

{ "description": "A new project created with the Scrum template", "name": "New Scrum Project", "shortName": "NSCP", "leader":{ "id":"1-2" } }
Last modified: 30 March 2021