Grouper Freshservice external system
Get the API key
Log in to your Freshservice portal as an Agent or Administrator.
Click on your profile picture/name in the top right corner.
Select Profile Settings.
On the right side of the page, locate the API Key section (usually below the "Change Password" section).
Copy the API key.
Configure the external system
External system type: Web service
Authentication type: Basic auth
Standard user/password order: false
User name: X (literally a capital X)
Password: API key
URL: Is the base url without anything on path, e.g. https://domainname.freshservice.com
Note: just because you have a custom domain name in the UI does not mean you can use that custom UI for web services
Test URL suffix: /api/v2/requesters
Test response body regex:
.*requesters.*
grouper-loader.properties
grouper.wsBearerToken.freshServiceProd.basicAuthPassword = *******
grouper.wsBearerToken.freshServiceProd.basicAuthStandardUserOrder = false
grouper.wsBearerToken.freshServiceProd.basicAuthUser = X
grouper.wsBearerToken.freshServiceProd.endpoint = https://somedomainname.freshservice.com
grouper.wsBearerToken.freshServiceProd.httpAuthnType = basicAuth
grouper.wsBearerToken.freshServiceProd.testUrlResponseBodyRegex = .*requesters.*
grouper.wsBearerToken.freshServiceProd.testUrlSuffix = /api/v2/requesters
Use the external system
This external system is used by both Freshservice provisioners:
Grouper Freshservice agent provisioner (the API key needs to be able to manage agents and groups, generally an administrator)
Grouper development team testing
Set this in grouper.hibernate.properties (or set env var: GROUPER_MOCK_SERVICES=true)
URL path for testing mock service: /grouper/mockServices/freshRequester (requester) or /grouper/mockServices/freshAgent (agent)
Set this in grouper.properties
grouperTest.exampleFreshRequester.mockExternalSystem.configId = freshServiceDev
grouperTest.exampleFreshAgent.mockExternalSystem.configId = freshServiceDev