> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tracecat.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Freshservice

> Reference for the Tracecat Freshservice integration: registered actions, required secrets, expected inputs, and example workflow usage.

## Call endpoint

Action ID: `tools.freshservice.call_endpoint`

Call a Freshservice REST API endpoint with API-key Basic auth.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="method" type="FreshserviceMethod" required>
  HTTP method for the Freshservice API request.
</ParamField>

<ParamField path="path" type="string" required>
  Freshservice API path, e.g. `/tickets`.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="headers" type="map[string, string] | null">
  Additional HTTP headers to send.

  Default: `null`.
</ParamField>

<ParamField path="json_body" type="object | null">
  Freshservice JSON request body.

  Default: `null`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

<ParamField path="timeout" type="number">
  Request timeout in seconds.

  Default: `30.0`.
</ParamField>

## Call paginated endpoint

Action ID: `tools.freshservice.call_paginated_endpoint`

Call a Freshservice list endpoint and follow page/per\_page pagination.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="path" type="string" required>
  Freshservice list API path, e.g. `/tickets`.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="items_key" type="string | null">
  Response field containing the page items, e.g. `tickets`. If omitted, Tracecat infers the only list-valued response field.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

<ParamField path="timeout" type="number">
  Request timeout in seconds.

  Default: `30.0`.
</ParamField>

## Create change

Action ID: `tools.freshservice.create_change`

Create a Freshservice change.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="change" type="object" required>
  Freshservice change payload.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Create requester

Action ID: `tools.freshservice.create_requester`

Create a Freshservice requester.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="requester" type="object" required>
  Freshservice requester payload.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Create ticket

Action ID: `tools.freshservice.create_ticket`

Create a Freshservice ticket.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="ticket" type="object" required>
  Freshservice ticket payload, e.g. subject, description, email/requester\_id, priority, and status.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Create ticket note

Action ID: `tools.freshservice.create_ticket_note`

Add a note to a Freshservice ticket.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="note" type="object" required>
  Freshservice note payload.
</ParamField>

<ParamField path="ticket_id" type="integer" required>
  Freshservice ticket ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Delete ticket

Action ID: `tools.freshservice.delete_ticket`

Delete a Freshservice ticket.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="ticket_id" type="integer" required>
  Freshservice ticket ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Get agent

Action ID: `tools.freshservice.get_agent`

Get a Freshservice agent by ID.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="agent_id" type="integer" required>
  Freshservice agent ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Get change

Action ID: `tools.freshservice.get_change`

Get a Freshservice change by ID.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="change_id" type="integer" required>
  Freshservice change ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Get group

Action ID: `tools.freshservice.get_group`

Get a Freshservice group by ID.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="group_id" type="integer" required>
  Freshservice group ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Get requester

Action ID: `tools.freshservice.get_requester`

Get a Freshservice requester by ID.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="requester_id" type="integer" required>
  Freshservice requester ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Get ticket

Action ID: `tools.freshservice.get_ticket`

Get a Freshservice ticket by ID.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="ticket_id" type="integer" required>
  Freshservice ticket ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="include" type="string | null">
  Optional Freshservice include parameter.

  Default: `null`.
</ParamField>

## List agents

Action ID: `tools.freshservice.list_agents`

List Freshservice agents with optional filters.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

## List changes

Action ID: `tools.freshservice.list_changes`

List Freshservice changes with optional filters.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

## List groups

Action ID: `tools.freshservice.list_groups`

List Freshservice groups with optional filters.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

## List requesters

Action ID: `tools.freshservice.list_requesters`

List Freshservice requesters with optional filters.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

## List tickets

Action ID: `tools.freshservice.list_tickets`

List Freshservice tickets with optional filters.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

<ParamField path="max_pages" type="integer | null">
  Maximum pages to fetch.

  Default: `null`.
</ParamField>

<ParamField path="page" type="integer">
  Freshservice page number to start from.

  Default: `1`.
</ParamField>

<ParamField path="per_page" type="integer">
  Freshservice `per_page` value.

  Default: `30`.
</ParamField>

<ParamField path="query_params" type="object | null">
  Freshservice query parameters.

  Default: `null`.
</ParamField>

## Reply to ticket

Action ID: `tools.freshservice.reply_to_ticket`

Add a reply to a Freshservice ticket.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="reply" type="object" required>
  Freshservice ticket reply payload.
</ParamField>

<ParamField path="ticket_id" type="integer" required>
  Freshservice ticket ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Update change

Action ID: `tools.freshservice.update_change`

Update a Freshservice change.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="change" type="object" required>
  Freshservice change fields to update.
</ParamField>

<ParamField path="change_id" type="integer" required>
  Freshservice change ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Update requester

Action ID: `tools.freshservice.update_requester`

Update a Freshservice requester.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="requester" type="object" required>
  Freshservice requester fields to update.
</ParamField>

<ParamField path="requester_id" type="integer" required>
  Freshservice requester ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>

## Update ticket

Action ID: `tools.freshservice.update_ticket`

Update a Freshservice ticket.

Reference: [https://api.freshservice.com/](https://api.freshservice.com/)

### Secrets

Required secrets:

* `freshservice`: required values `FRESHSERVICE_API_KEY`; optional values `FRESHSERVICE_BASE_URL`.

### Input fields

<ParamField path="ticket" type="object" required>
  Freshservice ticket fields to update.
</ParamField>

<ParamField path="ticket_id" type="integer" required>
  Freshservice ticket ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Freshservice tenant URL or API URL. Defaults to `FRESHSERVICE_BASE_URL`, e.g. `https://example.freshservice.com`.

  Default: `null`.
</ParamField>
