API Keys
Feature
Using API Keys for authenticating HTTP requests to Germain UX.
Overview
API keys allow HTTP requests to Germain UX services to be authenticated using a Bearer token.
This feature is particularly useful when using external services to query Germain UX data (instead of requiring a username/password).
API keys can be created/enabled/disabled/deleted through the workspace.
API keys can be globally enabled/disabled.
Creating an API Key
To create/enable/disable/delete API Keys you must have the “Manage Users“ privilege.
Go to System > Auth Settings > API Keys:

Click :plus: "Create API Key"
Provide the following values (Note: These values cannot be changed after the API Key is created):
Name - The human readable name of the API Key
Expires - The date the key will expire - after this, the key will no longer be valid and requests using the key will fail. If not provided, the key will never expire. We recommend setting an expiry and periodically refreshing API Keys.
Privileges - What requests using this API key are allowed to do. For example, if you want to query data, “View Data” must be selected.

Click "Finish."
You will be provided with an API Key - Copy the API Key - you will not be able to access it again after creation.

Managing API Keys
From the API Keys page (System > Auth Settings > API Keys) in the workspace, you can create/enable/disable/delete API Keys. When an API Key is disabled/deleted, any requests using that key will immediately fail with a 401 Unauthorized error code.
Using API Keys
API keys should be added to HTTP requests by adding a Authorization HTTP Header using the Bearer authentication scheme.
Here is an example of using an API Key to query data in Germain UX using the browser (JavaScript) fetch API:
fetch("https://<germain-ux-instance-host>/query/query", {
"headers": {
"accept": "*/*",
"content-type": "application/json",
"authorization": "Bearer <your token here>"
},
"body": "{\"factType\":\"InternalEvent\",\"measures\":[\"time.day\",\"time.month\",\"time.year\",\"avg(value)\",\"count(id)\"],\"orders\":[\"time.day asc\",\"time.month asc\",\"time.year asc\"],\"pivots\":[\"time.day\",\"time.month\",\"time.year\"],\"timeRange\":[\"2026-01-01T00:00:00+01:00\",\"2026-01-02T00:00:00+01:00\"],\"timeMode\":\"INTERSECTS\",\"timeOffset\":\"+01:00\",\"filter\":\"type == 'GermainAPM:Service CPU Usage'\",\"ignoreCache\":false}",
"method": "POST"
});
Globally enabling/disabling API Keys
To globally enable/disable API Keys, go to the Germain UX config console.
Navigate to
germain.apm.services.authenticationand enable/disable thebearerAuthenticationEnabledsetting.If you change this setting, you will need to restart your Tomcat instances to apply the change.
When disabled, any previously created API keys will be ignored and the menu item in the Workspace will no longer be available.
Service: Authentication
Feature Availability: 2026.1 or later