Freshdesk connector
Basic AuthCustomer SupportCommunicationConnect to Freshdesk. Manage tickets, contacts, companies, and customer support workflows
Freshdesk connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Reply tickets — Add a public reply to a ticket conversation
- Get ticket — Retrieve details of a specific ticket by ID
- Update ticket — Update an existing ticket in Freshdesk
- Create ticket, agent, contact — Create a new ticket in Freshdesk
- List tickets, roles, agents — Retrieve a list of tickets with filtering and pagination
- Delete agent — Delete an agent from Freshdesk
Common workflows
Section titled “Common workflows”Proxy API call
Don’t worry about your Freshdesk domain in the path. Scalekit automatically resolves {{domain}} from the connected account’s configuration and constructs the full URL for you. For example, if your Freshdesk domain is mycompany.freshdesk.com, a request with path="/v2/agents/me" will be sent to https://mycompany.freshdesk.com/api/v2/agents/me automatically.
const result = await actions.request({ connectionName: 'freshdesk', identifier: 'user_123', path: '/v2/agents/me', method: 'GET',});console.log(result);result = actions.request( connection_name='freshdesk', identifier='user_123', path="/v2/agents/me", method="GET",)print(result)Execute a tool
const result = await actions.executeTool({ connector: 'freshdesk', identifier: 'user_123', toolName: 'freshdesk_agent_create', toolInput: {},});console.log(result);result = actions.execute_tool( connection_name='freshdesk', identifier='user_123', tool_name='freshdesk_agent_create', tool_input={},)print(result)Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
freshdesk_agent_create#Create a new agent in Freshdesk. Email is required and must be unique. Agent will receive invitation email to set up account. At least one role must be assigned.12 params
Create a new agent in Freshdesk. Email is required and must be unique. Agent will receive invitation email to set up account. At least one role must be assigned.
emailstringrequiredEmail address of the agent (must be unique)role_idsarrayrequiredArray of role IDs to assign to the agent (at least one required)ticket_scopenumberrequiredTicket permission level (1=Global Access, 2=Group Access, 3=Restricted Access)agent_typenumberoptionalType of agent (1=Support Agent, 2=Field Agent, 3=Collaborator)focus_modebooleanoptionalFocus mode setting for the agentgroup_idsarrayoptionalArray of group IDs to assign the agent tolanguagestringoptionalLanguage preference of the agentnamestringoptionalFull name of the agentoccasionalbooleanoptionalWhether the agent is occasional (true) or full-time (false)signaturestringoptionalAgent email signature in HTML formatskill_idsarrayoptionalArray of skill IDs to assign to the agenttime_zonestringoptionalTime zone of the agentfreshdesk_agent_delete#Delete an agent from Freshdesk. This action is irreversible and will remove the agent from the system. The agent will no longer have access to the helpdesk and all associated data will be permanently deleted.1 param
Delete an agent from Freshdesk. This action is irreversible and will remove the agent from the system. The agent will no longer have access to the helpdesk and all associated data will be permanently deleted.
agent_idnumberrequiredID of the agent to deletefreshdesk_agents_list#Retrieve a list of agents from Freshdesk with filtering options. Returns agent details including IDs, contact information, roles, and availability status. Supports pagination with up to 100 agents per page.6 params
Retrieve a list of agents from Freshdesk with filtering options. Returns agent details including IDs, contact information, roles, and availability status. Supports pagination with up to 100 agents per page.
emailstringoptionalFilter agents by email addressmobilestringoptionalFilter agents by mobile numberpagenumberoptionalPage number for pagination (starts from 1)per_pagenumberoptionalNumber of agents per page (max 100)phonestringoptionalFilter agents by phone numberstatestringoptionalFilter agents by state (fulltime or occasional)freshdesk_contact_create#Create a new contact in Freshdesk. Email and name are required. Supports custom fields, company assignment, and contact segmentation.12 params
Create a new contact in Freshdesk. Email and name are required. Supports custom fields, company assignment, and contact segmentation.
emailstringrequiredEmail address of the contactnamestringrequiredFull name of the contactaddressstringoptionalAddress of the contactcompany_idnumberoptionalCompany ID to associate with the contactcustom_fieldsobjectoptionalKey-value pairs for custom field valuesdescriptionstringoptionalDescription about the contactjob_titlestringoptionalJob title of the contactlanguagestringoptionalLanguage preference of the contactmobilestringoptionalMobile number of the contactphonestringoptionalPhone number of the contacttagsarrayoptionalArray of tags to associate with the contacttime_zonestringoptionalTime zone of the contactfreshdesk_roles_list#Retrieve a list of all roles from Freshdesk. Returns role details including IDs, names, descriptions, default status, and timestamps. This endpoint provides information about the different permission levels and access controls available in the Freshdesk system.0 params
Retrieve a list of all roles from Freshdesk. Returns role details including IDs, names, descriptions, default status, and timestamps. This endpoint provides information about the different permission levels and access controls available in the Freshdesk system.
freshdesk_ticket_create#Create a new ticket in Freshdesk. Requires either requester_id, email, facebook_id, phone, twitter_id, or unique_external_id to identify the requester.14 params
Create a new ticket in Freshdesk. Requires either requester_id, email, facebook_id, phone, twitter_id, or unique_external_id to identify the requester.
cc_emailsarrayoptionalArray of email addresses to be added in CCcustom_fieldsobjectoptionalKey-value pairs containing custom field names and valuesdescriptionstringoptionalHTML content of the ticket describing the issueemailstringoptionalEmail address of the requester. If no contact exists, will be added as new contact.group_idnumberoptionalID of the group to which the ticket has been assignednamestringoptionalName of the requesterprioritynumberoptionalPriority of the ticket. 1=Low, 2=Medium, 3=High, 4=Urgentrequester_idnumberoptionalUser ID of the requester. For existing contacts, can be passed instead of email.responder_idnumberoptionalID of the agent to whom the ticket has been assignedsourcenumberoptionalChannel through which ticket was created. 1=Email, 2=Portal, 3=Phone, 7=Chat, 9=Feedback Widget, 10=Outbound EmailstatusnumberoptionalStatus of the ticket. 2=Open, 3=Pending, 4=Resolved, 5=ClosedsubjectstringoptionalSubject of the tickettagsarrayoptionalArray of tags to be associated with the tickettypestringoptionalHelps categorize the ticket according to different kinds of issuesfreshdesk_ticket_get#Retrieve details of a specific ticket by ID. Includes ticket properties, conversations, and metadata.2 params
Retrieve details of a specific ticket by ID. Includes ticket properties, conversations, and metadata.
ticket_idnumberrequiredID of the ticket to retrieveincludestringoptionalAdditional resources to include (stats, requester, company, conversations)freshdesk_ticket_update#Update an existing ticket in Freshdesk. Note: Subject and description of outbound tickets cannot be updated.10 params
Update an existing ticket in Freshdesk. Note: Subject and description of outbound tickets cannot be updated.
ticket_idnumberrequiredID of the ticket to updatecustom_fieldsobjectoptionalKey-value pairs containing custom field names and valuesdescriptionstringoptionalHTML content of the ticket (cannot be updated for outbound tickets)group_idnumberoptionalID of the group to which the ticket has been assignednamestringoptionalName of the requesterprioritynumberoptionalPriority of the ticket. 1=Low, 2=Medium, 3=High, 4=Urgentresponder_idnumberoptionalID of the agent to whom the ticket has been assignedstatusnumberoptionalStatus of the ticket. 2=Open, 3=Pending, 4=Resolved, 5=ClosedsubjectstringoptionalSubject of the ticket (cannot be updated for outbound tickets)tagsarrayoptionalArray of tags to be associated with the ticketfreshdesk_tickets_list#Retrieve a list of tickets with filtering and pagination. Supports filtering by status, priority, requester, and more. Returns 30 tickets per page by default.8 params
Retrieve a list of tickets with filtering and pagination. Supports filtering by status, priority, requester, and more. Returns 30 tickets per page by default.
company_idnumberoptionalFilter by company IDemailstringoptionalFilter by requester emailfilterstringoptionalFilter name (new_and_my_open, watching, spam, deleted)includestringoptionalAdditional resources to include (description, requester, company, stats)pagenumberoptionalPage number for pagination (starts from 1)per_pagenumberoptionalNumber of tickets per page (max 100)requester_idnumberoptionalFilter by requester IDupdated_sincestringoptionalFilter tickets updated since this timestamp (ISO 8601)freshdesk_tickets_reply#Add a public reply to a ticket conversation. The reply will be visible to the customer and will update the ticket status if specified.6 params
Add a public reply to a ticket conversation. The reply will be visible to the customer and will update the ticket status if specified.
bodystringrequiredHTML content of the replyticket_idnumberrequiredID of the ticket to reply tobcc_emailsarrayoptionalArray of email addresses to BCC on the replycc_emailsarrayoptionalArray of email addresses to CC on the replyfrom_emailstringoptionalEmail address to send the reply fromuser_idnumberoptionalID of the agent sending the reply