Usage

How to use Jirio

Quick start

  1. Install Jirio using the Add to Slack button on the header of this webiste.
  2. (Optional) If you have chosen a per-user authentication, run:
    /jirio auth

    and click on the generated link to authenticate in JIRA.

  3. To create your first JIRA issue called “New story title”, enter the following command:
    /jirio create story New story title :project DKS

Congratulations! You’ve created your first JIRA issue from Slack. Please read the full manual below for more commands and more parameters.

Commands

Jirio supports the following list of commands:

Create new issue

jirio create story

/jirio create [task|bug|story|sub-task] Issue title [:token1] value [:token2] value [:tokenN] value

Create an issue in JIRA with specified parameters.

create
Creates a new story, task or a bug. This keyword should always be present and should go after the /jirio command.
[task|bug|story|sub-task]
Specifies what kind of issue you would like to create, be it task, bug or a story. We also support custom issue types that are defined in JIRA. If your issue type contains a whitespace, then you have to enclose issue type into single or double quotes. For instance, /jirio create 'New Feature' some story title goes here :project KDS
Issue title
A title of the issue. The only limitation is that the colon symbol should not be used (because it is the symbol that tokens start with). For instance:

/jirio create story A user can submit issues from the main page :project DKS

will create a story with a title “A user can submit issues from the main page”

Tokens
When you run a reload command, Jirio loads all fields that your JIRA configuration supports hence making it possible to supply any of these tokens when creating a story. Below is just a list of most commonly used tokens that exist in JIRA by in default configuration,  but most of your JIRA bespoke fields are supported as well. Multiple tokens can be supplied in any order.
Examples of commonly used tokens:

  • :desc <issue description>
    Adds a description to an issue. The only limitation is that the colon symbol should not be used. For instance:

    /jirio create story A user can submit issues from the main page :desc Some fancy story description :project DKS

    will create a story with the a “A user can submit issues from the main page” and a description “Some fancy story description”

  • :priority [Hightest|High|Medium|Low|Lowest]
    Specifies priority for the given issue. Priority is case sensitive, so it should be written exactly as it is displayed in JIRA. For instance:

    /jirio create story A user can submit issues from the main page :desc Some fancy story description :priority Low :project DKS

    will create a story with low priority.

  • :assignee <username>
    Assigns newly created issue to this user. A username can be found if you go to your JIRA, click on your profile picture and the click Profile. You will see your username on the left column. For instance:

    /jirio create story A user can submit issues from the main page :to admin :desc Some fancy story description :priority Low :project DKS

    will create a story and assign it to admin user.

  • :parent <key>
    Creates a sub-task for a parent issue that should be defined by :parent token. Notice, that this token only works with sub-task issue type. For instance:

    /jirio create sub-task A user can submit issues from the main page :parent KEY-1551 :project DKS

    will create a sub-task for the parent issue KEY-1551.

  • :reporter <username>
    Set a reported of this issue. A username can be found if you go to your JIRA, click on your profile picture and the click Profile. You will see your username on the left column. You need to have administrator permissions in JIRA in order to set a reporter. For instance:

    /jirio create story A user can submit issues from the main page :reporter admin :project DKS

    will create a story and assign it to admin user.

  • :project <project_key>
    Creates an issue in JIRA project that has this key. A key can be found when you click on a Projects menu in JIRA. You can then find your project key in brackets. If this token is omitted, then a default project key is used that was specified during installation. See Installation page.
    projects
    For instance:

    /jirio create story A user can submit issues from the main page :to admin :desc Some fancy story description :priority Low :project TEST

    will create a story in a project that has TEST key.

  • :component <name>
    Creates and issue in JIRA with the given component name.
    For instance:

    /jirio create story A user can submit issues from the main page :component Frontend :project DKS

    will create a story that has “Frontend” specified as a component.

  • :labels <label-names>
    Creates and issue in JIRA with the given label names separated by comma.
    For instance:

    /jirio create story A user can submit issues from the main page :labels legacy,QA :project DKS

    will create a story that has two labels legacy and QA specified in the labels field.

Set channel defaults

To avoid typing :project and other repetitive tokens all the time, you can set channel default tokens. It allows setting default values for tokens that will then later be used by the create command. Find out how it works from this page.

Transition issue

Transitioning an issue means moving it to a closed, in progress, done or any other state.

There are two ways of using transition command

Transition with action buttons premium

Available only with Premium subscription

/jirio transit [KEY]

This command displays Slack action buttons with all transitions that are applicable to a current issue state.

Transition with a command

/jirio transit [KEY] [transition] [:comment] [comment value]

Please note, that as transition you have to specify a transition, not a state. Doing a transition will cause an issue to be set to resolution that corresponds to this transition. The following example does an ‘In Progress’ transition for JR-1103 issue key:

/jirio transit JR-1103 in progress

If your transition supports comments, then you can also add the :comment token followed by a text message.

/jirio transit JR-1103 won't fix :comment cannot reproduce this issue anymore

Transition names usually represent buttons in JIRA issue page, such as Done, In Progress, etc. Transition case does not matter when written in Jirio command prompt.

jira slack

Authenticate

/jirio auth

This command authenticates Slack user in JIRA making possible to create JIRA issues on behalf of every user separately. This command only works if Jirio is installed with “Per user authentication” option ticked on during Jirio configuration phase. This command should only be called once per user.
Once called, it generates a unique authentication link that will request authentication token from JIRA. A user should then grant Jirio permissions, so that Jirio could query information about projects and create issues.

Modify issue

/jirio update [issuekey] [:token1] value1 [:tokenN] valueN

Modify an existing issue properties such as title, assignee, priority and other. You can modify almost any property that has been used in /jirio create command when this issue was created. Please use the :summary token to specify new summary (title) for an issue. There should be at least one token-value pair in the update command. For example:

/jirio update JR-34 :summary A new story title :assignee john :priority Highest

Add work log

/jirio addlog [issuekey] [:comment] my handy comment [:time] 4h 1d

Adds work log entry for the issue. Only the :time token is mandatory, while the comment is not. The time token can be represented as hours (3h), minutes (3m), days (1d) and weeks (3w). It is also possible to combine several tokens together. Please make sure logging work is enabled in your JIRA configuration, otherwise it won’t work.
For example:

/jirio addlog JR-34 :time 5h :comment Finished testing shopping card on the account page.

Aliases

Alias allows creating shorter names for long and bulky commands that you want to use often. Please read more about aliases on the separate page.

Search issues

/jirio find [JQL]

Search for JIRA issues using JQL language (built-in JIRA Query Language). The search JQL expression should go right after the find keyword.
Optionally it is possible to specify in what fields should JIRA perform the search. Field names can be added in the :in token and should be separated with a whitespace. For example:

/jirio find text ~ "demo" and reporter = currentUser() :in assignee description sumary

Watch issue

/jirio watch [issuekey]

Start watching a JIRA issue. Watching means that JIRA will start sending you notifications related to an issue. For example:

/jirio watch TR-34

Get issue info

/jirio info [issuekey]

or

/jirio info [issuekey] [:customfield1] [:customfield2] [:customfieldN]

Prints JIRA issue information such as title, description, assignee, reporter, components and other information that the issue contains. You can define your JIRA custom fields that will also be included into the info command report, however, this is not required. Read more about custom fields here. For example:

/jirio info JIR-344

or a shorter form:

/jirio JIR-344

Quick find premium

Available only with Premium subscription

/jirio qfind [text_to_find]

Searches issues by text only. This is a shortcut for /jirio find text ~ "demo" command, which will look like /jirio qfind demo for quick find.

/jirio qfind demo string to find

Add comment premium

Available only with Premium subscription

/jirio comment [issuekey] comment text

Adds a comment to an existing JIRA issue. The “comment” command should be followed by a JIRA issue key and a comment itself.

/jirio comment JR-204 this is a text of the comment

Show comments premium

Available only with Premium subscription

/jirio comments [issuekey]

Shows all comments of an issue specified in the issuekey token.

/jirio comments JR-204

Vote premium

Available only with Premium subscription

/jirio vote [issuekey]

Vote for an issue. The “vote” command should be followed by a JIRA issue key.

/jirio vote TMP-13

Assign premium

Available only with Premium subscription

Assign from a menu

/jirio assign [issuekey]

This command will reveal a Slack menu that allows selecting an assignee from the list of Slack users or just to quickly assign an issue to yourself.

For example:

/jirio assign TMP-13

Assign from a command

/jirio assign [issuekey] [assignee]

Assign issue to a new assignee. The “assign” command should be followed by a JIRA issue key and assignee name. You can omit assignee if you want to assign to yourself.

/jirio assign TMP-13 john.mitchel

or assign to yourself.

/jirio assign TMP-13

Attach last file premium

Available only with Premium subscription

/jirio addfile [issuekey]

Attach the last file in a channel. The “addfile” command should be followed by a JIRA issue key.

/jirio addfile TMP-13

Reload JIRA configuration

/jirio reload

Fetches information from JIRA about issue types and field names your JIRA supports

  • Issue types such as Epic, Story, Bug, Task, etc.
  • Fields names such as description, components, summary, parent, etc.

In rare cases when the reload command times out because of an enormous amount of projects, issue types and fields in your JIRA configuration, you might want to narrow down reloading to just one project and story

/jirio reload :project [PROJECT_KEY] :issue [ISSUE_TYPE]

for example:

/jirio reload :project VTN :issue Story

or just project

/jirio reload :project VTN

When you specify project and/or issue type in the reload command, it will just load one small part of the configuration which is usually faster and should not time out.

You can read about what data we store on our policy page.

Feedback

/jirio feedback

Send us your feedback, a question, a comment, a feature request of a bug report right from Slack.

/jirio feedback [message]

For example:

/jirio feedback I like Jirio very much!

Data types

In Jirio it is possible to easily define values for most common data types.

Date
Format: YYYY-MM-DD. For instance, 2015-06-14.
Array
Format: item1,item2,item3,.... For instance, bug,jirio,test.