Search all guides

Reference · Tools

Freshservice integration

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.

Works as
Action
Tool name
freshservice
Parameters
90
Outputs
Output, Error
Credentials
Freshservice API
Official docs
Freshservice docs api.freshservice.com

What you can build with Freshservice

  • 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.

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.

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

Agent: Create

ParameterTypeRequiredDefaultDescription
EmailstringYes—
First NamestringYes—
RolesjsonYes[]JSON array of role objects. Each: { “role”: , “assignment_scope”: “entire_helpdesk”|“member_groups”|“specified_groups”|“assigned_items”, “groups”: [groupId, …] }. Groups required only for specified_groups scope.
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— AddressstringNo—
— Background InformationstringNo—
— Department IDsstringNo—Comma-separated department IDs.
— Job TitlestringNo—
— LanguageoptionsNoen
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Member Of (Group IDs)stringNo—Comma-separated group IDs.
— Mobile PhonestringNo—
— Observer Of (Group IDs)stringNo—Comma-separated group IDs.
— Scoreboard LeveloptionsNo1
Options: 1, 2, 3, 4, 5, 6
— Time FormatoptionsNo12h
Options: 12h, 24h
— Work PhonestringNo—

Agent: Delete

ParameterTypeRequiredDefaultDescription
Agent IDstringYes—ID of the agent.

Agent: Get

ParameterTypeRequiredDefaultDescription
Agent IDstringYes—ID of the agent.

Agent: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}
Options: 1, 2, closed, asc
— Department IDstringNo—
— EmailstringNo—
— First NamestringNo—
— Job TitlestringNo—
— LanguageoptionsNo—
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Mobile PhonestringNo—
— Work PhonestringNo—
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 IDstringYes—ID of the agent.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— AddressstringNo—
— Background InformationstringNo—
— Department IDsstringNo—Comma-separated department IDs.
— EmailstringNo—
— First NamestringNo—
— Job TitlestringNo—
— LanguageoptionsNo—
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Member Of (Group IDs)stringNo—Comma-separated group IDs.
— Mobile PhonestringNo—
— Observer Of (Group IDs)stringNo—Comma-separated group IDs.
— Scoreboard LeveloptionsNo1
Options: 1, 2, 3, 4, 5, 6
— Time FormatoptionsNo12h
Options: 12h, 24h
— Work PhonestringNo—

Agent Group: Create

ParameterTypeRequiredDefaultDescription
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—
— Escalate To (Agent ID)stringNo—Agent ID to escalate to.
— Members (Agent IDs)stringNo—Comma-separated agent IDs.
— Observers (Agent IDs)stringNo—Comma-separated agent IDs.
— Unassigned ForoptionsNo30m
Options: 30m, 1h, 2h, 8h, 12h, 1d, 2d, 3d

Agent Group: Delete

ParameterTypeRequiredDefaultDescription
Agent Group IDstringYes—ID of the agent group.

Agent Group: Get

ParameterTypeRequiredDefaultDescription
Agent Group IDstringYes—ID 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 IDstringYes—ID of the agent group.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— DescriptionstringNo—
— Escalate To (Agent ID)stringNo—
— Members (Agent IDs)stringNo—Comma-separated agent IDs.
— NamestringNo—
— Observers (Agent IDs)stringNo—Comma-separated agent IDs.
— Unassigned ForoptionsNo30m
Options: 30m, 1h, 2h, 8h, 12h, 1d, 2d, 3d

Agent Role: Get

ParameterTypeRequiredDefaultDescription
Agent Role IDstringYes—ID 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
TitlestringYes—
Body (HTML)stringYes—HTML content of the announcement.
VisibilityoptionsYeseveryone
Options: everyone, agents_only, grouped_visibility
Visible FromdateTimeYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— Additional EmailsstringNo—Comma-separated email addresses.
— Department IDsstringNo—Comma-separated department IDs.
— Visible UntildateTimeNo—

Announcement: Delete

ParameterTypeRequiredDefaultDescription
Announcement IDstringYes—ID of the announcement.

Announcement: Get

ParameterTypeRequiredDefaultDescription
Announcement IDstringYes—ID 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 IDstringYes—ID of the announcement.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Additional EmailsstringNo—
— Body (HTML)stringNo—
— Department IDsstringNo—Comma-separated department IDs.
— TitlestringNo—
— VisibilityoptionsNoeveryone
Options: everyone, agents_only, grouped_visibility

Asset Type: Create

ParameterTypeRequiredDefaultDescription
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—
— Parent Asset Type IDstringNo—

Asset Type: Delete

ParameterTypeRequiredDefaultDescription
Asset Type IDstringYes—ID of the asset type.

Asset Type: Get

ParameterTypeRequiredDefaultDescription
Asset Type IDstringYes—ID 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 IDstringYes—ID of the asset type.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— DescriptionstringNo—
— NamestringNo—

Change: Create

ParameterTypeRequiredDefaultDescription
Requester IDstringYes—ID of the requester.
SubjectstringYes—
Planned Start DatedateTimeYes—
Planned End DatedateTimeYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— Agent IDstringNo—
— Change TypeoptionsNo1
Options: 1, 2, 3, 4
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Group IDstringNo—
— ImpactoptionsNo1
Options: 1, 2, 3
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— RiskoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo1
Options: 1, 2, 3, 4, 5, 6

Change: Delete

ParameterTypeRequiredDefaultDescription
Change IDstringYes—ID of the change.

Change: Get

ParameterTypeRequiredDefaultDescription
Change IDstringYes—ID of the change.

Change: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}
Options: 1, 2, closed, asc
— Predefined FilteroptionsNomy_open
Options: closed, my_open, release_requested, requester_id, unassigned
— Sort OrderoptionsNoasc
Options: asc, desc
— Updated SincedateTimeNo—
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 IDstringYes—ID of the change.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Agent IDstringNo—
— Change TypeoptionsNo1
Options: 1, 2, 3, 4
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Group IDstringNo—
— ImpactoptionsNo1
Options: 1, 2, 3
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— Requester IDstringNo—
— RiskoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo1
Options: 1, 2, 3, 4, 5, 6
— SubjectstringNo—

Department: Create

ParameterTypeRequiredDefaultDescription
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—
— DomainsstringNo—Comma-separated email domains.

Department: Delete

ParameterTypeRequiredDefaultDescription
Department IDstringYes—ID of the department.

Department: Get

ParameterTypeRequiredDefaultDescription
Department IDstringYes—ID of the department.

Department: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}
Options: 1, 2, closed, asc
— NamestringNo—
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 IDstringYes—ID of the department.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— DescriptionstringNo—
— DomainsstringNo—Comma-separated email domains.
— NamestringNo—

Location: Create

ParameterTypeRequiredDefaultDescription
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— Address Line 1stringNo—
— Address Line 2stringNo—
— CitystringNo—
— StatestringNo—
— CountrystringNo—
— Zip CodestringNo—

Location: Delete

ParameterTypeRequiredDefaultDescription
Location IDstringYes—ID of the location.

Location: Get

ParameterTypeRequiredDefaultDescription
Location IDstringYes—ID 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 IDstringYes—ID of the location.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— NamestringNo—
— Address Line 1stringNo—
— Address Line 2stringNo—
— CitystringNo—
— StatestringNo—
— CountrystringNo—
— Zip CodestringNo—

Problem: Create

ParameterTypeRequiredDefaultDescription
SubjectstringYes—
Requester IDstringYes—ID of the requester.
Due BydateTimeNo—Date when problem is due to be solved.
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— Agent IDstringNo—
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Group IDstringNo—
— ImpactoptionsNo1
Options: 1, 2, 3
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo1
Options: 1, 2, 3

Problem: Delete

ParameterTypeRequiredDefaultDescription
Problem IDstringYes—ID of the problem.

Problem: Get

ParameterTypeRequiredDefaultDescription
Problem IDstringYes—ID 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 IDstringYes—ID of the problem.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Agent IDstringNo—
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Due BydateTimeNo—
— Group IDstringNo—
— ImpactoptionsNo1
Options: 1, 2, 3
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— Requester IDstringNo—
— StatusoptionsNo1
Options: 1, 2, 3
— SubjectstringNo—

Product: Create

ParameterTypeRequiredDefaultDescription
Asset Type IDstringYes—ID of the asset type.
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—HTML supported.
— ManufacturerstringNo—
— Mode of ProcurementoptionsNoBuy
Options: Buy, Lease, Both
— StatusoptionsNoIn Production
Options: In Production, In Pipeline, Retired

Product: Delete

ParameterTypeRequiredDefaultDescription
Product IDstringYes—ID of the product.

Product: Get

ParameterTypeRequiredDefaultDescription
Product IDstringYes—ID 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 IDstringYes—ID of the product.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Asset Type IDstringNo—
— DescriptionstringNo—HTML supported.
— ManufacturerstringNo—
— Mode of ProcurementoptionsNoBuy
Options: Buy, Lease, Both
— NamestringNo—
— StatusoptionsNoIn Production
Options: In Production, In Pipeline, Retired

Release: Create

ParameterTypeRequiredDefaultDescription
SubjectstringYes—
Release TypeoptionsNo1
Options: 1, 2, 3, 4
PriorityoptionsNo1
Options: 1, 2, 3, 4
Status (releaseStatus)optionsNo1Status of the new release. Freshservice release statuses are 1 (Open), 2 (On Hold), 3 (In Progress), 4 (Incomplete) and 5 (Completed).
Options: 1, 2, 3, 4, 5
Planned Start DatedateTimeYes—
Planned End DatedateTimeYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Group IDstringNo—

Release: Delete

ParameterTypeRequiredDefaultDescription
Release IDstringYes—ID of the release.

Release: Get

ParameterTypeRequiredDefaultDescription
Release IDstringYes—ID 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 IDstringYes—ID of the release.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— Group IDstringNo—
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— Release TypeoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo1
Options: 1, 2, 3, 4, 5
— SubjectstringNo—

Requester: Create

ParameterTypeRequiredDefaultDescription
First NamestringYes—
Primary EmailstringNo—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— AddressstringNo—
— Background InformationstringNo—
— Department IDsstringNo—Comma-separated department IDs.
— Job TitlestringNo—
— LanguageoptionsNoen
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Mobile PhonestringNo—
— Secondary EmailsstringNo—Comma-separated secondary email addresses.
— Time FormatoptionsNo12h
Options: 12h, 24h
— Work PhonestringNo—

Requester: Delete

ParameterTypeRequiredDefaultDescription
Requester IDstringYes—ID of the requester.

Requester: Get

ParameterTypeRequiredDefaultDescription
Requester IDstringYes—ID of the requester.

Requester: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}
Options: 1, 2, closed, asc
— Department IDstringNo—
— First NamestringNo—
— Job TitlestringNo—
— LanguageoptionsNo—
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Mobile PhonestringNo—
— Primary EmailstringNo—
— Work PhonestringNo—
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 IDstringYes—ID of the requester.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— AddressstringNo—
— Background InformationstringNo—
— Department IDsstringNo—Comma-separated department IDs.
— First NamestringNo—
— Job TitlestringNo—
— LanguageoptionsNo—
Options: en, ar, ca, cs, cy-GB, da, de, es, es-LA, et, fi, fr, he, hu, id, it, ja-JP, ko, LV, nb-NO, nl, pl, pt, pt-BR, pt-PT, ru-RU, sk, sl, sv-SE, th, tr, UK, vi, zh-CN, zh-TW
— Last NamestringNo—
— Location IDstringNo—
— Mobile PhonestringNo—
— Primary EmailstringNo—
— Secondary EmailsstringNo—Comma-separated secondary emails.
— Time FormatoptionsNo12h
Options: 12h, 24h
— Work PhonestringNo—

Requester Group: Create

ParameterTypeRequiredDefaultDescription
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—

Requester Group: Delete

ParameterTypeRequiredDefaultDescription
Requester Group IDstringYes—ID of the requester group.

Requester Group: Get

ParameterTypeRequiredDefaultDescription
Requester Group IDstringYes—ID 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 IDstringYes—ID of the requester group.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— DescriptionstringNo—
— NamestringNo—

Software: Create

ParameterTypeRequiredDefaultDescription
Application TypeoptionsYesdesktop
Options: desktop, mobile, saas
NamestringYes—
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— DescriptionstringNo—
— NotesstringNo—
— StatusoptionsNomanaged
Options: disabled, ignored, needs review, restricted

Software: Delete

ParameterTypeRequiredDefaultDescription
Software IDstringYes—ID of the software application.

Software: Get

ParameterTypeRequiredDefaultDescription
Software IDstringYes—ID 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 IDstringYes—ID of the software application.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Application TypeoptionsNodesktop
Options: desktop, mobile, saas
— DescriptionstringNo—
— NamestringNo—
— NotesstringNo—
— StatusoptionsNomanaged
Options: disabled, ignored, needs review, restricted

Ticket: Create

ParameterTypeRequiredDefaultDescription
EmailstringYes—Email address of the ticket author.
SubjectstringYes—Subject of the ticket.
DescriptionstringNo—Description of the ticket (HTML supported).
PriorityoptionsNo1
Options: 1, 2, 3, 4
Status (ticketStatus)optionsNo2Status of the new ticket. Freshservice ticket statuses are 2 (Open), 3 (Pending), 4 (Resolved) and 5 (Closed).
Options: 2, 3, 4, 5
Additional FieldscollectionNo{}
Options: 1, 12h, 30m, Buy, In Production, disabled
— CC EmailsstringNo—Comma-separated email addresses to CC.
— Department IDstringNo—ID of the department.
— Group IDstringNo—ID of the agent group.
— ImpactoptionsNo1
Options: 1, 2, 3
— NamestringNo—Name of the ticket author.
— Requester IDstringNo—ID of the requester.

Ticket: Delete

ParameterTypeRequiredDefaultDescription
Ticket IDstringYes—ID of the ticket.

Ticket: Get

ParameterTypeRequiredDefaultDescription
Ticket IDstringYes—ID of the ticket.

Ticket: Get Many

ParameterTypeRequiredDefaultDescription
FilterscollectionNo{}
Options: 1, 2, closed, asc
— Agent IDstringNo—Filter by assigned agent ID.
— Group IDstringNo—Filter by group ID.
— ImpactoptionsNo1
Options: 1, 2, 3
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo2
Options: 2, 3, 4, 5
— Created OndateTimeNo—
— Due BydateTimeNo—
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 IDstringYes—ID of the ticket.
Update FieldscollectionNo{}
Options: 1, 2, 12h, 30m, everyone, Buy, In Production, desktop, disabled
— Department IDstringNo—
— DescriptionstringNo—HTML supported.
— EmailstringNo—
— Group IDstringNo—
— ImpactoptionsNo1
Options: 1, 2, 3
— NamestringNo—
— PhonestringNo—
— PriorityoptionsNo1
Options: 1, 2, 3, 4
— StatusoptionsNo2
Options: 2, 3, 4, 5
— SubjectstringNo—

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.

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,
    "ticketStatus": 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

This tool manages IT service objects like tickets, changes, and agents in Freshservice. It is ideal for creating, updating, deleting, and retrieving specific ITSM records or lists of records. It produces confirmation of actions, or the requested Freshservice object data.

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 Freshservice

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 reviewed . Spotted something wrong? Tell us.