Insights-2
For instructions on how to authenticate to use this endpoint, see API overview.
Endpoints
GET | |
GET | |
POST | |
GET | |
POST | |
GET | |
POST | |
DELETE | |
POST | |
GET | |
GET | |
GET | |
PATCH | |
DELETE | |
GET | |
GET | |
GET | |
POST | |
GET |
Retrieve environments insights my last viewed
Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /environments /:environment_id /insights /my_last_viewedExample response
Status 200 No response body
Retrieve environments insights trending
Also available via the PostHog MCP server:
insights-trending-retrieve— Get most-viewed insights
Returns insights ranked by view count over the last N days (default 7), highest first. Each result includes the same metadata as the standard insights list, plus a view_count and up to 3 recent viewers. Useful for surfacing the most-used insights in a project.
Required API key scopes
insight:readQuery parameters
- daysinteger
- formatstringOne of:
"csv""json" - limitinteger
- offsetinteger
Response
Example request
GET /api /environments /:environment_id /insights /trendingExample response
Status 200
Create environments insights viewed
Record that the current user has just viewed one or more insights. Submitted ids that do not belong to the current project or that point at deleted insights are silently dropped. Returns 201 on success regardless of how many ids were retained.
Required API key scopes
insight:readQuery parameters
- formatstringOne of:
"csv""json"
Request parameters
- insight_idsarray
Example request
POST /api /environments /:environment_id /insights /viewedExample response
Status 201 Views recorded.
List all insights
Also available via the PostHog MCP server:
insights-list— Get all insights
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Required API key scopes
insight:readQuery parameters
- basicboolean
- created_bystring
- created_date_fromstring
- created_date_tostring
- dashboardsstring
- date_fromstring
- date_tostring
- favoritedboolean
- formatstringOne of:
"csv""json" - insightstringOne of:
"FUNNELS""JSON""LIFECYCLE""PATHS""RETENTION""SQL""STICKINESS""TRENDS" - last_viewed_date_fromstring
- last_viewed_date_tostring
- limitinteger
- offsetinteger
- refreshstringDefault:
force_cacheOne of:"async""async_except_on_cache_miss""blocking""force_async""force_blocking""force_cache""lazy_async" - savedboolean
- searchstring
- short_idstring
- tagsstring
- userboolean
Response
Example request
GET /api /projects /:project_id /insightsExample response
Status 200
Create insights
Also available via the PostHog MCP server:
insight-create— Create insight
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Required API key scopes
insight:writeQuery parameters
- formatstringOne of:
"csv""json"
Request parameters
- namestringnull
- derived_namestringnull
- query
- orderintegernull
- deletedboolean
- dashboardsarray
- descriptionstringnull
- tagsarray
- favoritedboolean
- _create_in_folderstring
Response
Example request
POST /api /projects /:project_id /insightsExample response
Status 201
List all insights sharing
Required API key scopes
sharing_configuration:readPath parameters
- insight_idinteger
Example request
GET /api /projects /:project_id /insights /:insight_id /sharingExample response
Status 200
Create insights sharing passwords
Create a new password for the sharing configuration.
Required API key scopes
sharing_configuration:writePath parameters
- insight_idinteger
Request parameters
- enabledboolean
- settings
- password_requiredboolean
Response
Example request
POST /api /projects /:project_id /insights /:insight_id /sharing /passwordsExample response
Status 200
Delete insights sharing passwords
Delete a password from the sharing configuration.
Required API key scopes
sharing_configuration:writePath parameters
- insight_idinteger
- password_idstring
Example request
DELETE /api /projects /:project_id /insights /:insight_id /sharing /passwords /:password_idExample response
Status 204 No response body
Create insights sharing refresh
Required API key scopes
sharing_configuration:writePath parameters
- insight_idinteger
Request parameters
- enabledboolean
- settings
- password_requiredboolean
Response
Example request
POST /api /projects /:project_id /insights /:insight_id /sharing /refreshExample response
Status 200
List all insights thresholds
Required API key scopes
alert:readPath parameters
- insight_idinteger
Query parameters
- limitinteger
- offsetinteger
Response
Example request
GET /api /projects /:project_id /insights /:insight_id /thresholdsExample response
Status 200
Retrieve insights thresholds
Required API key scopes
alert:readPath parameters
- idstring
- insight_idinteger
Response
Example request
GET /api /projects /:project_id /insights /:insight_id /thresholds /:idExample response
Status 200
Retrieve insights
Also available via the PostHog MCP server:
insight-get— Get insight
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Required API key scopes
insight:readPath parameters
- id
Query parameters
- filters_overridestring
- formatstringOne of:
"csv""json" - from_dashboardinteger
- refreshstringDefault:
force_cacheOne of:"async""async_except_on_cache_miss""blocking""force_async""force_blocking""force_cache""lazy_async" - variables_overridestring
Response
Example request
GET /api /projects /:project_id /insights /:idExample response
Status 200
Update insights
Also available via the PostHog MCP server:
insight-update— Update insight
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Required API key scopes
insight:writePath parameters
- id
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- namestringnull
- derived_namestringnull
- query
- orderintegernull
- deletedboolean
- dashboardsarray
- descriptionstringnull
- tagsarray
- favoritedboolean
- _create_in_folderstring
Response
Example request
PATCH /api /projects /:project_id /insights /:idExample response
Status 200
Delete insights
Also available via the PostHog MCP server:
insight-delete— Delete insight
Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
Required API key scopes
insight:writePath parameters
- id
Query parameters
- formatstringOne of:
"csv""json"
Example request
DELETE /api /projects /:project_id /insights /:idExample response
Status 405 No response body
Retrieve insights activity
Also available via the PostHog MCP server:
insights-activity-retrieve— Get insight activity log
Audit trail for a single insight — every change made to it, by whom, and when. Use this when you want the change history of a specific insight; use the project-wide activity endpoint for a broader view.
Required API key scopes
activity_log:readPath parameters
- idinteger
Query parameters
- formatstringOne of:
"csv""json" - limitinteger
- pageinteger
Response
Example request
GET /api /projects /:project_id /insights /:id /activityExample response
Status 200
Retrieve insights analyze
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Path parameters
- idinteger
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /insights /:id /analyzeExample response
Status 200 No response body
Retrieve insights suggestions
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Path parameters
- idinteger
Query parameters
- formatstringOne of:
"csv""json"
Example request
GET /api /projects /:project_id /insights /:id /suggestionsExample response
Status 200 No response body
Create insights suggestions
DRF ViewSet mixin that gates coalesced responses behind permission checks.
The QueryCoalescingMiddleware attaches cached response data to request.META["_coalesced_response"] for followers. This mixin runs DRF's initial() (auth + permissions + throttling) before returning the cached response, ensuring the request is authorized.
Path parameters
- idinteger
Query parameters
- formatstringOne of:
"csv""json"
Request parameters
- namestringnull
- derived_namestringnull
- query
- orderintegernull
- deletedboolean
- dashboardsarray
- descriptionstringnull
- tagsarray
- favoritedboolean
- _create_in_folderstring
Example request
POST /api /projects /:project_id /insights /:id /suggestionsExample response
Status 200 No response body
Retrieve insights all activity
Also available via the PostHog MCP server:
insights-all-activity-retrieve— Get recent insight activity across the project
Project-wide audit trail across all insights — who created, edited, deleted, or restored insights, what changed (with before/after diffs), and when. Useful for surfacing what people (or agents) have been working on recently.
Required API key scopes
activity_log:readQuery parameters
- formatstringOne of:
"csv""json" - limitinteger
- pageinteger
Response
Example request
GET /api /projects /:project_id /insights /activity