Zendesk - Dropzone Connector Integration Guide

Follow

Our Dropzone Connector for Zendesk allows you to integrate your SendSafely Hosted Dropzone with Zendesk. Once configured, the connector updates existing Zendesk tickets with SendSafely secure links for file downloads. The connector uses the Dropzone lookup field (TicketID) to associate inbound files with the appropriate ticket in Zendesk. This value can either be entered by the customer at the time of Dropzone file submission, or, more commonly, embedded in the Dropzone URL provided to the customer by the agent.

The Dropzone connector can be facilitated using Google Apps Script or our Zapier App. Below are the steps for creating and configuring a Dropzone connector for Zendesk using Google Apps Script. Information on our Zapier connector can be found here.

You have the option of hosting the Google Apps Connector yourself in your own G-Suite domain, or having SendSafely host it for you. If you opt to have SendSafely host it for you, then you only need to complete Part 1 below and send us the API Key. If you opt to run it within your own G-Suite domain, then you will need to complete all steps below.  

For additional help or questions, contact support@sendsafely.com.

 

Part 1 - Obtain a Zendesk API

Obtain a Zendesk API Token for the connector script to use. For this step, you'll need to be logged into Zendesk with the identity you want the connector to use for updating tickets.

In Zendesk, go to Admin > Channels > API > Settings. Under "Token Access" press the "+" button to obtain a new token.

Zendesk_API_Token.png

 

Part 2 - Configure and Deploy the the Connector in Apps Script 

The Google Apps Script bridges the SendSafely Dropzone and the Zendesk platform. The script ingests the SendSafely generated secure link & related metadata, and updates the target Zendesk ticket via the Zendesk API from Part 1 above. If the ticket is unable to be updated via the API call, a notification email is sent to the Dropzone owner and file submitter.

To proceed, make sure you have a copy of the latest SendSafely Dropzone Connector Google Apps Script. You can request a copy from support@sendsafely.com, if not already provided.

Copy the Connector Template into your Google Drive.

Note: the account you are logged into Google Drive with will be the account used for sending notification emails if the Zendesk update fails, for example when the customer provides an invalid ticket number. As such, you will want to use a generic login or configure your account to be able to send email on behalf of a generic alias (see here for steps on how to configure sending on-behalf-of in Gmail: https://support.google.com/mail/answer/22370?hl=en).

a. From the Spreadsheet view, select the “Tools” menu, and then “Script Editor…”. Next, from the Code.gs view in the Script Editor complete the following steps:

i. Select Run > Run function > Setup. You will be prompted by Google to grant the necessary permissions for this script to work. Click “Allow”.

ii. Populate all of the required script properties (File > Project Properties > Script Properties)

  • sendsafely_validation_key - The Dropzone Validation Key for the account that owns the Dropzone. You can obtain this value from the "Dropzone" section of the "Edit Profile" screen in the the SendSafely portal
  • company_name - Your company's name as you want it to appear within notification messages.
  • zendesk_user_api_token - The API Token for Zendesk obtained from Step 1 above.  Note that the syntax of the token should be "user@company.com/token:XXXXXX" where user@company.com is the email address of the account that owns the API token (used in Step 1) and XXXX is the token value.  
  • zendesk_portal_url - Your Zendesk portal address (ie company.zendesk.com or support.company.com)
  • sender_email - This should be the user that owns/runs the connector. If this user is authorized by Gmail to send email on behalf of another address, you can choose another authorized address.

iii. Select Publish > Deploy as web app

  • Under "Project Version", choose "New"
  • Under "Execute as" choose "me"
  • Under "Who has access" choose "anyone, even anonymous"

Note: Anonymous users will only be able to execute the script but not view its contents. For security purposes, the script also only accepts data that is encrypted using the shared validation key.

c. After pressing "Deploy" copy the Current web app URL and perform the following steps to update the SendSafely Dropzone Webhook and Form Input Label. 

  • Log into the SendSafely web portal and navigate to Edit Profile-> Dropzone.
  • Paste the the copied URL into the "Use a Webhook for notifications:" under Notification Settings.
  • If you have not already done so, update the "Form Input Label" option to say "Zendesk Ticket Id" (instead of "Name").

 

Part 3 - Add a Macro to Zendesk for Inserting the Dropzone Link

In order to make it convenient for agents to send the correct Dropzone link to customers, we recommend creating a custom macro that can be used to automatically insert the Dropzone link into an agent's reply. Browse to Admin > Manage > Macros > Add Macro to create a new macro .

Note that the Dropzone URL also allows you to pre-popluate the ticket id in the URL so that your customer does not have to know the correct ticket id to use. The {{ticket.id}} placeholder within the Zendesk macro template can be used to automatically insert the correct ticket ID in the URL as demonstrated in the screenshot below:

Once the macro has been added, agents will have the option to use the macro from the bottom of the agent console when replying to a ticket.

 

Part 4 - Test the Dropzone using a valid Ticket

Once you complete the steps above, you should be able to browse to the Dropzone URL and update any valid ticket. The following diagram depicts the logic implemented within the connector and shows what actions will result under various circumstances.

For additional assistance setting up the Zendesk Dropzone Connector, contact support@sendsafely.com.

 

Have more questions? Submit a request






Powered by Zendesk