Developer Portal for YouTrack and Hub Help

Project

Represents a YouTrack project.

Extends BaseEntity.

Properties

Name

Type

Description

articles

Set.<Article>

Read-only.  A list of all articles that belong to the project.

Available since 2021.4.23500

becomesRemoved

Boolean

Read-only.  When `true`, the entity is removed in the current transaction. Otherwise, `false`. This property can become `true` only in on-change rules when the rule is triggered on the removal of an issue or an article. In the rule code, the `runOn` rule property must contain the`removal` parameter set to `true`.

Available since 2017.4.37915

runOn: {removal: true}

changesProcessors

Set.<ChangesProcessor>

Read-only.  The list of VCS change processors that are integrated with the project.

Available since 2020.3

description

String

Read-only.  The description of the project as shown on the project profile page.

fields

Set.<ProjectCustomField>

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

isArchived

Boolean

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

isNew

Boolean

Read-only.  When `true`, the entity is created in the current transaction. Otherwise, `false`.

Available since 2018.2.42351

issues

Set.<Issue>

Read-only.  A list of all issues that belong to the project.

key

String

Read-only.  The ID of the project. Use instead of project.shortName, which is deprecated.

leader

User

Read-only.  The user who is set as the project owner.

name

String

Read-only.  The name of the project.

notificationEmail

String

Read-only.  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.

if (issue.becomesReported) { const lastRelatedEmails = issue.fields['Last message related emails']; lastRelatedEmails?.split(' ')?.forEach(function (email) { if (email?.equalsIgnoreCase(issue.project.notificationEmail)) { const allRelatedEmails = issue.fields['All related emails']; if (!allRelatedEmails) { issue.fields['All related emails'] = email; } else if (!(allRelatedEmails.split(' ').has(email))) { issue.fields['All related emails'] = allRelatedEmails + ' ' + email; } } }); issue.fields['Last message related emails'] = null; }

shortName

String

Read-only. 

team

UserGroup

Read-only.  A UserGroup object that contains the users and members of groups who are assigned to the project team.

Available since 2017.4.38235

Methods

findByKey

static findByKey(key)

Finds a project by ID.

Parameters

Name

Type

Description

key

String

The ID of the project to search for.

Return Value

Type

Description

Project

The project, or null when there are no projects with the specified ID.

 

findByName

static findByName(name)

Finds a project by name.

Parameters

Name

Type

Description

name

String

The name of the project to search for.

Return Value

Type

Description

Project

The project, or null when there are no projects with the specified name.

 

becomes

becomes(fieldName, expected)

Checks whether a field is set to an expected value in the current transaction.

Parameters

Name

Type

Description

fieldName

string

The name of the field to check.

expected

string

The expected value.

Return Value

Type

Description

boolean

If the field is set to the expected value, returns `true`.

 

canBeReadBy

canBeReadBy(fieldName, user)

Checks whether a user has permission to read the field.

Parameters

Name

Type

Description

fieldName

string

The name of the field.

user

User

The user for whom the permission to read the field is checked.

Return Value

Type

Description

boolean

If the user can read the field, returns `true`.

 

canBeWrittenBy

canBeWrittenBy(fieldName, user)

Checks whether a user has permission to update the field.

Parameters

Name

Type

Description

fieldName

string

The name of the field.

user

User

The user for whom the permission to update the field is checked.

Return Value

Type

Description

boolean

If the user can update the field, returns `true`.

 

findFieldByName

findFieldByName(name)

Returns the custom field in the project with the specified name.

Parameters

Name

Type

Description

name

String

The name of the custom field.

Return Value

Type

Description

ProjectCustomField

The custom field with the specified name.

 

intervalToWorkingMinutes

intervalToWorkingMinutes(start, end)

Gets the number of minutes that occurred during working hours in a specified interval. For example, if the interval is two days and the number of working hours in a day is set to 8, the result is 2 * 8 * 60 = 960

Parameters

Name

Type

Description

start

Number

Start of the interval.

end

Number

End of the interval.

Return Value

Type

Description

Number

The number of minutes that occurred during working hours in the specified interval.

 

is

is(fieldName, expected)

Checks whether a field is equal to an expected value.

Available since 2019.2.55603

Parameters

Name

Type

Description

fieldName

string

The name of the field to check.

expected

string

The expected value.

Return Value

Type

Description

boolean

If the field is equal to the expected value, returns `true`.

 

isAgent

isAgent(user)

Checks if the specified user is an agent in the project.

Available since 2023.1

Parameters

Name

Type

Description

user

User

The user to check.

Return Value

Type

Description

Boolean

If the specified user is added to agents in the project, returns 'true'.

 

isChanged

isChanged(fieldName)

Checks whether the value of a field is changed in the current transaction.

Parameters

Name

Type

Description

fieldName

string

The name of the field to check.

Return Value

Type

Description

boolean

If the value of the field is changed in the current transaction, returns `true`.

 

newDraft

newDraft(reporter)

Creates a new issue draft.

Available since 2021.4

Parameters

Name

Type

Description

reporter

User

Issue draft reporter.

Return Value

Type

Description

Issue

Newly created issue draft.

 

oldValue

oldValue(fieldName)

Returns the previous value of a single-value field before an update was applied. If the field is not changed in the transaction, returns null.

Parameters

Name

Type

Description

fieldName

string

The name of the field.

Return Value

Type

Description

Object

If the field is changed in the current transaction, the previous value of the field. Otherwise, null.

 

required

required(fieldName, message)

Asserts that a value is set for a field. If a value for the required field is not set, the specified message is displayed in the user interface.

Parameters

Name

Type

Description

fieldName

string

The name of the field to check.

message

string

The message that is displayed to the user that describes the field requirement.

 

was

was(fieldName, expected)

Checks whether a field was equal to an expected value prior to the current transaction.

Available since 2019.2.55603

Parameters

Name

Type

Description

fieldName

string

The name of the field to check.

expected

string

The expected value.

Return Value

Type

Description

boolean

If the field was equal to the expected value, returns `true`.

 

Last modified: 15 March 2024