Overview
Freshdesk is a customer-support ticketing platform popular with SMBs and mid-market. The Automize Freshdesk connector covers tickets, contacts, companies, agents, groups, time entries, and ticket conversations.
- Regions: Each Freshdesk account has its own sub-domain (yourcompany.freshdesk.com). The connector hits your sub-domain on every call – pick it at connection time.
- Plans: Free, Growth, Pro, Enterprise – all expose the API. Some features (custom objects, advanced automations, sandbox) need Pro or Enterprise.
Setting up the connection
Auth type: HTTP Basic.
- Sign in to Freshdesk → click your avatar → Profile Settings → API key (right sidebar).
- Copy the API key.
- In Automize, open Settings → Connectors → Freshdesk → Add connection. Enter sub-domain, set username=<API key>, password=X (any non-empty value).
Find your credentials at https://yourcompany.freshdesk.com/a/admin/api_keys.
Rate limits
Freshdesk enforces ~700 req/min for Growth, more for Pro/Enterprise. Per-endpoint limits apply (Create Ticket ~80/min). The connector reads X-Ratelimit-Remaining and pauses. For bulk loads use the Bulk Create endpoints (one call per 100 records).
Data model
Support primitives:
Company ─┬─ Contacts (end-users + agents)
└─ Tickets ─┬─ Conversations (replies + notes)
├─ Time Entries
├─ Tags
└─ Custom Fields
Groups (agent assignment buckets)
Agents (your team)Available operations
18 operations available. Click any row to jump to its detail.
| Operation | Category | What it does |
|---|---|---|
| Add note | General | Add a private or public note to a Freshdesk ticket. |
| Create Contact | General | Create a new contact |
| Create Ticket | General | Create a new ticket |
| Create time entry | General | Log a time entry on a Freshdesk ticket. |
| Delete Ticket | General | Delete a ticket |
| Get Contact | General | Get contact details |
| Get Ticket | General | Get ticket details |
| List Agents | General | List agents |
| List Companies | General | List companies |
| List Contacts | General | List all contacts |
| List groups | General | List Freshdesk support groups. |
| List ticket conversations | General | List all conversations on a Freshdesk ticket. |
| List Tickets | General | List all tickets |
| List time entries | General | List time entries on a Freshdesk ticket. |
| Reply to ticket | General | Add a reply to a Freshdesk ticket. |
| Search Tickets | General | Search tickets |
| Update Contact | General | Update an existing contact |
| Update Ticket | General | Update an existing ticket |
Operations
Add note
Add a private or public note to a Freshdesk ticket.
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text | |
Body body | Yes | textarea | |
Private private | No | switch |
Tips
- private=true makes it an internal-only note (default). Set private=false to make it a public-facing note (rare – use Reply instead).
Create Contact
Create a new contact
| Parameter | Required | Type | Description |
|---|---|---|---|
Name name | Yes | text | |
Email email | Yes | text | |
Phone phone | Yes | text | |
Company Id company_id | Yes | text |
Tips
- name + (email OR phone OR mobile) required.
- company_id links the contact to a company.
Create Ticket
Create a new ticket
| Parameter | Required | Type | Description |
|---|---|---|---|
Subject subject | Yes | text | |
Description description | Yes | text | |
Email email | Yes | text | |
Priority priority | Yes | number | |
Status status | Yes | text | |
Type type | Yes | text |
Tips
- subject + description + email + priority + status + type.
- Priority: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent).
- Status: 2 (Open), 3 (Pending), 4 (Resolved), 5 (Closed).
Errors
Invalid value for field 'priority'– Priority must be 1-4 (integer).
Create time entry
Log a time entry on a Freshdesk ticket.
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text | |
Time Spent time_spent | No | number | |
Note note | No | text | |
Billable billable | No | switch |
Tips
- ticket_id + time_spent (HH:MM format).
- billable=true to flag for billing.
Delete Ticket
Delete a ticket
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text |
Tips
- Soft-deletes. Restorable from Trash for 30 days.
Get Contact
Get contact details
| Parameter | Required | Type | Description |
|---|---|---|---|
Contact Id contact_id | Yes | text |
Tips
- Returns contact + custom fields.
Get Ticket
Get ticket details
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text |
Tips
- Returns ticket + requester. include=conversations,company to fold in nested data.
List Agents
List agents
No input parameters.
Tips
- Returns your support team. Useful for assignment routing.
List Companies
List companies
No input parameters.
Tips
- Filter by name (exact match) or domain.
List Contacts
List all contacts
No input parameters.
Tips
- Filter by email, company_id, mobile, phone.
List groups
List Freshdesk support groups.
No input parameters.
Tips
- Support groups. Use group_id on Update Ticket to assign.
List ticket conversations
List all conversations on a Freshdesk ticket.
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text |
Tips
- Returns replies + notes oldest-first.
List Tickets
List all tickets
No input parameters.
Tips
- Default returns 30 tickets per page. Pass per_page=100 (max) for bigger pages.
- filter=new_and_my_open (predefined), or use Search Tickets for arbitrary queries.
List time entries
List time entries on a Freshdesk ticket.
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text |
Tips
- Time logged on a ticket. Returns hours + note + agent + billable flag.
Reply to ticket
Add a reply to a Freshdesk ticket.
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text | |
Body body | Yes | textarea |
Tips
- Sends a public reply that emails the requester. body in HTML.
Search Tickets
Search tickets
No input parameters.
Tips
- Lucene query: 'priority:1 AND status:2 AND created_at:>2026-01-01'.
- Returns matching ticket IDs with summary fields.
Update Contact
Update an existing contact
| Parameter | Required | Type | Description |
|---|---|---|---|
Contact Id contact_id | Yes | text |
Tips
- PUT-style. To merge duplicates, use the Freshdesk UI.
Update Ticket
Update an existing ticket
| Parameter | Required | Type | Description |
|---|---|---|---|
Ticket Id ticket_id | Yes | text |
Tips
- PUT-style. To add a reply or note, use Reply Ticket / Add Note (separate endpoints).
FAQ
- Sandbox vs production?
- Sandboxes have a separate sub-domain (yourcompany-sandbox.freshdesk.com). Create separate Automize Freshdesk connections per sandbox/prod.
- Custom fields – how?
- Sent in the custom_fields object on Create/Update Ticket. Use the field's API name (snake_case version of label).
- Why does Search return 0 when I can see matching tickets?
- Search has a ~30s indexing delay. New tickets aren't immediately searchable. Use Get Ticket if you have the ID.