Skip to Content
ResourcesIntegrationsCustomer SupportFreshdesk

Freshdesk

Service domainCUSTOMER SUPPORT
Freshdesk icon
Arcade Optimized

Arcade.dev LLM tools for Freshdesk customer support

Author:Arcade
Version:1.0.3
Auth:No authentication required
19tools
19require secrets

Freshdesk toolkit for Arcade connects LLM agents to a Freshdesk helpdesk instance, enabling automated ticket management, contact and company administration, knowledge base access, and agent/group routing.

Capabilities

  • Ticket lifecycle — create, read, update, merge, and reply to tickets publicly or add private internal notes; search the queue by status, priority, requester, agent, group, tag, type, or recency.
  • Contact & company management — create or update contacts and companies, search by name/email/company, and retrieve full records by id; all lookups return a structured not-found envelope instead of raising on missing ids.
  • Customer context — assemble a requester's contact record, company, and ticket history in a single call via GetCustomerOverview.
  • Knowledge base — search published solution articles by keyword and retrieve full article content by id.
  • Routing support — list agents (filterable by email) and groups to facilitate intelligent ticket assignment.
  • Auth verification — WhoAmI confirms the configured API key and connected Freshdesk account without requiring it as a preamble to other tools.

Secrets

The toolkit requires two secrets. Both are set in Arcade's secret store.

  • FRESHDESK_API_KEY — The API key for a Freshdesk agent or admin account. Retrieve it by logging into your Freshdesk account, clicking your avatar in the top-right corner, and selecting Profile Settings. The API key appears in the right-hand panel. For production use, prefer a dedicated agent account with appropriate helpdesk permissions rather than a personal key. See Freshdesk API authentication docs for details.

  • FRESHDESK_DOMAIN — Your Freshdesk subdomain, i.e. the <subdomain> portion of https://<subdomain>.freshdesk.com. This is the custom subdomain chosen when your Freshdesk account was created. Provide only the subdomain string (e.g. acme), not the full URL, unless the toolkit's configuration expects the full hostname — check your integration's expected format. No special permissions are needed to determine this value; it is visible in the browser address bar when logged into Freshdesk.

For guidance on storing secrets in Arcade, see the Arcade secrets documentation. You can manage secrets at https://api.arcade.dev/dashboard/auth/secrets.

Available tools(19)

19 of 19 tools
Operations
Behavior
Tool nameDescriptionSecrets
Add an internal private note to a ticket that the requester cannot see.
2
Create a new company account or update an existing one. To create, omit company_id and provide a name; link a contact to the result by passing its id as a contact's company.
2
Create a new contact or update an existing one. To create, omit contact_id and provide a name plus at least one of email, phone, or mobile.
2
Open a ticket on a customer's behalf. Requires a subject, a description, and a requester identified by email or id.
2
Read a single knowledge base article's full content by id. A missing id returns a not-found envelope (``found`` false) rather than raising, so a stale or guessed id can be recovered from within the same turn.
2
Read a single company's details by id. A missing id returns a not-found envelope (``found`` false) rather than raising, so a stale or guessed id can be recovered from within the same turn.
2
Read a single contact's details by id. A missing id returns a not-found envelope (``found`` false) rather than raising, so a stale or guessed id can be recovered from within the same turn.
2
Assemble one requester's full context — their contact record, their company, and their tickets — in a single call instead of three separate lookups. Identify the requester by contact_id or email; a missing requester returns a not-found envelope rather than raising, so a stale id or wrong email can be recovered in the same turn.
2
Read a ticket together with its full public-reply and private-note history. A missing id returns a not-found envelope (``found`` false) rather than raising, so a stale or guessed id can be recovered from within the same turn.
2
List the helpdesk's agents, optionally filtered to one email, for routing tickets.
2
List the helpdesk's groups for routing tickets to a team.
2
Merge duplicate tickets into one. Use this to consolidate related tickets from the same requester so the conversation lives in a single place; the secondary tickets are closed.
2
Post a public reply on a ticket that the requester can see.
2
Search the knowledge base for published solution articles matching a term.
2
Find companies by name. Match is by name prefix; use the full name for an exact hit. Returns lightweight summaries without the company note; read a single company by id for its full detail.
2
Find contacts by name, exact email, or company. With no filters, returns recent contacts. Combining a name with a company scans up to the company's first 1000 contacts and matches the name among them; at a company with more contacts than that, a name match recorded beyond the scan may not appear.
2
Find tickets in the queue by status, priority, requester, agent, group, tag, type, or recency. With no filters, returns the most recently updated tickets. Pass requester_id (or requester_email) to pull one customer's full ticket history; other filters then refine that requester's tickets. A just-created ticket may take a moment to appear here while Freshdesk indexes it.
2
Change a ticket's status, priority, assignee, or group. Fields left unset are unchanged; at least one field must be provided.
2
Return the authenticated Freshdesk agent's profile. Use this to verify the configured API key and confirm which Freshdesk account (domain) the tools are connected to; it is not a required preamble to the other tools.
2
Last updated on