PostHog · Schema

RetentionQuery

A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording

Properties

Name Type Description
aggregation_group_type_index integer Groups aggregation
breakdownFilter object Breakdown of the events and actions
dataColorTheme number Colors used in the insight's visualization
dateRange object Date range for the query
filterTestAccounts boolean Exclude internal and test users by applying the respective filters
kind string
modifiers object Modifiers used when performing the query
properties object Property filters for all series
response object
retentionFilter object Properties specific to the retention insight
samplingFactor number Sampling rate
tags object Tags that will be added to the Query log comment
version number version of the node, used for schema migrations
View JSON Schema on GitHub

JSON Schema

posthog-retentionquery-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/RetentionQuery",
  "title": "RetentionQuery",
  "additionalProperties": false,
  "properties": {
    "aggregation_group_type_index": {
      "default": null,
      "description": "Groups aggregation",
      "title": "Aggregation Group Type Index",
      "type": "integer",
      "nullable": true
    },
    "breakdownFilter": {
      "default": null,
      "description": "Breakdown of the events and actions",
      "allOf": [
        {
          "$ref": "#/components/schemas/BreakdownFilter"
        }
      ],
      "nullable": true
    },
    "dataColorTheme": {
      "default": null,
      "description": "Colors used in the insight's visualization",
      "title": "Datacolortheme",
      "type": "number",
      "nullable": true
    },
    "dateRange": {
      "default": null,
      "description": "Date range for the query",
      "allOf": [
        {
          "$ref": "#/components/schemas/DateRange"
        }
      ],
      "nullable": true
    },
    "filterTestAccounts": {
      "default": false,
      "description": "Exclude internal and test users by applying the respective filters",
      "title": "Filtertestaccounts",
      "type": "boolean",
      "nullable": true
    },
    "kind": {
      "default": "RetentionQuery",
      "title": "Kind",
      "type": "string",
      "enum": [
        "RetentionQuery"
      ]
    },
    "modifiers": {
      "default": null,
      "description": "Modifiers used when performing the query",
      "allOf": [
        {
          "$ref": "#/components/schemas/HogQLQueryModifiers"
        }
      ],
      "nullable": true
    },
    "properties": {
      "default": [],
      "description": "Property filters for all series",
      "title": "Properties",
      "anyOf": [
        {
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EventPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/PersonPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/ElementPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/EventMetadataPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/SessionPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/CohortPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/RecordingPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/LogEntryPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/GroupPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/FeaturePropertyFilter"
              },
              {
                "$ref": "#/components/schemas/FlagPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/HogQLPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/EmptyPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/DataWarehousePropertyFilter"
              },
              {
                "$ref": "#/components/schemas/DataWarehousePersonPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/ErrorTrackingIssueFilter"
              },
              {
                "$ref": "#/components/schemas/LogPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/SpanPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/RevenueAnalyticsPropertyFilter"
              },
              {
                "$ref": "#/components/schemas/WorkflowVariablePropertyFilter"
              }
            ]
          },
          "type": "array"
        },
        {
          "$ref": "#/components/schemas/PropertyGroupFilter"
        }
      ],
      "nullable": true
    },
    "response": {
      "default": null,
      "allOf": [
        {
          "$ref": "#/components/schemas/RetentionQueryResponse"
        }
      ],
      "nullable": true
    },
    "retentionFilter": {
      "description": "Properties specific to the retention insight",
      "allOf": [
        {
          "$ref": "#/components/schemas/RetentionFilter"
        }
      ]
    },
    "samplingFactor": {
      "default": null,
      "description": "Sampling rate",
      "title": "Samplingfactor",
      "type": "number",
      "nullable": true
    },
    "tags": {
      "default": null,
      "description": "Tags that will be added to the Query log comment",
      "allOf": [
        {
          "$ref": "#/components/schemas/QueryLogTags"
        }
      ],
      "nullable": true
    },
    "version": {
      "default": null,
      "description": "version of the node, used for schema migrations",
      "title": "Version",
      "type": "number",
      "nullable": true
    }
  },
  "required": [
    "retentionFilter"
  ],
  "type": "object"
}