PostHog

Open source product analytics

posthog.com/docs/api ↗
Version
1.0.0
OpenAPI
3.0.3
Endpoints
388
Schemas
380
52
Quality
Updated
3 days ago
Analytics analytics product open-source
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://app.posthog.com
https://eu.posthog.com

Endpoints

Clear filters

Actions 2 endpoints

GET /api/projects/{project_id}/actions
operationId: actions_list

Parameters

Name In Required Type Description
format query optional string
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/actions
GET /api/projects/{project_id}/actions/{id}
operationId: actions_retrieve

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this action.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/actions/{id}

Activitylog 2 endpoints

GET /api/projects/{project_id}/activity_log
operationId: Activitylog_getActivityLog

Parameters

Name In Required Type Description
cursor query optional string

The pagination cursor value.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/activity_log
GET /api/projects/{project_id}/activity_log/important_changes
operationId: Activitylog_getImportantChanges

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/activity_log/important_changes

Annotations 2 endpoints

GET /api/projects/{project_id}/annotations

Create, Read, Update and Delete annotations. See docs for more information on annotations.

operationId: annotations_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

search query optional string

A search term.

Responses

200
GET /api/projects/{project_id}/annotations
GET /api/projects/{project_id}/annotations/{id}

Create, Read, Update and Delete annotations. See docs for more information on annotations.

operationId: annotations_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this annotation.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/annotations/{id}

Appmetrics 4 endpoints

GET /api/projects/{project_id}/app_metrics/{id}
operationId: Appmetrics_getAppMetricsById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/app_metrics/{id}
GET /api/projects/{project_id}/app_metrics/{id}/error_details
operationId: Appmetrics_getErrorDetails

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/app_metrics/{id}/error_details
GET /api/projects/{project_id}/app_metrics/{plugin_config_id}/historical_exports
operationId: Appmetrics_getHistoricalExports

Parameters

Name In Required Type Description
plugin_config_id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/app_metrics/{plugin_config_id}/historical_exports
GET /api/projects/{project_id}/app_metrics/{plugin_config_id}/historical_exports/{id}
operationId: Appmetrics_getHistoricalExportsById

Parameters

Name In Required Type Description
id path required string
plugin_config_id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/app_metrics/{plugin_config_id}/historical_exports/{id}

Batchexports 6 endpoints

GET /api/projects/{project_id}/batch_exports
operationId: Batchexports_getMultipleRuns

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/batch_exports
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/logs
operationId: Batchexports_getLogs

Parameters

Name In Required Type Description
batch_export_id path required string
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/logs
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs

Get all BatchExportRuns for a BatchExport.

operationId: Batchexports_getRuns

Parameters

Name In Required Type Description
batch_export_id path required string
cursor query optional string

The pagination cursor value.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs/{id}
operationId: Batchexports_getRunsRetrieve

Parameters

Name In Required Type Description
batch_export_id path required string
id path required string

A UUID string identifying this batch export run.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs/{id}
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs/{run_id}/logs
operationId: Batchexports_getLogs

Parameters

Name In Required Type Description
batch_export_id path required string
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

run_id path required string

Responses

200
GET /api/projects/{project_id}/batch_exports/{batch_export_id}/runs/{run_id}/logs
GET /api/projects/{project_id}/batch_exports/{id}
operationId: Batchexports_getMultipleRuns

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this batch export.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/batch_exports/{id}

Cohorts 4 endpoints

GET /api/projects/{project_id}/cohorts
operationId: cohorts_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/cohorts
GET /api/projects/{project_id}/cohorts/{id}
operationId: cohorts_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this cohort.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/cohorts/{id}
GET /api/projects/{project_id}/cohorts/{id}/duplicate_as_static_cohort
operationId: Cohorts_duplicateAsStaticCohortRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this cohort.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/cohorts/{id}/duplicate_as_static_cohort
GET /api/projects/{project_id}/cohorts/{id}/persons
operationId: Cohorts_listPersons

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this cohort.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/cohorts/{id}/persons

Dashboardtemplates 3 endpoints

GET /api/projects/{project_id}/dashboard_templates
operationId: Dashboardtemplates_getList

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboard_templates
GET /api/projects/{project_id}/dashboard_templates/json_schema
operationId: Dashboardtemplates_getJsonSchema

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboard_templates/json_schema
GET /api/projects/{project_id}/dashboard_templates/{id}
operationId: Dashboardtemplates_getById

Parameters

Name In Required Type Description
id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboard_templates/{id}

Dashboards 4 endpoints

GET /api/projects/{project_id}/dashboards
operationId: dashboards_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboards
GET /api/projects/{project_id}/dashboards/{dashboard_id}/collaborators
operationId: Dashboards_listCollaborators

Parameters

Name In Required Type Description
dashboard_id path required integer
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboards/{dashboard_id}/collaborators
GET /api/projects/{project_id}/dashboards/{dashboard_id}/sharing
operationId: Dashboards_sharingList

Parameters

Name In Required Type Description
dashboard_id path required integer
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboards/{dashboard_id}/sharing
GET /api/projects/{project_id}/dashboards/{id}
operationId: dashboards_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this dashboard.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/dashboards/{id}

Earlyaccessfeature 2 endpoints

GET /api/projects/{project_id}/early_access_feature
operationId: Earlyaccessfeature_getEarlyAccessFeature

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/early_access_feature
GET /api/projects/{project_id}/early_access_feature/{id}
operationId: Earlyaccessfeature_getData

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this early access feature.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/early_access_feature/{id}

Eventdefinitions 2 endpoints

GET /api/projects/{project_id}/event_definitions
operationId: Eventdefinitions_list

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/event_definitions
GET /api/projects/{project_id}/event_definitions/{id}
operationId: Eventdefinitions_getById

Parameters

Name In Required Type Description
id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/event_definitions/{id}

Events 3 endpoints

GET /api/projects/{project_id}/events
    This endpoint allows you to list and filter events.
    It is effectively deprecated and is kept only for backwards compatibility.
    If you ever ask about it you will be advised to not use it...
    If you want to ad-hoc list or aggregate events, use the Query endpoint instead.
    If you want to export all events or many pages of events you should use our CDP/Batch Exports products instead.
operationId: events_list

Parameters

Name In Required Type Description
after query optional string

Only return events with a timestamp after this time.

before query optional string

Only return events with a timestamp before this time.

distinct_id query optional integer

Filter list by distinct id.

event query optional string

Filter list by event. For example user sign up or $pageview.

format query optional string
limit query optional integer

The maximum number of results to return

offset query optional integer

The initial index from which to return the results.

person_id query optional integer

Filter list by person id.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

properties query optional array

Filter events by event property, person property, cohort, groups and more.

select query optional array

(Experimental) JSON-serialized array of HogQL expressions to return

where query optional array

(Experimental) JSON-serialized array of HogQL expressions that must pass

Responses

200
GET /api/projects/{project_id}/events
GET /api/projects/{project_id}/events/values
operationId: Events_getValues

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/events/values
GET /api/projects/{project_id}/events/{id}
operationId: events_retrieve

Parameters

Name In Required Type Description
format query optional string
id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/events/{id}

Experiments 5 endpoints

GET /api/projects/{project_id}/experiments
operationId: experiments_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/experiments
GET /api/projects/{project_id}/experiments/requires_flag_implementation
operationId: Experiments_getRequiresFlagImplementation

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/experiments/requires_flag_implementation
GET /api/projects/{project_id}/experiments/{id}
operationId: experiments_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this experiment.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/experiments/{id}
GET /api/projects/{project_id}/experiments/{id}/results
operationId: Experiments_getResults

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this experiment.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/experiments/{id}/results
GET /api/projects/{project_id}/experiments/{id}/secondary_results
operationId: Experiments_getSecondaryResults

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this experiment.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/experiments/{id}/secondary_results

Explicitmembers 2 endpoints

GET /api/projects/{project_id}/explicit_members
operationId: Explicitmembers_getMembers

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/explicit_members
GET /api/projects/{project_id}/explicit_members/{parent_membership__user__uuid}
operationId: Explicitmembers_getMembersByParentMembershipUserUuid

Parameters

Name In Required Type Description
parent_membership__user__uuid path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/explicit_members/{parent_membership__user__uuid}

Exports 3 endpoints

GET /api/projects/{project_id}/exports
operationId: exports_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/exports
GET /api/projects/{project_id}/exports/{id}
operationId: exports_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this exported asset.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/exports/{id}
GET /api/projects/{project_id}/exports/{id}/content
operationId: Exports_contentRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this exported asset.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/exports/{id}/content

Featureflags 9 endpoints

GET /api/projects/{project_id}/feature_flags

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_getFeatureFlags

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags
GET /api/projects/{project_id}/feature_flags/activity

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_getFeatureFlagsActivity

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/activity
GET /api/projects/{project_id}/feature_flags/evaluation_reasons

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_getEvaluationReasons

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/evaluation_reasons
GET /api/projects/{project_id}/feature_flags/local_evaluation

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_localEvaluationRetrieve

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/local_evaluation
GET /api/projects/{project_id}/feature_flags/my_flags

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_readMyFlags

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/my_flags
GET /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access
operationId: Featureflags_getRoleAccess

Parameters

Name In Required Type Description
feature_flag_id path required integer
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access
GET /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access/{id}
operationId: Featureflags_getRoleAccessById

Parameters

Name In Required Type Description
feature_flag_id path required integer
id path required integer

A unique integer value identifying this feature flag role access.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access/{id}
GET /api/projects/{project_id}/feature_flags/{id}

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_readFeatureFlagById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this feature flag.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/{id}
GET /api/projects/{project_id}/feature_flags/{id}/activity

Create, read, update and delete feature flags. See docs for more information on feature flags.

If you’re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.

operationId: Featureflags_getFeatureFlagActivity

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this feature flag.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/feature_flags/{id}/activity

Groups 5 endpoints

GET /api/projects/{project_id}/groups

List all groups of a specific group type. You must pass ?group_type_index= in the URL. To get a list of valid group types, call /api/:project_id/groups_types/

operationId: groups_list

Parameters

Name In Required Type Description
cursor query optional string

The pagination cursor value.

group_type_index query required integer

Specify the group type to list

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

search query required string

Search the group name

Responses

200
GET /api/projects/{project_id}/groups
GET /api/projects/{project_id}/groups/find
operationId: Groups_getGroupsFind

Parameters

Name In Required Type Description
group_key query required string

Specify the key of the group to find

group_type_index query required integer

Specify the group type to find

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/groups/find
GET /api/projects/{project_id}/groups/property_definitions
operationId: Groups_getPropertyDefinitions

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/groups/property_definitions
GET /api/projects/{project_id}/groups/property_values
operationId: Groups_getPropertyValues

Parameters

Name In Required Type Description
group_type_index query required integer

Specify the group type to find property values of

key query required string

Specify the property key to find values for

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/groups/property_values
GET /api/projects/{project_id}/groups/related
operationId: Groups_getRelatedGroups

Parameters

Name In Required Type Description
group_type_index query required integer

Specify the group type to find

id query required string

Specify the id of the user to find groups for

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/groups/related

Groupstypes 1 endpoints

GET /api/projects/{project_id}/groups_types
operationId: Groupstypes_list

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/groups_types

Insights 11 endpoints

GET /api/projects/{project_id}/insights
operationId: insights_list

Parameters

Name In Required Type Description
created_by query optional integer
format query optional string
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id query optional string

Responses

200
GET /api/projects/{project_id}/insights
GET /api/projects/{project_id}/insights/activity
operationId: Insights_getActivityData

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/activity
GET /api/projects/{project_id}/insights/funnel
operationId: Insights_getFunnelSummary

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/funnel
GET /api/projects/{project_id}/insights/funnel/correlation
operationId: Insights_funnelCorrelationRetrieve

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/funnel/correlation
GET /api/projects/{project_id}/insights/my_last_viewed

Returns basic details about the last 5 insights viewed by this user. Most recently viewed first.

operationId: Insights_listLastViewed

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/my_last_viewed
GET /api/projects/{project_id}/insights/path
operationId: Insights_getPath

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/path
GET /api/projects/{project_id}/insights/retention
operationId: Insights_projectRetentionGet

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/retention
GET /api/projects/{project_id}/insights/trend
operationId: Insights_getTrend

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/trend
GET /api/projects/{project_id}/insights/{id}
operationId: insights_retrieve

Parameters

Name In Required Type Description
format query optional string
from_dashboard query optional integer

When loading an insight for a dashboard pass a from_dashboard query parameter containing the dashboard ID

e.g. "/api/projects/{team_id}/insights/{insight_id}?from_dashboard={dashboard_id}"

Insights can be added to more than one dashboard, this allows the insight to be loaded in the correct context.

Using the correct cache and enriching the response with dashboard specific config (e.g. layouts or colors)

id path required integer

A unique integer value identifying this insight.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

refresh query optional boolean
            The client can request that an insight be refreshed by setting the `refresh=true` parameter.
            The server will then decide if the data should or not be refreshed based on a set of heuristics
            meant to determine the staleness of cached data. The result will contain as `is_cached` field
            that indicates whether the insight was actually refreshed or not through the request.

Responses

200
GET /api/projects/{project_id}/insights/{id}
GET /api/projects/{project_id}/insights/{id}/activity
operationId: Insights_getActivityData

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this insight.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/{id}/activity
GET /api/projects/{project_id}/insights/{insight_id}/sharing
operationId: Insights_getSharing

Parameters

Name In Required Type Description
insight_id path required integer
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/insights/{insight_id}/sharing

Notebooks 4 endpoints

GET /api/projects/{project_id}/notebooks

The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.

operationId: notebooks_list

Parameters

Name In Required Type Description
contains query optional string

Filter for notebooks that match a provided filter.
Each match pair is separated by a colon,
multiple match pairs can be sent separated by a space or a comma

created_by query optional integer

The UUID of the Notebook’s creator

date_from query optional string

Filter for notebooks created after this date & time

date_to query optional string

Filter for notebooks created before this date & time

limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

user query optional string

If any value is provided for this parameter, return notebooks created by the logged in user.

Responses

200
GET /api/projects/{project_id}/notebooks
GET /api/projects/{project_id}/notebooks/activity

The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.

operationId: Notebooks_getActivityList

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/notebooks/activity
GET /api/projects/{project_id}/notebooks/{short_id}

The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.

operationId: notebooks_retrieve

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id path required string

Responses

200
GET /api/projects/{project_id}/notebooks/{short_id}
GET /api/projects/{project_id}/notebooks/{short_id}/activity

The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement.

operationId: Notebooks_getActivityList

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id path required string

Responses

200
GET /api/projects/{project_id}/notebooks/{short_id}/activity

Organizations 55 endpoints

GET /api/organizations
operationId: Organizations_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

Responses

200
GET /api/organizations
GET /api/organizations/{id}
operationId: Organizations_getById

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this organization.

Responses

200
GET /api/organizations/{id}
GET /api/organizations/{organization_id}/batch_exports
operationId: Organizations_batchExportsList

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/batch_exports
GET /api/organizations/{organization_id}/batch_exports/{id}
operationId: Organizations_getBatchExportsById

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this batch export.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/batch_exports/{id}
GET /api/organizations/{organization_id}/domains
operationId: domains_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/domains
GET /api/organizations/{organization_id}/domains/{id}
operationId: domains_retrieve

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this domain.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/domains/{id}
GET /api/organizations/{organization_id}/invites
operationId: invites_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/invites
GET /api/organizations/{organization_id}/members
operationId: members_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/members
GET /api/organizations/{organization_id}/pipeline_destinations
operationId: Organizations_listPipelineDestinations

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations
GET /api/organizations/{organization_id}/pipeline_destinations/activity
operationId: Organizations_getPipelineDestinationsActivity

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/activity
GET /api/organizations/{organization_id}/pipeline_destinations/exports_unsubscribe_configs
operationId: Organizations_getPipelineDestinationsExportsUnsubscribeConfigs

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/exports_unsubscribe_configs
GET /api/organizations/{organization_id}/pipeline_destinations/repository
operationId: Organizations_getPipelineDestinationRepository

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/repository
GET /api/organizations/{organization_id}/pipeline_destinations/unused
operationId: Organizations_getPipelineDestinationsUnused

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/unused
GET /api/organizations/{organization_id}/pipeline_destinations/{id}
operationId: Organizations_getPipelineDestinations

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/{id}
GET /api/organizations/{organization_id}/pipeline_destinations/{id}/check_for_updates
operationId: Organizations_checkForUpdates

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/{id}/check_for_updates
GET /api/organizations/{organization_id}/pipeline_destinations/{id}/source
operationId: Organizations_getPipelineDestinationsSource

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_destinations/{id}/source
GET /api/organizations/{organization_id}/pipeline_frontend_apps
operationId: Organizations_listPipelineFrontendApps

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps
GET /api/organizations/{organization_id}/pipeline_frontend_apps/activity
operationId: Organizations_getPipelineFrontendAppsActivity

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/activity
GET /api/organizations/{organization_id}/pipeline_frontend_apps/exports_unsubscribe_configs
operationId: Organizations_getPipelineFrontendAppExportsUnsubscribeConfigs

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/exports_unsubscribe_configs
GET /api/organizations/{organization_id}/pipeline_frontend_apps/repository
operationId: Organizations_getPipelineFrontendAppsRepository

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/repository
GET /api/organizations/{organization_id}/pipeline_frontend_apps/unused
operationId: Organizations_getPipelineFrontendAppsUnused

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/unused
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}
operationId: Organizations_getPipelineFrontendAppsById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}/check_for_updates
operationId: Organizations_pipelineFrontendAppsCheckForUpdatesRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}/check_for_updates
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}/source
operationId: Organizations_getPipelineFrontendAppsSource

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_frontend_apps/{id}/source
GET /api/organizations/{organization_id}/pipeline_import_apps
operationId: Organizations_getPipelineImportApps

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps
GET /api/organizations/{organization_id}/pipeline_import_apps/activity
operationId: Organizations_getPipelineImportAppsActivity

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/activity
GET /api/organizations/{organization_id}/pipeline_import_apps/exports_unsubscribe_configs
operationId: Organizations_pipelineImportAppsExportsUnsubscribeConfigsRetrieve

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/exports_unsubscribe_configs
GET /api/organizations/{organization_id}/pipeline_import_apps/repository
operationId: Organizations_getPipelineImportAppsRepository

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/repository
GET /api/organizations/{organization_id}/pipeline_import_apps/unused
operationId: Organizations_getUnusedPipelineImportApps

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/unused
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}
operationId: Organizations_getPipelineImportApp

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}/check_for_updates
operationId: Organizations_pipelineImportAppsCheckForUpdatesRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}/check_for_updates
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}/source
operationId: Organizations_getPipelineImportAppsSource

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_import_apps/{id}/source
GET /api/organizations/{organization_id}/pipeline_transformations
operationId: Organizations_getPipelineTransformations

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations
GET /api/organizations/{organization_id}/pipeline_transformations/activity
operationId: Organizations_getPipelineTransformationsActivity

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/activity
GET /api/organizations/{organization_id}/pipeline_transformations/exports_unsubscribe_configs
operationId: Organizations_getPipelineTransformationExportsUnsubscribeConfigs

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/exports_unsubscribe_configs
GET /api/organizations/{organization_id}/pipeline_transformations/repository
operationId: Organizations_getPipelineTransformationsRepository

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/repository
GET /api/organizations/{organization_id}/pipeline_transformations/unused
operationId: Organizations_getUnusedPipelineTransformations

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/unused
GET /api/organizations/{organization_id}/pipeline_transformations/{id}
operationId: Organizations_getPipelineTransformation

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/{id}
GET /api/organizations/{organization_id}/pipeline_transformations/{id}/check_for_updates
operationId: Organizations_getPipelineTransformationCheckForUpdates

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/{id}/check_for_updates
GET /api/organizations/{organization_id}/pipeline_transformations/{id}/source
operationId: Organizations_pipelineTransformationsSourceRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/pipeline_transformations/{id}/source
GET /api/organizations/{organization_id}/plugins
operationId: plugins_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins
GET /api/organizations/{organization_id}/plugins/activity
operationId: Organizations_getPluginsActivity

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/activity
GET /api/organizations/{organization_id}/plugins/exports_unsubscribe_configs
operationId: Organizations_getPluginsExportsUnsubscribeConfigs

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/exports_unsubscribe_configs
GET /api/organizations/{organization_id}/plugins/repository
operationId: Organizations_getPluginsRepository

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/repository
GET /api/organizations/{organization_id}/plugins/unused
operationId: Organizations_getPluginsUnused

Parameters

Name In Required Type Description
organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/unused
GET /api/organizations/{organization_id}/plugins/{id}
operationId: plugins_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/{id}
GET /api/organizations/{organization_id}/plugins/{id}/check_for_updates
operationId: Organizations_pluginsCheckForUpdates

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/{id}/check_for_updates
GET /api/organizations/{organization_id}/plugins/{id}/source
operationId: Organizations_pluginsSourceRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/plugins/{id}/source
GET /api/organizations/{organization_id}/projects

Projects for the current organization.

operationId: Organizations_getProjects

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/projects
GET /api/organizations/{organization_id}/projects/{id}

Projects for the current organization.

operationId: Organizations_getProjectsById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this team.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/projects/{id}
GET /api/organizations/{organization_id}/projects/{id}/activity

Projects for the current organization.

operationId: activity_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this team.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/projects/{id}/activity
GET /api/organizations/{organization_id}/projects/{id}/is_generating_demo_data

Projects for the current organization.

operationId: Organizations_getIsGeneratingDemoData

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this team.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/projects/{id}/is_generating_demo_data
GET /api/organizations/{organization_id}/roles
operationId: roles_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/roles
GET /api/organizations/{organization_id}/roles/{id}
operationId: roles_retrieve

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this role.

organization_id path required string

Responses

200
GET /api/organizations/{organization_id}/roles/{id}
GET /api/organizations/{organization_id}/roles/{role_id}/role_memberships
operationId: Organizations_listRoleMemberships

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

organization_id path required string
role_id path required string

Responses

200
GET /api/organizations/{organization_id}/roles/{role_id}/role_memberships

Persons 14 endpoints

GET /api/projects/{project_id}/persons

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: persons_list

Parameters

Name In Required Type Description
distinct_id query optional string

Filter list by distinct id.

email query optional string

Filter persons by email (exact match)

format query optional string
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

properties query optional array

Filter Persons by person properties.

search query optional string

Search persons, either by email (full text search) or distinct_id (exact match).

Responses

200
GET /api/projects/{project_id}/persons
GET /api/projects/{project_id}/persons/activity

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getActivity

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/activity
GET /api/projects/{project_id}/persons/cohorts

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_listCohorts

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/cohorts
GET /api/projects/{project_id}/persons/funnel

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getFunnel

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/funnel
GET /api/projects/{project_id}/persons/funnel/correlation

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_funnelCorrelationRetrieve

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/funnel/correlation
GET /api/projects/{project_id}/persons/lifecycle

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getLifecyclePath

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/lifecycle
GET /api/projects/{project_id}/persons/path

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getPath

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/path
GET /api/projects/{project_id}/persons/retention

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_retentionRetrieve

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/retention
GET /api/projects/{project_id}/persons/stickiness

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getStickiness

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/stickiness
GET /api/projects/{project_id}/persons/trends

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getTrends

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/trends
GET /api/projects/{project_id}/persons/values

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getValues

Parameters

Name In Required Type Description
format query optional string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/values
GET /api/projects/{project_id}/persons/{id}

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: persons_retrieve

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this person.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/{id}
GET /api/projects/{project_id}/persons/{id}/activity

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getActivity

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this person.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/{id}/activity
GET /api/projects/{project_id}/persons/{id}/properties_timeline

To create or update persons, use a PostHog library of your choice and use an identify call. This API endpoint is only for reading and deleting.

operationId: Persons_getPropertiesTimeline

Parameters

Name In Required Type Description
format query optional string
id path required integer

A unique integer value identifying this person.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/persons/{id}/properties_timeline

Pipelinedestinationconfigs 3 endpoints

GET /api/projects/{project_id}/pipeline_destination_configs
operationId: Pipelinedestinationconfigs_getList

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_destination_configs
GET /api/projects/{project_id}/pipeline_destination_configs/{id}
operationId: Pipelinedestinationconfigs_get

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_destination_configs/{id}
GET /api/projects/{project_id}/pipeline_destination_configs/{id}/frontend
operationId: Pipelinedestinationconfigs_getFrontend

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_destination_configs/{id}/frontend

Pipelinefrontendappsconfigs 3 endpoints

GET /api/projects/{project_id}/pipeline_frontend_apps_configs
operationId: Pipelinefrontendappsconfigs_get

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_frontend_apps_configs
GET /api/projects/{project_id}/pipeline_frontend_apps_configs/{id}
operationId: Pipelinefrontendappsconfigs_getById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_frontend_apps_configs/{id}
GET /api/projects/{project_id}/pipeline_frontend_apps_configs/{id}/frontend
operationId: Pipelinefrontendappsconfigs_getFrontend

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_frontend_apps_configs/{id}/frontend

Pipelineimportappsconfigs 3 endpoints

GET /api/projects/{project_id}/pipeline_import_apps_configs
operationId: Pipelineimportappsconfigs_getPipelineImportAppsConfigsList

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_import_apps_configs
GET /api/projects/{project_id}/pipeline_import_apps_configs/{id}
operationId: Pipelineimportappsconfigs_getById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_import_apps_configs/{id}
GET /api/projects/{project_id}/pipeline_import_apps_configs/{id}/frontend
operationId: Pipelineimportappsconfigs_frontendRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_import_apps_configs/{id}/frontend

Pipelinetransformationconfigs 3 endpoints

GET /api/projects/{project_id}/pipeline_transformation_configs
operationId: Pipelinetransformationconfigs_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_transformation_configs
GET /api/projects/{project_id}/pipeline_transformation_configs/{id}
operationId: Pipelinetransformationconfigs_getById

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_transformation_configs/{id}
GET /api/projects/{project_id}/pipeline_transformation_configs/{id}/frontend
operationId: Pipelinetransformationconfigs_frontendRetrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/pipeline_transformation_configs/{id}/frontend

Pluginconfigs 4 endpoints

GET /api/projects/{project_id}/plugin_configs
operationId: Pluginconfigs_getByProjectId

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/plugin_configs
GET /api/projects/{project_id}/plugin_configs/{id}
operationId: Pluginconfigs_getByProjectId

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/plugin_configs/{id}
GET /api/projects/{project_id}/plugin_configs/{id}/frontend
operationId: Pluginconfigs_getFrontend

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this plugin config.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/plugin_configs/{id}/frontend
GET /api/projects/{project_id}/plugin_configs/{plugin_config_id}/logs
operationId: Pluginconfigs_getLogs

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

plugin_config_id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/plugin_configs/{plugin_config_id}/logs

Propertydefinitions 3 endpoints

GET /api/projects/{project_id}/property_definitions
operationId: Propertydefinitions_getByProjectIdPropertyDefinitions

Parameters

Name In Required Type Description
event_names query optional string

If sent, response value will have is_seen_on_filtered_events populated. JSON-encoded

excluded_properties query optional string

JSON-encoded list of excluded properties

filter_by_event_names query optional boolean

Whether to return only properties for events in event_names

group_type_index query optional integer

What group type is the property for. Only should be set if type=group

is_feature_flag query optional boolean

Whether to return only (or excluding) feature flag properties

is_numerical query optional boolean

Whether to return only (or excluding) numerical property definitions

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

properties query optional string

Comma-separated list of properties to filter

search query optional string

Searches properties by name

type query optional string

What property definitions to return

  • event - event
  • person - person
  • group - group

Responses

200

No response body

GET /api/projects/{project_id}/property_definitions
GET /api/projects/{project_id}/property_definitions/seen_together

Allows a caller to provide a list of event names and a single property name
Returns a map of the event names to a boolean representing whether that property has ever been seen with that event_name

operationId: Propertydefinitions_getEventNamesSeenTogether

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/property_definitions/seen_together
GET /api/projects/{project_id}/property_definitions/{id}
operationId: Propertydefinitions_getById

Parameters

Name In Required Type Description
id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/property_definitions/{id}

Query 2 endpoints

GET /api/projects/{project_id}/query/draft_sql
operationId: Query_draftSqlRetrieve

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

No response body

GET /api/projects/{project_id}/query/draft_sql
GET /api/projects/{project_id}/query/{id}

(Experimental)

operationId: query_retrieve

Parameters

Name In Required Type Description
id path required string
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200

Query status

GET /api/projects/{project_id}/query/{id}

Sessionrecordingplaylists 3 endpoints

GET /api/projects/{project_id}/session_recording_playlists
operationId: Sessionrecordingplaylists_list

Parameters

Name In Required Type Description
created_by query optional integer
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id query optional string

Responses

200
GET /api/projects/{project_id}/session_recording_playlists
GET /api/projects/{project_id}/session_recording_playlists/{short_id}
operationId: Sessionrecordingplaylists_getByShortId

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id path required string

Responses

200
GET /api/projects/{project_id}/session_recording_playlists/{short_id}
GET /api/projects/{project_id}/session_recording_playlists/{short_id}/recordings
operationId: Sessionrecordingplaylists_getRecordings

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

short_id path required string

Responses

200
GET /api/projects/{project_id}/session_recording_playlists/{short_id}/recordings

Sessionrecordings 8 endpoints

GET /api/projects/{project_id}/session_recordings
operationId: Sessionrecordings_getMultiple

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings
GET /api/projects/{project_id}/session_recordings/error_clusters
operationId: Sessionrecordings_getErrorClusters

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/error_clusters
GET /api/projects/{project_id}/session_recordings/matching_events
    Gets a list of event ids that match the given session recording filter.
    The filter must include a single session ID.
    And must include at least one event or action filter.
    This API is intended for internal use and might have unannounced breaking changes.
operationId: Sessionrecordings_getSessionRecordingMatchingEvents

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/matching_events
GET /api/projects/{project_id}/session_recordings/properties
operationId: Sessionrecordings_getProperties

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/properties
GET /api/projects/{project_id}/session_recordings/{id}
operationId: Sessionrecordings_getById

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this session recording.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/{id}
GET /api/projects/{project_id}/session_recordings/{id}/similar_sessions
operationId: Sessionrecordings_getSimilarSessions

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this session recording.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/{id}/similar_sessions
GET /api/projects/{project_id}/session_recordings/{id}/snapshots

Snapshots can be loaded from multiple places:

  1. From S3 if the session is older than our ingestion limit. This will be multiple files that can be streamed to the client
  2. or from Redis if the session is newer than our ingestion limit.

Clients need to call this API twice.
First without a source parameter to get a list of sources supported by the given session.
And then once for each source in the returned list to get the actual snapshots.

NB version 1 of this API has been deprecated and ClickHouse stored snapshots are no longer supported.

operationId: Sessionrecordings_snapshotsRetrieve

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this session recording.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/session_recordings/{id}/snapshots
GET /api/projects/{project_id}/session_recordings/{recording_id}/sharing
operationId: Sessionrecordings_getSharing

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

recording_id path required string

Responses

200
GET /api/projects/{project_id}/session_recordings/{recording_id}/sharing

Subscriptions 2 endpoints

GET /api/projects/{project_id}/subscriptions
operationId: subscriptions_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/subscriptions
GET /api/projects/{project_id}/subscriptions/{id}
operationId: subscriptions_retrieve

Parameters

Name In Required Type Description
id path required integer

A unique integer value identifying this subscription.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/subscriptions/{id}

Surveys 3 endpoints

GET /api/projects/{project_id}/surveys
operationId: surveys_list

Parameters

Name In Required Type Description
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/surveys
GET /api/projects/{project_id}/surveys/responses_count
operationId: Surveys_getResponsesCount

Parameters

Name In Required Type Description
project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/surveys/responses_count
GET /api/projects/{project_id}/surveys/{id}
operationId: surveys_retrieve

Parameters

Name In Required Type Description
id path required string

A UUID string identifying this survey.

project_id path required string

Project ID of the project you’re trying to access. To find the ID of the project, make a call to /api/projects/.

Responses

200
GET /api/projects/{project_id}/surveys/{id}

Users 3 endpoints

GET /api/users
operationId: users_list

Parameters

Name In Required Type Description
is_staff query optional boolean
limit query optional integer

Number of results to return per page.

offset query optional integer

The initial index from which to return the results.

Responses

200
GET /api/users
GET /api/users/{uuid}
operationId: users_retrieve

Parameters

Name In Required Type Description
uuid path required string

Responses

200
GET /api/users/{uuid}
GET /api/users/{uuid}/start_2fa_setup
operationId: Users_start2faSetupRetrieve

Parameters

Name In Required Type Description
uuid path required string

Responses

200
GET /api/users/{uuid}/start_2fa_setup

Schemas

object Action
{
  "type": "object",
  "required": [
    "bytecode_error",
    "created_at",
    "created_by",
    "id",
    "is_action",
    "is_calculating",
    "team_id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "tags": {
      "type": "array",
      "items": {}
    },
    "steps": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ActionStep"
      }
    },
    "deleted": {
      "type": "boolean"
    },
    "team_id": {
      "type": "integer",
      "readOnly": true
    },
    "is_action": {
      "type": "boolean",
      "default": true,
      "readOnly": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "created_by": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "description": {
      "type": "string"
    },
    "post_to_slack": {
      "type": "boolean"
    },
    "bytecode_error": {
      "type": "string",
      "nullable": true,
      "readOnly": true
    },
    "is_calculating": {
      "type": "boolean",
      "readOnly": true
    },
    "last_calculated_at": {
      "type": "string",
      "format": "date-time"
    },
    "slack_message_format": {
      "type": "string",
      "maxLength": 600
    }
  },
  "description": "Serializer mixin that resolves appropriate response for tags depending on license.",
  "x-konfig-properties": {
    "created_by": {
      "readOnly": true
    }
  }
}
object ActionStep
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "url": {
      "type": "string",
      "nullable": true,
      "maxLength": 65535
    },
    "href": {
      "type": "string",
      "nullable": true,
      "maxLength": 65535
    },
    "name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "text": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "event": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "selector": {
      "type": "string",
      "nullable": true,
      "maxLength": 65535
    },
    "tag_name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "properties": {
      "nullable": true
    },
    "url_matching": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/UrlMatchingEnum"
        },
        {
          "$ref": "#/components/schemas/BlankEnum"
        },
        {
          "$ref": "#/components/schemas/NullEnum"
        }
      ],
      "nullable": true
    },
    "href_matching": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/UrlMatchingEnum"
        },
        {
          "$ref": "#/components/schemas/BlankEnum"
        },
        {
          "$ref": "#/components/schemas/NullEnum"
        }
      ],
      "nullable": true
    },
    "text_matching": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/UrlMatchingEnum"
        },
        {
          "$ref": "#/components/schemas/BlankEnum"
        },
        {
          "$ref": "#/components/schemas/NullEnum"
        }
      ],
      "nullable": true
    }
  }
}
object ActionsNode
{
  "type": "object",
  "title": "ActionsNode",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "kind": {
      "const": "ActionsNode",
      "title": "Kind",
      "default": "ActionsNode"
    },
    "math": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/BaseMathType"
        },
        {
          "$ref": "#/components/schemas/PropertyMathType"
        },
        {
          "$ref": "#/components/schemas/CountPerActorMathType"
        },
        {
          "const": "unique_group"
        },
        {
          "const": "hogql"
        }
      ],
      "title": "Math",
      "default": null,
      "nullable": true
    },
    "name": {
      "type": "string",
      "title": "Name",
      "default": null,
      "nullable": true
    },
    "response": {
      "type": "object",
      "title": "Response",
      "default": null,
      "nullable": true,
      "description": "Cached query response"
    },
    "math_hogql": {
      "type": "string",
      "title": "Math Hogql",
      "default": null,
      "nullable": true
    },
    "properties": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/EventPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/PersonPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/ElementPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/SessionPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/CohortPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/RecordingDurationFilter"
          },
          {
            "$ref": "#/components/schemas/GroupPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/FeaturePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/HogQLPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/EmptyPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePersonPropertyFilter"
          }
        ]
      },
      "title": "Properties",
      "default": null,
      "nullable": true,
      "description": "Properties configurable in the interface"
    },
    "custom_name": {
      "type": "string",
      "title": "Custom Name",
      "default": null,
      "nullable": true
    },
    "math_property": {
      "type": "string",
      "title": "Math Property",
      "default": null,
      "nullable": true
    },
    "fixedProperties": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/EventPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/PersonPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/ElementPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/SessionPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/CohortPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/RecordingDurationFilter"
          },
          {
            "$ref": "#/components/schemas/GroupPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/FeaturePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/HogQLPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/EmptyPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePersonPropertyFilter"
          }
        ]
      },
      "title": "Fixedproperties",
      "default": null,
      "nullable": true,
      "description": "Fixed properties in the query, can't be edited in the interface (e.g. scoping down by person)"
    },
    "math_group_type_index": {
      "$ref": "#/components/schemas/MathGroupTypeIndexNullable"
    }
  }
}
object ActivityLog
{
  "type": "object",
  "required": [
    "activity",
    "id",
    "scope",
    "unread",
    "user"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "user": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "scope": {
      "type": "string",
      "maxLength": 79
    },
    "detail": {
      "nullable": true
    },
    "unread": {
      "type": "boolean",
      "readOnly": true,
      "description": "is the date of this log item newer than the user's bookmark"
    },
    "item_id": {
      "type": "string",
      "nullable": true,
      "maxLength": 72
    },
    "activity": {
      "type": "string",
      "maxLength": 79
    },
    "is_system": {
      "type": "boolean",
      "nullable": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "organization_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true
    },
    "was_impersonated": {
      "type": "boolean",
      "nullable": true
    }
  }
}
object ActorsQuery
{
  "type": "object",
  "title": "ActorsQuery",
  "properties": {
    "kind": {
      "const": "ActorsQuery",
      "title": "Kind",
      "default": "ActorsQuery"
    },
    "limit": {
      "type": "integer",
      "title": "Limit",
      "default": null,
      "nullable": true
    },
    "offset": {
      "type": "integer",
      "title": "Offset",
      "default": null,
      "nullable": true
    },
    "search": {
      "type": "string",
      "title": "Search",
      "default": null,
      "nullable": true
    },
    "select": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "title": "Select",
      "default": null,
      "nullable": true
    },
    "source": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/InsightActorsQuery"
        },
        {
          "$ref": "#/components/schemas/FunnelsActorsQuery"
        },
        {
          "$ref": "#/components/schemas/FunnelCorrelationActorsQuery"
        },
        {
          "$ref": "#/components/schemas/HogQLQuery"
        }
      ],
      "title": "Source",
      "default": null,
      "nullable": true
    },
    "orderBy": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "title": "Orderby",
      "default": null,
      "nullable": true
    },
    "response": {
      "$ref": "#/components/schemas/ActorsQueryResponseNullable"
    },
    "properties": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/EventPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/PersonPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/ElementPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/SessionPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/CohortPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/RecordingDurationFilter"
          },
          {
            "$ref": "#/components/schemas/GroupPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/FeaturePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/HogQLPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/EmptyPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePersonPropertyFilter"
          }
        ]
      },
      "title": "Properties",
      "default": null,
      "nullable": true
    },
    "fixedProperties": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/EventPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/PersonPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/ElementPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/SessionPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/CohortPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/RecordingDurationFilter"
          },
          {
            "$ref": "#/components/schemas/GroupPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/FeaturePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/HogQLPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/EmptyPropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePropertyFilter"
          },
          {
            "$ref": "#/components/schemas/DataWarehousePersonPropertyFilter"
          }
        ]
      },
      "title": "Fixedproperties",
      "default": null,
      "nullable": true
    }
  }
}
object ActorsQueryResponse
{
  "type": "object",
  "title": "ActorsQueryResponse",
  "required": [
    "columns",
    "hogql",
    "limit",
    "offset",
    "results",
    "types"
  ],
  "properties": {
    "hogql": {
      "type": "string",
      "title": "Hogql"
    },
    "limit": {
      "type": "integer",
      "title": "Limit"
    },
    "types": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "title": "Types"
    },
    "offset": {
      "type": "integer",
      "title": "Offset"
    },
    "columns": {
      "type": "array",
      "items": {},
      "title": "Columns"
    },
    "hasMore": {
      "type": "boolean",
      "title": "Hasmore",
      "default": null,
      "nullable": true
    },
    "results": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {}
      },
      "title": "Results"
    },
    "timings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/QueryTiming"
      },
      "title": "Timings",
      "default": null,
      "nullable": true
    },
    "missing_actors_count": {
      "type": "integer",
      "title": "Missing Actors Count",
      "default": null,
      "nullable": true
    }
  }
}
object ActorsQueryResponseNullable
{
  "type": "object",
  "title": "ActorsQueryResponse",
  "default": null,
  "nullable": true,
  "required": [
    "columns",
    "hogql",
    "limit",
    "offset",
    "results",
    "types"
  ],
  "properties": {
    "hogql": {
      "type": "string",
      "title": "Hogql"
    },
    "limit": {
      "type": "integer",
      "title": "Limit"
    },
    "types": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "title": "Types"
    },
    "offset": {
      "type": "integer",
      "title": "Offset"
    },
    "columns": {
      "type": "array",
      "items": {},
      "title": "Columns"
    },
    "hasMore": {
      "type": "boolean",
      "title": "Hasmore",
      "default": null,
      "nullable": true
    },
    "results": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {}
      },
      "title": "Results"
    },
    "timings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/QueryTiming"
      },
      "title": "Timings",
      "default": null,
      "nullable": true
    },
    "missing_actors_count": {
      "type": "integer",
      "title": "Missing Actors Count",
      "default": null,
      "nullable": true
    }
  }
}
string AggregationAxisFormat
{
  "enum": [
    "numeric",
    "duration",
    "duration_ms",
    "percentage",
    "percentage_scaled"
  ],
  "type": "string",
  "title": "AggregationAxisFormat"
}
string AggregationAxisFormatNullable
{
  "enum": [
    "numeric",
    "duration",
    "duration_ms",
    "percentage",
    "percentage_scaled"
  ],
  "type": "string",
  "title": "AggregationAxisFormat",
  "default": null,
  "nullable": true
}
object Annotation
{
  "type": "object",
  "required": [
    "created_at",
    "created_by",
    "id",
    "insight_name",
    "insight_short_id",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "readOnly": true
    },
    "scope": {
      "$ref": "#/components/schemas/AnnotationScopeEnum"
    },
    "content": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "deleted": {
      "type": "boolean"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true
    },
    "created_by": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "date_marker": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "insight_name": {
      "type": "string",
      "nullable": true,
      "readOnly": true
    },
    "creation_type": {
      "$ref": "#/components/schemas/CreationTypeEnum"
    },
    "dashboard_item": {
      "type": "integer",
      "nullable": true
    },
    "insight_short_id": {
      "type": "string",
      "nullable": true,
      "readOnly": true
    }
  },
  "x-konfig-properties": {
    "created_by": {
      "readOnly": true
    }
  }
}
string AnnotationScopeEnum
{
  "enum": [
    "dashboard_item",
    "project",
    "organization"
  ],
  "type": "string",
  "description": "* `dashboard_item` - insight\n* `project` - project\n* `organization` - organization"
}
object AutocompleteCompletionItem
{
  "type": "object",
  "title": "AutocompleteCompletionItem",
  "required": [
    "insertText",
    "kind",
    "label"
  ],
  "properties": {
    "kind": {
      "$ref": "#/components/schemas/Kind"
    },
    "label": {
      "type": "string",
      "title": "Label",
      "description": "The label of this completion item. By default this is also the text that is inserted when selecting this completion."
    },
    "detail": {
      "type": "string",
      "title": "Detail",
      "default": null,
      "nullable": true,
      "description": "A human-readable string with additional information about this item, like type or symbol information."
    },
    "insertText": {
      "type": "string",
      "title": "Inserttext",
      "description": "A string or snippet that should be inserted in a document when selecting this completion."
    },
    "documentation": {
      "type": "string",
      "title": "Documentation",
      "default": null,
      "nullable": true,
      "description": "A human-readable string that represents a doc-comment."
    }
  },
  "x-konfig-properties": {
    "kind": {
      "description": "The kind of this completion item. Based on the kind an icon is chosen by the editor."
    }
  }
}
string BaseMathType
{
  "enum": [
    "total",
    "dau",
    "weekly_active",
    "monthly_active",
    "unique_session"
  ],
  "type": "string",
  "title": "BaseMathType"
}
object BatchExport
{
  "type": "object",
  "required": [
    "created_at",
    "destination",
    "id",
    "interval",
    "last_updated_at",
    "latest_runs",
    "name",
    "schema",
    "team_id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "description": "A human-readable name for this BatchExport."
    },
    "end_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Time after which any Batch Export runs won't be triggered."
    },
    "paused": {
      "type": "boolean",
      "description": "Whether this BatchExport is paused or not."
    },
    "schema": {
      "nullable": true,
      "readOnly": true,
      "description": "A schema of custom fields to select when exporting data."
    },
    "team_id": {
      "type": "integer",
      "readOnly": true,
      "description": "The team this belongs to."
    },
    "interval": {
      "$ref": "#/components/schemas/IntervalEnum"
    },
    "start_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Time before which any Batch Export runs won't be triggered."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "The timestamp at which this BatchExport was created."
    },
    "destination": {
      "$ref": "#/components/schemas/BatchExportDestination"
    },
    "hogql_query": {
      "type": "string"
    },
    "latest_runs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BatchExportRun"
      },
      "readOnly": true
    },
    "last_paused_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "The timestamp at which this BatchExport was last paused."
    },
    "last_updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "The timestamp at which this BatchExport was last updated."
    }
  },
  "description": "Serializer for a BatchExport model."
}
object BatchExportDestination
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/BatchExportDestinationTypeEnum"
    },
    "config": {
      "description": "A JSON field to store all configuration parameters required to access a BatchExportDestination."
    }
  },
  "description": "Serializer for an BatchExportDestination model.",
  "x-konfig-properties": {
    "type": {
      "description": "A choice of supported BatchExportDestination types.\n\n* `S3` - S3\n* `Snowflake` - Snowflake\n* `Postgres` - Postgres\n* `Redshift` - Redshift\n* `BigQuery` - Bigquery\n* `HTTP` - Http\n* `NoOp` - Noop"
    }
  }
}
string BatchExportDestinationTypeEnum
{
  "enum": [
    "S3",
    "Snowflake",
    "Postgres",
    "Redshift",
    "BigQuery",
    "HTTP",
    "NoOp"
  ],
  "type": "string",
  "description": "* `S3` - S3\n* `Snowflake` - Snowflake\n* `Postgres` - Postgres\n* `Redshift` - Redshift\n* `BigQuery` - Bigquery\n* `HTTP` - Http\n* `NoOp` - Noop"
}
object BatchExportLogEntry
{
  "type": "object",
  "required": [
    "batch_export_id",
    "level",
    "message",
    "run_id",
    "team_id",
    "timestamp"
  ],
  "properties": {
    "level": {
      "$ref": "#/components/schemas/BatchExportLogEntryLevelEnum"
    },
    "run_id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "team_id": {
      "type": "integer"
    },
    "timestamp": {
      "type": "string",
      "format": "date-time"
    },
    "batch_export_id": {
      "type": "string"
    }
  }
}
string BatchExportLogEntryLevelEnum
{
  "enum": [
    "DEBUG",
    "LOG",
    "INFO",
    "WARNING",
    "ERROR"
  ],
  "type": "string",
  "description": "* `DEBUG` - DEBUG\n* `LOG` - LOG\n* `INFO` - INFO\n* `WARNING` - WARNING\n* `ERROR` - ERROR"
}
object BatchExportRun
{
  "type": "object",
  "required": [
    "batch_export",
    "created_at",
    "data_interval_end",
    "data_interval_start",
    "id",
    "last_updated_at",
    "status"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "cursor": {
      "type": "string",
      "nullable": true,
      "description": "An opaque cursor that may be used to resume."
    },
    "status": {
      "$ref": "#/components/schemas/StatusEnum"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "The timestamp at which this BatchExportRun was created."
    },
    "finished_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "The timestamp at which this BatchExportRun finished, successfully or not."
    },
    "batch_export": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "The BatchExport this run belongs to."
    },
    "latest_error": {
      "type": "string",
      "nullable": true,
      "description": "The latest error that occurred during this run."
    },
    "last_updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "The timestamp at which this BatchExportRun was last updated."
    },
    "data_interval_end": {
      "type": "string",
      "format": "date-time",
      "description": "The end of the data interval."
    },
    "records_completed": {
      "type": "integer",
      "maximum": 2147483647,
      "minimum": -2147483648,
      "nullable": true,
      "description": "The number of records that have been exported."
    },
    "data_interval_start": {
      "type": "string",
      "format": "date-time",
      "description": "The start of the data interval."
    },
    "records_total_count": {
      "type": "integer",
      "maximum": 2147483647,
      "minimum": -2147483648,
      "nullable": true,
      "description": "The total count of records that should be exported in this BatchExportRun."
    }
  },
  "description": "Serializer for a BatchExportRun model.",
  "x-konfig-properties": {
    "status": {
      "description": "The status of this run.\n\n* `Cancelled` - Cancelled\n* `Completed` - Completed\n* `ContinuedAsNew` - Continued As New\n* `Failed` - Failed\n* `FailedRetryable` - Failed Retryable\n* `Terminated` - Terminated\n* `TimedOut` - Timedout\n* `Running` - Running\n* `Starting` - Starting"
    }
  }
}
string BlankEnum
{
  "enum": [
    ""
  ],
  "type": "string"
}
object Breakdown
{
  "type": "object",
  "title": "Breakdown",
  "required": [
    "property",
    "type"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/BreakdownType"
    },
    "property": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        }
      ],
      "title": "Property"
    },
    "normalize_url": {
      "type": "boolean",
      "title": "Normalize Url",
      "default": null,
      "nullable": true
    }
  }
}
string BreakdownAttributionType
{
  "enum": [
    "first_touch",
    "last_touch",
    "all_events",
    "step"
  ],
  "type": "string",
  "title": "BreakdownAttributionType"
}
string BreakdownAttributionTypeNullable
{
  "enum": [
    "first_touch",
    "last_touch",
    "all_events",
    "step"
  ],
  "type": "string",
  "title": "BreakdownAttributionType",
  "default": null,
  "nullable": true
}
object BreakdownFilter
{
  "type": "object",
  "title": "BreakdownFilter",
  "properties": {
    "breakdown": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ]
          }
        }
      ],
      "title": "Breakdown",
      "default": null,
      "nullable": true
    },
    "breakdowns": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Breakdown"
      },
      "title": "Breakdowns",
      "default": null,
      "nullable": true
    },
    "breakdown_type": {
      "$ref": "#/components/schemas/BreakdownTypeNullable"
    },
    "breakdown_limit": {
      "type": "integer",
      "title": "Breakdown Limit",
      "default": null,
      "nullable": true
    },
    "breakdown_normalize_url": {
      "type": "boolean",
      "title": "Breakdown Normalize Url",
      "default": null,
      "nullable": true
    },
    "breakdown_group_type_index": {
      "type": "integer",
      "title": "Breakdown Group Type Index",
      "default": null,
      "nullable": true
    },
    "breakdown_histogram_bin_count": {
      "type": "integer",
      "title": "Breakdown Histogram Bin Count",
      "default": null,
      "nullable": true
    },
    "breakdown_hide_other_aggregation": {
      "type": "boolean",
      "title": "Breakdown Hide Other Aggregation",
      "default": null,
      "nullable": true
    }
  }
}
object BreakdownFilterNullable
{
  "type": "object",
  "title": "BreakdownFilter",
  "default": null,
  "nullable": true,
  "properties": {
    "breakdown": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ]
          }
        }
      ],
      "title": "Breakdown",
      "default": null,
      "nullable": true
    },
    "breakdowns": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Breakdown"
      },
      "title": "Breakdowns",
      "default": null,
      "nullable": true
    },
    "breakdown_type": {
      "$ref": "#/components/schemas/BreakdownTypeNullable"
    },
    "breakdown_limit": {
      "type": "integer",
      "title": "Breakdown Limit",
      "default": null,
      "nullable": true
    },
    "breakdown_normalize_url": {
      "type": "boolean",
      "title": "Breakdown Normalize Url",
      "default": null,
      "nullable": true
    },
    "breakdown_group_type_index": {
      "type": "integer",
      "title": "Breakdown Group Type Index",
      "default": null,
      "nullable": true
    },
    "breakdown_histogram_bin_count": {
      "type": "integer",
      "title": "Breakdown Histogram Bin Count",
      "default": null,
      "nullable": true
    },
    "breakdown_hide_other_aggregation": {
      "type": "boolean",
      "title": "Breakdown Hide Other Aggregation",
      "default": null,
      "nullable": true
    }
  },
  "description": "Breakdown of the events and actions"
}
object BreakdownItem
{
  "type": "object",
  "title": "BreakdownItem",
  "required": [
    "label",
    "value"
  ],
  "properties": {
    "label": {
      "type": "string",
      "title": "Label"
    },
    "value": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "integer"
        }
      ],
      "title": "Value"
    }
  }
}
string BreakdownType
{
  "enum": [
    "cohort",
    "person",
    "event",
    "group",
    "session",
    "hogql",
    "data_warehouse"
  ],
  "type": "string",
  "title": "BreakdownType"
}
string BreakdownTypeEnum
{
  "enum": [
    "event",
    "person",
    "cohort",
    "group",
    "session",
    "hogql"
  ],
  "type": "string",
  "description": "* `event` - event\n* `person` - person\n* `cohort` - cohort\n* `group` - group\n* `session` - session\n* `hogql` - hogql"
}
string BreakdownTypeNullable
{
  "enum": [
    "cohort",
    "person",
    "event",
    "group",
    "session",
    "hogql",
    "data_warehouse"
  ],
  "type": "string",
  "title": "BreakdownType",
  "default": null,
  "nullable": true
}
string ByweekdayEnum
{
  "enum": [
    "monday",
    "tuesday",
    "wednesday",
    "thursday",
    "friday",
    "saturday",
    "sunday"
  ],
  "type": "string",
  "description": "* `monday` - Monday\n* `tuesday` - Tuesday\n* `wednesday` - Wednesday\n* `thursday` - Thursday\n* `friday` - Friday\n* `saturday` - Saturday\n* `sunday` - Sunday"
}
object ChartAxis
{
  "type": "object",
  "title": "ChartAxis",
  "required": [
    "column"
  ],
  "properties": {
    "column": {
      "type": "string",
      "title": "Column"
    }
  }
}
object ChartAxisNullable
{
  "type": "object",
  "title": "ChartAxis",
  "default": null,
  "nullable": true,
  "required": [
    "column"
  ],
  "properties": {
    "column": {
      "type": "string",
      "title": "Column"
    }
  }
}
string ChartDisplayType
{
  "enum": [
    "ActionsLineGraph",
    "ActionsBar",
    "ActionsAreaGraph",
    "ActionsLineGraphCumulative",
    "BoldNumber",
    "ActionsPie",
    "ActionsBarValue",
    "ActionsTable",
    "WorldMap"
  ],
  "type": "string",
  "title": "ChartDisplayType"
}
string ChartDisplayTypeNullable
{
  "enum": [
    "ActionsLineGraph",
    "ActionsBar",
    "ActionsAreaGraph",
    "ActionsLineGraphCumulative",
    "BoldNumber",
    "ActionsPie",
    "ActionsBarValue",
    "ActionsTable",
    "WorldMap"
  ],
  "type": "string",
  "title": "ChartDisplayType",
  "default": null,
  "nullable": true
}
object ChartSettings
{
  "type": "object",
  "title": "ChartSettings",
  "properties": {
    "xAxis": {
      "$ref": "#/components/schemas/ChartAxisNullable"
    },
    "yAxis": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ChartAxis"
      },
      "title": "Yaxis",
      "default": null,
      "nullable": true
    },
    "goalLines": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/GoalLine"
      },
      "title": "Goallines",
      "default": null,
      "nullable": true
    }
  }
}
object ChartSettingsNullable
{
  "type": "object",
  "title": "ChartSettings",
  "default": null,
  "nullable": true,
  "properties": {
    "xAxis": {
      "$ref": "#/components/schemas/ChartAxisNullable"
    },
    "yAxis": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ChartAxis"
      },
      "title": "Yaxis",
      "default": null,
      "nullable": true
    },
    "goalLines": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/GoalLine"
      },
      "title": "Goallines",
      "default": null,
      "nullable": true
    }
  }
}
object ClickhouseEvent
{
  "type": "object",
  "required": [
    "distinct_id",
    "elements",
    "elements_chain",
    "event",
    "id",
    "person",
    "properties",
    "timestamp"
  ],
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true
    },
    "event": {
      "type": "string",
      "readOnly": true
    },
    "person": {
      "type": "string",
      "readOnly": true
    },
    "elements": {
      "type": "string",
      "readOnly": true
    },
    "timestamp": {
      "type": "string",
      "readOnly": true
    },
    "properties": {
      "type": "string",
      "readOnly": true
    },
    "distinct_id": {
      "type": "string",
      "readOnly": true
    },
    "elements_chain": {
      "type": "string",
      "readOnly": true
    }
  }
}
object Cohort
{
  "type": "object",
  "required": [
    "count",
    "created_at",
    "created_by",
    "errors_calculating",
    "id",
    "is_calculating",
    "last_calculation"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "count": {
      "type": "integer",
      "nullable": true,
      "readOnly": true
    },
    "query": {
      "nullable": true
    },
    "groups": {},
    "deleted": {
      "type": "boolean"
    },
    "filters": {
      "nullable": true
    },
    "is_static": {
      "type": "boolean"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true
    },
    "created_by": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "description": {
      "type": "string",
      "maxLength": 1000
    },
    "is_calculating": {
      "type": "boolean",
      "readOnly": true
    },
    "last_calculation": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true
    },
    "errors_calculating": {
      "type": "integer",
      "readOnly": true
    }
  },
  "x-konfig-properties": {
    "created_by": {
      "readOnly": true
    }
  }
}
object CohortPropertyFilter
{
  "type": "object",
  "title": "CohortPropertyFilter",
  "required": [
    "value"
  ],
  "properties": {
    "key": {
      "const": "id",
      "title": "Key",
      "default": "id"
    },
    "type": {
      "const": "cohort",
      "title": "Type",
      "default": "cohort"
    },
    "label": {
      "type": "string",
      "title": "Label",
      "default": null,
      "nullable": true
    },
    "value": {
      "type": "integer",
      "title": "Value"
    }
  }
}
string Compare
{
  "enum": [
    "current",
    "previous"
  ],
  "type": "string",
  "title": "Compare"
}
object CompareItem
{
  "type": "object",
  "title": "CompareItem",
  "required": [
    "label",
    "value"
  ],
  "properties": {
    "label": {
      "type": "string",
      "title": "Label"
    },
    "value": {
      "type": "string",
      "title": "Value"
    }
  }
}
string CompareNullable
{
  "enum": [
    "current",
    "previous"
  ],
  "type": "string",
  "title": "Compare",
  "default": null,
  "nullable": true
}
string CorrelationType
{
  "enum": [
    "success",
    "failure"
  ],
  "type": "string",
  "title": "CorrelationType"
}
string CountPerActorMathType
{
  "enum": [
    "avg_count_per_actor",
    "min_count_per_actor",
    "max_count_per_actor",
    "median_count_per_actor",
    "p90_count_per_actor",
    "p95_count_per_actor",
    "p99_count_per_actor"
  ],
  "type": "string",
  "title": "CountPerActorMathType"
}
string CreationModeEnum
{
  "enum": [
    "default",
    "template",
    "duplicate"
  ],
  "type": "string",
  "description": "* `default` - Default\n* `template` - Template\n* `duplicate` - Duplicate"
}
string CreationTypeEnum
{
  "enum": [
    "USR",
    "GIT"
  ],
  "type": "string",
  "description": "* `USR` - user\n* `GIT` - GitHub"
}
object Dashboard
{
  "type": "object",
  "required": [
    "created_at",
    "created_by",
    "creation_mode",
    "effective_privilege_level",
    "effective_restriction_level",
    "id",
    "is_shared",
    "tiles"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "tags": {
      "type": "array",
      "items": {}
    },
    "tiles": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      },
      "nullable": true,
      "readOnly": true
    },
    "pinned": {
      "type": "boolean"
    },
    "deleted": {
      "type": "boolean"
    },
    "filters": {},
    "is_shared": {
      "type": "boolean",
      "readOnly": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "created_by": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "description": {
      "type": "string"
    },
    "use_template": {
      "type": "string",
      "writeOnly": true
    },
    "creation_mode": {
      "$ref": "#/components/schemas/CreationModeEnum"
    },
    "use_dashboard": {
      "type": "integer",
      "nullable": true,
      "writeOnly": true
    },
    "delete_insights": {
      "type": "boolean",
      "default": false,
      "writeOnly": true
    },
    "restriction_level": {
      "$ref": "#/components/schemas/RestrictionLevelEnum"
    },
    "effective_privilege_level": {
      "$ref": "#/components/schemas/EffectivePrivilegeLevelEnum"
    },
    "effective_restriction_level": {
      "$ref": "#/components/schemas/EffectiveRestrictionLevelEnum"
    }
  },
  "description": "Serializer mixin that resolves appropriate response for tags depending on license.",
  "x-konfig-properties": {
    "created_by": {
      "readOnly": true
    },
    "creation_mode": {
      "readOnly": true
    },
    "restriction_level": {
      "maximum": 32767,
      "minimum": 0
    },
    "effective_privilege_level": {
      "readOnly": true
    },
    "effective_restriction_level": {
      "readOnly": true
    }
  }
}
object DashboardBasic
{
  "type": "object",
  "required": [
    "created_at",
    "created_by",
    "creation_mode",
    "deleted",
    "description",
    "effective_privilege_level",
    "effective_restriction_level",
    "id",
    "is_shared",
    "name",
    "pinned",
    "restriction_level"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "nullable": true,
      "readOnly": true
    },
    "tags": {
      "type": "array",
      "items": {}
    },
    "pinned": {
      "type": "boolean",
      "readOnly": true
    },
    "deleted": {
      "type": "boolean",
      "readOnly": true
    },
    "is_shared": {
      "type": "boolean",
      "readOnly": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "created_by": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "description": {
      "type": "string",
      "readOnly": true
    },
    "creation_mode": {
      "$ref": "#/components/schemas/CreationModeEnum"
    },
    "restriction_level": {
      "$ref": "#/components/schemas/RestrictionLevelEnum"
    },
    "effective_privilege_level": {
      "$ref": "#/components/schemas/EffectivePrivilegeLevelEnum"
    },
    "effective_restriction_level": {
      "$ref": "#/components/schemas/EffectiveRestrictionLevelEnum"
    }
  },
  "description": "Serializer mixin that resolves appropriate response for tags depending on license.",
  "x-konfig-properties": {
    "created_by": {
      "readOnly": true
    },
    "creation_mode": {
      "readOnly": true
    },
    "restriction_level": {
      "readOnly": true
    },
    "effective_privilege_level": {
      "readOnly": true
    },
    "effective_restriction_level": {
      "readOnly": true
    }
  }
}
object DashboardCollaborator
{
  "type": "object",
  "required": [
    "added_at",
    "dashboard_id",
    "id",
    "level",
    "updated_at",
    "user",
    "user_uuid"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "user": {
      "$ref": "#/components/schemas/UserBasic"
    },
    "level": {
      "$ref": "#/components/schemas/LevelD7eEnum"
    },
    "added_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "user_uuid": {
      "type": "string",
      "format": "uuid",
      "writeOnly": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "dashboard_id": {
      "type": "integer",
      "readOnly": true
    }
  },
  "x-konfig-properties": {
    "user": {
      "readOnly": true
    },
    "level": {
      "maximum": 32767,
      "minimum": 0
    }
  }
}
object DashboardTemplate
{
  "type": "object",
  "required": [
    "created_at",
    "id",
    "team_id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 255
      },
      "nullable": true
    },
    "scope": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/DashboardTemplateScopeEnum"
        },
        {
          "$ref": "#/components/schemas/BlankEnum"
        },
        {
          "$ref": "#/components/schemas/NullEnum"
        }
      ],
      "nullable": true
    },
    "tiles": {
      "nullable": true
    },
    "deleted": {
      "type": "boolean",
      "nullable": true
    },
    "team_id": {
      "type": "integer",
      "nullable": true,
      "readOnly": true
    },
    "image_url": {
      "type": "string",
      "nullable": true,
      "maxLength": 8201
    },
    "variables": {
      "nullable": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true
    },
    "created_by": {
      "type": "integer",
      "nullable": true
    },
    "template_name": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    },
    "dashboard_filters": {
      "nullable": true
    },
    "dashboard_description": {
      "type": "string",
      "nullable": true,
      "maxLength": 400
    }
  }
}