Reference · Tools

Freshservice

Manage tickets, changes, problems, releases, agents, requesters, departments, locations, products, software, and more in Freshservice ITSM.

Action Productivity v1

The Freshservice node connects BusyBot directly to your Freshservice ITSM account, giving you full create, read, update, and delete access across 14 resource types including tickets, changes, problems, releases, agents, and departments. A typical use case is auto-creating a ticket and assigning it to the right department whenever a monitoring alert fires. It authenticates with a Freshservice API key and routes results through separate Output and Error paths.

Node type
Action
Parameters
90
Outputs
Output, Error
Credentials
Freshservice API

Freshservice

Manage IT service management resources in Freshservice.

Overview

Freshservice is an IT service management (ITSM) platform. This tool provides full CRUD operations across 14 resource types: tickets, changes, problems, releases, agents, agent groups, agent roles (read-only), announcements, asset types, departments, locations, products, requesters, requester groups, and software applications. The Freshservice API uses Basic authentication with an API key, and the base URL is https://{domain}.freshservice.com/api/v2.

Category: Productivity
Tool Name: freshservice
Version: 1

Appearance: Icon: lucide-Headphones | Color: #35b86b

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Freshservice API credentials. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Agentagent
Agent GroupagentGroup
Agent RoleagentRole
Announcementannouncement
Asset TypeassetType
Changechange
Departmentdepartment
Locationlocation
Problemproblem
Productproduct
Releaserelease
Requesterrequester
Requester GrouprequesterGroup
Softwaresoftware
Ticketticket

Operations

Each resource has its own operation list. Pick the resource first, then the operation. Agent Role is read-only.

ResourceOperationValueDescription
AgentCreatecreateCreate an agent
AgentDeletedeleteDelete an agent by ID
AgentGetgetRetrieve a single agent by ID
AgentGet ManygetAllList agents
AgentUpdateupdateUpdate an existing agent
Agent GroupCreatecreateCreate an agent group
Agent GroupDeletedeleteDelete an agent group by ID
Agent GroupGetgetRetrieve a single agent group by ID
Agent GroupGet ManygetAllList agent groups
Agent GroupUpdateupdateUpdate an existing agent group
Agent RoleGetgetRetrieve a single agent role by ID
Agent RoleGet ManygetAllList agent roles
AnnouncementCreatecreateCreate an announcement
AnnouncementDeletedeleteDelete an announcement by ID
AnnouncementGetgetRetrieve a single announcement by ID
AnnouncementGet ManygetAllList announcements
AnnouncementUpdateupdateUpdate an existing announcement
Asset TypeCreatecreateCreate an asset type
Asset TypeDeletedeleteDelete an asset type by ID
Asset TypeGetgetRetrieve a single asset type by ID
Asset TypeGet ManygetAllList asset types
Asset TypeUpdateupdateUpdate an existing asset type
ChangeCreatecreateCreate a change request
ChangeDeletedeleteDelete a change by ID
ChangeGetgetRetrieve a single change by ID
ChangeGet ManygetAllList changes
ChangeUpdateupdateUpdate an existing change
DepartmentCreatecreateCreate a department
DepartmentDeletedeleteDelete a department by ID
DepartmentGetgetRetrieve a single department by ID
DepartmentGet ManygetAllList departments
DepartmentUpdateupdateUpdate an existing department
LocationCreatecreateCreate a location
LocationDeletedeleteDelete a location by ID
LocationGetgetRetrieve a single location by ID
LocationGet ManygetAllList locations
LocationUpdateupdateUpdate an existing location
ProblemCreatecreateCreate a problem
ProblemDeletedeleteDelete a problem by ID
ProblemGetgetRetrieve a single problem by ID
ProblemGet ManygetAllList problems
ProblemUpdateupdateUpdate an existing problem
ProductCreatecreateCreate a product
ProductDeletedeleteDelete a product by ID
ProductGetgetRetrieve a single product by ID
ProductGet ManygetAllList products
ProductUpdateupdateUpdate an existing product
ReleaseCreatecreateCreate a release
ReleaseDeletedeleteDelete a release by ID
ReleaseGetgetRetrieve a single release by ID
ReleaseGet ManygetAllList releases
ReleaseUpdateupdateUpdate an existing release
RequesterCreatecreateCreate a requester
RequesterDeletedeleteDelete a requester by ID
RequesterGetgetRetrieve a single requester by ID
RequesterGet ManygetAllList requesters
RequesterUpdateupdateUpdate an existing requester
Requester GroupCreatecreateCreate a requester group
Requester GroupDeletedeleteDelete a requester group by ID
Requester GroupGetgetRetrieve a single requester group by ID
Requester GroupGet ManygetAllList requester groups
Requester GroupUpdateupdateUpdate an existing requester group
SoftwareCreatecreateCreate a software application
SoftwareDeletedeleteDelete a software application by ID
SoftwareGetgetRetrieve a single software application by ID
SoftwareGet ManygetAllList software applications
SoftwareUpdateupdateUpdate an existing software application
TicketCreatecreateCreate a ticket
TicketDeletedeleteDelete a ticket by ID
TicketGetgetRetrieve a single ticket by ID
TicketGet ManygetAllList tickets
TicketUpdateupdateUpdate an existing ticket

Parameters

Return All and Limit are shared by every Get Many operation, so they appear in each Get Many subsection below. Priority, impact, status and similar enums are numeric strings — the meaning of each number is listed with its Options row.

Agent: Create

ParameterTypeRequiredDefaultDescription
EmailstringYesEmail address of the agent.
First Name (firstName)stringYesFirst name of the agent.
RolesjsonYes[]JSON array of role objects. Each: { “role”: roleId, “assignment_scope”: “entire_helpdesk” | “member_groups” | “specified_groups” | “assigned_items”, “groups”: [groupId, …] }. Groups are required only for the specified_groups scope.
Additional FieldscollectionNo{}Optional fields to set on the new agent.
— AddressstringNoStreet address of the agent.
— Background InformationstringNoBackground information about the agent.
— Department IDs (department_ids)stringNoComma-separated department IDs.
— Job TitlestringNoJob title of the agent.
— LanguageoptionsNoenDisplay language for the agent.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoLast name of the agent.
— Location ID (location_id)stringNoID of the agent’s location.
— Member Of (Group IDs)stringNoComma-separated group IDs.
— Mobile PhonestringNoMobile phone number.
— Observer Of (Group IDs)stringNoComma-separated group IDs.
— Scoreboard LeveloptionsNo1Gamification scoreboard level.
Options: 1 (Beginner), 2 (Intermediate), 3 (Professional), 4 (Expert), 5 (Master), 6 (Guru)
— Time FormatoptionsNo12hClock format shown to the agent.
Options: 12h (12-Hour), 24h (24-Hour)
— Work PhonestringNoWork phone number.

Agent: Delete

ParameterTypeRequiredDefaultDescription
Agent ID (agentId)stringYesID of the agent.

Agent: Get

ParameterTypeRequiredDefaultDescription
Agent ID (agentId)stringYesID of the agent.

Agent: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}Criteria the returned agents must match.
— Department ID (department_id)stringNoFilter by department ID.
— EmailstringNoFilter by email address.
— First Name (first_name)stringNoFilter by first name.
— Job TitlestringNoFilter by job title.
— LanguageoptionsNoFilter by display language.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoFilter by last name.
— Location ID (location_id)stringNoFilter by location ID.
— Mobile PhonestringNoFilter by mobile phone number.
— Work PhonestringNoFilter by work phone number.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Agent: Update

ParameterTypeRequiredDefaultDescription
Agent ID (agentId)stringYesID of the agent.
Update FieldscollectionNo{}Fields to change on the agent. At least one field is required.
— AddressstringNoStreet address of the agent.
— Background InformationstringNoBackground information about the agent.
— Department IDs (department_ids)stringNoComma-separated department IDs.
— EmailstringNoEmail address of the agent.
— First Name (first_name)stringNoFirst name of the agent.
— Job TitlestringNoJob title of the agent.
— LanguageoptionsNoDisplay language for the agent.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoLast name of the agent.
— Location ID (location_id)stringNoID of the agent’s location.
— Member Of (Group IDs)stringNoComma-separated group IDs.
— Mobile PhonestringNoMobile phone number.
— Observer Of (Group IDs)stringNoComma-separated group IDs.
— Scoreboard LeveloptionsNo1Gamification scoreboard level.
Options: 1 (Beginner), 2 (Intermediate), 3 (Professional), 4 (Expert), 5 (Master), 6 (Guru)
— Time FormatoptionsNo12hClock format shown to the agent.
Options: 12h (12-Hour), 24h (24-Hour)
— Work PhonestringNoWork phone number.

Agent Group: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName of the agent group.
Additional FieldscollectionNo{}Optional fields to set on the new agent group.
— DescriptionstringNoDescription of the agent group.
— Escalate To (Agent ID)stringNoAgent ID to escalate to.
— Members (Agent IDs)stringNoComma-separated agent IDs.
— Observers (Agent IDs)stringNoComma-separated agent IDs.
— Unassigned ForoptionsNo30mHow long a ticket may stay unassigned before it escalates.
Options: 30m (30 Minutes), 1h (1 Hour), 2h (2 Hours), 8h (8 Hours), 12h (12 Hours), 1d (1 Day), 2d (2 Days), 3d (3 Days)

Agent Group: Delete

ParameterTypeRequiredDefaultDescription
Agent Group IDstringYesID of the agent group.

Agent Group: Get

ParameterTypeRequiredDefaultDescription
Agent Group IDstringYesID of the agent group.

Agent Group: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Agent Group: Update

ParameterTypeRequiredDefaultDescription
Agent Group IDstringYesID of the agent group.
Update FieldscollectionNo{}Fields to change on the agent group. At least one field is required.
— DescriptionstringNoDescription of the agent group.
— Escalate To (Agent ID)stringNoAgent ID to escalate to.
— Members (Agent IDs)stringNoComma-separated agent IDs.
— NamestringNoNew name for the agent group.
— Observers (Agent IDs)stringNoComma-separated agent IDs.
— Unassigned ForoptionsNo30mHow long a ticket may stay unassigned before it escalates.
Options: 30m (30 Minutes), 1h (1 Hour), 2h (2 Hours), 8h (8 Hours), 12h (12 Hours), 1d (1 Day), 2d (2 Days), 3d (3 Days)

Agent Role: Get

ParameterTypeRequiredDefaultDescription
Agent Role IDstringYesID of the agent role.

Agent Role: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Announcement: Create

ParameterTypeRequiredDefaultDescription
TitlestringYesTitle of the announcement.
Body (HTML) (bodyHtml)stringYesHTML content of the announcement.
VisibilityoptionsYeseveryoneWho can see the announcement.
Options: everyone (Everyone), agents_only (Agents Only), grouped_visibility (Agents and Groups)
Visible FromdateTimeYesWhen the announcement starts being visible.
Additional FieldscollectionNo{}Optional fields to set on the new announcement.
— Additional EmailsstringNoComma-separated email addresses.
— Department IDs (departments)stringNoComma-separated department IDs.
— Visible UntildateTimeNoWhen the announcement stops being visible.

Announcement: Delete

ParameterTypeRequiredDefaultDescription
Announcement IDstringYesID of the announcement.

Announcement: Get

ParameterTypeRequiredDefaultDescription
Announcement IDstringYesID of the announcement.

Announcement: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Announcement: Update

ParameterTypeRequiredDefaultDescription
Announcement IDstringYesID of the announcement.
Update FieldscollectionNo{}Fields to change on the announcement. At least one field is required.
— Additional EmailsstringNoComma-separated email addresses.
— Body (HTML) (body_html)stringNoHTML content of the announcement.
— Department IDs (departments)stringNoComma-separated department IDs.
— TitlestringNoNew title for the announcement.
— VisibilityoptionsNoeveryoneWho can see the announcement.
Options: everyone (Everyone), agents_only (Agents Only), grouped_visibility (Agents and Groups)

Asset Type: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName of the asset type.
Additional FieldscollectionNo{}Optional fields to set on the new asset type.
— DescriptionstringNoDescription of the asset type.
— Parent Asset Type IDstringNoID of the parent asset type.

Asset Type: Delete

ParameterTypeRequiredDefaultDescription
Asset Type ID (assetTypeId)stringYesID of the asset type.

Asset Type: Get

ParameterTypeRequiredDefaultDescription
Asset Type ID (assetTypeId)stringYesID of the asset type.

Asset Type: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Asset Type: Update

ParameterTypeRequiredDefaultDescription
Asset Type ID (assetTypeId)stringYesID of the asset type.
Update FieldscollectionNo{}Fields to change on the asset type. At least one field is required.
— DescriptionstringNoDescription of the asset type.
— NamestringNoNew name for the asset type.

Change: Create

ParameterTypeRequiredDefaultDescription
Requester ID (requesterId)stringYesID of the requester of the change.
SubjectstringYesSubject of the change.
Planned Start DatedateTimeYesWhen work on the change is planned to start.
Planned End DatedateTimeYesWhen work on the change is planned to finish.
Additional FieldscollectionNo{}Optional fields to set on the new change.
— Agent ID (agent_id)stringNoID of the agent the change is assigned to.
— Change TypeoptionsNo1The type of change.
Options: 1 (Minor), 2 (Standard), 3 (Major), 4 (Emergency)
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the change.
Options: 1 (Low), 2 (Medium), 3 (High)
— PriorityoptionsNo1Priority of the change.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— RiskoptionsNo1Risk level of the change.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Very High)
— StatusoptionsNo1Status of the change.
Options: 1 (Open), 2 (Planning), 3 (Approval), 4 (Pending Release), 5 (Pending Review), 6 (Closed)

Change: Delete

ParameterTypeRequiredDefaultDescription
Change IDstringYesID of the change.

Change: Get

ParameterTypeRequiredDefaultDescription
Change IDstringYesID of the change.

Change: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}Criteria the returned changes must match.
— Predefined FilteroptionsNomy_openOne of Freshservice’s built-in change views.
Options: closed (Closed), my_open (My Open), release_requested (Release Requested), requester_id (Requester ID), unassigned (Unassigned)
— Sort OrderoptionsNoascDirection to sort the results in.
Options: asc (Ascending), desc (Descending)
— Updated SincedateTimeNoOnly return changes updated on or after this time.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Change: Update

ParameterTypeRequiredDefaultDescription
Change IDstringYesID of the change.
Update FieldscollectionNo{}Fields to change on the change request. At least one field is required.
— Agent ID (agent_id)stringNoID of the agent the change is assigned to.
— Change TypeoptionsNo1The type of change.
Options: 1 (Minor), 2 (Standard), 3 (Major), 4 (Emergency)
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the change.
Options: 1 (Low), 2 (Medium), 3 (High)
— PriorityoptionsNo1Priority of the change.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— Requester ID (requester_id)stringNoID of the requester of the change.
— RiskoptionsNo1Risk level of the change.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Very High)
— StatusoptionsNo1Status of the change.
Options: 1 (Open), 2 (Planning), 3 (Approval), 4 (Pending Release), 5 (Pending Review), 6 (Closed)
— SubjectstringNoNew subject for the change.

Department: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName of the department.
Additional FieldscollectionNo{}Optional fields to set on the new department.
— DescriptionstringNoDescription of the department.
— DomainsstringNoComma-separated email domains.

Department: Delete

ParameterTypeRequiredDefaultDescription
Department ID (departmentId)stringYesID of the department.

Department: Get

ParameterTypeRequiredDefaultDescription
Department ID (departmentId)stringYesID of the department.

Department: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}Criteria the returned departments must match.
— NamestringNoFilter by department name.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Department: Update

ParameterTypeRequiredDefaultDescription
Department ID (departmentId)stringYesID of the department.
Update FieldscollectionNo{}Fields to change on the department. At least one field is required.
— DescriptionstringNoDescription of the department.
— DomainsstringNoComma-separated email domains.
— NamestringNoNew name for the department.

Location: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName of the location.
Additional FieldscollectionNo{}Optional fields to set on the new location.
— Address Line 1stringNoFirst line of the street address.
— Address Line 2stringNoSecond line of the street address.
— CitystringNoCity of the location.
— StatestringNoState or region of the location.
— CountrystringNoCountry of the location.
— Zip CodestringNoPostal code of the location.

Location: Delete

ParameterTypeRequiredDefaultDescription
Location ID (locationId)stringYesID of the location.

Location: Get

ParameterTypeRequiredDefaultDescription
Location ID (locationId)stringYesID of the location.

Location: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Location: Update

ParameterTypeRequiredDefaultDescription
Location ID (locationId)stringYesID of the location.
Update FieldscollectionNo{}Fields to change on the location. At least one field is required.
— NamestringNoNew name for the location.
— Address Line 1stringNoFirst line of the street address.
— Address Line 2stringNoSecond line of the street address.
— CitystringNoCity of the location.
— StatestringNoState or region of the location.
— CountrystringNoCountry of the location.
— Zip CodestringNoPostal code of the location.

Problem: Create

ParameterTypeRequiredDefaultDescription
SubjectstringYesSubject of the problem.
Requester ID (requesterId)stringYesID of the problem initiator.
Due By (dueBy)dateTimeNoDate when problem is due to be solved.
Additional FieldscollectionNo{}Optional fields to set on the new problem.
— Agent ID (agent_id)stringNoID of the agent the problem is assigned to.
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the problem.
Options: 1 (Low), 2 (Medium), 3 (High)
— PriorityoptionsNo1Priority of the problem.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— StatusoptionsNo1Status of the problem.
Options: 1 (Open), 2 (Change Requested), 3 (Closed)

Problem: Delete

ParameterTypeRequiredDefaultDescription
Problem IDstringYesID of the problem.

Problem: Get

ParameterTypeRequiredDefaultDescription
Problem IDstringYesID of the problem.

Problem: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Problem: Update

ParameterTypeRequiredDefaultDescription
Problem IDstringYesID of the problem.
Update FieldscollectionNo{}Fields to change on the problem. At least one field is required.
— Agent ID (agent_id)stringNoID of the agent the problem is assigned to.
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Due By (due_by)dateTimeNoDate when problem is due to be solved.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the problem.
Options: 1 (Low), 2 (Medium), 3 (High)
— PriorityoptionsNo1Priority of the problem.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— Requester ID (requester_id)stringNoID of the problem initiator.
— StatusoptionsNo1Status of the problem.
Options: 1 (Open), 2 (Change Requested), 3 (Closed)
— SubjectstringNoNew subject for the problem.

Product: Create

ParameterTypeRequiredDefaultDescription
Asset Type ID (assetTypeId)stringYesID of the asset type for this product.
NamestringYesName of the product.
Additional FieldscollectionNo{}Optional fields to set on the new product.
— DescriptionstringNoHTML supported.
— ManufacturerstringNoManufacturer of the product.
— Mode of ProcurementoptionsNoBuyHow the product is procured.
Options: Buy, Lease, Both
— StatusoptionsNoIn ProductionLifecycle status of the product.
Options: In Production, In Pipeline, Retired

Product: Delete

ParameterTypeRequiredDefaultDescription
Product IDstringYesID of the product.

Product: Get

ParameterTypeRequiredDefaultDescription
Product IDstringYesID of the product.

Product: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Product: Update

ParameterTypeRequiredDefaultDescription
Product IDstringYesID of the product.
Update FieldscollectionNo{}Fields to change on the product.
— Asset Type ID (asset_type_id)stringNoID of the asset type for this product.
— DescriptionstringNoHTML supported.
— ManufacturerstringNoManufacturer of the product.
— Mode of ProcurementoptionsNoBuyHow the product is procured.
Options: Buy, Lease, Both
— NamestringNoNew name for the product.
— StatusoptionsNoIn ProductionLifecycle status of the product.
Options: In Production, In Pipeline, Retired

Release: Create

ParameterTypeRequiredDefaultDescription
SubjectstringYesSubject of the release.
Release Type (releaseType)optionsNo1The type of release.
Options: 1 (Minor), 2 (Standard), 3 (Major), 4 (Emergency)
PriorityoptionsNo1Priority of the release.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
StatusoptionsNo1Status of the release.
Options: 1 (Open), 2 (On Hold), 3 (In Progress), 4 (Incomplete), 5 (Completed)
Planned Start DatedateTimeYesWhen work on the release is planned to start.
Planned End DatedateTimeYesWhen work on the release is planned to finish.
Additional FieldscollectionNo{}Optional fields to set on the new release.
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Group IDstringNoID of the agent group.

Release: Delete

ParameterTypeRequiredDefaultDescription
Release IDstringYesID of the release.

Release: Get

ParameterTypeRequiredDefaultDescription
Release IDstringYesID of the release.

Release: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Release: Update

ParameterTypeRequiredDefaultDescription
Release IDstringYesID of the release.
Update FieldscollectionNo{}Fields to change on the release.
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— Group IDstringNoID of the agent group.
— PriorityoptionsNo1Priority of the release.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— Release Type (release_type)optionsNo1The type of release.
Options: 1 (Minor), 2 (Standard), 3 (Major), 4 (Emergency)
— StatusoptionsNo1Status of the release.
Options: 1 (Open), 2 (On Hold), 3 (In Progress), 4 (Incomplete), 5 (Completed)
— SubjectstringNoNew subject for the release.

Requester: Create

ParameterTypeRequiredDefaultDescription
First Name (firstName)stringYesFirst name of the requester.
Primary Email (primaryEmail)stringNoPrimary email address of the requester.
Additional FieldscollectionNo{}Optional fields to set on the new requester.
— AddressstringNoStreet address of the requester.
— Background InformationstringNoBackground information about the requester.
— Department IDs (department_ids)stringNoComma-separated department IDs.
— Job TitlestringNoJob title of the requester.
— LanguageoptionsNoenDisplay language for the requester.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoLast name of the requester.
— Location ID (location_id)stringNoID of the requester’s location.
— Mobile PhonestringNoMobile phone number.
— Secondary EmailsstringNoComma-separated secondary email addresses.
— Time FormatoptionsNo12hClock format shown to the requester.
Options: 12h (12-Hour), 24h (24-Hour)
— Work PhonestringNoWork phone number.

Requester: Delete

ParameterTypeRequiredDefaultDescription
Requester ID (requesterId)stringYesID of the requester.

Requester: Get

ParameterTypeRequiredDefaultDescription
Requester ID (requesterId)stringYesID of the requester.

Requester: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}Criteria the returned requesters must match.
— Department ID (department_id)stringNoFilter by department ID.
— First Name (first_name)stringNoFilter by first name.
— Job TitlestringNoFilter by job title.
— LanguageoptionsNoFilter by display language.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoFilter by last name.
— Location ID (location_id)stringNoFilter by location ID.
— Mobile PhonestringNoFilter by mobile phone number.
— Primary Email (primary_email)stringNoFilter by primary email address.
— Work PhonestringNoFilter by work phone number.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Requester: Update

ParameterTypeRequiredDefaultDescription
Requester ID (requesterId)stringYesID of the requester.
Update FieldscollectionNo{}Fields to change on the requester. At least one field is required.
— AddressstringNoStreet address of the requester.
— Background InformationstringNoBackground information about the requester.
— Department IDs (department_ids)stringNoComma-separated department IDs.
— First Name (first_name)stringNoFirst name of the requester.
— Job TitlestringNoJob title of the requester.
— LanguageoptionsNoDisplay language for the requester.
Options: en (English), ar (Arabic), ca (Catalan), cs (Czech), cy-GB (Welsh), da (Danish), de (German), es (Spanish), es-LA (Spanish — Latin America), et (Estonian), fi (Finnish), fr (French), he (Hebrew), hu (Hungarian), id (Indonesian), it (Italian), ja-JP (Japanese), ko (Korean), LV (Latvian), nb-NO (Norwegian), nl (Dutch), pl (Polish), pt (Portuguese), pt-BR (Portuguese — Brazil), pt-PT (Portuguese — Portugal), ru-RU (Russian), sk (Slovak), sl (Slovenian), sv-SE (Swedish), th (Thai), tr (Turkish), UK (Ukrainian), vi (Vietnamese), zh-CN (Chinese Simplified), zh-TW (Chinese Traditional)
— Last NamestringNoLast name of the requester.
— Location ID (location_id)stringNoID of the requester’s location.
— Mobile PhonestringNoMobile phone number.
— Primary Email (primary_email)stringNoPrimary email address of the requester.
— Secondary EmailsstringNoComma-separated secondary emails.
— Time FormatoptionsNo12hClock format shown to the requester.
Options: 12h (12-Hour), 24h (24-Hour)
— Work PhonestringNoWork phone number.

Requester Group: Create

ParameterTypeRequiredDefaultDescription
NamestringYesName of the requester group.
Additional FieldscollectionNo{}Optional fields to set on the new requester group.
— DescriptionstringNoDescription of the requester group.

Requester Group: Delete

ParameterTypeRequiredDefaultDescription
Requester Group IDstringYesID of the requester group.

Requester Group: Get

ParameterTypeRequiredDefaultDescription
Requester Group IDstringYesID of the requester group.

Requester Group: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Requester Group: Update

ParameterTypeRequiredDefaultDescription
Requester Group IDstringYesID of the requester group.
Update FieldscollectionNo{}Fields to change on the requester group. At least one field is required.
— DescriptionstringNoDescription of the requester group.
— NamestringNoNew name for the requester group.

Software: Create

ParameterTypeRequiredDefaultDescription
Application Type (applicationType)optionsYesdesktopHow the application is delivered.
Options: desktop (Desktop), mobile (Mobile), saas (SaaS)
NamestringYesName of the software application.
Additional FieldscollectionNo{}Optional fields to set on the new software application.
— DescriptionstringNoDescription of the application.
— NotesstringNoFree-form notes about the application.
— StatusoptionsNomanagedManagement status of the application. Pick one of the listed values — the shipped default is not one of them.
Options: disabled (Disabled), ignored (Ignored), needs review (Needs Review), restricted (Restricted)

Software: Delete

ParameterTypeRequiredDefaultDescription
Software IDstringYesID of the software application.

Software: Get

ParameterTypeRequiredDefaultDescription
Software IDstringYesID of the software application.

Software: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Software: Update

ParameterTypeRequiredDefaultDescription
Software IDstringYesID of the software application.
Update FieldscollectionNo{}Fields to change on the software application. At least one field is required.
— Application Type (application_type)optionsNodesktopHow the application is delivered.
Options: desktop (Desktop), mobile (Mobile), saas (SaaS)
— DescriptionstringNoDescription of the application.
— NamestringNoNew name for the software application.
— NotesstringNoFree-form notes about the application.
— StatusoptionsNomanagedManagement status of the application. Pick one of the listed values — the shipped default is not one of them.
Options: disabled (Disabled), ignored (Ignored), needs review (Needs Review), restricted (Restricted)

Ticket: Create

ParameterTypeRequiredDefaultDescription
EmailstringYesEmail address of the ticket author.
SubjectstringYesSubject of the ticket.
DescriptionstringNoDescription of the ticket (HTML supported).
PriorityoptionsNo1Priority of the ticket.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
StatusoptionsNo2Status of the ticket.
Options: 2 (Open), 3 (Pending), 4 (Resolved), 5 (Closed)
Additional FieldscollectionNo{}Optional fields to set on the new ticket.
— CC EmailsstringNoComma-separated email addresses to CC.
— Department ID (department_id)stringNoID of the department.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the ticket.
Options: 1 (Low), 2 (Medium), 3 (High)
— NamestringNoName of the ticket author.
— Requester ID (requester_id)stringNoID of the requester.

Ticket: Delete

ParameterTypeRequiredDefaultDescription
Ticket IDstringYesID of the ticket.

Ticket: Get

ParameterTypeRequiredDefaultDescription
Ticket IDstringYesID of the ticket.

Ticket: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}Criteria the returned tickets must match.
— Agent ID (agent_id)stringNoFilter by assigned agent ID.
— Group IDstringNoFilter by group ID.
— ImpactoptionsNo1Filter by business impact.
Options: 1 (Low), 2 (Medium), 3 (High)
— PriorityoptionsNo1Filter by priority.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— StatusoptionsNo2Filter by status.
Options: 2 (Open), 3 (Pending), 4 (Resolved), 5 (Closed)
— Created OndateTimeNoFilter by creation date.
— Due By (due_by)dateTimeNoFilter by due date.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Ticket: Update

ParameterTypeRequiredDefaultDescription
Ticket IDstringYesID of the ticket.
Update FieldscollectionNo{}Fields to change on the ticket. At least one field is required.
— Department ID (department_id)stringNoID of the department.
— DescriptionstringNoHTML supported.
— EmailstringNoEmail address of the ticket author.
— Group IDstringNoID of the agent group.
— ImpactoptionsNo1Business impact of the ticket.
Options: 1 (Low), 2 (Medium), 3 (High)
— NamestringNoName of the ticket author.
— PhonestringNoPhone number of the ticket author.
— PriorityoptionsNo1Priority of the ticket.
Options: 1 (Low), 2 (Medium), 3 (High), 4 (Urgent)
— StatusoptionsNo2Status of the ticket.
Options: 2 (Open), 3 (Pending), 4 (Resolved), 5 (Closed)
— SubjectstringNoNew subject for the ticket.

All Operations

ParameterTypeRequiredDefaultDescription
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

One output item per input item — no operation fans out. The incoming item JSON always passes through, and binary data on the input item is forwarded unchanged.

  • getAll operations put the whole list on a single output item as results, alongside totalCount (the number of records returned). Use a Split Out node on results when you want one item per record downstream.
  • create, get and update unwrap the record from the API envelope and merge its fields onto the item JSON at the top level, so an ID lands at {{ $json.id }}. Fields returned by Freshservice overwrite same-named fields already on the item.
  • delete returns no body, so the node writes success: true onto the item.

A Get Many result looks like this:

{
  "results": [
    { "id": 21000123456, "subject": "Login Issue", "status": 2, "priority": 2 },
    { "id": 21000123457, "subject": "VPN Down", "status": 3, "priority": 3 }
  ],
  "totalCount": 2
}

Reference the data downstream by expression — {{ $json.results }} after a Get Many, {{ $json.id }} after a create, get or update, and {{ $json.success }} after a delete.

Usage Examples

  • Create a ticket in Freshservice with subject, description, priority, and status.
  • List all agents in Freshservice filtered by department.
  • Update a change request status in Freshservice.
  • Delete a department in Freshservice.
  • Get all software applications from Freshservice.

Example Configuration

Create a ticket from an incoming request:

{
  "type": "freshservice",
  "parameters": {
    "resource": "ticket",
    "operation": "create",
    "email": "{{ $json.reporterEmail }}",
    "subject": "{{ $json.title }}",
    "description": "<p>{{ $json.body }}</p>",
    "priority": 3,
    "status": 2,
    "additionalFields": {
      "cc_emails": "manager@company.com",
      "department_id": "21000263162",
      "group_id": "21000188395",
      "impact": 2
    }
  }
}

List the 25 most relevant open, high-priority tickets:

{
  "type": "freshservice",
  "parameters": {
    "resource": "ticket",
    "operation": "getAll",
    "returnAll": false,
    "limit": 25,
    "filters": {
      "status": 2,
      "priority": 3,
      "group_id": "21000188395"
    }
  }
}

Raise a change request for a maintenance window:

{
  "type": "freshservice",
  "parameters": {
    "resource": "change",
    "operation": "create",
    "requesterId": "{{ $json.requesterId }}",
    "subject": "Server Maintenance",
    "plannedStartDate": "2024-06-15T02:00:00Z",
    "plannedEndDate": "2024-06-15T06:00:00Z",
    "additionalFields": {
      "change_type": 2,
      "priority": 2,
      "risk": 2,
      "status": 1,
      "description": "Routine server maintenance and updates"
    }
  }
}

Onboard an agent with a scoped role:

{
  "type": "freshservice",
  "parameters": {
    "resource": "agent",
    "operation": "create",
    "email": "{{ $json.workEmail }}",
    "firstName": "{{ $json.firstName }}",
    "roles": [
      {
        "role": "21000150301",
        "assignment_scope": "specified_groups",
        "groups": ["21000188395", "21000188396"]
      }
    ],
    "additionalFields": {
      "last_name": "{{ $json.lastName }}",
      "job_title": "Support Engineer",
      "department_ids": "21000263162",
      "location_id": "21000159890",
      "language": "en",
      "time_format": "24h"
    }
  }
}

Rename a department and refresh its description:

{
  "type": "freshservice",
  "parameters": {
    "resource": "department",
    "operation": "update",
    "departmentId": "{{ $json.departmentId }}",
    "updateFields": {
      "name": "IT Service Desk",
      "description": "Tier 1 and Tier 2 support",
      "domains": "company.com,subsidiary.com"
    }
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Use Freshservice to manage IT service tickets, changes, problems, releases, agents, requesters, departments, and more via the Freshservice ITSM API.

Key Considerations

  • Date Format: Always use ISO 8601 format (e.g., "2024-01-01T00:00:00Z")
  • Resource Dependencies: Some operations require existing resources (e.g., department_id must exist)
  • Conditional Parameters: Parameters only appear based on resource and operation combinations
  • ID Parameters: Required for get, update, and delete operations
  • Pagination: Use returnAll: false with limit for controlled result sets

Frequently asked questions

What credentials do I need to connect this node to Freshservice?

You need a Freshservice API credential configured in BusyBot (type: freshserviceApi). This uses HTTP Basic authentication with your Freshservice API key. The node targets your specific subdomain at https://{domain}.freshservice.com/api/v2, so you'll also need to supply your account's domain when setting up the credential.

What happens when an API call fails — does it break the whole workflow?

No. The node has two distinct outputs: Output and Error. Successful responses flow through the Output path, while failures are routed to the Error path. This means you can wire up error-handling steps (like sending a Slack alert or logging the failure) without stopping the rest of your workflow.

What date format does the node expect for fields like due dates or scheduled times?

All date and time values must be in ISO 8601 format, for example 2024-01-15T09:00:00Z. Sending dates in other formats (like MM/DD/YYYY) will likely cause the API call to fail or silently store an incorrect value. This applies to any resource that accepts date fields, including tickets and changes.

Do I need to create related records first before referencing them in a new ticket or change?

Yes. Fields like department_id or requester_id must reference records that already exist in Freshservice. If you pass an ID for a department or agent that doesn't exist, the API will reject the request. Build your workflow to look up or create the dependency first, then pass the returned ID into the subsequent operation.

The node has 90 parameters — how do I know which ones apply to what I'm doing?

Parameters are conditional: they only appear in the node editor based on the resource (e.g. ticket, change, agent) and operation (create, get, update, delete) you select. You won't see ticket-specific fields when you're working with departments, for instance. For list operations, use the returnAll toggle set to false combined with a limit value to control how many records are returned rather than fetching your entire dataset at once.

Build with the Freshservice node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Freshservice API credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.