| Specification | Details |
|---|---|
| Repository type | Cloud |
| Supported content | Solution Articles |
| RACL support | Yes |
| Content filtering | No |
Prerequisites
- A Freshservice account with API access
- Access to the Search AI application
Step 1: Generate an API Key in Freshservice
- Sign in to your Freshservice account.
- Click your profile initials in the top-right corner of the dashboard and select Profile Settings.
- In Profile Settings, find the API Key section and copy the key. Store it securely.
If the API key is not visible or is disabled, ensure your user role has the necessary permissions. An admin can enable this under agent permissions.
Step 2: Configure the Freshservice Connector in Search AI
- In Search AI, go to the Authorization page of the Freshservice connector.
-
Provide the following fields and click Connect:
Field Value Name Unique name for the connector Host URL Your Freshservice host URL API Key API key generated in Step 1
Content Ingestion
After connecting, go to the Configuration tab to set up synchronization:- Sync Now — triggers an immediate sync.
- Schedule Sync — sets up automatic sync on a recurring schedule.
Articles in sub-folders within a folder are not supported.
RACL Support
Article visibility in Search AI reflects the folder-level visibility settings in Freshservice. All files within a folder inherit the folder’s visibility configuration.Users associated with a group in Freshservice are automatically added to the corresponding permission entity in Search AI. If group membership changes after ingestion, use the Permission Entity APIs to update the associations.
sys_racl field:
| Folder Visibility | sys_racl Value | Description |
|---|---|---|
| All Users | * | Unrestricted access for everyone |
| Logged-In Users | Domain name (e.g., mydomaindotai) | Accessible to all authenticated users |
| Agents Only | ${domain}_agents (e.g., mydomaindotai_agents) | Restricted to agents |
| Departments | Array of department IDs (e.g., ["department_id1", "department_id2"]) | Restricted to specified departments |
| Agent Groups | Array of agent group IDs (e.g., ["agent_group1", "agent_group2"]) | Restricted to specified agent groups |
| Requester Groups | Array of requester group IDs (e.g., ["requester_group1", "requester_group2"]) | Restricted to specified requester groups |
| Agents by Workspace | Workspace ID (e.g., ["workspace_id"]) | Restricted to agents in a specific workspace |