Zendesk Documentation

This guide will show you how to set up your new Helpdesk Buttons with Zendesk in as few as 15 minutes.

Integration

Zendesk integration requires three main parts:

1) set up an unregistered user as a catchall account as a contact in your PSA

2) set up the API integration.

3) configure helpdeskbuttons account.

Video Walkthrough

1) Unregistered User

To start you will need to set up a “Catch all” contact for users not aleady in your system.

Hover over Add and click User

../../../_images/zd-image3.png

The only really important part is the email address. It needs to be “unregistered@helpdeskbuttons.com” Feel free to name it anything you feel comfortable with.

../../../_images/zd-image4.png

2) Enable API Access and Create a new Key

You may need to enable API access into users by API token.

To do this click the Admin gear and click API under CHANNELS

../../../_images/zd-image1.png

You will want to enable this line.

../../../_images/zd-image2.png ../../../_images/zd-image5.png

Click the plus sign to add a new key.

You can label it anything you want, but make sure to put that key somewhere safe, it only appears once.

3) Helpdeskbuttons.com Settings

Enter your Ticket System API endpoint as shown (do not add add https:// or the path after the url)

Yout API key is formatted as shown

username:apikey

Click update and the Integration Test button.

Let us know how to get in touch with your development team for feature requests and additional customizations! We are happy to get you set up with customized software.

Anti-Virus and AntiMalware

It is not always necessary, but we recommend whitelisting the tier2tickets installation folder (C:\Program Files(x86)\tier2tickets). We regularly submit our code through VirusTotal to make sure we are not getting flagged, but almost all AV/M interactions cause some sort of failure. Webroot in particular can cause issues with screenshots.

Dispatcher Rules

This is the list of variables that can be accessed when using the Dispatcher Rules.

Read/Write Read Only
priority selections
type hostname
status name
priv_append email
message ip
subject mac
append

input_cell

 

input_phone

 

input_company

 

input_email

 

input_name

Field Definitions

priority

The ticket priority level (Urgent, Low, ect):
../../../_images/zd-priority.png


status

The ticket status (New, In Progress, etc):
../../../_images/zd-status.png


type

Refers to the issue type (Service Request, Incident, Problem, Alert):
../../../_images/zd-type.png


priv_append

Allows you to append information to the internal ticket note:
../../../_images/zd-priv_append.png


input_*

../../../_images/zd-inputs.png


other

There are additional variables which are common to all integrations. Those are documented here

The fields labeled input_* contain information typed by the user only in the event that they are not found in the PSA

Webhook Walkthrough

This will take 2 steps:

1) Create a Target for the webhook:

Navigate to Admin -> Settings -> Extensions.

Click add target and then HTTP Target

  • Name the Target
  • URL should be listed on your Integration Settings Page. under the Ticket Notification section.
  • Select POST as the request type
  • Set Content type to JSON
../../../_images/zendesk-webhook3.png

2)Setup a Trigger in Zendesk:

Navigate to Admin -> Triggers.

Click Add Trigger.

  • Name the Trigger
  • Set Ticket is Updated as the condition
../../../_images/zendesk-webhook1.png
  • Select the Action Notify Target
  • Select the webhook target created in the previous step
  • Add this code into the JSON body of the action
{
        "actor":"{{current_user.name}}",
        "role":"{{current_user.role}}",
        "assigned_to":"{{ticket.assignee.name}}",
        "message":"{{ticket.verbatim_description}}",
        "ticket_id":"{{ticket.id}}",
        "name":"{{ticket.requester.name}}",
        "company":"{{ticket.organization.name}}",
        "status":"{{ticket.status}}",
        "subject":"{{ticket.title}}",
        "comment":"{{ticket.latest_public_comment_rich}}",
        "email":"{{ticket.requester.email}}",
        "phone":"{{ticket.requester.phone}}"
}
../../../_images/zendesk-webhook2.png