Allow people in Slack to create a helpdesk ticket in a 3rd party system using a Slash Command and a Modal.
This app blueprint assumes you're able to create tickets in your 3rd party system programatically.
When a user executes the Slash Command associated with the app (e.g. /helpdesk [title of the issue]
, Slack will send a POST request to the Slash Command request URL provided in the app settings. This request will include the text sent along with the Slash Command.
In order to collect more information, the app will open a modal in Slack where the user can fill in a detailed description of the problem and assign a priority to their ticket. When the user submits the form in the modal, Slack will send a POST request to the Interactive Component request URL provided in the app settings. This request will include all the information from the modal, a callback_id
, as well as details about the user who took the action.
The app will leverage your ticketing system's API to create a ticket on behalf of the user who executed the Slash Command. You can either map users based on email address or use the account binding blueprint to ensure that all existing authorizations are respected. Once the ticket has been created, a status update can be sent back to Slack using the chat.postMessage
method and the chat:write:bot
scope.