<!-- BusyBot node reference — https://busybot.net/tools/freshservice/ -->

> Node: Freshservice (`freshservice`) · Action · v1
> Category: Productivity · Credentials: Freshservice API (`freshserviceApi`)
> Updated: 2026-08-16

# 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

| Direction | Port(s) |
|-----------|--------|
| Input | `Input` |
| Output | `Output`, `Error` |

## Credentials

This tool requires **Freshservice API** credentials.
See the [Credentials Guide](https://busybot.net/credentials/freshservice-api/) for setup instructions.

### Resources

| Resource | Value |
|----------|-------|
| Agent | `agent` |
| Agent Group | `agentGroup` |
| Agent Role | `agentRole` |
| Announcement | `announcement` |
| Asset Type | `assetType` |
| Change | `change` |
| Department | `department` |
| Location | `location` |
| Problem | `problem` |
| Product | `product` |
| Release | `release` |
| Requester | `requester` |
| Requester Group | `requesterGroup` |
| Software | `software` |
| Ticket | `ticket` |

### Operations

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

| Resource | Operation | Value | Description |
|----------|-----------|-------|-------------|
| Agent | Create | `create` | Create an agent |
| Agent | Delete | `delete` | Delete an agent by ID |
| Agent | Get | `get` | Retrieve a single agent by ID |
| Agent | Get Many | `getAll` | List agents |
| Agent | Update | `update` | Update an existing agent |
| Agent Group | Create | `create` | Create an agent group |
| Agent Group | Delete | `delete` | Delete an agent group by ID |
| Agent Group | Get | `get` | Retrieve a single agent group by ID |
| Agent Group | Get Many | `getAll` | List agent groups |
| Agent Group | Update | `update` | Update an existing agent group |
| Agent Role | Get | `get` | Retrieve a single agent role by ID |
| Agent Role | Get Many | `getAll` | List agent roles |
| Announcement | Create | `create` | Create an announcement |
| Announcement | Delete | `delete` | Delete an announcement by ID |
| Announcement | Get | `get` | Retrieve a single announcement by ID |
| Announcement | Get Many | `getAll` | List announcements |
| Announcement | Update | `update` | Update an existing announcement |
| Asset Type | Create | `create` | Create an asset type |
| Asset Type | Delete | `delete` | Delete an asset type by ID |
| Asset Type | Get | `get` | Retrieve a single asset type by ID |
| Asset Type | Get Many | `getAll` | List asset types |
| Asset Type | Update | `update` | Update an existing asset type |
| Change | Create | `create` | Create a change request |
| Change | Delete | `delete` | Delete a change by ID |
| Change | Get | `get` | Retrieve a single change by ID |
| Change | Get Many | `getAll` | List changes |
| Change | Update | `update` | Update an existing change |
| Department | Create | `create` | Create a department |
| Department | Delete | `delete` | Delete a department by ID |
| Department | Get | `get` | Retrieve a single department by ID |
| Department | Get Many | `getAll` | List departments |
| Department | Update | `update` | Update an existing department |
| Location | Create | `create` | Create a location |
| Location | Delete | `delete` | Delete a location by ID |
| Location | Get | `get` | Retrieve a single location by ID |
| Location | Get Many | `getAll` | List locations |
| Location | Update | `update` | Update an existing location |
| Problem | Create | `create` | Create a problem |
| Problem | Delete | `delete` | Delete a problem by ID |
| Problem | Get | `get` | Retrieve a single problem by ID |
| Problem | Get Many | `getAll` | List problems |
| Problem | Update | `update` | Update an existing problem |
| Product | Create | `create` | Create a product |
| Product | Delete | `delete` | Delete a product by ID |
| Product | Get | `get` | Retrieve a single product by ID |
| Product | Get Many | `getAll` | List products |
| Product | Update | `update` | Update an existing product |
| Release | Create | `create` | Create a release |
| Release | Delete | `delete` | Delete a release by ID |
| Release | Get | `get` | Retrieve a single release by ID |
| Release | Get Many | `getAll` | List releases |
| Release | Update | `update` | Update an existing release |
| Requester | Create | `create` | Create a requester |
| Requester | Delete | `delete` | Delete a requester by ID |
| Requester | Get | `get` | Retrieve a single requester by ID |
| Requester | Get Many | `getAll` | List requesters |
| Requester | Update | `update` | Update an existing requester |
| Requester Group | Create | `create` | Create a requester group |
| Requester Group | Delete | `delete` | Delete a requester group by ID |
| Requester Group | Get | `get` | Retrieve a single requester group by ID |
| Requester Group | Get Many | `getAll` | List requester groups |
| Requester Group | Update | `update` | Update an existing requester group |
| Software | Create | `create` | Create a software application |
| Software | Delete | `delete` | Delete a software application by ID |
| Software | Get | `get` | Retrieve a single software application by ID |
| Software | Get Many | `getAll` | List software applications |
| Software | Update | `update` | Update an existing software application |
| Ticket | Create | `create` | Create a ticket |
| Ticket | Delete | `delete` | Delete a ticket by ID |
| Ticket | Get | `get` | Retrieve a single ticket by ID |
| Ticket | Get Many | `getAll` | List tickets |
| Ticket | Update | `update` | Update 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

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Email | `string` | Yes | — | Email address of the agent. |
| First Name (`firstName`) | `string` | Yes | — | First name of the agent. |
| Roles | `json` | Yes | `[]` | 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 Fields | `collection` | No | `{}` | Optional fields to set on the new agent. |
| — Address | `string` | No | — | Street address of the agent. |
| — Background Information | `string` | No | — | Background information about the agent. |
| — Department IDs (`department_ids`) | `string` | No | — | Comma-separated department IDs. |
| — Job Title | `string` | No | — | Job title of the agent. |
| — Language | `options` | No | `en` | Display 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 Name | `string` | No | — | Last name of the agent. |
| — Location ID (`location_id`) | `string` | No | — | ID of the agent's location. |
| — Member Of (Group IDs) | `string` | No | — | Comma-separated group IDs. |
| — Mobile Phone | `string` | No | — | Mobile phone number. |
| — Observer Of (Group IDs) | `string` | No | — | Comma-separated group IDs. |
| — Scoreboard Level | `options` | No | `1` | Gamification scoreboard level. |
| | | | | Options: `1` (Beginner), `2` (Intermediate), `3` (Professional), `4` (Expert), `5` (Master), `6` (Guru) |
| — Time Format | `options` | No | `12h` | Clock format shown to the agent. |
| | | | | Options: `12h` (12-Hour), `24h` (24-Hour) |
| — Work Phone | `string` | No | — | Work phone number. |

#### Agent: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent ID (`agentId`) | `string` | Yes | — | ID of the agent. |

#### Agent: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent ID (`agentId`) | `string` | Yes | — | ID of the agent. |

#### Agent: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Filters | `collection` | No | `{}` | Criteria the returned agents must match. |
| — Department ID (`department_id`) | `string` | No | — | Filter by department ID. |
| — Email | `string` | No | — | Filter by email address. |
| — First Name (`first_name`) | `string` | No | — | Filter by first name. |
| — Job Title | `string` | No | — | Filter by job title. |
| — Language | `options` | No | — | Filter 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 Name | `string` | No | — | Filter by last name. |
| — Location ID (`location_id`) | `string` | No | — | Filter by location ID. |
| — Mobile Phone | `string` | No | — | Filter by mobile phone number. |
| — Work Phone | `string` | No | — | Filter by work phone number. |
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Agent: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent ID (`agentId`) | `string` | Yes | — | ID of the agent. |
| Update Fields | `collection` | No | `{}` | Fields to change on the agent. At least one field is required. |
| — Address | `string` | No | — | Street address of the agent. |
| — Background Information | `string` | No | — | Background information about the agent. |
| — Department IDs (`department_ids`) | `string` | No | — | Comma-separated department IDs. |
| — Email | `string` | No | — | Email address of the agent. |
| — First Name (`first_name`) | `string` | No | — | First name of the agent. |
| — Job Title | `string` | No | — | Job title of the agent. |
| — Language | `options` | No | — | Display 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 Name | `string` | No | — | Last name of the agent. |
| — Location ID (`location_id`) | `string` | No | — | ID of the agent's location. |
| — Member Of (Group IDs) | `string` | No | — | Comma-separated group IDs. |
| — Mobile Phone | `string` | No | — | Mobile phone number. |
| — Observer Of (Group IDs) | `string` | No | — | Comma-separated group IDs. |
| — Scoreboard Level | `options` | No | `1` | Gamification scoreboard level. |
| | | | | Options: `1` (Beginner), `2` (Intermediate), `3` (Professional), `4` (Expert), `5` (Master), `6` (Guru) |
| — Time Format | `options` | No | `12h` | Clock format shown to the agent. |
| | | | | Options: `12h` (12-Hour), `24h` (24-Hour) |
| — Work Phone | `string` | No | — | Work phone number. |

#### Agent Group: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Name | `string` | Yes | — | Name of the agent group. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new agent group. |
| — Description | `string` | No | — | Description of the agent group. |
| — Escalate To (Agent ID) | `string` | No | — | Agent ID to escalate to. |
| — Members (Agent IDs) | `string` | No | — | Comma-separated agent IDs. |
| — Observers (Agent IDs) | `string` | No | — | Comma-separated agent IDs. |
| — Unassigned For | `options` | No | `30m` | How 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

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent Group ID | `string` | Yes | — | ID of the agent group. |

#### Agent Group: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent Group ID | `string` | Yes | — | ID of the agent group. |

#### Agent Group: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Agent Group: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent Group ID | `string` | Yes | — | ID of the agent group. |
| Update Fields | `collection` | No | `{}` | Fields to change on the agent group. At least one field is required. |
| — Description | `string` | No | — | Description of the agent group. |
| — Escalate To (Agent ID) | `string` | No | — | Agent ID to escalate to. |
| — Members (Agent IDs) | `string` | No | — | Comma-separated agent IDs. |
| — Name | `string` | No | — | New name for the agent group. |
| — Observers (Agent IDs) | `string` | No | — | Comma-separated agent IDs. |
| — Unassigned For | `options` | No | `30m` | How 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

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Agent Role ID | `string` | Yes | — | ID of the agent role. |

#### Agent Role: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Announcement: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Title | `string` | Yes | — | Title of the announcement. |
| Body (HTML) (`bodyHtml`) | `string` | Yes | — | HTML content of the announcement. |
| Visibility | `options` | Yes | `everyone` | Who can see the announcement. |
| | | | | Options: `everyone` (Everyone), `agents_only` (Agents Only), `grouped_visibility` (Agents and Groups) |
| Visible From | `dateTime` | Yes | — | When the announcement starts being visible. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new announcement. |
| — Additional Emails | `string` | No | — | Comma-separated email addresses. |
| — Department IDs (`departments`) | `string` | No | — | Comma-separated department IDs. |
| — Visible Until | `dateTime` | No | — | When the announcement stops being visible. |

#### Announcement: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Announcement ID | `string` | Yes | — | ID of the announcement. |

#### Announcement: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Announcement ID | `string` | Yes | — | ID of the announcement. |

#### Announcement: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Announcement: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Announcement ID | `string` | Yes | — | ID of the announcement. |
| Update Fields | `collection` | No | `{}` | Fields to change on the announcement. At least one field is required. |
| — Additional Emails | `string` | No | — | Comma-separated email addresses. |
| — Body (HTML) (`body_html`) | `string` | No | — | HTML content of the announcement. |
| — Department IDs (`departments`) | `string` | No | — | Comma-separated department IDs. |
| — Title | `string` | No | — | New title for the announcement. |
| — Visibility | `options` | No | `everyone` | Who can see the announcement. |
| | | | | Options: `everyone` (Everyone), `agents_only` (Agents Only), `grouped_visibility` (Agents and Groups) |

#### Asset Type: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Name | `string` | Yes | — | Name of the asset type. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new asset type. |
| — Description | `string` | No | — | Description of the asset type. |
| — Parent Asset Type ID | `string` | No | — | ID of the parent asset type. |

#### Asset Type: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Asset Type ID (`assetTypeId`) | `string` | Yes | — | ID of the asset type. |

#### Asset Type: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Asset Type ID (`assetTypeId`) | `string` | Yes | — | ID of the asset type. |

#### Asset Type: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Asset Type: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Asset Type ID (`assetTypeId`) | `string` | Yes | — | ID of the asset type. |
| Update Fields | `collection` | No | `{}` | Fields to change on the asset type. At least one field is required. |
| — Description | `string` | No | — | Description of the asset type. |
| — Name | `string` | No | — | New name for the asset type. |

#### Change: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester ID (`requesterId`) | `string` | Yes | — | ID of the requester of the change. |
| Subject | `string` | Yes | — | Subject of the change. |
| Planned Start Date | `dateTime` | Yes | — | When work on the change is planned to start. |
| Planned End Date | `dateTime` | Yes | — | When work on the change is planned to finish. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new change. |
| — Agent ID (`agent_id`) | `string` | No | — | ID of the agent the change is assigned to. |
| — Change Type | `options` | No | `1` | The type of change. |
| | | | | Options: `1` (Minor), `2` (Standard), `3` (Major), `4` (Emergency) |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Priority | `options` | No | `1` | Priority of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Risk | `options` | No | `1` | Risk level of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Very High) |
| — Status | `options` | No | `1` | Status of the change. |
| | | | | Options: `1` (Open), `2` (Planning), `3` (Approval), `4` (Pending Release), `5` (Pending Review), `6` (Closed) |

#### Change: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Change ID | `string` | Yes | — | ID of the change. |

#### Change: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Change ID | `string` | Yes | — | ID of the change. |

#### Change: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Filters | `collection` | No | `{}` | Criteria the returned changes must match. |
| — Predefined Filter | `options` | No | `my_open` | One 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 Order | `options` | No | `asc` | Direction to sort the results in. |
| | | | | Options: `asc` (Ascending), `desc` (Descending) |
| — Updated Since | `dateTime` | No | — | Only return changes updated on or after this time. |
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Change: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Change ID | `string` | Yes | — | ID of the change. |
| Update Fields | `collection` | No | `{}` | Fields to change on the change request. At least one field is required. |
| — Agent ID (`agent_id`) | `string` | No | — | ID of the agent the change is assigned to. |
| — Change Type | `options` | No | `1` | The type of change. |
| | | | | Options: `1` (Minor), `2` (Standard), `3` (Major), `4` (Emergency) |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Priority | `options` | No | `1` | Priority of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Requester ID (`requester_id`) | `string` | No | — | ID of the requester of the change. |
| — Risk | `options` | No | `1` | Risk level of the change. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Very High) |
| — Status | `options` | No | `1` | Status of the change. |
| | | | | Options: `1` (Open), `2` (Planning), `3` (Approval), `4` (Pending Release), `5` (Pending Review), `6` (Closed) |
| — Subject | `string` | No | — | New subject for the change. |

#### Department: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Name | `string` | Yes | — | Name of the department. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new department. |
| — Description | `string` | No | — | Description of the department. |
| — Domains | `string` | No | — | Comma-separated email domains. |

#### Department: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Department ID (`departmentId`) | `string` | Yes | — | ID of the department. |

#### Department: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Department ID (`departmentId`) | `string` | Yes | — | ID of the department. |

#### Department: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Filters | `collection` | No | `{}` | Criteria the returned departments must match. |
| — Name | `string` | No | — | Filter by department name. |
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Department: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Department ID (`departmentId`) | `string` | Yes | — | ID of the department. |
| Update Fields | `collection` | No | `{}` | Fields to change on the department. At least one field is required. |
| — Description | `string` | No | — | Description of the department. |
| — Domains | `string` | No | — | Comma-separated email domains. |
| — Name | `string` | No | — | New name for the department. |

#### Location: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Name | `string` | Yes | — | Name of the location. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new location. |
| — Address Line 1 | `string` | No | — | First line of the street address. |
| — Address Line 2 | `string` | No | — | Second line of the street address. |
| — City | `string` | No | — | City of the location. |
| — State | `string` | No | — | State or region of the location. |
| — Country | `string` | No | — | Country of the location. |
| — Zip Code | `string` | No | — | Postal code of the location. |

#### Location: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Location ID (`locationId`) | `string` | Yes | — | ID of the location. |

#### Location: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Location ID (`locationId`) | `string` | Yes | — | ID of the location. |

#### Location: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Location: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Location ID (`locationId`) | `string` | Yes | — | ID of the location. |
| Update Fields | `collection` | No | `{}` | Fields to change on the location. At least one field is required. |
| — Name | `string` | No | — | New name for the location. |
| — Address Line 1 | `string` | No | — | First line of the street address. |
| — Address Line 2 | `string` | No | — | Second line of the street address. |
| — City | `string` | No | — | City of the location. |
| — State | `string` | No | — | State or region of the location. |
| — Country | `string` | No | — | Country of the location. |
| — Zip Code | `string` | No | — | Postal code of the location. |

#### Problem: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Subject | `string` | Yes | — | Subject of the problem. |
| Requester ID (`requesterId`) | `string` | Yes | — | ID of the problem initiator. |
| Due By (`dueBy`) | `dateTime` | No | — | Date when problem is due to be solved. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new problem. |
| — Agent ID (`agent_id`) | `string` | No | — | ID of the agent the problem is assigned to. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the problem. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Priority | `options` | No | `1` | Priority of the problem. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Status | `options` | No | `1` | Status of the problem. |
| | | | | Options: `1` (Open), `2` (Change Requested), `3` (Closed) |

#### Problem: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Problem ID | `string` | Yes | — | ID of the problem. |

#### Problem: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Problem ID | `string` | Yes | — | ID of the problem. |

#### Problem: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Problem: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Problem ID | `string` | Yes | — | ID of the problem. |
| Update Fields | `collection` | No | `{}` | Fields to change on the problem. At least one field is required. |
| — Agent ID (`agent_id`) | `string` | No | — | ID of the agent the problem is assigned to. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Due By (`due_by`) | `dateTime` | No | — | Date when problem is due to be solved. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the problem. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Priority | `options` | No | `1` | Priority of the problem. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Requester ID (`requester_id`) | `string` | No | — | ID of the problem initiator. |
| — Status | `options` | No | `1` | Status of the problem. |
| | | | | Options: `1` (Open), `2` (Change Requested), `3` (Closed) |
| — Subject | `string` | No | — | New subject for the problem. |

#### Product: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Asset Type ID (`assetTypeId`) | `string` | Yes | — | ID of the asset type for this product. |
| Name | `string` | Yes | — | Name of the product. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new product. |
| — Description | `string` | No | — | HTML supported. |
| — Manufacturer | `string` | No | — | Manufacturer of the product. |
| — Mode of Procurement | `options` | No | `Buy` | How the product is procured. |
| | | | | Options: `Buy`, `Lease`, `Both` |
| — Status | `options` | No | `In Production` | Lifecycle status of the product. |
| | | | | Options: `In Production`, `In Pipeline`, `Retired` |

#### Product: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Product ID | `string` | Yes | — | ID of the product. |

#### Product: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Product ID | `string` | Yes | — | ID of the product. |

#### Product: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Product: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Product ID | `string` | Yes | — | ID of the product. |
| Update Fields | `collection` | No | `{}` | Fields to change on the product. |
| — Asset Type ID (`asset_type_id`) | `string` | No | — | ID of the asset type for this product. |
| — Description | `string` | No | — | HTML supported. |
| — Manufacturer | `string` | No | — | Manufacturer of the product. |
| — Mode of Procurement | `options` | No | `Buy` | How the product is procured. |
| | | | | Options: `Buy`, `Lease`, `Both` |
| — Name | `string` | No | — | New name for the product. |
| — Status | `options` | No | `In Production` | Lifecycle status of the product. |
| | | | | Options: `In Production`, `In Pipeline`, `Retired` |

#### Release: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Subject | `string` | Yes | — | Subject of the release. |
| Release Type (`releaseType`) | `options` | No | `1` | The type of release. |
| | | | | Options: `1` (Minor), `2` (Standard), `3` (Major), `4` (Emergency) |
| Priority | `options` | No | `1` | Priority of the release. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| Status | `options` | No | `1` | Status of the release. |
| | | | | Options: `1` (Open), `2` (On Hold), `3` (In Progress), `4` (Incomplete), `5` (Completed) |
| Planned Start Date | `dateTime` | Yes | — | When work on the release is planned to start. |
| Planned End Date | `dateTime` | Yes | — | When work on the release is planned to finish. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new release. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Group ID | `string` | No | — | ID of the agent group. |

#### Release: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Release ID | `string` | Yes | — | ID of the release. |

#### Release: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Release ID | `string` | Yes | — | ID of the release. |

#### Release: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Release: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Release ID | `string` | Yes | — | ID of the release. |
| Update Fields | `collection` | No | `{}` | Fields to change on the release. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Priority | `options` | No | `1` | Priority of the release. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Release Type (`release_type`) | `options` | No | `1` | The type of release. |
| | | | | Options: `1` (Minor), `2` (Standard), `3` (Major), `4` (Emergency) |
| — Status | `options` | No | `1` | Status of the release. |
| | | | | Options: `1` (Open), `2` (On Hold), `3` (In Progress), `4` (Incomplete), `5` (Completed) |
| — Subject | `string` | No | — | New subject for the release. |

#### Requester: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| First Name (`firstName`) | `string` | Yes | — | First name of the requester. |
| Primary Email (`primaryEmail`) | `string` | No | — | Primary email address of the requester. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new requester. |
| — Address | `string` | No | — | Street address of the requester. |
| — Background Information | `string` | No | — | Background information about the requester. |
| — Department IDs (`department_ids`) | `string` | No | — | Comma-separated department IDs. |
| — Job Title | `string` | No | — | Job title of the requester. |
| — Language | `options` | No | `en` | Display 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 Name | `string` | No | — | Last name of the requester. |
| — Location ID (`location_id`) | `string` | No | — | ID of the requester's location. |
| — Mobile Phone | `string` | No | — | Mobile phone number. |
| — Secondary Emails | `string` | No | — | Comma-separated secondary email addresses. |
| — Time Format | `options` | No | `12h` | Clock format shown to the requester. |
| | | | | Options: `12h` (12-Hour), `24h` (24-Hour) |
| — Work Phone | `string` | No | — | Work phone number. |

#### Requester: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester ID (`requesterId`) | `string` | Yes | — | ID of the requester. |

#### Requester: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester ID (`requesterId`) | `string` | Yes | — | ID of the requester. |

#### Requester: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Filters | `collection` | No | `{}` | Criteria the returned requesters must match. |
| — Department ID (`department_id`) | `string` | No | — | Filter by department ID. |
| — First Name (`first_name`) | `string` | No | — | Filter by first name. |
| — Job Title | `string` | No | — | Filter by job title. |
| — Language | `options` | No | — | Filter 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 Name | `string` | No | — | Filter by last name. |
| — Location ID (`location_id`) | `string` | No | — | Filter by location ID. |
| — Mobile Phone | `string` | No | — | Filter by mobile phone number. |
| — Primary Email (`primary_email`) | `string` | No | — | Filter by primary email address. |
| — Work Phone | `string` | No | — | Filter by work phone number. |
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Requester: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester ID (`requesterId`) | `string` | Yes | — | ID of the requester. |
| Update Fields | `collection` | No | `{}` | Fields to change on the requester. At least one field is required. |
| — Address | `string` | No | — | Street address of the requester. |
| — Background Information | `string` | No | — | Background information about the requester. |
| — Department IDs (`department_ids`) | `string` | No | — | Comma-separated department IDs. |
| — First Name (`first_name`) | `string` | No | — | First name of the requester. |
| — Job Title | `string` | No | — | Job title of the requester. |
| — Language | `options` | No | — | Display 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 Name | `string` | No | — | Last name of the requester. |
| — Location ID (`location_id`) | `string` | No | — | ID of the requester's location. |
| — Mobile Phone | `string` | No | — | Mobile phone number. |
| — Primary Email (`primary_email`) | `string` | No | — | Primary email address of the requester. |
| — Secondary Emails | `string` | No | — | Comma-separated secondary emails. |
| — Time Format | `options` | No | `12h` | Clock format shown to the requester. |
| | | | | Options: `12h` (12-Hour), `24h` (24-Hour) |
| — Work Phone | `string` | No | — | Work phone number. |

#### Requester Group: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Name | `string` | Yes | — | Name of the requester group. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new requester group. |
| — Description | `string` | No | — | Description of the requester group. |

#### Requester Group: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester Group ID | `string` | Yes | — | ID of the requester group. |

#### Requester Group: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester Group ID | `string` | Yes | — | ID of the requester group. |

#### Requester Group: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Requester Group: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Requester Group ID | `string` | Yes | — | ID of the requester group. |
| Update Fields | `collection` | No | `{}` | Fields to change on the requester group. At least one field is required. |
| — Description | `string` | No | — | Description of the requester group. |
| — Name | `string` | No | — | New name for the requester group. |

#### Software: Create

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Application Type (`applicationType`) | `options` | Yes | `desktop` | How the application is delivered. |
| | | | | Options: `desktop` (Desktop), `mobile` (Mobile), `saas` (SaaS) |
| Name | `string` | Yes | — | Name of the software application. |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new software application. |
| — Description | `string` | No | — | Description of the application. |
| — Notes | `string` | No | — | Free-form notes about the application. |
| — Status | `options` | No | `managed` | Management 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

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Software ID | `string` | Yes | — | ID of the software application. |

#### Software: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Software ID | `string` | Yes | — | ID of the software application. |

#### Software: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Software: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Software ID | `string` | Yes | — | ID of the software application. |
| Update Fields | `collection` | No | `{}` | Fields to change on the software application. At least one field is required. |
| — Application Type (`application_type`) | `options` | No | `desktop` | How the application is delivered. |
| | | | | Options: `desktop` (Desktop), `mobile` (Mobile), `saas` (SaaS) |
| — Description | `string` | No | — | Description of the application. |
| — Name | `string` | No | — | New name for the software application. |
| — Notes | `string` | No | — | Free-form notes about the application. |
| — Status | `options` | No | `managed` | Management 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

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Email | `string` | Yes | — | Email address of the ticket author. |
| Subject | `string` | Yes | — | Subject of the ticket. |
| Description | `string` | No | — | Description of the ticket (HTML supported). |
| Priority | `options` | No | `1` | Priority of the ticket. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| Status | `options` | No | `2` | Status of the ticket. |
| | | | | Options: `2` (Open), `3` (Pending), `4` (Resolved), `5` (Closed) |
| Additional Fields | `collection` | No | `{}` | Optional fields to set on the new ticket. |
| — CC Emails | `string` | No | — | Comma-separated email addresses to CC. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the ticket. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Name | `string` | No | — | Name of the ticket author. |
| — Requester ID (`requester_id`) | `string` | No | — | ID of the requester. |

#### Ticket: Delete

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Ticket ID | `string` | Yes | — | ID of the ticket. |

#### Ticket: Get

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Ticket ID | `string` | Yes | — | ID of the ticket. |

#### Ticket: Get Many

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Filters | `collection` | No | `{}` | Criteria the returned tickets must match. |
| — Agent ID (`agent_id`) | `string` | No | — | Filter by assigned agent ID. |
| — Group ID | `string` | No | — | Filter by group ID. |
| — Impact | `options` | No | `1` | Filter by business impact. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Priority | `options` | No | `1` | Filter by priority. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Status | `options` | No | `2` | Filter by status. |
| | | | | Options: `2` (Open), `3` (Pending), `4` (Resolved), `5` (Closed) |
| — Created On | `dateTime` | No | — | Filter by creation date. |
| — Due By (`due_by`) | `dateTime` | No | — | Filter by due date. |
| Return All | `boolean` | No | `false` | Whether to return all results or only up to a given limit. |
| Limit | `number` | No | `50` | Max number of results to return. _(shown when Return All is `false`)_ |

#### Ticket: Update

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Ticket ID | `string` | Yes | — | ID of the ticket. |
| Update Fields | `collection` | No | `{}` | Fields to change on the ticket. At least one field is required. |
| — Department ID (`department_id`) | `string` | No | — | ID of the department. |
| — Description | `string` | No | — | HTML supported. |
| — Email | `string` | No | — | Email address of the ticket author. |
| — Group ID | `string` | No | — | ID of the agent group. |
| — Impact | `options` | No | `1` | Business impact of the ticket. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High) |
| — Name | `string` | No | — | Name of the ticket author. |
| — Phone | `string` | No | — | Phone number of the ticket author. |
| — Priority | `options` | No | `1` | Priority of the ticket. |
| | | | | Options: `1` (Low), `2` (Medium), `3` (High), `4` (Urgent) |
| — Status | `options` | No | `2` | Status of the ticket. |
| | | | | Options: `2` (Open), `3` (Pending), `4` (Resolved), `5` (Closed) |
| — Subject | `string` | No | — | New subject for the ticket. |

#### All Operations

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Max Concurrency | `number` | No | `10` | Maximum 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:

```json
{
  "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:

```json
{
  "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:

```json
{
  "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:

```json
{
  "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:

```json
{
  "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:

```json
{
  "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

| Mode | Behavior |
|------|----------|
| **stop** | Halts workflow on first error |
| **continue** | Skips failed items, passes successful ones through |
| **errorPort** | Routes 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