Query language in Tracker

If you want to do more than simple filters allow, set a filter using a query language.

The query language allows you to:

Query format

To set up a filter using a query language:

  1. Go to the Issues page.

  2. Click  Query language in the upper-right corner.

  3. Enter a query and click Apply.

General request format:

"<parameter>": "<value>"

To set a parameter, start typing its name and select a relevant one from the suggestion. For the full list of parameters, see Filter parameters.

Examples

  • Issues that are in the TEST queue:
    "Queue": "TEST"
    
  • Issues with Ivan Ivanov as an assignee:
    "Assignee": "Ivan Ivanov"
    
  • Issues with the Open or In progress status.
    "Status": "Open", "In progress"
    
  • Issues created from January 1 to January 30, 2017:
    "Created": "2017-01-01".."2017-01-30"
    

Multiple parameter values

If you want to filter issues by multiple values of the same parameter, use a comma-separated list:

<parameter>: "<value_1>", "<value_2>", "<value_3>"

Example

author: "vpupkin","iivanov"

This filter will return all the issues that were reported by vpupkin or iivanov.

Filters with multiple conditions

You can combine multiple conditions per filter using logical operators:

  • AND: Conditions combined with the logical operator AND must be fulfilled simultaneously.

    Example:

    <parameter_1>: "<value_1>" AND <parameter_2>: "<value_2>"
    

    This query will return the issues that have <parameter_1> set to <value_1> AND <parameter_2> set to <value_2>.

    Instead of using the AND operator, you can just list the fields separated by a space.

  • OR: If you use the logical OR operator, at least one of the conditions must be fulfilled.

    Example:

    <parameter_1>: "<value_1>" OR <parameter_2>: "<value_2>"
    

    This query will return the issues that have at least one of the conditions met: <parameter_1> set to <value_1> OR <parameter_2> set to <value_2>.

You can create complex filters by combining multiple operators in a single request:

<parameter_1>: "<value_1>" AND <parameter_2>: "<value_2>" OR <parameter_3>: "<value_3>"

When complex filters are processed, the AND operators are applied first. To change the order of actions, use parentheses:

<parameter_1>: "<value_1>" AND (<parameter_2>: "<value_2>" OR <parameter_3>: "<value_3>")

Searching by text

In addition to searching by parameters, you can use regular text search.

Searching by all fields

To find matches in any of the issue text fields, such as name, description, or comments:

  • Enter text in the query field and click Apply.

    If the text contains multiple words, enclose it in quotation marks.

  • You can also use the browser address bar to search by text. To do this, enter a query in this format:

    https://tracker.yandex.com/issues/?_q="<string>"
    

    where <string> is the text you're searching for.

This query will return the issues whose names, descriptions, or comments include the words from the original string and their forms.

If the text of your query contains two or more words, it will return all the issues that contain the words that match at least one of the words from the original query and their forms.

Searching by the specified field

To search only in one of the fields, specify it in the parameter:

  • Summary: Issue name.

  • Description: Issue description.

  • Comment: Text in comments.

  • History: Text in the history of changes.

Description: "This area is familiar to me as the outskirts of China"

This filter will return all the issues whose descriptions include the words from the original query and their forms.

Operators used for text search

  • To only find issues with text that exactly matches the query text, use the # operator:

    Summary: #"Version 2.0"
    

    This filter will only return the issues whose name exactly matches the query text.

  • The " and \ characters in queries that require an exact match should be escaped with a backslash (\).

    Description: #"\"Favorites\""
    

    This filter will only return the issues whose description contains the "Favorites" text.

    "Description": #"On\\Off"
    

    This filter will only return the issues whose description contains the On\Off text.

  • To only find issues that have no text fragment in a given field, use the ! operator:

    Summary: !"UI"
    

    This filter will only return the issues whose name does not contain a UI text fragment.

  • To only find issues whose name does not exactly match the query text, use the ~ operator. This operator only applies to the Summary field:

    Summary: ~"UI Update 2.0"
    

    This filter will only return the issues whose name does not match the query text.

Searching by user

You can search issues by names and usernames specified in the issue fields. There are several ways to specify names and usernames in queries.

  • Username with @ at the end: login@. Use it to search for an exact match containing the username.

    Example:

    Assignee: user3370@
    

    This query will display all issues that have user3370 specified as the assignee. This is the most reliable way to search by user.

  • Full name in quotation marks: "<full_name>". Use it to search for matches containing the user's full name.

    Example:

    Author: "Ivan Ivanov"
    

    This query will display all issues that have Ivan Ivanov specified as the author. Please note that the output may contain issues of other authors with the username or name similar to Ivan Ivanov. To avoid this, search by username with the @ character.

  • Full name and username. Use it to search for exact matches containing any of these.

    Examples:

    • Followers: Ivan. This query will display all issues followed by users whose first name is Ivan no matter what their last name is.

    • Followers: ivan. This query will display all issues followed by a user with the ivan@ username or with the first name Ivan .

Searching by local field

To specify a local issue field in the query, enter the key of the queue to which the field is linked, followed by a dot and the field's name in Russian or English. If the field's name includes several words, enclose the name in double quotes. Examples:

DEVS.Test engineer: "Ivan Ivanov"
DEVS."Lead test engineer": "Ivan Ivanov"
DEVS.tester: user3370@

Date and time parameters

Many issue parameters have the values of date and time. The query language supports several formats for such parameters:

Date

  • MM/DD/YYYY

    Example:

    04/30/2017
    
  • DD.MM.YYYY

    Example:

    30.04.2017
    
  • DD-MM-YYYY

    Example:

    30-04-2017
    
  • YYYY-MM-DD

    Example:

    2017-04-30
    

Date and time

To specify exact date and time, use the format:

"YYYY-MM-DD XXh:XXm:XXs"

Example:

"2017-04-30 17:25:00"

Time intervals

  • You can specify time intervals in months, weeks, days, hours, minutes, and seconds using this format:

    "XXM XXw XXd XXh XXm XXs"
    

    For example, a time interval of 2 months, 3 days, 5 hours, and 32 minutes can be specified as:

    "2M 3d 5h 32m"
    
  • You can set intervals using acceptable date formats:

    DD-MM-YYYY .. DD-MM-YYYY
    

    For example, a filter for the issues created within a certain interval:

    Created: 01-01-2017 .. 02-03-2017
    
  • Time intervals can be set using functions as well as comparison, addition, and subtraction operations.

    For example:

    A filter for issues created no earlier than a week and one day ago.

    Created: > today() - "1w 1d"
    

    A filter for issues with the In Progress status that have a deadline in less than a month:

    "Status": "In progress" AND Deadline: < today() + 1M
    

Comparison operators

Apart from checking for an exact match, the query language supports the following comparison operations:

  • Not equal to

    <parameter>: !"<value>"
    
  • Greater than, Less than, Less than or equal to, and Greater than or equal to

    The operations accept only numeric and date-and-time parameters.

    <parameter>: ><number>
    <parameter>: <<number>
    <parameter>: >=<number>
    <parameter>: <=<number>
    
  • In the range

    The operation only applies to numeric parameters.

    <parameter>: <number_1> .. <number_2>
    

Examples

Search for issues with a deadline in a few days or today:

  • Issues with a deadline in 3 days:
    Deadline: <= today() +3d and deadline: >= today()
    

To customize parameters, use functions in a query:

  • Issues with a deadline today:
    Deadline: today()
    

Functions

In addition to exact parameter values, you can use functions. A function is a variable whose value is calculated at the query runtime. For example, the function today() takes the value of today's date. To show all issues created today, use the query:

Created: today()
Function Result Example
empty() Empty value (no parameter specified) Find issues that have no assignee specified:
Assignee: empty()
notEmpty() Any non-empty value (parameter specified) Find issues that have a deadline set:
Deadline: notEmpty()
me() Name of the user running the query Find issues created by you:
Author: me()
now() Current time with to-the-minute precision Find issues created in the last 12 hours:
Created: >now()-12h
today() Time interval corresponding to current date Find issues created today:
Created: today()
week() Date interval corresponding to current week Find issues created this week:
Created: week()
month() Date interval corresponding to current month Find issues created this month:
Created: month()
quarter() Date interval corresponding to current quarter Find issues created in this quarter:
Created: quarter()
year() Date interval corresponding to current year Find issues created this year:
Created: year()
unresolved() Issues without a resolution Find all issues that have no resolution:
Resolution: unresolved()
group() List of the department's employees Find issues that employees of the Sales department are working on:
Assignee: group(value: "Sales department")
Note: If a group to select from contains more than 1,000 users, the query will only search across 1,000 users. Moreover, it is not known beforehand which users will be selected, as you cannot manage this process.

Searching by parameter change

If you know when and how the issue parameter was changed, you can use these criteria in the filter:

"<parameter>": changed(from: "<old_value>" to: "<new_value>" by: "<who_changed>" date: "<when_changed>")

For example, to get a list of issues that Ivan Ivanov changed to the In Progress status over a certain period of time, create the following query:

Status: changed(to: "In Progress" by: "Ivan Ivanov" date: 01.09.2017 .. 15.09.2017)

To get a list of issues that Ivan Ivanov changed to the In Progress status over the last week, use the following function in your query:

Status: changed(to: "In Progress" by: "Ivan Ivanov" date: >today()-1w)

Sorting results

You can sort filter results by adding "Sort By" at the end of the query. Specify the name of the sort field as a value:

"Sort By": Created

If necessary, sort in ascending (ASC) or descending (DESC) order:

"Sort By": Created ASC

To specify several sort fields, list them through a comma in the priority order:

"Sort By": Created ASC, Updated DESC

Useful queries

Try to run some ready-made queries to get a better idea of how they work:

  • Active issues where you are the author:

    Author: me() Resolution: empty()
    
  • Active issues that were assigned to you:

    Assignee: me() Resolution: empty()
    
  • Active issues that you follow:

    Followers: me() Resolution: empty()
    
  • Issues where you are an assignee and deadline is due within a week:

    Assignee: me() Deadline: week()
    
  • Issues with the Critical or Blocker priority for which you are the author, assignee, or follower.

    (Followers: me() OR Assignee: me() OR Author: me()) AND Resolution: empty() AND Priority: Blocker, Critical
    

Filter parameters

Parameter Value Description
"Access" Names or usernames Searching for issues with certain users specified in the Access field.
For example:
"Access": user3370@, "Ivan Ianov"
"Affected Version" Version names Searching for issues that list a specific value in the Affected Version field.
For example:
"Affected Version": "14.09.1978"
"Assignee" Names or usernames Searching for issues with specific assignees.
For example:
"Assignee": user3370@, "Ivan Ivanov"
"Author" Names or usernames Searching for issues with specific authors.
For example:
"Author": user3370@, "Ivan Ivanov"
"Block Queue" Name or key of the queue Searching for issues that have dependent (blocked) issues in the specified queues.
For example:
"Block Queue": TEST
"Clone" Issue keys Searching for issues copied from specific issues.
For example:
"Clone": "TASK-123", "TASK-321"
"Clones Of Queue" Name or key of the queue Searching for issues copied from issues in specific queues.
For example:
"Clones Of Queue": TEST, DEVELOP
"Comment" Text string Searching for issues whose comments include the specified text.
For example:
  • Find the issues whose comments contain words and word forms from the phrase:
    "Comment": "good job"
  • Find issues with comments that contain the exact phrase:
    "Comment": #"great job"
"Comment Author" Names or usernames Searching for issues with comments made by specific users.
For example:
"Comment Author": user3370@, "Ivan Ivanov"
"Component Owner" Names or usernames Searching for issues that include components managed by specific users.
For example:
"Component Owner": user3370@, "Ivan Ivanov"
"Components" Component names Searching for issues that refer to specific components.
For example:
"Components": "backend", " frontend"
"Created" Date or date interval Searching for issues created on a specific date or within a specific date range.
For example:
"Created": 2017-01-01..2017-01-30
"Deadline" Date or date interval Searching for issues with a deadline set for a specific date or date range.
For example:
"Deadline": 2017-01-30
"Depend On Queue" Name or key of the queue Searching for issues dependent on (blocked by) issues from specific queues.
For example:
"Depend On Queue": TEST
"Depends On" Issue keys Searching for issues that depend on the given issues (are blocked by them).
For example:
"Depends On": "TASK-123", "TASK-321"
"Description" Text string Searching for issues that have a description with specific text.
For example:
  • Find issues that have a description containing the words and word forms in the phrase:
    "Description": "invent the wheel"
  • Find issues that contain the exact phrase in their description:
    "Description": #"invent the wheel"
"Duplicated In Queue" Name or key of the queue Searching for issues that have duplicates in specific queues.
For example:
"Duplicated In Queue": TEST
"Duplicates" Issue keys Searching for issues that duplicate specific issues.
For example:"Duplicates":
"TASK-123", "TASK-321"
"Duplicates In Queue" Name or key of the queue Searching for issues that are duplicates of issues in the specified queues.
For example:
"Duplicates In Queue": TEST
"End Date" Date or date interval Searching for issues whose End date value matches a specific date or date range.
For example:
"End Date": 2017-01-30
"Epic" Epic keys Searching for issues that refer to specific epics.
For example:Epic:
"TASK-123", "TASK-321"
"Epics For Queue" Name or key of the queue Searching for epics that include issues from specific queues.
For example:
"Epics For Queue": TEST, DEVELOP
"Favorited by" Only the function me() Searching for your favorite issues.
For example:
"Favorited by": me()
"Filter" IDs or names of filters Searching for issues that match the filters.
For example:
"Filter": "Issues of my department"
Note. If two users create two filters having the same name, they might get different results when running the same query with this filter name because the filter of the user who's running the query is applied.
"Fix Version" Version names Searching for issues that list a specific value in the Fix Version field.
For example:
"Fix Version": "12.11.1986"
"Followers" Names or usernames Searching for issues with specific followers.
For example:
"Followers": user3370@, "Ivan Ivanov"
"Has Epic" Issue keys Searching for issues that refer to specific epics.
For example:
"Has Epic": TASK-123
"Have Links To Queue" Name or key of the queue Searching for issues with links of any type (parent, sub-issue, related, duplicate, and so on) with issues from specified queues.
For example:
"Have Links To Queue": TEST
"History" Text string Find issues that have the words or forms of words from a specific phrase in their change history.
A search is only made by the Name and Description field values.
For example:
"History": "easy as pie"
"In Epics Of Queue" Name or key of the queue Searching for issues related to epics from specific queues.
For example:
"In Epics Of Queue": TEST
"Is Dependent By" Issue keys Searching for issues that block specific issues.
For example:
"Is Dependent By": "TASK-123", "TASK-321"
"Is Duplicated By" Issue keys Searching for issues that are duplicated by specific issues.
For example:
"Is Duplicated By": "TASK-123", "TASK-321"
"Is Epic Of" Issue keys Searching for epics that include specific issues.
For example:
"Is Epic Of": "TASK-123", "TASK-321"
"Is Parent Task For" Issue keys Searching for issues that are parents to specific issues.
For example:
"Is Parent Task For": "TASK-123", "TASK-321"
"Is Subtask For" Issue keys Searching for sub-issues for specified parent issues.
For example:
"Is Subtask For": "TASK-123", "TASK-321"
"Key" Issue keys Searching for issues with specific keys.
For example:
"Key": "TASK-123", "TASK-321"
"Last comment" The date and time when the latest comment was added Searching for issues that didn't receive any new comments during a particular timeframe.
For example:
"Last Comment": < now()-1h
"Linked to" Issue keys Searching for issues with links of any type (parent, sub-issue, related, duplicate, and so on) with specified issues.
For example:
"Linked to": "TASK-123", "TASK-321"
"Modifier" Names or usernames Searching for issues recently updated by specific users.
For example:
"Modifier": user3370@, "Ivan Ivanov"
"Old Queue" Name or key of the queue Searching for issues moved from the specified queues.
For example:
"Old Queue": TEST
"Original" Issue keys Searching for copies of specified issues.
For example:
"Original": "TASK-123", "TASK-321"
"Original Estimate" Time range in the format "XXw XXd XXh XXm XXs" Searching for issues with a specific initial estimate.
For example:
"Original Estimate": "5d 2h 30m"
"Originals Of Queue" Name or key of the queue Searching for issues that have copies in specific queues.
For example:
"Originals Of Queue": TEST
"Parent Tasks For Queue" Name or key of the queue Searching for issues that have sub-issues in specific queues.
For example:
"Parent Tasks For Queue": TEST, DEVELOP
"Pending Reply From" Names or usernames Searching for issues that are pending response from a specific user (the user has been invited to comment).
For example, searching for issues pending response from the user with the user3370 username or from the user named Ivan Ivanov:
"Pending Reply From": user3370@, "Ivan Ivanov"
"Priority" Priority values Searching for issues with a specific priority.
For example:
"Priority": "Minor", "Normal"
"Project" Project names Searching for issues from specific projects.
For example:
"Project": "Perpetuum mobile"
"Queue" Name or key of the queue Searching for issues from specific queues.
For example:
"Queue": TEST
"Queue Owner" Names or usernames Searching for issues from queues with specific owners.
For example:
"Queue Owner": user3370@, "Ivan Ivanov"
"Related" Names or usernames Searching for issues with specific authors, assignees, or followers.
For example:
"Related": user3370@, "Ivan Ivanov"
"Related To Queue" Name or key of the queue Searching for issues related to issues from specific queues (with a link of the Related type).
For example:
"Related To Queue": Testing
"Relates" Issue keys Searching for issues related to specific issues (with a link of the Related type).
For example:
"Relates": "TASK-123", "TASK-321"
"Resolved" Date or date interval Searching for issues that were closed (resolved) on a specific date or during a specific date range.
For example:
"Resolved": 2017-01-01..2017-01-30
"Resolver" Names or usernames Searching for issues that specific users have closed (resolved).
For example:
"Resolver": user3370@, "Ivan Ivanov"
"Sprint" IDs or names of scripts Searching for issues from specific sprints.
For example:
Sprint: "TrackerSprint32"
"Sprint In Progress By Board" Issue board ID (you can take it from the board page URL) Searching for issues related to an active sprint on a specific issue board.
For example:
"Sprint In Progress By Board": 87
"Sprints By Board" Issue board ID (you can take it from the board page URL) Searching for issues from specific boards.
For example:
"Sprints By Board": 87
"Start Date" Date or date interval Searching for issues whose Start date value matches a specific date or date range.
For example:
"Start Date": <2017-01-30
"Status" Status names Searching for issues with specific statuses.
For example:
"Status": Open, Resolved, Closed
"Story Points" Story Points count Searching for issues with a specific number of Story Points.
For example:
"Story Points": >=5
"Subtasks For Queue" Name or key of the queue Searching for sub-issues that have parent issues in the specified queues.
For example:
"Subtasks For Queue": TEST
"Summary" Text string Searching for issues that have a name with specific text.
For example:
  • Find issues that have a name containing the words and word forms in the phrase:
    "Summary": "invent the wheel"
  • Find issues whose name completely matches the following phrase:
    "Summary": #"invent the wheel"
"Tags" Issue tags Searching for issues with specific tags.
For example:
"Tags": "Support", "wiki"
"Time Spent" Time range in the format "XXw XXd XXh XXm XXs" Searching for issues with a specific amount of time spent.
For example:
"Time Spent": >"5d 2h 30m"
"Type" Issue type Searching for issues of specific types. For example:
"Type": Epic
"Updated" Date or date interval Searching for issues updated on a specific date or within a specific date range.
For example:
"Updated": >2017-01-30
"Voted by" Names or usernames Searching for issues that specific users have voted for.
For example:
"Voted By": user3370@, "Ivan Ivanov"
"Votes" Number of votes Searching for issues with a specific number of votes.
For example:
"Votes": > 6