Connect Zendesk to Medium One

This tutorial will show you how to link your Zendesk account to your Medium One account. 

In this tutorial, you will:

  1. Send Zendesk ticket information to Medium One

  2. Build a Workflow to update Zendesk tickets automatically

Here’s what you need to get started:

  1. Medium One Prototyping Sandbox [Buy]

  2. Zendesk Team Plan or higher

Step 1. Create a Basic User and an API Key

On Medium One, navigate to “Manage Users” under “Setup.” The following menu will appear:

Click on Add User and choose a username and password for the user your Zendesk Information will come from. You will want to remember the username and password for later.

Next, create an API key. Navigate to Manage API keys under Setup on the sidebar. Click add a new API key, and choose a name for it.

Once you hit save, you’ll see your API key.  It will have the same length as above. You will want to remember your API key for later.

Step 2. Create a Target on Zendesk

Log into your Zendesk admin account. Under the setup tab on the sidebar, click on Extensions at the very bottom.

Click Add Target, then click on HTTP Target.

Enter the information shown below, and click save. The link to post to is

Step 3. Create a Trigger on Zendesk

Under the Setup tab on the sidebar, click on Triggers under Business Rules.

Copy the following setup:

In JSON Data, copy and paste the following, replacing the keys:

  1. medium_one_basic_user with the basic user username you created in Step 1

  2. medium_one_basic_user_password with the password of the user created in Step 1

  3. medium_one_api_key with the API key you created in Step 1

{"medium_one_basic_user":"YOUR USER",
"medium_one_basic_user_password":"YOUR PASSWORD",
"medium_one_api_key":"YOUR API KEY",
"ticket_subject": "{{ticket.title}}",
"ticket_id" : "{{}}",
"ticket_latest_comment" :"{{ticket.latest_comment_formatted}}",
"assignee_name": "{{}}",

Click save. Now an event will be sent to your Medium One account every time a ticket is created.

Step 4. Create a ticket on Zendesk

Go to your Zendesk account and create a ticket. Include as much or as little information as you want; this is just a test ticket to make sure everything has been correctly configured. The add ticket button can be found on the top lefthand side.

Click “Save as New.” Then go back to your Medium One account. Under Config, click on Data Streams.

Select raw data stream and click “Edit.” You should see a list of new tags, all sent from Zendesk. Hit the checkbox next to all of them to use them in workflows. If there are no tags, there was a problem in the configuration. Go back through the previous steps to make sure nothing was missed.

Step 5. Create an API key on Zendesk

Log into your Zendesk Administrative account. Under the Setup tab in the sidebar, click on “API” under Channels.

Make sure Token Access is enabled. Then click on the plus sign to create a new API key.

Enter a description and then copy the key shown below. Save this key for the next step. Click Save to finalize the creation of the key.

Step 6. Create a Workflow to Respond to Ticket Creation

Go to your Workflow Studio and create a new workflow.

Under the “Tags and Triggers” tab on the righthand side, go under raw and select ‘ticket_id.’

Drag and drop this box onto the Workflow Studio.

Next, click on the tab Modules from the righthand sidebar. 

Under “Foundation,” drag and drop the box Base Python.

Then drag the output node from the green raw.ticket_id box to the blue Python foundation node.

Your workflow should look like this:

Double click on the Base Python box. Copy and paste the following into the box.


  1. <Zendesk URL> with your Zendesk account’s URL.  i.e   Note: Be sure to include https:// in the url.

  2. <Zendesk username> with your Zendesk admin email address.

  3. <Zendesk API token> with the API key created in Step 1.

import Zendesk

Zendesk.authenticate(<Zendesk URL>, <Zendesk username>, <Zendesk API token>)
ticket_id = IONode.get_input('in1')['event_data']['value']
Zendesk.update_ticket(int(ticket_id), "Processed by Medium One") 

Click Save and Activate.

What this workflow does is write a comment onto any new ticket created on Zendesk saying “Processed by Medium One.” Instead of this line, you can put in any information you want to automatically send back to Zendesk.

To check if this was successful, create a test ticket in Zendesk the same way as in Part 2. Refresh the page, and see the message sent from the workflow on your Zendesk account.

Congrats! You have finished the tutorial.

Want to learn more about what Medium One can do?

Check out our documentation and tutorials & get started on your next IoT project!

Appendix: How to Create a Zendesk ticket from a Workflow

Check out this sample code to create a new ticket on Zendesk:

import Zendesk

Zendesk.authenticate(<Zendesk URL>, <Zendesk username>, <Zendesk API token>)
Zendesk.create_ticket("New Ticket", "This is the content") 

Check out our Zendesk documentation to see all of our Zendesk integrations.