Pipedream Freshdesk steps in n8n
Updated 2026-10-21 · 3 min read · n8n: Freshdesk (Native n8n node)
Freshdesk in Pipedream usually sits at both ends of a support flow: tickets come in from email or forms, workflows set status, assign agents and post updates to chat. n8n has a native Freshdesk node that covers tickets and contacts; notes, replies and search are a short HTTP Request away.
The n8n side
Freshdesk node (n8n-nodes-base.freshdesk):
| Resource | Operations |
|---|---|
| Contact | Create, Delete, Get, Get All, Update |
| Ticket | Create, Delete, Get, Get All, Update |
Ticket → Create and Update expose status, priority, source, group, agent, type, tags and CC emails. Ticket custom fields are not in the node (only Contact has them); set cf_… fields with HTTP Request.
There is no Freshdesk trigger node.
What maps where
Pipedream (app freshdesk) |
In n8n | Status |
|---|---|---|
| Create a Ticket | Ticket → Create | manual |
| Update a Ticket | Ticket → Update | manual |
| Set Ticket Status, Assign Ticket to Agent | Ticket → Update (Status / Agent) | manual |
| Add Note to Ticket | HTTP Request → POST /api/v2/tickets/{id}/notes |
manual |
| Create a Reply | HTTP Request → POST /api/v2/tickets/{id}/reply |
manual |
| Create a Contact | Contact → Create | manual |
| Search Tickets | HTTP Request → /api/v2/search/tickets |
manual |
| New Ticket Created, Ticket Updated (polling) | Schedule Trigger + Ticket → Get All (updated since) | manual |
| New Contact Created, Contact Updated (polling) | Schedule Trigger + Contact → Get All | manual |
Freshdesk is not in the converter's mapped list. Each step arrives as a placeholder that keeps its props in a comment; the trigger becomes a Manual Trigger naming the original source so you know which poll to rebuild.
Freshdesk credentials in n8n
Freshdesk API credential: API key (Profile settings → View API key) and Domain (subdomain only). HTTP Request nodes can reuse it as a predefined credential, so notes and replies need no separate auth.
Polling vs webhook
Pipedream's Freshdesk sources were polling sources, so moving to a Schedule Trigger costs no latency. Build it like this:
- Schedule Trigger every 5 minutes.
- Ticket → Get All with Updated Since set to
{{ $now.minus({minutes: 5}).toISO() }}. - Remove Duplicates (by ticket ID and
updated_at) to skip items seen in the last run.
If you want instant events, create a Freshdesk automation rule ("Ticket is created" → Trigger webhook) that POSTs to an n8n Webhook node.
Typical migration: urgent tickets to Slack
Pipedream: Freshdesk New Ticket Created → filter priority 4 → Slack Send Message.
n8n: Schedule Trigger → Ticket → Get All → If (priority = 4) → Slack → Message → Send.
Freshdesk migration pitfalls
- Rate limits. Freshdesk counts every call, including invalid ones, and answers
429withRetry-After. Limits depend on the plan (trial accounts: 50 per minute) and Ticket Create / Update have their own sub-limits. CheckX-RateLimit-Remainingbefore large loops. - Numeric codes. Status (2 open, 3 pending, 4 resolved, 5 closed) and priority (1–4) are numbers in the API; Pipedream props store the same numbers.
- Ticket custom fields need their API names (
cf_…) and an HTTP RequestPUT /api/v2/tickets/{id}, because the node does not expose them.
How to move your Freshdesk workflows
- Export the workflows from Pipedream.
- Upload on /convert; the free report lists every Freshdesk step with its props.
- Get the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.
More: Pipedream schedules in n8n. Related: Zendesk, Intercom, Slack.
FAQ
- Does n8n have a Freshdesk trigger?
- No. Pipedream's Freshdesk sources poll too, so the closest n8n equivalent is a Schedule Trigger plus Ticket → Get All filtered by updated time, or a Freshdesk automation rule that calls an n8n Webhook.
- How do I add a note or reply in n8n?
- The Freshdesk node covers Contact and Ticket CRUD only. Add Note to Ticket and Create a Reply become HTTP Request calls to the ticket notes and reply endpoints with the Freshdesk credential.
- What goes into the Domain field?
- Only the subdomain: for acme.freshdesk.com enter acme.
- Do Freshdesk steps convert automatically?
- No. They arrive as placeholders with their props (ticket ID, status, priority, body), ready to copy into the node.