Skip to main content

Freshdesk integration

Triage tickets, sync contacts, and react to support events on behalf of your clients' Freshdesk accounts.

What it does

The Freshdesk integration lets you run support automations on behalf of any client whose helpdesk you manage. Connect a Freshdesk account once, then create, update, and delete tickets, post agent notes, list contacts, and route live ticket events (created, updated) into the rest of your workflow without writing any code.

Connect a Freshdesk account

  1. In TaskJuice, open Settings -> Connections and choose Add connection -> Freshdesk.
  2. Enter your client's Freshdesk subdomain (the part before .freshdesk.com in the help-center URL, e.g. acme for acme.freshdesk.com).
  3. In Freshdesk, open Profile Settings -> View API Key on the agent account TaskJuice should act as, copy the API key, and paste it into the Freshdesk API Key field.
  4. Enter the literal letter X as the password. Freshdesk ignores the password when an API key is supplied as the username; X is the documented placeholder.

The connection is read- and write-capable across tickets, contacts, agents, and notes scoped to that agent account. Rotate or revoke the API key from the same Profile Settings -> View API Key page at any time.

Triggers

  • freshdesk/ticket-created. Fires when a new ticket is created in the Freshdesk account.
  • freshdesk/ticket-updated. Fires when an existing ticket is updated (status, priority, assignee, type, tags, or note).

Both triggers verify the inbound POST against a shared-secret header. In Freshdesk, open Admin -> Workflows -> Automations, create a Dispatch'r rule (for create events) or an Observer rule (for update events), set the action to Trigger Webhook, point it at the TaskJuice incoming webhook URL, and add the shared secret to the Authorization header field as Bearer <secret>. Configure the JSON payload to include a top-level freshdesk_webhook object containing the ticket placeholders you want downstream steps to see.

Actions

  • freshdesk/list-tickets. List tickets in the account, paginated by page number (30 per page by default).
  • freshdesk/get-ticket. Look up a single ticket by ID, optionally including the requester, company, stats, or conversations.
  • freshdesk/create-ticket. Open a new ticket with a subject, description, requester, priority, status, source, type, and tags.
  • freshdesk/update-ticket. Patch an existing ticket's status, priority, assignee, group, type, or tags.
  • freshdesk/delete-ticket. Soft-delete a ticket (recoverable from the trash within 30 days).
  • freshdesk/add-ticket-note. Post a private or public note on an existing ticket.
  • freshdesk/list-contacts. List contacts in the account, filtered by email, phone, company, or last-updated timestamp.

Known limitations

  • Rate limits follow Freshdesk's per-plan API quotas documented at https://developers.freshdesk.com/api/#ratelimit. TaskJuice retries on 429 responses honoring the Retry-After header.
  • Page-based pagination is fixed at 30 items per page on most endpoints. TaskJuice stops paginating after 100 pages by default; raise the ceiling on the action if you need a deeper sweep.
  • The webhook payload shape is fully controlled by the Freshdesk automation rule's JSON template. Place ticket fields under a freshdesk_webhook object in the template so downstream steps can dereference them reliably.
  • API key authentication is scoped to the agent whose key was copied. Switching agents requires rotating the connection's API key.
Was this helpful?
Freshdesk integration | TaskJuice Docs