ServiceDesk Plus Integration Guide
ManageEngine ServiceDesk Plus is a comprehensive ITSM platform. It allows enterprise-level ticket and asset management that eases the workflow for IT teams. TaskCall integrates with ServiceDesk Plus allows important tickets to be prioritized by engaging the correct on-call responders through on-call management software and various channels of notifications. Further verifications and checks can be executed automatically to enhance the ticket resolution process. The integration not only enables teams to address important issues urgently, but also meets their SLAs.
Pointers
- The integration is between a TaskCall service and ManageEngine ServiceDesk Plus.
- This integration only receives alerts in TaskCall from ManageEngine ServiceDesk Plus.
- Incidents will be automatically acknowledged and resolved in TaskCall when the corresponding ticket in ServiceDesk Plus is updated.
In TaskCall
- Go to Configurations > Integrations and click New Integration.
- Select the ManageEngine ServiceDesk Plus integration.
- Give the integration a name and configure how incidents will be created. Only the Default Service field is required. The rest are optional.
- Incidents (Optional)
- TaskCall automatically maps incoming payloads with internal attributes to create incidents. However, this can be customized in the Incidents tab. Constant values can be included alongside placeholders to dictate which attributes should map to the Incident Title, Description, Tags, Snapshots and Vendor URL. To insert a placeholder use double curly braces.
For example, if you enter {{ alert.title }} in the Incident Title field, TaskCall will look for an attribute called "title" nested inside another attribute called "alert" in the incoming payload. If the nested attribute exists, its corresponding value will be pulled from the payload and inserted. If the nested attribute does not resolve successfully, TaskCall will fall back to the default mapping.
If you are unsure, please leave the fields empty. TaskCall will use the default mapping to create the incident for you. - Select the Urgency level the incident should be created at.
- Select the option to Group similar alerts together if you would like follow up triggers from the same alert source to be grouped into the same incident. If you leave this option unchecked, then a new incident will be created for every trigger. (This behavior is specific to new triggers; not updates to an alert.)
- Click Next to move on to the Services tab.
- TaskCall automatically maps incoming payloads with internal attributes to create incidents. However, this can be customized in the Incidents tab. Constant values can be included alongside placeholders to dictate which attributes should map to the Incident Title, Description, Tags, Snapshots and Vendor URL. To insert a placeholder use double curly braces.
- Services (Required)
- Select the Default Service incidents should be sent to. To route incidents to different services instead, set Map With Attribute to the attribute to route by using a placeholder. Then, map each value it can take to the service that should receive it.
For example, to route by a region attribute sent in the payload, set Map With Attribute to {{ region }}, then map US to one service and EU to another, and so on.
- Click Next to move on to the Authorization tab.
- Select the Default Service incidents should be sent to. To route incidents to different services instead, set Map With Attribute to the attribute to route by using a placeholder. Then, map each value it can take to the service that should receive it.
- Authorization (Optional)
- The Authorization tab allows a Bearer Token and an IP Allowlist be added if you would like to restrict who is able to send alerts to this integration. If you are unsure, this can be skipped.
- Once done, click Save.
- Copy the Integration Url that is issued for the integration. This will be used to set up the notification in ManageEngine ServiceDesk Plus.
In ManageEngine ServiceDesk Plus
- Log in to your ManageEngine ServiceDesk Plus account. Click on Setup icon on the top right corner. From the options that are displayed, select Automation.
- First, you will have to create a webhook. Select Custom Actions > Webhooks > New Webhook.
- Give the webhook a name.
- Paste the Integration URL you copied over from TaskCall in the URL field.
- Set it to apply for Requests.
- Set the method as POST.
- Set the message body to be JSON. Copy and paste the following payload as the JSON body.
{
"id":"${id}",
"requester":"${requester}",
"category":"${category}",
"subcategory":"${subcategory}",
"technician":"${technician}",
"subject":"${subject}",
"priority":"${priority}",
"mode":"${mode}",
"urgency":"${urgency}",
"status":"${status}",
"is_escalated":"${is_escalated}",
"notification_status":"${notification_status}",
"resolved_time":"${resolved_time}",
"requester_ack_comments":"${requester_ack_comments}",
"request_type":"${request_type}",
"responded_time":"${responded_time}",
"requester_ack_resolution":"${requester_ack_resolution}",
"created_time":"${created_time}",
"created_by":"${created_by}",
"completed_time":"${completed_time}",
"approval_status":"${approval_status}",
"scheduled_time":"${scheduled_time}",
"service_category":"${service_category}",
"site":"${site}",
"deleted_time":"${deleted_time}",
"display_id":"${display_id}",
"due_by_time":"${due_by_time}",
"first_response_due_by_time":"${first_response_due_by_time}",
"group":"${group}",
"has_notes":"${has_notes}",
"department":"${department}",
"description":"${description}"
}
- Click Save when you are done. You can also click Save & Test to ensure the payload has been configured correctly.
Vendor Ticket URL
If you like the ticket URL to be accessible from TaskCall, you can pass in the "vendor_incident_url" attribute in the payload. You will have to construct the URL yourself and send it as the value of the attribute. For cloud instances, the following format will work as the value: https://sdpondemand.manageengine.in/app/itdesk/ui/requests/${id}/details.
- Next, you will need to create a trigger to automatically execute the webhook when a ticket is created and updated. Select Triggers > New Trigger.
- Give the trigger a name. Let it apply only on Requests and execute when a request is Created and Edited.
- You can define conditions for the trigger or you can let it apply to all tickets without any conditions.
- Select the webhook you created in the last step as the action.
- Click Save.
That's it! Your ManageEngine ServiceDesk Plus integration is ready to use.