Importing from Freshdesk
On this page
Bring all of your Freshdesk tickets, contacts and knowledge base into Deskwoot with your Freshdesk domain and API key. The import reads every ticket, not only the last 30 days. Everything comes over by default, and you can choose to import less. It runs in the background, keeps going through Deskwoot updates and can be started again safely. Nothing in your Freshdesk account changes.
What comes over
- Tickets become conversations with every reply, private notes, attachments, status and priority. Archived tickets come too while Include archived tickets is on (with a start date, only those created on or after that day). Tickets in spam or in the trash stay out.
- Tags become labels on the conversation.
- Satisfaction ratings of your whole history, from both kinds of Freshdesk surveys, become CSAT ratings on the matching conversation.
- Linked tickets: the ticket source (email, portal, phone, chat and so on) and parent, child and tracker links are saved with each conversation, so they are not lost. They are not shown in the conversation yet.
- Contacts with their details, description, tags and profile picture, and companies as organizations.
- Groups become teams. Agents are matched to your teammates by email (see below).
- Canned responses with their images and attachments. Personal folders stay out, since canned responses in Deskwoot are shared by your whole team. If a canned response with the same short code already exists in Deskwoot, the imported one is left out, and Import History shows how many were left out. Ticket and contact fields become custom attributes.
- Automations arrive switched off, so you can check them first.
- Knowledge base: categories, folders and subfolders keep their nesting in a new help center called "Freshdesk Knowledge Base" with your domain in brackets. Published articles stay published, drafts stay drafts.
Files and images
The import copies every file Freshdesk hosts into Deskwoot: attachments of tickets and replies, images and files inside messages, images and attachments of knowledge base articles and canned responses, and the profile pictures of your contacts. Nothing stays a link to Freshdesk, so your files keep working after you leave Freshdesk. The profile pictures of your contacts are copied in a step of their own after the tickets. If your workspace has booked the Virus scan, every file is scanned before it is stored.
- If a file cannot be copied right now (Freshdesk does not answer even after several tries, or the virus scanner or Deskwoot's storage cannot be reached), the import ends with Imported partly. Start the import again to copy it. When 3 files in a row from the same server do not arrive, the run skips that server's files for 2 minutes and then tries one of them again. If that file arrives, the run carries on with the server's files. If not, it waits another 2 minutes. That way a server that does not answer cannot hold up the whole import, and the next run tries the skipped files again.
- A file that no run can copy is left out, and the import still finishes. This includes a file that could not be reached in 3 runs, so a server that never answers cannot keep your import at Imported partly. Only runs in which the file could not be reached count, not runs in which the virus scanner or the storage was down. The count starts over when the last of those runs was more than 7 days ago, and deleting any import of your workspace clears it. Import History lists these files under Files that could not be imported with the reason, for example too large (over 25 MB, profile pictures over 2 MB), a file type that is not allowed, refused by the virus scan or no longer available at Freshdesk.
- Images that a message or an article loads from another website, such as your own, stay as they are.
What stays internal
Deskwoot keeps everything private that Freshdesk did not show to all users:
- A folder that is not visible to all users (for example logged in users, agents or selected companies) becomes an internal category, together with every folder below it.
- A Freshdesk category becomes internal too when no portal shows it, or when none of the folders at its top level is visible to all users.
Internal categories and their articles are visible only to your team in the dashboard. They never show on the public help center, in the sitemap, in the chat widget or to Fynn, the AI bot.
Before you start
- In Freshdesk, click your profile picture and open Profile Settings. Your API key is on the right. Use the key of a Freshdesk admin, so the import can read every part of your helpdesk.
- Note your Freshdesk domain:
your-companyfromyour-company.freshdesk.com. - Invite your teammates to Deskwoot with the same email they use in Freshdesk. You can also do this later.
How to import
- In Deskwoot, go to Settings > Import & Migration. Only admins can import.
- Pick Freshdesk.
- Enter the Domain and the API Key.
- Under What to import, choose what comes over. Everything is on by default. To import only newer tickets, pick a day under Only tickets created on or after.
- Click Start Import.
While the import runs
- The import runs in the background, so you can close the page. The import page shows the step it is on and how many records are done. After a few minutes of measuring, it also shows the speed and, while your tickets are imported, about how much time is left. During the search for archived tickets it shows how many ticket numbers are still to check instead. It also shows how many API calls per minute your Freshdesk account allows (per hour on older accounts that Freshdesk has not moved to limits per minute yet) and how many of them the import uses at most.
- Deskwoot updates and server restarts don't stop it. It continues where it stopped. If a run crashes or gets stuck 3 times in a row without getting any further, the import stops and says so. Start it again to continue.
- One import runs per workspace at a time. Start the next one when the current one has finished.
- To stop an import, click Cancel import on the import page and confirm with Cancel and delete. The import stops and what it imported so far is deleted. A conversation someone wrote in since then keeps those new messages.
- When Freshdesk's API limit is reached, the import waits and then carries on. If Freshdesk stops answering or refuses a list, the import keeps what it already read, finishes the other steps and ends with Imported partly and the steps that stopped early. Start the import again to continue.
How long it takes
Freshdesk limits how many API calls your helpdesk can make per minute, depending on your Freshdesk plan, and counts all calls of your account together, including those of your own apps and integrations. The import uses at most about 60% of that limit, so your team's other apps keep working while it runs. It needs about 2 calls per ticket, so a large helpdesk takes hours. Without the contacts it needs about 3, because it then reads each requester on its own. Rough times with everything selected:
- Trial (50 calls per minute): about 75 minutes for 1,000 tickets, 11 hours for 10,000 and 2 days for 50,000.
- Growth (100 per minute): about 40 minutes, 5.5 hours and 28 hours.
- Pro (400 per minute): about 9 minutes, 85 minutes and 7 hours.
- Enterprise (700 per minute): about 5 minutes, 50 minutes and 4 hours.
Tickets with many files or very long threads take longer. Freshdesk's Free plan has no API access, so the import needs a paid plan or a trial. The Freshdesk form in Deskwoot shows the same overview before you start, worked out for what you selected.
Your agents' tickets and replies
A ticket assigned to a Freshdesk agent goes to the teammate with the same email, and their replies show them as the sender. If that person has no Deskwoot account yet, the ticket arrives unassigned and their replies show their name with (imported).
When they join your workspace later with the same email, Deskwoot hands them their work automatically: their unassigned imported conversations are assigned to them and they become the sender of their replies. Open, pending and snoozed conversations come with one notification for all of them. Resolved ones are assigned quietly. No status changes, and your customers see nothing. A conversation that someone in Deskwoot has already held stays as it is.
Imported conversations stay quiet
Imported conversations are history, so they stay quiet until the customer writes again or someone on your team replies in Deskwoot. Until then Deskwoot sends the customer nothing from them (no farewell message, no satisfaction survey), starts no SLA clock and does not resolve them automatically. Imported conversations never count toward your plan's monthly conversation limit and are never locked by it, also after the customer writes again. Resolving or reopening one by hand fires no webhook and no automation rule. From the first new message on, the conversation works like any other, except that Fynn, the AI bot, never answers in an imported conversation.
After the import
- Imported conversations have no inbox yet. Open one and pick an inbox in the This conversation has no inbox notice before you reply.
- Check the automations and switch on the ones you want. Import History links to them with Review and switch them on.
Frequently asked questions
Does the import change anything in Freshdesk?
No. It only reads from Freshdesk.
Are old tickets imported too?
Yes. The import reads every ticket of your helpdesk, not only the last 30 days that Freshdesk lists by default. Archived tickets come too: the import asks Freshdesk's archive, one by one, for every ticket number the normal list leaves out. If that search stops, for example at Freshdesk's API limit, the next run continues where it stopped, and a new import of the same helpdesk goes on from there too. If Freshdesk refuses its archive to your API key, the import goes on without them. If you don't need the archived tickets, switch off Include archived tickets: the import then skips the archive and finishes faster.
Can I start the import again?
Yes, that is safe. A new run finds what is already in Deskwoot and skips it, so tickets, contacts and articles are not duplicated. It brings in what is new or was missing, for example after a run that ended with Imported partly. Help center articles your team edited in Deskwoot keep their new text, and a new run never publishes an article you unpublished or made internal. If Freshdesk has since hidden an article, a new run makes it internal in Deskwoot too, even if your team moved it to another category. If Freshdesk has since unpublished an article, a new run unpublishes it in Deskwoot too, but only if your team has not edited it. Keep in mind that conversations, contacts and notes you deleted or erased in Deskwoot since the last import come back if Freshdesk still has them, and so do contacts you merged.
Can I import only part of my data?
Yes. Under What to import, everything is on by default, and you can switch off Tickets, Include archived tickets, Contacts and organizations, Knowledge base, Canned responses and Satisfaction ratings. With a day under Only tickets created on or after, only tickets created on or after that day come. Ratings come only with the tickets they rate, so that option is greyed out without the tickets. Teams, agents, fields and automations always come, because the tickets need them. If you leave out the contacts, each imported ticket still brings its own contact. Import History shows under each import what was not selected and the start date. To get the rest later, start an import with everything selected: it skips what is already in Deskwoot and brings in what was left out, including the organization and fields of the contacts your tickets brought in.
How are ticket statuses mapped?
Open stays Open, Pending stays Pending, Resolved and Closed become Resolved. A custom status becomes Open.
An agent joins after the import. Do they get their tickets?
Yes. As soon as they accept the invitation with the email they had in Freshdesk, their unassigned imported conversations and their replies go to them. They get one notification for the open ones.
Why is a knowledge base category marked Internal?
Freshdesk did not show it to all users: the folder was for logged in users, agents or selected companies, no portal showed the category, or none of its folders at the top level was visible to all users. Deskwoot has no such audiences, so it keeps the category for your team only. To publish it, open the category in the Help Center and switch off Internal category.
The import ended with "Imported partly". What now?
Freshdesk stopped answering during one or more steps, for example because its API limit stayed used up for a long time. Everything read so far is in Deskwoot. Start the import again: it skips what is there and continues.
Does Deskwoot keep my API key?
Only while the import runs, stored encrypted, so it can continue after a restart. It is removed when the import ends.
Some files are missing. Why?
Open Import History. If the import ended with Imported partly, some files could not be fetched yet: start the import again to copy them. Files listed under Files that could not be imported are left out for good, each with its reason, for example too large or no longer available at Freshdesk. A file that Freshdesk did not deliver in 3 runs is listed there too.
How do I undo an import?
In Import History, click the trash icon next to the import. This deletes the conversations and contacts it created, together with the files it copied for them. A conversation someone wrote in since then stays with those new messages, without the imported ones, and a contact who still has a conversation stays too. Teams, agents, canned responses, labels, help center articles and other settings stay. Deleting continues after a restart, and you can start a new import once it is done. While another import runs, an import cannot be deleted. If you imported from Freshdesk more than once, delete the imports from the newest to the oldest: while a newer Freshdesk import exists, Deskwoot asks you to delete that one first.
Was this guide helpful?
Keep reading
- Importing from IntercomMove Intercom conversations, contacts and every help center collection to Deskwoot with one access token.Read guide
- Importing from CrispMove Crisp conversations from every inbox, contacts and your knowledge base in all languages to Deskwoot.Read guide
- Importing from ChatwootMove from Chatwoot Cloud or your own Chatwoot server: conversations of every status with their original dates, contacts, rules and help center.Read guide
Ask Fynn about this guide
Get a short answer from this guide and the rest of the help center.