Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to Freshservice

Scalekit connector
Open markdown

The Freshservice connector lets your AI agent act in each user's Freshservice account. Each user connects their own Freshservice API key once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 119 tools.

Tools
119
What they doRead · write · destructive
83 · 36 · 083 read36 write0 destructive
Users sign in with

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    Add your Scalekit credentials to your .env file. 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>
  3. Create the Freshservice connection

    In AgentKit > Connections, create a Freshservice connection. The name you give it is the connection_name your code passes. See Configure connections.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • freshservice_agent_fields_listList the fields on Freshservice agent profiles, including custom fields.Read-only

    List Agent Fields

    List the fields on Freshservice agent profiles, including custom fields. Returns each field's name, label, type, required flags and choices. Use this to learn field names before filtering agents.

    Inputs

    This tool takes no inputs.

  • freshservice_agent_getGet one Freshservice agent by user ID.Read-only

    Get Agent

    Get one Freshservice agent by user ID. Returns the agent object with name, email, phones, occasional flag, departments, location and roles. Use this when you know the agent ID. Use freshservice_agents_list or freshservice_agents_filter to find it.

    Inputs

    agent_idintegerrequired
    Numeric ID of the agent (user ID).
  • freshservice_agent_group_getGet one Freshservice agent group by ID.Read-only

    Get Agent Group

    Get one Freshservice agent group by ID. Returns the group with name, description, members, observers, leaders, business hours and escalation settings. Use this to see who is in a support team.

    Inputs

    group_idintegerrequired
    Numeric ID of the agent group.
  • freshservice_agent_groups_listList Freshservice agent groups (support teams).Read-only

    List Agent Groups

    List Freshservice agent groups (support teams). Returns group objects with id, name, description, members, observers, leaders and escalation settings. Use this to find group IDs for assigning tickets, problems, changes and tasks. Use freshservice_agent_group_get for one group.

    Inputs

    pageinteger
    Page number of results to return, starting at 1. Freshservice returns up to per_page records per page; request the next page while the previous one came back full.
    per_pageinteger
    Number of records per page, from 1 to 100. Freshservice defaults to 30 when omitted; values above 100 return an error.
    workspace_idinteger
    ID of the workspace to list agent groups from. Omit to use the primary workspace; pass 0 to return agent groups from every workspace you can access (global fields only). Applies only to accounts that use workspaces.
  • freshservice_agents_filterFilter Freshservice agents with a query on agent fields, including starts-with searches.Read-only

    Filter Agents

    Filter Freshservice agents with a query on agent fields, including starts-with searches. Returns matching agent objects under an agents array, newest first, 30 per page (page 40 at most). Use this to search agents by name, title, department, location or dates. Use freshservice_agents_list for an exact email or phone lookup.

    Inputs

    querystringrequired
    Filter expression for agents, written without the surrounding double quotes (the tool adds them). Combine conditions as field:value with AND / OR and parentheses; put string and date values in single quotes and numbers bare; use :> and :< for greater-or-equal and less-or-equal. Supported fields: first_name, last_name, name, job_title, email, work_phone_number, mobile_phone_number, department_id, reporting_manager_id, time_zone, language, location_id, created_at, updated_at. Use ~[field1|field2]:'text' for starts-with search and null for empty fields. Example: name:'Lara Croft'
    pageinteger
    Page number of results to return, starting at 1. Freshservice returns up to per_page records per page; request the next page while the previous one came back full.
  • freshservice_agents_listList Freshservice agents sorted by first name, optionally matching an exact email or phone, active state or agent type.Read-only

    List Agents

    List Freshservice agents sorted by first name, optionally matching an exact email or phone, active state or agent type. Returns a page of agent objects (30 by default) under an agents array. Use this to browse agents or find assignee IDs. Use freshservice_agents_filter for other fields or starts-with searches.

    Inputs

    activeboolean
    true returns only active agents; false returns only deactivated agents.
    emailstring
    Return only the agent with this exact email address.
    mobile_phone_numberstring
    Return only agents with this exact mobile phone number.
    pageinteger
    Page number of results to return, starting at 1. Freshservice returns up to per_page records per page; request the next page while the previous one came back full.
    per_pageinteger
    Number of records per page, from 1 to 100. Freshservice defaults to 30 when omitted; values above 100 return an error.
    statestring
    Agent type: fulltime or occasional.one of fulltimeoccasional
    work_phone_numberstring
    Return only agents with this exact work phone number.
  • freshservice_announcement_getGet one Freshservice announcement by ID.Read-only

    Get Announcement

    Get one Freshservice announcement by ID. Returns the announcement with title, HTML body, state, visibility, audience and active dates. Use this to read the full text of an announcement.

    Inputs

    announcement_idintegerrequired
    Numeric ID of the announcement.
  • freshservice_announcements_listList announcements (service updates and outage notices) in Freshservice.Read-only

    List Announcements

    List announcements (service updates and outage notices) in Freshservice. Returns announcement objects with title, body, state, visibility and active dates. Use this to check current notices before answering users.

    Inputs

    pageinteger
    Page number of results to return, starting at 1. Freshservice returns up to per_page records per page; request the next page while the previous one came back full.
    per_pageinteger
    Number of records per page, from 1 to 100. Freshservice defaults to 30 when omitted; values above 100 return an error.
    statestring
    Return only announcements in this state: active, archived, scheduled or unread.one of activearchivedscheduledunread
    workspace_idinteger
    ID of the workspace to list announcements from. Omit to use the primary workspace; pass 0 to return announcements from every workspace you can access (global fields only). Applies only to accounts that use workspaces.