Searching Tickets

The text-based search in Codebase is a very powerful tool which will enable you to query all tickets stored in your project. The query syntax is very simple to use and follows a similar pattern to that used in other web applications.

To simply search for tickets based on their ID or Summary text you can simply enter a standard query into the text field. For example, to find all 'hello world' related tickets you can simply search for hello world.

Any of the examples given below can be added together to create a more powerful search.

Searching for a specific ID

To find a ticket with a specific ID (or set of IDs) you can run one of the following:

  • id:5 will return the ticket with the ID 5
  • id:1,2,3 will return the tickets with IDs 1, 2 and 3.

The first will return the ticket which matches ID #5 and the second will return each ticket matching IDs 1, 2 and 3.

Searching based on properties such as status, priority, type or category

You can easily search for tickets in a specific status, priority, type or category.

  • status:new,accepted will return all tickets with the status new and assigned.
  • priority:high will return all tickets with the priority high
  • category:cosmetic,api,documentation will return all tickets with the categories cosmetic, api and documentation.
  • type:bug will return all tickets which are bugs. You can also use enhancement and task.

If you have a property which contains a space, you should included it encapsulated by double quote marks, such as status:new,"In Progress". As you may have noticed you can search for multiple values by separating them with a comma.

When searching for statuses, you can also use the open or closed keywords to automatically search for all your statuses which should be considered open or closed.

  • status:open will return all tickets with a status which is not treated as closed
  • status:closed will return all tickets with a status which is treated as closed

Inverse searching

To search for the opposite of a query, you can prefix the field name with not-.

  • not-priority:high

Actor Searching

If you want to search a field which contains an actor/user, for example assignee or reporter, you can use the me keyword to automatically use the currently logged in user as the subject.

  • assignee:me return all tickets assigned to the currently logged in user
  • reporter:me return all tickets reported by the currently logged in user.

You can also expressly define the username of the actor such as:

  • assignee:dave return all tickets assigned to the user with the username dave.
  • reporter:michael return all tickets which were reported by the user with the username michael.

Searching for all or none

Say one day you come into the system and want to find all tickets which aren't assigned to a milestone or all the tickets which are unassigned?

  • assignee:none will return all tickets without an assigned user
  • milestone:none will return all tickets without a milestone

Alternatively, you can use the any keyword to find all the tickets which DO have ANY assignee or milestone.

  • assignee:any will return all tickets which are assigned
  • milestone:any will return all tickets which have a milestone

Sorting

You can order/sort the results from you search using the sort and order operators. By default we order by priority but you can change these using the syntax below:

  • sort:id order:desc will order by ID descending - with higher IDs at the top.
  • sort:priority order:asc will order by priority with most important at the top.

Example Queries

Below are some example queries which you may want to modify or use for your own purposes:

  • assignee:me status:open return all open tickets assigned to me
  • status:open milestone:none return all open tickets without a milestone
  • status:open assignee:me not-priority:low return all open tickets which are not low priority