How to import tickets using Freshdesk API - I've hit the wall
I was on GrooveHQ and wanted to migrate tickets and conversations from there. It was fairly easy to program in Nodejs a script to "connect" two APIs and do pull from Groove and push to Freshdesk, but I've hit the wall with limitations of the freshdesk API. Not functional limitations I guess, but security limitations.
I am using username/login basic authorization for the API, not API key though. Does using APIkey resolve any of those issues (my trial expired so don't have it now to test)? Anybody done something similar?
Problems I have:
1) I cannot import created_at and updated_at timestamp, API refuses those so all my new tickets have today's date.
2) I cannot import reply from one of my agents, only from the user whose credentials i used for the API.
3) Importing replies triggers emails to customers. I have disabled all email notifications I could in Freshdesk, but customers still get all imported replies to their messages.
All this is quite a showstopper for me. Very difficult to migrate to system that doesn't support any kind of usable import of the old tickets.
Hi Mirko, I've also been trying to migrate tickets and conversations into Freshdesk using their API, and ran into the same problems. I can confirm that it's not related to the authorisation method, and these limitations are still present if you use an API key.
I opened a ticket with Freshdesk tech support, who got back to me about this today. They confirm that it's not possible to set the timestamps. For adding replies, they suggest using notes, which by default will still send a notification to the customer but you can turn them off in Admin > Email notifications. I guess we'd have to add a line at the top of each ticket or note that states the actual timestamp and who wrote the reply (since the API doesn't let you create a note as another agent, nor as the ticket requester).
Alternatively, I had some success creating a custom app to provide a link from Freshdesk back to our old system. If GrooveHQ provides a suitable API, you might be able to do something similar. Have a look at these docs:
Hope that helps.
Thx for reply. In the meantime we solved it with compromises. Here is info for others:
1) dates cannot be imported using regular api keys. It seems Freshdesk support have some special keys that will allow it but im not sure if it is a payed service or not. We gave up on it and just added it as a comment on the ticket.
2) in order to import ticket\note of anagent, API needs to be accessed using his key. Owners\admin key does not do it. Since we had only a few agents, we developed import script that attaches appropriate key to each API request, depending on agent owning it. It worked like a charm.
3) this was not clear, not even to support at first, but there's NO WAY to disable sending out emails to customers when creating replies using (regular) API! A lot of places mention those notification settings but thats for other kinds of notifications. We decided to do a workaround using notes instead of replies. Don't see a difference actually. All in all, import is quite easy to do but badly documented and with too much limitations. Its like Freshdesk targets non-programmer users and their own payed import service. Its a shame, community would be able to make import scripts for every single competition service out there. Now, its a limiting factor for many users.