Create Wrike tasks from Zendesk tickets

Different teams and departments usually have their own tools where they spend most of the day. This post covers one technique for bridging the gap between team members using Zendesk and those using Wrike.

In this post you’ll learn how to create a tag which, when applied, creates a Wrike task based on the Zendesk ticket where the tag was applied. While this approach does not provide 2-way sync, it gives you an easy (and free) integration to fill the information gap between your Zendesk tickets and Wrike tasks.

 

A Note About Security

The solution described in this post involves using a permanent access token to make Wrike API calls. Permanent tokens should be treated like passwords and should be stored and processed properly in order to maintain a high security level. End-to-end transport-level security is achieved via HTTPS protocol used in all Wrike API calls.

Zendesk does not allow passing permanent tokens via a request header in custom URL targets (which would be the most secure way). Instead, tokens are passed as a request parameter. Only POST requests should be used, to prevent parameters from being logged by web servers. GET requests are not allowed because sensitive data can be exposed to logging.

We strongly advise creating a dedicated “bot” user and issuing a permanent token on its behalf. This allows you to add an extra level of security by having complete control over what data is exposed to this user via selective sharing.

 

Before You Start

  1. Generate a permanent access token. Follow these steps to generate one from the API Apps panel in your Workspace.
  2. Create a Folder where new tasks will appear. You can also set up multiple Folders and use each under a different set of rules in Zendesk later.
  3. Find the permalink for the Folder you created in step 2 and make an API call with it:
curl -g -X GET -H 'Authorization: bearer <access_token>' 'https://www.wrike.com/api/v3/folders?permalink=<permalink to your folder>'

Note the Folder ID in server response:

{
"kind": "folders",
"data": [
{
"id": "IEAAQA5EI4CA6NIR",
...

 

Step 1: Set Up a URL Target in Zendesk

Now it’s time to create a new target in Zendesk which will push data to Wrike. Follow these instructions to fill out the form.

Test your target before saving, to make sure new tasks are landing in the correct Folder. Only the “title” field is required:

If you get a 200 response code, that means it’s time to piece everything together:

 

Step 2: Create a Trigger

We’re going to set up a business rule in Zendesk so that when an agent adds the specified tag, a new task is created in Wrike and data from your ticket is added to the task’s description field.

Set Up the Trigger

      1. Create a new trigger with these conditions:

  • Ticket is: Updated
  • Ticket tags contains at least one of the following: push_task

      2. In this example we use only task title and description as parameters

  • title: ticket ID {{ticket.id}} - {{ticket.title}}
  • description: ID: {{ticket.id}} <br> Priority: {{ticket.priority}} <br> Assigned to: {{ticket.assignee.name}}

Your custom integration is ready to use as soon as you save the trigger!

 

Taking it a Step Further

More you can do

  • Get creative with bold text and add URLs that point back to tickets. Wrike task descriptions accept some basic HTML formatting tags.
  • Populate Custom Fields in tasks with data from Zendesk
  • Assign tasks automatically.
  • More targets can be set up to update existing tasks with comments.
  • Find the full list of parameters you can pass when creating a task in our API documentation portal

Example

Create a Priority field on tasks in your Folder and add {{ticket.priotity}} as the value of this Custom Field when you create a task. To do this, you first need to learn respective field and user IDs (just like we did with Folders in this post).

 

Please let me know in the comments if some of the steps need a deeper explanation or more illustration. I'm eager to learn how you apply this and introduce it into your workflows!

 

7
8 comments
Spot On Innovative Approach Stellar Advice
Avatar

HI - great post - are you able to help solve closing a zendesk ticket once the task is completed in Wrike? thanks in advance

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar
Hi Lisa! Thanks a lot for your question! 😀
 
We can achieve this with the help of Wrike and Zendesk API. I would recommend creating an application that upon receiving a web-hook notification from Wrike about a "completed task" would make an "Update Ticket" call to Zendesk to "solve"/"close" the corresponding ticket. Let me know if you have any questions and I'll be happy to help!

Serge S. Community Team at Wrike Become a Wrike expert with Wrike Discover

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar

We've been using this integration for quite a while, and love it!  However, when the Zendesk ticket converts to Wrike as a task, it comes through as a milestone, not a regular task.  This didn't used to be an issue, but now that we're using Workload, any time we need to extend the date of the project beyond a single day, we first need to convert the task from milestone to regular task.  Is it possible to set the API integration to generate the Wrike task as a regular task rather than a milestone?

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar

What is the correct URL format for API v4? Since Wrike no longer supports v3? I'm having issues establishing this hook with Zendesk and keep getting 400 and 410 errors.

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar

Hi @Trisha, thanks for reaching out! I'm raising a Support ticket for you, someone from our Advanced Support will help you with this 🙌

Lisa Community Team at Wrike Become a Wrike expert with Wrike Discover

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar

Hi Lisa, just wondering if there's a follow up article on this topic? I'm trying to assign values to custom fields upon task creation on Wrike from a Zendesk trigger, is that possible? Thanks!

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar
Hugh

Hi Melissa Seares! It is possible to do this, provided that you know that there is a value in the Zendesk trigger, and that you know which custom field you want to assign the values to.

If you have any other questions let me know!

0
Comment actions Permalink
Spot On Innovative Approach Stellar Advice
Avatar

Hi @.... Right on time, was able to test this today and I just finished creating a way to sync the statuses. 

Not sure how others are doing it and I'm definitely open to suggestions if you have any but I went with bulk update instead of triggers.

  1. Get all tasks less than Solved on my Wrike Folder
  2. For each task in #1, get Zendesk ticket equivalent and check status
  3. Update Wrike task status based on #2 (Could be extended to update more fields)

Lots of API calls but it does the job (for now).

 

1
Comment actions Permalink

Folllowing List for Post: Create Wrike tasks from Zendesk tickets
[this list is visible for admins and agents only]

Didn’t find what you were looking for? Write new post