Slack

The Slack snap-in lets you scale your customer support in Slack.

🎥 Video: DevRev Slack integration

Installation

Prerequisites:

  • Depending on your Slack workspace settings, you may need to ask an administrator to establish the connection or approve your installation request.
  • Due to Slack’s OAuth limitations, it’s advised to maintain one public connection per DevRev organization. Within an organization, one Slack connection can be used across multiple snap-ins and workflows. Creating multiple connections may disrupt existing integrations.
  • Connecting with Slack enterprise workspace is currently in limited availability. If you have a Slack Enterprise account, please contact DevRev Support to be whitelisted before attempting setup.
  1. Search and open Slack in the DevRev Marketplace.
  2. Click Add in the top-right corner.
  3. In the snap-in settings,connect your slack workspace to DevRev by clicking Sign in with Slack. This will redirect you to Slack's OAuth page.
  4. Select the appropriate Slack workspace from the top-right corner and click Allow to complete the connection setup.
  5. Add configurations in the snap-in and click Save at the bottom of the configuration page.
  6. Click Install to activate the Slack snap-in in your DevRev organization.

List of available commands

After installation, visit your Slack workspace and enter the command /devrev help. A pop-up modal will display all the available commands.

Create DevRev conversations from Slack

The snap-in enables support teams to manage customer interactions directly from DevRev. You can enable this feature by toggling the Sync conversations from Slack to DevRev setting.

To start creating conversations from any Slack channel:

  1. Link the DevRev Customer workspace to the channel by running /devrev link in the channel.
  2. In the pop-up modal, search for the DevRev Customer workspace.
    2a. Select the preferred workspace and click Link.
    2b. If your channel is already linked to a workspace, the modal will show the details of the workspace and an option to unlink.
  3. Once linked, new contacts identified via Slack are automatically added to the associated workspace. When creating work items, the linked customer workspace is pre-selected for quick access.
  4. Invite the DevRev app to a channel by running /invite @DevRev in the channel.

Once the above steps are completed:

  • Messages sent by customers directly to the channel will create new conversations.
  • Any messages in thread, or channel messages by members from your own team won’t create new conversations.
  • Created conversations can be located in the Inbox vista in your DevRev app.

If a message is sent to a slack thread belonging to an archived conversation, the slack snap-in will create a new follow-up conversation, and all messages will sync to this new conversation.

icon

A Slack channel can be linked to only one DevRev account workspace, and vice versa.

Conversation roll window

To avoid multiple conversations for related customer messages, a conversation roll window is used.

  • The roll window remains active for five minutes after a conversation is created.
  • Any new message sent directly in the channel within this time frame is appended to the existing conversation.
  • A new direct message from the customer resets the roll window timer.
  • Any message sent from DevRev will be synced to the thread of the first message that initiated the conversation.
  • Only messages within the thread of the originating message of the conversation are synced.
  • Messages within Slack threads of follow-ups sent directly to the channel will not sync to DevRev.

Conversation notifications

Any new message added to a conversation within your DevRev workspace, regardless of its originating source channel or platform, can trigger a notification in a designated Slack channel, helping your team stay updated on customer interactions.

To enable conversation notifications:

  1. Turn on Enable the conversation notification feature in the slack snap-in configuration.
  2. Provide a Slack Channel ID in the Channel ID to send conversation notifications snap-in configuration as the target to post notifications.
  • Any new message within tickets in the customer messages panel is also subjected to the same automation.
  • To prevent notification overload, each conversation or ticket is subject to a five minute cooldown period between notifications. Multiple consecutive messages within this window will not trigger additional notifications.
  • Notification threads are not synchronized between DevRev and Slack.

Work management using Slack

DevRev Tickets and Slack

The Slack snap-in allows users to create tickets directly from Slack. There are multiple ways to initiate ticket creation from any channel:

  • Use the command: Run /devrev create-ticket.
  • Message action: Select Create a new ticket from the message actions.
  • Convert a Conversation: Transform an ongoing conversation into a ticket. This is recommended if you already have a conversation in progress. Configure the snap-in to send or not send a ticket summary card to the Slack thread using the Notify on conversation to ticket conversion setting. Regardless, the Slack thread will sync with the new ticket instead of the ongoing conversation.
icon

Slack does not support slash commands in threads.

Choosing one of the first two options will open a pop-up modal with the new ticket form. Complete the required fields; some fields will auto-fill based on the messages.

Ticket sharing options

The new ticket modal in Slack includes a Share with everyone checkbox at the bottom:

  • Enabled: Shares the ticket details with the Slack channel via a summary card.
  • Disabled: Keeps the ticket internal with no updates to the Slack channel.

Regardless of sharing, the ticket details are visible to the creator in the submission modal.

Syncing details

If sharing is enabled, the type of Slack channel determines the sync location in DevRev:

  • External/Connect channels: Syncs with the Customer Messages panel.
  • Internal channels: Syncs with the Internal Discussions panel.

Syncing different panels to separate Slack threads is not supported.

icon

Only shared tickets are synchronized between DevRev and Slack.

Follow-up and merged Tickets

The Slack snap-in supports follow-up and merged tickets.

  • When two tickets are merged, and both have syncing slack threads, all the messages from both slack threads will reach only the primary ticket in DevRev, while messages from DevRev will only be synced to the primary ticket’s slack thread.
  • If only one ticket has a syncing slack thread, that thread will sync with the primary ticket.
  • No messages from the duplicate ticket will sync to slack.
  • If a ticket is immutable but receives a new customer message in its Slack thread, a follow-up ticket is automatically created for future discussions.

New ticket notifications

  • Enable through the Notify on new ticket creation snap-in configuration.
  • Provide a Slack channel ID in the Channel ID to send ticket notifications configuration.
  • Snap-in will send notifications to the target channel whenever a new ticket is created, regardless of the source channel or platform.
  • Notification message threads are not synced between platforms.

Notifications for ticket state update

  • Enable through Notify on ticket state update snap-in configuration.
  • Applies only to tickets syncing with Slack threads.
  • If enabled, the Slack snap-in will send notifications to the syncing thread whenever the ticket state changes.

Ticket digest

To see all open and in-progress tickets in Slack, use the /devrev ticket-digest command. This opens a modal with a paginated list of all open and in-progress tickets.

DevRev Issues and Slack

The Slack snap-in allows issues to be created directly from Slack:

  • Using the /devrev create-issue command.
  • Using the Create a new issue message action.

Both the options open a new pop-up modal with a new issue form. Some of the fields will be pre-populated based on the messages in the thread.

  • The Share with everyone functionality operates identically to ticket creation. Only shared issues are synchronized between the platforms.
  • The messages are always synced in the Internal Discussions panel with slack thread.
  • Creating issues with sync enabled from external channels is not supported.

DevRev Incidents and Slack

icon

Incident Management is available as a beta feature. Contact the support team to enable it before configuring incident settings.

The Slack snap-in allows incident creation directly from Slack using the following methods:

  • Use the /devrev create-incident command.
  • Select Create a new incident from the message actions.
  • Enable Auto-create incidents from Slack channels, which automatically creates an incident for every direct message posted in specified Slack channels.

The first two options will open a pop-up modal with a new incident form, with some fields pre-populated based on the context.

Sync options

Incidents support syncing messages both within a dedicated Slack thread and across an entire Slack channel, including all associated threads. The sync target is determined by the Sync for new incident snap-in configuration, which offers the following options:

  1. Create a new channel
  • Automatically creates a new Slack channel for each new incident, regardless of its source channel or platform.
  • Channel names are prefixed according to the Prefix for new incident channel snap-in configuration, with the incident display ID appended to ensure uniqueness.
  • Whenever someone is mentioned or assigned as the owner of the incident, they are auto- invited to the incident channel.
  1. Sync messages with the thread (for incidents created from slack)
  • Works only for incidents created from Slack.
  • It syncs messages with the originating thread, similar to ticket and issue work items.
  1. Sync messages with the notification thread
  • Syncs with the thread of the incident notification sent on the channel mentioned in the Channel ID to send incident notifications configuration.
  • Works for all incidents irrespective of source channel or platform.
  1. Ask while creating incident
  • Only applicable for incidents created from Slack.
  • This option adds a dropdown at the end of the incident form, letting the user choose the sync target for each incident individually.
  1. Do not sync
  • Incidents remain internal to DevRev without syncing to a new Slack channel or thread from which it was created.

For incidents that sync with dedicated Slack channels, you can configure automatic channel archiving when an incident is moved to a closed state. This is managed through the Incident channel auto-archive interval snap-in configuration.

If the /devrev view command is used in a dedicated incident channel, a pop-up modal opens with a pre-populated incident summary.

Share and view record details

You can share or view DevRev record details in Slack using the /devrev view command. This lets you search for tickets, issues, incidents, opportunities, and parts directly within Slack.

For example:

  • /devrev view TKT-#
  • /devrev view ISS-#

These commands open the specific object mentioned in the command.

Creating custom workflows

The users can configure their own workflows around Slack using DevRev's workflow engine.

|Workflow Action|Description|Inputs |Outputs | |Send message on Slack|Use this workflow node to send a message to any slack channel as long as the DevRev app has access to the channel. Private channels are supported only if the DevRev app is a member of the channel.|Slack connection Slack channel id Text message to be sent Objects to mention with message If any object is added here, a summary card of that object will be sent with the message.|Slack message ID| |Create new Slack channel|Use this workflow node to create a new Slack channel.|Slack connection Channel name Make sure this is unique. It is recommended to create this name by inserting some variable to guarantee uniqueness, like object display ID. Toggle for whether to create a private or public channel. Users to invite Takes a list of DevRev users. Users are only invited if slack snap-in is able to resolve a slack user for the given DevRev user. Groups to invite Takes a list of DevRev groups. All users within the groups will be invited to the slack channel after creation.|Channel ID Channel name| |Get Slack User ID|Gets the Slack user ID for given DevRev user Can be used to later send direct messages to the user on the Slack using Send message to Slack node.|Slack connection DevRev user id|Slack user id| |Start Thread Sync|Set up 2 way message synchronisation between a slack thread and a DevRev object discussion.|Slack connection DevRev Object ID Slack channel ID Slack thread ID (message ID of parent message, generally returned by send message to slack workflow node)|N/A | |Start Channel Sync|Set up 2 way message synchronisation between a complete slack channel and DevRev object discussion.|Slack connection DevRev object ID Slack channel ID|N/A |

Additional capabilities and limitations

2-way sync between DevRev and Slack

  • If two-way sync is enabled on an object, new messages received from non-Slack source channels will appear in DevRev but won't sync to the Slack thread.
  • By default, messages from bots, service accounts, or AI agents in DevRev aren’t synced to Slack. To change this, enable the Sync bot messages from DevRev to Slack option in snap-in configurations.
  • The snap-in supports syncing of message edits and deletions between platforms.
  • Message attachment sync is supported both ways, with a file size limit of 250MB.

Inviting DevRev app to channels

  • Adding the DevRev app to many Slack channels can be challenging at scale.
  • Use the /SlackInviteBot command from the Slack snap-in event discussions panel to automatically invite the DevRev app to all public channels.
    • Private channels still require manual addition.

When sync is not possible

If sync isn’t possible, the form will display a clear warning. Possible reasons include:

  • The thread is already in sync with another DevRev object.
  • Sync is not supported for the object in the given Slack channel.
  • The DevRev app is not a member of the channel.
  • The channel is private or a DM.

In such cases, the object can still be created, but without two-way sync.

DevRev object customization support

The Slack snap-in honors DevRev’s object customizations, including:

  • Custom fields and subtypes
  • Stock field overrides
  • Slack-specific client overrides
  • Summary view card

The summary view card of all objects can be customized.

  • Only fields marked with Show in Summary = true in object customization will be shown.
  • Summary cards are static Slack messages and may not reflect real-time data.
    • Use the Refresh button at the bottom of the card to update.
    • A timestamp indicates the last update time.
  • To view all fields or update the object, click the View/Update button.

The information shown in the summary card differs by channel:

  • In Internal channels, all summary fields are shown.
  • In an External channels, summary fields are hidden.
icon

Slack currently does not support custom objects or related automations.

Slack snap-in user resolution

  • The Slack snap-in uses email for user resolution between platforms. If a user or organization hides their emails, the integration cannot resolve the user to a DevRev Contact and will act on behalf of itself instead. It's recommended to ask customers to share their emails with your organization so apps, including DevRev, can access them.
  • As of the latest update, in case of unavailability of email, the snap-in creates new DevRev contact and attaches Slack user id for future reference. For legacy users, run the /AddSlackUserId command in DevRev on the Contacts to manually add their Slack user ID.