PostHog · Schema

GroupNode

A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording

Properties

Name Type Description
custom_name string
fixedProperties array Fixed properties in the query, can't be edited in the interface (e.g. scoping down by person)
kind string
limit integer
math object
math_group_type_index object
math_hogql string
math_multiplier number
math_property string
math_property_revenue_currency object
math_property_type string
name string
nodes array Entities to combine in this group
operator object Group of entities combined with AND/OR operator
optionalInFunnel boolean
orderBy array Columns to order by
properties array Properties configurable in the interface
response object
version number version of the node, used for schema migrations
View JSON Schema on GitHub

JSON Schema

posthog-groupnode-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/GroupNode",
  "title": "GroupNode",
  "additionalProperties": false,
  "properties": {
    "custom_name": {
      "default": null,
      "title": "Custom Name",
      "type": "string",
      "nullable": true
    },
    "fixedProperties": {
      "default": null,
      "description": "Fixed properties in the query, can't be edited in the interface (e.g. scoping down by person)",
      "title": "Fixedproperties",
      "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",
      "nullable": true
    },
    "kind": {
      "default": "GroupNode",
      "title": "Kind",
      "type": "string",
      "enum": [
        "GroupNode"
      ]
    },
    "limit": {
      "default": null,
      "title": "Limit",
      "type": "integer",
      "nullable": true
    },
    "math": {
      "default": null,
      "title": "Math",
      "anyOf": [
        {
          "$ref": "#/components/schemas/BaseMathType"
        },
        {
          "$ref": "#/components/schemas/FunnelMathType"
        },
        {
          "$ref": "#/components/schemas/PropertyMathType"
        },
        {
          "$ref": "#/components/schemas/CountPerActorMathType"
        },
        {
          "$ref": "#/components/schemas/ExperimentMetricMathType"
        },
        {
          "$ref": "#/components/schemas/CalendarHeatmapMathType"
        },
        {
          "type": "string",
          "enum": [
            "unique_group"
          ]
        },
        {
          "type": "string",
          "enum": [
            "hogql"
          ]
        }
      ],
      "nullable": true
    },
    "math_group_type_index": {
      "default": null,
      "allOf": [
        {
          "$ref": "#/components/schemas/MathGroupTypeIndex"
        }
      ],
      "nullable": true
    },
    "math_hogql": {
      "default": null,
      "title": "Math Hogql",
      "type": "string",
      "nullable": true
    },
    "math_multiplier": {
      "default": null,
      "title": "Math Multiplier",
      "type": "number",
      "nullable": true
    },
    "math_property": {
      "default": null,
      "title": "Math Property",
      "type": "string",
      "nullable": true
    },
    "math_property_revenue_currency": {
      "default": null,
      "allOf": [
        {
          "$ref": "#/components/schemas/RevenueCurrencyPropertyConfig"
        }
      ],
      "nullable": true
    },
    "math_property_type": {
      "default": null,
      "title": "Math Property Type",
      "type": "string",
      "nullable": true
    },
    "name": {
      "default": null,
      "title": "Name",
      "type": "string",
      "nullable": true
    },
    "nodes": {
      "description": "Entities to combine in this group",
      "items": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/EventsNode"
          },
          {
            "$ref": "#/components/schemas/ActionsNode"
          },
          {
            "$ref": "#/components/schemas/DataWarehouseNode"
          }
        ]
      },
      "title": "Nodes",
      "type": "array"
    },
    "operator": {
      "description": "Group of entities combined with AND/OR operator",
      "allOf": [
        {
          "$ref": "#/components/schemas/FilterLogicalOperator"
        }
      ]
    },
    "optionalInFunnel": {
      "default": null,
      "title": "Optionalinfunnel",
      "type": "boolean",
      "nullable": true
    },
    "orderBy": {
      "default": null,
      "description": "Columns to order by",
      "title": "Orderby",
      "items": {
        "type": "string"
      },
      "type": "array",
      "nullable": true
    },
    "properties": {
      "default": null,
      "description": "Properties configurable in the interface",
      "title": "Properties",
      "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",
      "nullable": true
    },
    "response": {
      "default": null,
      "title": "Response",
      "additionalProperties": true,
      "type": "object",
      "nullable": true
    },
    "version": {
      "default": null,
      "description": "version of the node, used for schema migrations",
      "title": "Version",
      "type": "number",
      "nullable": true
    }
  },
  "required": [
    "nodes",
    "operator"
  ],
  "type": "object"
}