Freshdesk
Create, update and find Freshdesk tickets, reply and add notes, and manage contacts and companies.
Connect Freshdesk
- In the sidebar, open Connections and press Add connection.
- Type
freshdeskand choose Freshdesk. - Fill in the fields. Each one says Required or Optional.
- Press Test and save. GoRunner checks the connection before it saves anything.
The sheet asks for:
- Domain · Required
Your Freshdesk domain: acme for acme.freshdesk.com (a custom domain of your own does not take API calls).
- API key · Required
The agent’s API key from Profile settings.
Enter your helpdesk’s domain (the part before .freshdesk.com) and an agent’s API key: in Freshdesk, open your profile picture › Profile settings; the key is under the password section. The connection acts with that agent’s permissions.
Connections says how to sign in again, rename or delete it. In a product that embeds GoRunner, Add connection can be missing: then your provider makes connections for you.
Start a workflow
Add a trigger and choose Freshdesk. The trigger uses the same connection as the steps.
On Ticket Created or Updated
Checks Freshdesk about once a minute and starts a run for each ticket created, or each change to a ticket, since the check before, oldest first. The first check after publishing only takes note of what is there (it starts nothing); changing the trigger starts over the same way. Several changes to a ticket between two checks start one run, with the ticket as it is then. At most 100 runs start per check; the rest follow on the next one.
- Trigger on · Required
Which tickets start a run.
Options: New ticket, Ticket updated, New or updated ticket.
Default: New ticket.
A later step can use its data, such as {{trigger.change_type}}, {{trigger.created_at}}, {{trigger.event}} and 6 more. See Use data from earlier steps.
Do things in Freshdesk
Add a Freshdesk step, choose a Resource, then an Operation. Choose a row to see its fields.
- TicketCreate · Get · Get Many · Update · Delete · Restore
- ConversationReply · Add Note · Get Many · Update Note · Delete
- ContactCreate · Get · Get Many · Update · Delete
- CompanyCreate · Get · Get Many · Update · Delete
- AgentGet · Get Many
- GroupGet · Get Many
Later steps read a step’s output by its name: see Use data from earlier steps.
Limits
- A reply from Freshdesk can be up to 16 MB (a file download can have its own limit). A larger one fails the step; it is never cut short.
- When Freshdesk says to slow down (429), the step waits as long as it asks, if the step’s time allows. Otherwise it fails and says when to try again.
Not in your list? See When an app isn’t here.
For developers
In the API, which calls apps pieces, Freshdesk is pieceId: "freshdesk" with actionId: "freshdesk", set by resource and an operation_… field, such as operation_agent. Its trigger is freshdesktrigger / freshdesk_poll. Get an app returns every field.
It can change something outside the run (writes_external). See How versions and side effects work.
Freshdesk › Ticket
Create
- Requester Email · Optional
Who asks. Freshdesk adds them as a contact when the email is new. Create needs this, a Requester ID or a Requester Phone.
- Requester ID · Optional
Or the requester's contact id.
- Requester Phone · Optional
Or the requester's phone (a new contact by phone also needs Requester Name).
- Requester Name · Optional
The name of a requester Freshdesk adds.
- Subject · Optional
- Description · Optional
The ticket's content (HTML allowed).
- Status · Optional
Empty: Open on create, unchanged on update.
Options: Open, Pending, Resolved, Closed.
- Priority · Optional
Empty: Low on create, unchanged on update.
Options: Low, Medium, High, Urgent.
- Source · Optional
The channel the ticket came in by. Empty: Portal on create.
Options: Email, Portal, Phone, Chat, Feedback widget, Outbound email.
- Type · Optional
One of your helpdesk's ticket types (Question, Incident, Problem, Feature Request, Refund …).
- Group · Optional
The group the ticket is assigned to.
- Agent · Optional
The agent the ticket is assigned to.
- Company ID · Optional
The requester's company the ticket belongs to.
- Tags · Optional
Tags, separated by commas (on update they replace the ticket's tags).
- CC Emails · Optional
Emails to copy, separated by commas.
- Due By · Optional
When the ticket is due (ISO 8601). Freshdesk needs First Response Due By with it.
- First Response Due By · Optional
When the first response is due (ISO 8601).
- Custom Fields · Optional
Your ticket fields' values by name: {"cf_order_number": "7731"}.
Get, Delete and Restore
- Ticket ID · Required
The ticket's number, or its link in Freshdesk.
Get Many
- Search · Optional
A Freshdesk filter instead of the options below, such as priority:3 AND status:2, or tag:'refund'. Up to 300 tickets.
- Show · Optional
A predefined list.
Options: New and my open, Watching, Spam, Deleted.
- Requester Email · Optional
Only tickets of this requester.
- Requester ID · Optional
Only tickets of this requester.
- Company ID · Optional
Only tickets of this company.
- Updated Since · Optional
Only tickets updated after this time (ISO 8601). Empty: Freshdesk lists the tickets of the last 30 days.
- Order By · Optional
Options: Created, Due, Updated, Status.
- Order · Optional
Options: Ascending, Descending.
- Include · Optional
Add the requester or the ticket's stats to each ticket (costs Freshdesk API credits).
Options: Requester, Stats, Description.
- Return All · Optional
Read every ticket, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many tickets to return (1–2000).
Default: 50.
Shows when Return All is off.
Update
- Ticket ID · Required
The ticket's number, or its link in Freshdesk.
- Requester Email · Optional
Who asks. Freshdesk adds them as a contact when the email is new. Create needs this, a Requester ID or a Requester Phone.
- Requester ID · Optional
Or the requester's contact id.
- Requester Phone · Optional
Or the requester's phone (a new contact by phone also needs Requester Name).
- Requester Name · Optional
The name of a requester Freshdesk adds.
- Subject · Optional
- Description · Optional
The ticket's content (HTML allowed).
- Status · Optional
Empty: Open on create, unchanged on update.
Options: Open, Pending, Resolved, Closed.
- Priority · Optional
Empty: Low on create, unchanged on update.
Options: Low, Medium, High, Urgent.
- Type · Optional
One of your helpdesk's ticket types (Question, Incident, Problem, Feature Request, Refund …).
- Group · Optional
The group the ticket is assigned to.
- Agent · Optional
The agent the ticket is assigned to.
- Company ID · Optional
The requester's company the ticket belongs to.
- Tags · Optional
Tags, separated by commas (on update they replace the ticket's tags).
- Due By · Optional
When the ticket is due (ISO 8601). Freshdesk needs First Response Due By with it.
- First Response Due By · Optional
When the first response is due (ISO 8601).
- Custom Fields · Optional
Your ticket fields' values by name: {"cf_order_number": "7731"}.
Freshdesk › Conversation
Reply
- Ticket ID · Required
The ticket's number, or its link in Freshdesk.
- Body · Required
The text (HTML allowed).
- From Email · Optional
The support email it is sent from. Empty: the ticket's own.
- CC Emails · Optional
Separated by commas.
- BCC Emails · Optional
Separated by commas.
- Written By · Optional
The agent (or contact) id it is written as. Empty: the API key's agent.
Add Note
- Ticket ID · Required
The ticket's number, or its link in Freshdesk.
- Body · Required
The text (HTML allowed).
- Private · Optional
On: only agents see the note.
On by default.
- Notify Agents · Optional
Agent emails to tell about the note, separated by commas.
- Written By · Optional
The agent (or contact) id it is written as. Empty: the API key's agent.
Get Many
- Ticket ID · Required
The ticket's number, or its link in Freshdesk.
- Return All · Optional
Read every conversation, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many conversations to return (1–2000).
Default: 50.
Shows when Return All is off.
Update Note
- Conversation ID · Required
The reply's or note's id (Get Many lists them).
- Body · Required
The text (HTML allowed).
Delete
- Conversation ID · Required
The reply's or note's id (Get Many lists them).
Freshdesk › Contact
Create
- Name · Optional
Required to create a contact.
- Email · Optional
Create needs an Email, Phone, Mobile or Unique External ID.
- Phone · Optional
- Mobile · Optional
- Unique External ID · Optional
An id from another system.
- Company ID · Optional
The contact's company.
- Job Title · Optional
- Address · Optional
- Description · Optional
- Language · Optional
such as en or de.
- Time Zone · Optional
Freshdesk's name for it, such as Berlin or Eastern Time (US & Canada).
- Tags · Optional
Separated by commas (on update they replace the contact's tags).
- Other Emails · Optional
More emails, separated by commas.
- Custom Fields · Optional
Your contact fields' values by name: {"plan": "gold"}.
Get and Delete
- Contact ID · Required
The contact's id, or their link in Freshdesk.
Get Many
- Email · Optional
Only the contact with this email.
- Phone · Optional
Only contacts with this phone.
- Company ID · Optional
Only contacts of this company.
- State · Optional
Options: Verified, Unverified, Blocked, Deleted.
- Updated Since · Optional
Only contacts updated after this time (ISO 8601).
- Return All · Optional
Read every contact, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many contacts to return (1–2000).
Default: 50.
Shows when Return All is off.
Update
- Contact ID · Required
The contact's id, or their link in Freshdesk.
- Name · Optional
Required to create a contact.
- Email · Optional
Create needs an Email, Phone, Mobile or Unique External ID.
- Phone · Optional
- Mobile · Optional
- Unique External ID · Optional
An id from another system.
- Company ID · Optional
The contact's company.
- Job Title · Optional
- Address · Optional
- Description · Optional
- Language · Optional
such as en or de.
- Time Zone · Optional
Freshdesk's name for it, such as Berlin or Eastern Time (US & Canada).
- Tags · Optional
Separated by commas (on update they replace the contact's tags).
- Other Emails · Optional
More emails, separated by commas.
- Custom Fields · Optional
Your contact fields' values by name: {"plan": "gold"}.
Freshdesk › Company
Create
- Name · Optional
Required to create a company (unique in the helpdesk).
- Description · Optional
- Note · Optional
- Domains · Optional
Email domains, separated by commas: contacts with an email there join the company.
- Health Score · Optional
One of your helpdesk's values (At risk, Doing okay, Happy).
- Account Tier · Optional
One of your helpdesk's values (Basic, Premium, Enterprise).
- Renewal Date · Optional
YYYY-MM-DD.
- Industry · Optional
- Custom Fields · Optional
Your company fields' values by name: {"region": "EMEA"}.
Get and Delete
- Company ID · Required
The company's id, or its link in Freshdesk.
Get Many
- Return All · Optional
Read every company, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many companys to return (1–2000).
Default: 50.
Shows when Return All is off.
Update
- Company ID · Required
The company's id, or its link in Freshdesk.
- Name · Optional
Required to create a company (unique in the helpdesk).
- Description · Optional
- Note · Optional
- Domains · Optional
Email domains, separated by commas: contacts with an email there join the company.
- Health Score · Optional
One of your helpdesk's values (At risk, Doing okay, Happy).
- Account Tier · Optional
One of your helpdesk's values (Basic, Premium, Enterprise).
- Renewal Date · Optional
YYYY-MM-DD.
- Industry · Optional
- Custom Fields · Optional
Your company fields' values by name: {"region": "EMEA"}.
Freshdesk › Agent
Get
- Agent ID · Required
The agent's id.
Get Many
- Email · Optional
Only the agent with this email.
- Type · Optional
Options: Full-time, Occasional.
- Return All · Optional
Read every agent, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many agents to return (1–2000).
Default: 50.
Shows when Return All is off.
Freshdesk › Group
Get
- Group ID · Required
The group's id.
Get Many
- Return All · Optional
Read every group, page by page (at most 2000; past that the step fails rather than stop early).
Off by default.
- Limit · Optional
How many groups to return (1–2000).
Default: 50.
Shows when Return All is off.