Using the eDesk API will allow you to connect your own system(s) directly with eDesk and perform actions automatically.
This help file will give you a few examples of what you can achieve via the eDesk API.
Before you start
You’ll need an Admin login to eDesk. If you don’t have an Admin login, you can request one from an Admin user within your business.
You’ll need to be on the eDesk Enterprise plan to access this feature. To find out more information, click here.
To access our eDesk API guide, click here.
Note: APIs calls can be quite complex to set up and would require some technical background. If you're not comfortable with it, it might be best to ask your IT team for help.
01 What is an API?
An API (Application Programming Interface) is a method that enables two completely different systems/applications/programs to talk to each other safely and securely. APIs let you (or your program) connect directly into eDesk to get data or update information. Most applications and systems now use APIs to talk to each other to ensure security in an ever-connected world.
When you log into eDesk it's like coming through the front door. When an API connects it's like coming in the service door at the back. When using the front door, what you see is very regimented and designed to be very user-friendly. When using the back door via the API, you’re also connecting to the same system; you can do more and have greater flexibility but it's far less user-friendly.
By coding your own scripts, you can use our API and other systems’ APIs to effectively build your own custom integrations. These can then be used to update data in eDesk or get information to pass onto another system.
In the section below, we'll give you a few examples of how you use eDesk’s API for your business.
02 Use Case #1 - Updating Order Tracking
In this case, you're looking to upload your tracking numbers into eDesk. You are currently using a third party shipping service called BillyBobs Shipment Co., which eDesk doesn't yet support.
So, what can you do? The good news is BillyBobs offers an API which includes tracking information.
This means that you can create a script which will do the following:
Connect to the eDesk API and using the List Orders call, grabs all orders in the past week which have been dispatched.
From this list they filter out any orders which have a tracking number set.
They then connect to BillyBobs' API, making a call to get the tracking details for each of these orders.
Finally they connect back to the eDesk API and using the Upload Tracking Information call they update the tracking details in eDesk.
03 Use Case #2 - Automating Return Request Package Received emails
For our second example, let's imagine your business runs its own internal inventory system. When a buyer sends a return back, you receive the package and scan a barcode which then updates the order in your system to say it's been returned. At this stage one of your customer support agents would have to manually check the packages and email the buyers to let them know the packages have been received. Not very efficient and it means they have to be technical as they need to access the database!
So, what can you do? You can code basic scripts using the eDesk API to make your life much easier!
You setup a script to do the following:
Connects to your database and downloads details of any parcels that have been scanned in today.
Connects to the eDesk API and creates a new ticket thread (Create Thread call).
Connects to the eDesk API and then creates a new message within that new ticket thread (Create Message call).
The Customer Service team can then work through these new tickets and manually refund the payments on Amazon/eBay.
Now the Support Team can focus on what's important: their chats!
04 Use Case #3 - Outsourced support Team - Spot-check emails without accessing eDesk
In our third case, we have GreggsGifts, an Amazon store who have outsourced their customer service to yourself. You added the GreggsGifts' Amazon store to your own eDesk account, which contains dozens of different stores tied to different businesses. GreggsGifts and yourselves have a NDA (Non-Disclosure Agreement) so GreggsGifts can't actually login to eDesk themselves! What's worse is that you also have an agreement where tickets must be coached for quality.
So, what can you do? You can set up a script to do the following:
Connect to the eDesk API and pull all tickets created in the past week (List Threads call).
You then select a random sample of these tickets.
For these random tickets, you connect again to the API and download all messages tied to these tickets (List Messages call).
You then send these tickets over to GreggsGifts to review and coach.
05 Use Case #4 - Systems Migration
For our final example, let's picture your business is trying to migrate clients from an old Software A over to a brand-new Software B. This is a pain for your Support Team, as it's very hard to know if a client is already on Software B or if they're still using Software A.
So, what can you do? In order to make this process smoother, you can code a script to connect to Software A' database and eDesk API to set the custom field Software A Migrated to be Yes for clients who had already moved from one system to the other.
You can set up a script to do the following:
It connected to eDesk using the List Threads call to bring back all tickets created within the past hour.
It downloaded these ticketIDs and emails tied to them.
It then downloaded the current list of Software A users who have been migrated and compared the lists
For any tickets which had an email in both lists, we connected to the eDesk API and updated the Software A Migrated field to Yes.