Insights
For instructions on how to authenticate to use this endpoint, see API overview.
Endpoints
List all insights
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- created_byinteger
- formatstringOne of:"csv""json"
- limitintegerNumber of results to return per page. 
- offsetintegerThe initial index from which to return the results. 
- refreshstringDefault:force_cacheOne of:"async""async_except_on_cache_miss""blocking""force_async""force_blocking""force_cache""lazy_async"Whether to refresh the retrieved insights, how aggresively, and if sync or async: - 'force_cache'- return cached data or a cache miss; always completes immediately as it never calculates
- 'blocking'- calculate synchronously (returning only when the query is done), UNLESS there are very fresh results in the cache
- 'async'- kick off background calculation (returning immediately with a query status), UNLESS there are very fresh results in the cache
- 'lazy_async'- kick off background calculation, UNLESS there are somewhat fresh results in the cache
- 'force_blocking'- calculate synchronously, even if fresh results are already cached
- 'force_async'- kick off background calculation, even if fresh results are already cached Background calculation can be tracked using the- query_statusresponse field.
 
- short_idstring
Response
Request
GET 
Response
Status 200
Create insights
Required API key scopes
insight:writePath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Response
Request
POST 
Response
Status 201
List all insights sharing
Required API key scopes
sharing_configuration:readPath parameters
- insight_idinteger
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Request
GET 
Response
Status 200
Retrieve insights
Required API key scopes
insight:readPath parameters
- idintegerA unique integer value identifying this insight. 
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
- from_dashboardintegerOnly if loading an insight in the context of a dashboard: The relevant dashboard's ID. When set, the specified dashboard's filters and date range override will be applied. 
- refreshstringDefault:force_cacheOne of:"async""async_except_on_cache_miss""blocking""force_async""force_blocking""force_cache""lazy_async"Whether to refresh the insight, how aggresively, and if sync or async: - 'force_cache'- return cached data or a cache miss; always completes immediately as it never calculates
- 'blocking'- calculate synchronously (returning only when the query is done), UNLESS there are very fresh results in the cache
- 'async'- kick off background calculation (returning immediately with a query status), UNLESS there are very fresh results in the cache
- 'lazy_async'- kick off background calculation, UNLESS there are somewhat fresh results in the cache
- 'force_blocking'- calculate synchronously, even if fresh results are already cached
- 'force_async'- kick off background calculation, even if fresh results are already cached Background calculation can be tracked using the- query_statusresponse field.
 
Response
Request
GET 
Response
Status 200
Update insights
Required API key scopes
insight:writePath parameters
- idintegerA unique integer value identifying this insight. 
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Response
Request
PATCH 
Response
Status 200
Delete insights
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
- idintegerA unique integer value identifying this insight. 
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
DELETE 
Response
Status 405 No response body
Retrieve insights activity retrieve
Required API key scopes
activity_log:readPath parameters
- idintegerA unique integer value identifying this insight. 
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create insights viewed
Path parameters
- idintegerA unique integer value identifying this insight. 
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Request
POST 
Response
Status 200 No response body
Retrieve insights activity
Required API key scopes
activity_log:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create insights cancel
Path parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Request
POST 
Response
Status 200 No response body
Retrieve insights funnel
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create funnels
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- eventsarrayEvents to filter on. One of eventsoractionsis required.
- actionsarrayActions to filter on. One of eventsoractionsis required.
- propertiesFilter events by event property, person property, cohort, groups and more. 
- filter_test_accountsbooleanWhether to filter out internal and test accounts. See "project settings" in your PostHog account for the filters. 
- date_fromstringDefault:-7dWhat date to filter the results from. Can either be a date 2021-01-01, or a relative date, like-7dfor last seven days,-1mfor last month,mStartfor start of the month oryStartfor the start of the year.
- date_tostringDefault:-7dWhat date to filter the results to. Can either be a date 2021-01-01, or a relative date, like-7dfor last seven days,-1mfor last month,mStartfor start of the month oryStartfor the start of the year.
- breakdownstringA property or cohort to break down on. You can select the type of the property with breakdown_type. - event(default): a property key
- person: a person property key
- cohort: an array of cohort IDs (ie- [9581,5812])
 
- breakdown_typeDefault:eventType of property to break down on. - event- event
- person- person
- cohort- cohort
- group- group
- session- session
- hogql- hogql
 
- funnel_window_intervalintegerDefault:14Funnel window size. Set in combination with funnel_window_interval, so defaults to 'days'. 
- funnel_window_interval_typeDefault:daysThe type of interval. Used in combination with funnel_window_intervals.- DAY- DAY
- SECOND- SECOND
- MINUTE- MINUTE
- HOUR- HOUR
- WEEK- WEEK
- MONTH- MONTH
 
- funnel_viz_typeDefault:stepsThe visualisation type. - stepsTrack instances progress between steps of the funnel
- trendsTrack how this funnel's conversion rate is trending over time.
- time_to_convertTrack how long it takes for instances to convert
 - trends- trends
- time_to_convert- time_to_convert
- steps- steps
 
- funnel_order_typeDefault:ordered- ordered- Step B must happen after Step A, but any number events can happen between A and B.
- strict- Step B must happen directly after Step A without any events in between.
- unordered- Steps can be completed in any sequence.
 - strict- strict
- unordered- unordered
- ordered- ordered
 
- exclusionsarrayExclude users/groups that completed the specified event between two specific steps. Note that these users/groups will be completely excluded from the entire funnel. 
- aggregation_group_type_indexinteger0Aggregate by users or by groups. 0means user,>0means a group. See interface for the corresponding ID of the group.
- breakdown_limitintegerDefault:10
- funnel_window_daysintegerDefault:14(DEPRECATED) Funnel window size in days. Use funnel_window_intervalandfunnel_window_interval_type
Response
Request
POST 
Response
Status 200 Note, if funnel_viz_type is set the response will be different.
Retrieve insights funnel correlation
Path parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create insights funnel correlation
Path parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Request
POST 
Response
Status 200 No response body
Retrieve insights my last viewed
Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.
Path parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Retrieve insights path
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create insights path
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Request
POST 
Response
Status 200 No response body
Retrieve insights retention
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request
GET 
Response
Status 200 No response body
Create insights retention
Required API key scopes
insight:readPath parameters
- project_idstringProject ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. 
Query parameters
- formatstringOne of:"csv""json"
Request parameters
- namestring
- derived_namestring
- filters
- queryQuery node JSON string 
- orderinteger
- deletedboolean
- dashboardsarrayDEPRECATED. Will be removed in a future release. Use dashboard_tiles instead. A dashboard ID for each of the dashboards that this insight is displayed on.
- descriptionstring
- tagsarray
- favoritedboolean
- savedboolean
Request
POST