Freshservice integration

ITSM: tickets, assets, changes, problems, agents, requesters

Help CentreConnectors

Overview

Freshservice is Freshworks' ITSM platform – sibling to Freshdesk but specialised for internal IT, not external customer support. Tickets, assets, changes, problems, requesters, agents.

  • Regions: Each Freshservice account has its own sub-domain (yourcompany.freshservice.com).
  • Plans: Starter, Growth, Pro, Enterprise – all expose the API. Some features (advanced asset discovery, change blueprints) need higher plans.

Setting up the connection

Auth type: HTTP Basic.

  1. Sign in to Freshservice → click your avatar → Profile Settings → API key.
  2. Copy the API key.
  3. In Automize, open Settings → Connectors → Freshservice → Add connection. Enter sub-domain, username = API key, password = 'X' (ignored by Freshservice).

Find your credentials at https://yourcompany.freshservice.com/profile/personal_access_tokens.


Rate limits

Freshservice enforces tiered limits based on plan – typically 1,000 req/hour on Pro. Connector retries 429 with backoff.


Data model

ITSM primitives:

    Requester (end-user) ── creates ── Ticket (Incident or Service Request)
                                        └─ Agents (assigned)
    Asset ─── linked to ─── Tickets / Changes / Problems
    Change Request (planned changes – workflow + approvals)
    Problem (root cause for multiple incidents)
    Service Catalog (request templates)

Available operations

11 operations available. Click any row to jump to its detail.

OperationCategoryWhat it does
Create TicketGeneralCreate a new ticket
Delete TicketGeneralDelete a ticket
Get AssetGeneralGet asset details
Get TicketGeneralGet ticket details
List AgentsGeneralList all agents
List AssetsGeneralList all assets
List ChangesGeneralList change requests
List ProblemsGeneralList problem tickets
List RequestersGeneralList all requesters
List TicketsGeneralList all tickets
Update TicketGeneralUpdate an existing ticket

Operations

Create Ticket

Create a new ticket

ParameterRequiredTypeDescription
Subject subjectYestext
Description descriptionYestext
Email emailYestext
Priority priorityYesnumber
Status statusYestext
Type typeYestext
Requester Id requester_idYestext

Tips

  • subject + description + requester_id (or email) + priority + status + type required.
  • Priority/Status integer codes same as Freshdesk: priority 1-4, status 2-5.

Delete Ticket

Delete a ticket

ParameterRequiredTypeDescription
Ticket Id ticket_idYestext

Tips

  • Soft-delete. Restorable from Trash.

Get Asset

Get asset details

ParameterRequiredTypeDescription
Asset Id asset_idYestext

Tips

  • Returns asset + assigned user + location + custom fields.

Get Ticket

Get ticket details

ParameterRequiredTypeDescription
Ticket Id ticket_idYestext

Tips

  • Returns ticket + requester + custom fields. include=conversations for replies/notes.

List Agents

List all agents

No input parameters.

Tips

  • IT support staff. Filter by group_id.

List Assets

List all assets

No input parameters.

Tips

  • Filter by asset_type_id, location_id, used_by.
  • include=type_fields to get custom-field values.

List Changes

List change requests

No input parameters.

Tips

  • Change requests with status (Open, Pending Review, Approved, etc.). Filter by impact, risk.

List Problems

List problem tickets

No input parameters.

Tips

  • Problem tickets linked to one or more incidents. Filter by status, priority.

List Requesters

List all requesters

No input parameters.

Tips

  • End-users that can submit tickets. Filter by email, department_id.

List Tickets

List all tickets

No input parameters.

Tips

  • filter=new_and_my_open / watching / spam / deleted (predefined).
  • include=requester,department,stats to fold related data.
  • Pages 30 default, max 100 via per_page.

Update Ticket

Update an existing ticket

ParameterRequiredTypeDescription
Ticket Id ticket_idYestext

Tips

  • PUT-style. status, priority, group_id, agent_id are the common updates.

FAQ

Freshservice vs Freshdesk – which?
Same Freshworks family. Freshdesk = customer support (B2C). Freshservice = internal IT (ITSM, ITAM, CMDB). Tickets in Freshservice are 'Incidents' or 'Service Requests'.
Why does Get Ticket not include replies?
Default response excludes conversations. Pass include=conversations or use List Conversations endpoint (not currently exposed) for full thread.
Custom fields – how?
Custom fields are in the custom_fields object on tickets/assets. Use API name (the underscore version of the label) as the key.

Related connectors

See it working on your own data

Everything documented here ships with the platform – try the document tools free, or go live in 7 days.