Slack App Integration

Slack is a very popular team communication platform.

300

What does Opsgenie offer Slack users?

Opsgenie has a bidirectional integration with Slack. It's easy to configure and powerful: notifications of Opsgenie's robust alerts go right into your Slack channel. In turn, users can acknowledge, close, or assign these alerts from the channel, as easily as entering a command like /genie ack 12.

Add a Slack integration in Opsgenie, and in seconds have combined Slack's easy-to-use team collaboration platform with Opsgenie's rich alert notification system and on-call rotation. Execute actions on the alert just by typing a /genie command, into the chat.

There's more to be accomplished in Opsgenie just by entering simple commands to Slack channel. Using /genie command, mute Opsgenie notifications, get alert details, view on-call schedules, and more.

Now with the new Slack buttons, Opsgenie users can acknowledge, un-acknowledge, or close alerts with just a button click.

๐Ÿšง

"Require Matching a User" option is used to force matching Slack accounts with Opsgenie accounts. Chat user mapping section addresses this issue.

Install Slack App

  1. Go to Slack App's integration page -> Slack Integration.

๐Ÿ“˜

An alternative for this step is to add the integration from the Team Dashboard of the team which will own the integration. To add an integration directly to a team, navigate to the Team Dashboard and open Integrations tab. Click Add Integration and select the integration that you would like to add.

๐Ÿšง

For Free and Essentials plans, you can only add the integrations from the Team Dashboards, please use the alternative instructions given above to add this integration.

  1. Click Add to Slack.
1406
  1. Select "Slack Team" and "Channel".
  2. Click Authorize to give access to Opsgenie's Slack App.
821
  1. The integration is automatically created. (If not logged into Opsgenie, log in.)
  2. Note that permission is required to add integration in Opsgenie.
1109
  1. Modify the alert message that is sent to the Slack channel. In the Slack Integration's page, users have a choice to send description, tags, and routed teams information to a Slack message.
257

Slack Buttons

  1. Using Slack buttons is optional. Disable it on integration's edit page by using the "Use Slack Buttons" option.
  2. Message with Slack buttons look like:
1550

๐Ÿ“˜

Slack messages will have a stripe on the left side of the message, in either the color green, red, or blue. Green means closed, red means open, and blue means acknowledged. The colors update as actions are taken, and any related alerts will also update in color.

  1. Acknowledge, Un-acknowledge or Close alerts.
  2. Close mass notifications.
  3. If an alert is already acknowledged, un-acknowledged, or closed, the relevant response is sent in Slack and buttons are changed accordingly.
1550

Slack Message Menu

  1. Message menus are built on Slack's interactive message framework just like Slack buttons. A user's "Using Slack Buttons" preference also applies to message menu.
740
  1. Execute assign, take ownership, snooze, and add note actions on alerts. According to the selection, the message is updated to proceed further. For example, after the "Add Note" option is selected, a dialog box appears to enter a note as shown below.
772
  1. Message menu is updated according to actions taken. The result of the action is posted to the channel.
883

"Execute Commands" Option

  1. "Execute Commands" option is used to determine the integration which executes the genie command.
  2. The reason to do so is that Slack registers slash commands for the whole team, but more than one Opsgenie integration can be installed in Slack.
  3. Only one Slack integration can have "Execute Commands" checked for a Slack team.
  4. "Require Matching a User" option is determined by the same integration that has "Execute Commands" option selected as slash command will be associated with this integration.

Chat User Mapping

  1. "Require Matching a User" is used to force matching Slack accounts with Opsgenie accounts.
  2. Associate Slack accounts to Opsgenie accounts by using the /genie connect command. If using the Opsgenie EU instance, please use /eugenie connect command instead.
  3. Chat user mapping flow:
1549 1029 1021

Using /genie Command

๐Ÿ“˜

If using the Opsgenie EU instance, please use /eugenie command instead of /genie command.
For example, for acknowledging an alert, run the following command:
/eugenie ack [tinyID tinyID2..]

Easily execute actions on Opsgenie alerts by entering a command with the tinyId of the alert into a Slack room. It is possible to execute a single command on multiple alerts.

Create alerts, too. Use the alert command to create an alert in Opsgenie, right from the Slack channel.

Acknowledge Alert :
/genie ack [tinyID tinyID2..]

Examples:
/genie ack 1
/genie ack 1 2 3

Close Alert :
/genie close [tinyID tinyID2..]

Examples:
/genie close 1
/genie close 1 2 3

Add Note to Alert :
/genie note [note] to [tinyID tinyID2..]

Examples:
/genie note this is note to 1
/genie note this is note to 1 2 3

Add Tag to Alert :
/genie addtag [tag1,tag2,..] to [tinyID tinyID2..]

Examples:
/genie addtag high priority,important to 1
genie addtag high priority,important to 1 2 3

Acknowledge All Open Alerts :
/genie ackall

Close All Open Alerts :
/genie closeall

Assign Alert :
/genie assign [tinyID tinyID2..] to [user]

Examples:
/genie assign 1 to [email protected]
/genie assign 1 2 3 to [email protected]

Take Ownership of Alert :
/genie own [tinyID tinyID2..]

Examples:
/genie own 1
/genie own 1 2 3

Execute Action :
/genie exec [action] on [tinyID tinyID2..]

Examples:
/genie exec customAction on 1
/genie exec customAction on 1 2 3

Create Alert :
/genie alert [alert message] for [team1,team2,user1..]

Examples:
/genie alert this is alert message for [email protected]
/genie alert this is alert message for integration team, product team
/genie alert this is alert message for myTeam, [email protected]

Get Alert :
/genie get [tinyID]

Example:
/genie get 1

List Alerts :
Lists all open alerts.
/genie list

Lists all open alerts of a specified team.
/genie list alerts of team1

List Integrations :

/genie list integrations

List Policies :
/genie list policies

List Teams :
/genie list teams
/genie list teams contains [search query]
/genie list teams starts with [search query]

Enable Integration/Policy :
/genie enable [name]

Example:
/genie enable policy

Disable Integration/Policy :
/genie disable [name]

Example:
/genie disable policy

Take On-call :
Takes on-call for the specified amount of time for the team or schedule. The default amount of time is 1h. If no schedule/team is specified, the user will take on-call for his team's schedule, or a single schedule he's participant in.
/genie oncall [me/user] [h/m/d] for [team/schedule/all]

Sample uses are:
/genie oncall me 2h for weekend_schedule
/genie oncall [email protected] 1d for ops_team
/genie oncall me 2h for all
/genie oncall me 45m
/genie oncall me

Who is oncall :
Retrieves oncall user information from all schedules
/genie whoisoncall

Mute :
Mutes notifications for the user. Mutes for 5 minutes if not given.
/genie mute [me/username] [minutes(optional)]

Example:
/genie mute [email protected]
/genie mute [email protected] 15

Unmute :
Clears mute setting.
/genie unmute [me/username]

Example:
/genie unmute [email protected]

Connect :
Connect your Opsgenie account to your chat account. If a connection exists, the currently connected Opsgenie user will be shown and you can choose to disconnect

For more details see the Chat User Mapping documentation page
/genie connect

Help :
/genie help

1098

Troubleshooting

If the person who added the Opsgenie integration to a private Slack channel leaves the channel, create alert notifications from Opsgenie might stop showing up in the channel. In this case, please use the resynchronize button at the end of the instructions which is available in your Slack integration's configuration page.

723