Fetches overview of usage insights data from Glean AI Insights Dashboards. This input collects general search and content engagement metrics and syncs them incrementally based on the last updated timestamp returned by the API.
Sync Type: Incremental
Requirements
Before configuring this input, you need:
A Glean instance with Insights Dashboard access enabled
A Glean Global Token with the INSIGHTS scope, created in the Glean admin console
Name: Give it a descriptive name (e.g., monad-insights)
Optionally set an expiration date
Click Save and immediately copy the token secret — it is displayed only once
Note: Token scopes cannot be changed after creation. Ensure you select INSIGHTS before saving.
Finding Your Instance Name
Your Glean instance name is the subdomain prefix of your Glean URL. For example, if your backend URL is mycompany-be.glean.com, your instance name is mycompany.
Details
Monad uses the Glean Insights API (POST /rest/api/v1/insights) to fetch aggregate overview usage data. The input sends a request with the overviewRequest key and receives aggregated metrics in the overviewResponse.
How State Management Works
The input maintains a timestamp cursor based on the lastUpdatedTs field returned by the API
On each sync run, the cursor's start time is sent as the dayRange.start of the request
The dayRange.end is always set to the current time
After a record is emitted, the cursor advances to the lastUpdatedTs of the returned response
On the first sync (or when no backfill start time is configured), the full available history is requested
API Behavior
Endpoint: POST https://{instance}-be.glean.com/rest/api/v1/insights
Authentication: Authorization: Bearer {api_token}
Request body: Contains overviewRequest key with a dayRange object specifying the time window
Response: The overviewResponse key maps to an object containing aggregated metrics and a lastUpdatedTs Unix timestamp (seconds since epoch UTC)
The input returns a single aggregated record (not a list of events) representing the overview metrics for the requested time window
Limitations
This input fetches aggregated insight data, not raw event logs — each sync produces one record
Glean does not publish specific rate limits for the Insights API; Monad uses default HTTP retry and rate limit behavior
Data availability depends on your Glean subscription and instance configuration
Per-user insights can be suppressed by setting disable_per_user_insight to true
Configuration
Settings
Setting
Type
Required
Description
Instance
string
Yes
Your Glean instance name (e.g., mycompany for mycompany-be.glean.com)
Backfill Start Time
string
No
Date to start fetching data from. If not specified, a full sync is fetched on the first sync. All syncs thereafter will be incremental.
Disable per user Insight
boolean
No
If true, suppresses the generation of per-user insights in the response. Default is false.
Use Synthetic Data
boolean
No
Generate synthetic demo data instead of connecting to the real data source. Useful for testing pipelines without credentials.
Secrets
Secret
Type
Required
Description
API Token
string
Yes
Glean Global Token with the INSIGHTS scope. Created in the Glean admin console under Platform > Client API Token Management.
Troubleshooting
Authentication Errors
If you receive 401 Unauthorized or similar authentication failures:
Verify the API token is correct and has not expired
Confirm the token was created with the INSIGHTS scope
Ensure the token value was copied without leading or trailing whitespace
Check that the token type is Global (not a user-scoped token)
Instance Name Errors
If you receive connection errors:
Double-check your instance name — it should be the subdomain prefix only (e.g., mycompany, not mycompany-be.glean.com)
Verify your Glean instance is accessible and the backend URL resolves