Stream analytics events to Amazon S3
Configure Enterprise analytics streaming to send selected event categories from your Mintlify deployments to Amazon S3 in near real time.
Analytics require a Pro or Enterprise plan. Analytics streaming is available only on Enterprise plans.
Stream analytics events to Amazon S3 in near real time to send events to your data warehouse or downstream analytics pipelines without waiting for CSV exports.
Organization admins can add multiple destinations, select which event categories to send, and select which deployments to stream from. Analytics streaming uses an inclusion model: no events stream until you select at least one category and one deployment. The same category and deployment selections apply to every destination.
Add a destination
- Navigate to the Streaming page of your dashboard.
- In the Stream configuration section, click Configure.
- Select Add destination.
- Enter an optional label, then provide the Amazon S3 bucket, AWS region, access key ID, and secret access key. Optionally, enter a prefix that Mintlify adds to the beginning of every object key.
- Select Add destination.
To stop streaming to a destination, open the streaming configuration, click the remove icon next to the destination, then click Remove to confirm.
Select streamed categories
-
Navigate to the Streaming page of your dashboard.
-
In the Stream configuration section, click Configure.
-
In the categories table, select the categories that you want to send.
Category Examples Page views Page and Markdown view events. Navigation Navigation item clicks, navigation call-to-action clicks, and version changes. Search Search queries, result clicks, search closes, and search comparisons. Page components Expandable, accordion, code block, and API playground interactions. Feedback Thumbs up, thumbs down, and detailed feedback submissions. AI Assistant Assistant conversations, sources, suggestions, feedback, and errors. Context menu & MCP Context menu actions, MCP link copies, MCP server installs, and MCP tool calls. The examples summarize each category. Use the streamed
eventTypevalue to identify the exact event. -
Click Save.
Select streamed deployments
Select which of your organization’s deployments send events. The dashboard lists each deployment by subdomain. If you create a deployment, return to the streaming configuration and select it. New deployments do not automatically start streaming events.
- Navigate to the Streaming page of your dashboard.
- In the Stream configuration section, click Configure.
- In the deployments table, select the deployments that you want to send events from.
- Click Save.
No events stream until you select at least one category and one deployment.
Understand streamed data
Mintlify writes newline-delimited JSON (.jsonl) objects to your bucket. Mintlify generates object names from UTC timestamps. If you configure a key prefix, Mintlify writes the objects under that prefix.
Each line contains an event envelope with an eventType and payload. The eventType is the event name, such as docs.content.view. The payload contains the analytics event as a JSON object or a JSON-encoded string. If payload is a string, parse it as JSON before loading it into your warehouse.
The event payload contains the following fields:
| Field | Description |
|---|---|
event_id | UUID that identifies the event. Use it as a deduplication key when loading data. |
subdomain | Subdomain of the deployment that generated the event. |
user_id | ID of the authenticated user, when available. |
anon_id | Anonymous visitor ID, when available. |
session_id | Visitor or assistant session ID, when available. |
created_at | ISO 8601 timestamp for when the event occurred. |
event | Event name. This matches eventType in the envelope. |
path | Documentation path where the event occurred. |
referrer | Referring URL, when available. |
user_agent | Browser or client user-agent string. |
ip | Visitor IP address. |
properties | Event-specific data as a JSON object or JSON-encoded string. |
Configuration changes can take up to one minute to apply.
Streamed events can contain personal data, including IP addresses, user and session identifiers, assistant queries and responses, and feedback comments or contact information. Apply access controls, retention policies, and other data-handling requirements appropriate for your organization.