Freshdesk

Learn how to use Freshdesk with Composio

Overview

SLUG: FRESHDESK

Description

Freshdesk provides customer support software with ticketing, knowledge base, and automation features for efficient helpdesk operations and better customer experiences

Authentication Details

subdomain
stringRequired
username
stringRequired
password
stringDefaults to X

Connecting to Freshdesk

Create an auth config

Use the dashboard to create an auth config for the Freshdesk toolkit. This allows you to connect multiple Freshdesk accounts to Composio for agents to use.

1

Select App

Navigate to Freshdesk.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Freshdesk Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using Basic Auth

1from composio import Composio
2from composio.types import auth_scheme
3
4# Replace these with your actual values
5freshdesk_auth_config_id = "ac_YOUR_FRESHDESK_CONFIG_ID"
6user_id = "user@example.com"
7username = "your_freshdesk_username"
8password = "your_freshdesk_password"
9
10composio = Composio()
11
12# Create a new connected account for Freshdesk using Basic Auth
13connection_request = composio.connected_accounts.initiate(
14 user_id=user_id,
15 auth_config_id=freshdesk_auth_config_id,
16 config=auth_scheme.basic_auth(
17 username=username,
18 password=password
19 )
20)
21
22# Basic authentication is immediate - no redirect needed
23print(f"Successfully connected Freshdesk for user {user_id}")
24
25# You can verify the connection using:
26# connected_account = composio.connected_accounts.get(user_id=user_id, app_id="FRESHDESK")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Freshdesk toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["FRESHDESK"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create Discussion Category

Description

Tool to create a new discussion category in Freshdesk forums.

Action Parameters

description
stringRequired
name
stringRequired
position
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Ticket

Description

Creates a new ticket in Freshdesk. REQUIRED FIELDS: - subject and description are always required - At least ONE requester identifier is REQUIRED: requester_id, email, phone, facebook_id, twitter_id, or unique_external_id CONDITIONAL REQUIREMENTS: - If phone is provided without email, name becomes MANDATORY NOTE ON ATTACHMENTS: - attachments field expects multipart/form-data format, not file paths

Action Parameters

attachments
array
cc_emails
array
company_id
integer
custom_fields
object
description
stringRequired
due_by
string
email
string
email_config_id
integer
facebook_id
string
fr_due_by
string
group_id
integer
internal_agent_id
integer
internal_group_id
integer
lookup_parameter
string
name
string
phone
string
priority
integerDefaults to 1
product_id
integer
requester_id
integer
responder_id
integer
source
integerDefaults to 2
status
integerDefaults to 2
subject
stringRequired
tags
array
twitter_id
string
unique_external_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Currently Authenticated Agent

Description

Tool to retrieve profile information for the currently authenticated agent. Use when you need to get details about the agent whose API credentials are being used for authentication.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Agent

Description

Tool to permanently delete an agent from Freshdesk. Use when you need to remove an agent from your Freshdesk account. Note: You cannot delete yourself. The API prevents self-deletion as a security measure.

Action Parameters

agent_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Automation Rule

Description

Tool to permanently delete an automation rule from Freshdesk. Use when you need to remove a specific automation rule. Note: This action is irreversible and will permanently delete the automation rule. The endpoint returns 204 No Content on success.

Action Parameters

automation_type_id
stringRequired
rule_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Company

Description

Tool to permanently disband a company from Freshdesk. Use when you need to delete a company from your Freshdesk account. Note: Deleting a company only disbands it and does not delete the customers inside it. Once disbanded, the company cannot be restored.

Action Parameters

company_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Company Field

Description

Tool to permanently delete a custom company field from Freshdesk. Use when you need to remove a company field that is no longer needed. Note: This action is irreversible and will delete all data stored in that field across all companies. Only custom fields can be deleted, not default fields.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Contact

Description

Tool to soft delete a contact from Freshdesk. Use when you need to move a contact from All Contacts to Deleted Contacts view. Future communications from the contact will be directed to SPAM. The contact can be restored later - for permanent deletion, use hard_delete_contact instead.

Action Parameters

contact_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Contact Field

Description

Tool to permanently delete a custom contact field from Freshdesk. Use when you need to remove a contact field that is no longer needed. Note: This action is irreversible and will delete all data stored in that field across all contacts. Only custom fields can be deleted, not default fields.

Action Parameters

contact_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Conversation

Description

Tool to permanently delete a conversation from a ticket in Freshdesk. Use when you need to remove a specific conversation from a ticket. Note: Once deleted, the conversation cannot be restored.

Action Parameters

conversation_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Discussion Category

Description

Tool to permanently delete a forum category in Freshdesk. Use when you need to remove a specific discussion category. Note: Once deleted, the category cannot be restored.

Action Parameters

category_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Discussion Comment

Description

Tool to permanently delete a comment from a discussion in Freshdesk. Use when you need to remove a specific comment from a discussion thread. Note: Once deleted, the comment cannot be restored.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Discussion Forum

Description

Tool to permanently delete a discussion forum in Freshdesk. Use when you need to remove a specific forum. Note: Once deleted, the forum cannot be restored.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Unmonitor Forum

Description

Tool to unfollow/unmonitor a discussion forum in Freshdesk. Use when you need to stop monitoring a specific forum. The operation removes the following status for the specified user from the forum.

Action Parameters

id
integerRequired
user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Unmonitor Topic

Description

Tool to unfollow/unmonitor a discussion topic in Freshdesk. Use when you need to stop monitoring a specific topic. The operation removes the following status for the specified user from the topic.

Action Parameters

id
integerRequired
user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Discussion Topic

Description

Tool to permanently delete a discussion topic in Freshdesk. Use when you need to remove a specific topic from forums. Note: Once deleted, the topic cannot be restored.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Email Mailbox

Description

Tool to permanently delete an email mailbox from Freshdesk. Use when you need to remove an email mailbox configuration. Note: This action is irreversible. Once deleted, emails sent to the mailbox's address will not generate tickets.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Group

Description

Tool to permanently disband a group from Freshdesk. Use when you need to delete a group from your Freshdesk account. Note: Deleting a group only disbands it and does not delete the members of the group. Once disbanded, the group cannot be restored.

Action Parameters

group_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Multiple Tickets

Description

Asynchronously deletes multiple tickets in bulk. Returns a job_id to track deletion progress. Deleted tickets are moved to Trash and can be restored within 30 days.

Action Parameters

ids
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Section

Description

Tool to permanently delete a section from a ticket field in Freshdesk. Use when you need to remove a section that is no longer needed. Note: The section must be empty before deletion. This action is irreversible.

Action Parameters

section_id
integerRequired
ticket_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Skill

Description

Tool to permanently delete a skill from Freshdesk. Use when you need to remove a skill from your Freshdesk account. This operation is permanent and cannot be undone.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Solution Article

Description

Tool to permanently delete a solution article and its translated versions in Freshdesk. Use when you need to remove a solution article that is no longer needed. Note: This operation is irreversible and cannot be undone.

Action Parameters

article_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Solution Category

Description

Tool to permanently delete a solution category and its translated versions in Freshdesk. Use when you need to remove a solution category that is no longer needed. Note: This operation is irreversible and cannot be undone.

Action Parameters

category_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Solution Folder

Description

Tool to permanently delete a solution folder and its translated versions in Freshdesk. Use when you need to remove a solution folder that is no longer needed. Note: This operation is irreversible and cannot be undone.

Action Parameters

solution_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Ticket

Description

Tool to soft delete a ticket in Freshdesk. Use when you need to move a ticket to Trash. The deleted ticket can be restored within 30 days, after which it is permanently deleted. Note: Attempting to delete an already deleted or spam ticket will fail.

Action Parameters

ticket_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Ticket Field

Description

Tool to permanently delete a custom ticket field from Freshdesk. Use when you need to remove a ticket field that is no longer needed. Note: This action is irreversible and will delete all data stored in that field across all tickets. Only custom fields can be deleted, not default fields.

Action Parameters

ticket_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Ticket Form

Description

Tool to permanently delete a ticket form from Freshdesk. Use when you need to remove a ticket form that is no longer needed. Note: This action is irreversible and once deleted, the ticket form cannot be restored through standard API operations.

Action Parameters

ticket_form_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Ticket Summary

Description

Tool to delete the AI-generated summary of a ticket in Freshdesk. Use when you need to remove a ticket's summary. Note: Once deleted, the summary cannot be restored.

Action Parameters

ticket_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Time Entry

Description

Tool to permanently delete a time entry from Freshdesk. Use when you need to remove a specific time entry. Note: Once deleted, the time entry cannot be restored.

Action Parameters

time_entry_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Account

Description

Tool to view Freshdesk account information. Use when you need to retrieve comprehensive account details including organization information, agent counts, timezone, data center location, plan tier, address, and primary contact information.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Admin Groups

Description

Tool to list all admin groups in Freshdesk. Use when you need to retrieve all admin groups configured in the account, including their members, escalation settings, and automatic assignment configuration.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Agent

Description

Tool to retrieve detailed information about a specific agent by ID. Use when you need to view a particular agent's profile, contact information, availability status, and role assignments.

Action Parameters

agent_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Agents

Description

Tool to retrieve all agents from a Freshdesk account. Use when you need to view the list of agents, optionally filtered by email, phone, mobile, or state.

Action Parameters

email
string
mobile
string
page
integer
per_page
integer
phone
string
state
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Business Hours

Description

Tool to retrieve all business hour configurations from Freshdesk. Use when you need to view the complete list of business hours including schedules, time zones, and working hours for each day.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Canned Response Folders

Description

Tool to retrieve all canned response folders from Freshdesk. Use when you need to list available folders for organizing canned responses. Note: Empty folders (folders without canned responses) are not listed in the API response.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Companies

Description

Tool to retrieve all companies from a Freshdesk account with pagination support. Use when you need to list companies representing customer organizations.

Action Parameters

page
integer
per_page
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company

Description

Tool to retrieve detailed information about a specific company by ID. Use when you need to view a particular company's details, domains, and custom fields.

Action Parameters

company_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Company Fields

Description

Tool to retrieve all company fields configured in Freshdesk. Use when you need to get the complete list of company field definitions including default fields (name, description, domains, etc.) and custom fields with their metadata.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Contact Fields

Description

Tool to retrieve all contact fields configured in Freshdesk. Use when you need to get the complete list of contact field definitions including default fields (name, email, phone, etc.) and custom fields with their metadata.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Contacts

Description

Tool to retrieve all contacts from a Freshdesk account. Use when you need to list contacts, optionally filtered by email, phone, mobile, company, state, or modification date.

Action Parameters

company_id
integer
email
string
mobile
string
page
integer
per_page
integer
phone
string
state
string
updated_since
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Tickets

Description

Retrieves a list of tickets from Freshdesk.

Action Parameters

agent_id
integer
created_since
string
email
string
filter
string
group_id
integer
page
integerDefaults to 1
per_page
integerDefaults to 30
priority
integer
requester_id
integer
sort_by
string
sort_order
string
status
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Hard Delete Contact

Description

Tool to permanently delete a contact from Freshdesk. Use when you need to completely remove a contact's profile, tickets, calls, forum topics, ratings, and notes (useful for GDPR compliance). By default, the contact must be soft-deleted first unless force=true is used. This deletion is irreversible.

Action Parameters

contact_id
integerRequired
force
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List All Agents in a Group

Description

Tool to retrieve all agents associated with a specific group in Freshdesk. Use when you need to get the list of agents assigned to a particular group.

Action Parameters

group_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List All Sections for a Ticket Field

Description

Tool to retrieve all dynamic sections for a specific ticket field in Freshdesk. Use when you need to view all sections associated with a dropdown field that controls dynamic field visibility.

Action Parameters

ticket_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List All Skills

Description

Tool to retrieve all skills configured in Freshdesk account. Use when you need to get the complete list of skills available for ticket routing and agent assignment.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List All Tickets

Description

Lists all tickets in Freshdesk.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List a Specific Section Details

Description

Tool to retrieve details of a specific section within a ticket field in Freshdesk. Use when you need to view information about a particular dynamic section including its label, associated choices, and contained fields.

Action Parameters

section_id
integerRequired
ticket_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Reply to Ticket

Description

Replies to an existing ticket in Freshdesk.

Action Parameters

attachments
array
bcc_emails
array
body
stringRequired
cc_emails
array
ticket_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Search Agents

Description

Tool to search and filter agents in Freshdesk. Use when you need to find agents by email, phone, mobile, or state (fulltime/occasional).

Action Parameters

email
string
mobile
string
page
integer
per_page
integer
phone
string
state
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Search Companies

Description

Tool to search and filter companies in Freshdesk using query strings with custom fields. Use when you need to find companies based on searchable fields like created_at, updated_at, or custom company fields. Note: Standard fields like 'name' are NOT searchable and will cause validation errors.

Action Parameters

page
integer
query
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Ticket

Description

Updates an existing ticket in Freshdesk.

Action Parameters

attachments
array
company_id
integer
custom_fields
object
description
string
due_by
string
email
string
email_config_id
integer
facebook_id
string
fr_due_by
string
group_id
integer
internal_agent_id
integer
internal_group_id
integer
lookup_parameter
string
name
string
parent_id
integer
phone
string
priority
integer
product_id
integer
requester_id
integer
responder_id
integer
source
integer
status
integer
subject
string
tags
array
ticket_id
integerRequired
twitter_id
string
type
string
unique_external_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Canned Response

Description

Tool to view details of a specific canned response in Freshdesk. Use when you need to retrieve information about a canned response including its title, content, folder location, and attachments.

Action Parameters

canned_response_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Business Hour

Description

Tool to retrieve a specific business hour configuration from Freshdesk. Use when you need to view detailed information about business hours including working schedule, time zone, and holiday list.

Action Parameters

business_hours_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Company Field

Description

Tool to retrieve details of a specific company field by ID. Use when you need to view configuration and metadata for a single company field including its type, position, and choices for dropdown fields.

Action Parameters

company_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Contact Field

Description

Tool to retrieve details of a specific contact field by ID. Use when you need to view configuration and metadata for a single contact field including its type, position, and customer/agent requirements.

Action Parameters

contact_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View Group

Description

Tool to view details of a specific admin group in Freshdesk. Use when you need to retrieve information about a group including its members, escalation settings, and automatic assignment configuration.

Action Parameters

group_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Skill

Description

Tool to retrieve a specific skill from Freshdesk by ID. Use when you need to view detailed information about a particular skill including its name, rank, associated agents, and routing conditions.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View Ticket

Description

Views an existing ticket in Freshdesk.

Action Parameters

ticket_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: View a Ticket Field

Description

Tool to retrieve a single ticket field configuration from Freshdesk. Use when you need to view detailed information about a specific ticket field including its type, position, visibility settings, and validation requirements.

Action Parameters

ticket_field_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired