PostHog · Schema
RecordingsQuery
A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording
Properties
| Name | Type | Description |
|---|---|---|
| actions | array | |
| after | string | Cursor for pagination. Contains the ordering value and session_id from the last record of the previous page. |
| comment_text | object | |
| console_log_filters | array | |
| date_from | string | |
| date_to | string | |
| distinct_ids | array | |
| events | array | |
| filter_test_accounts | boolean | |
| having_predicates | array | |
| kind | string | |
| limit | integer | |
| modifiers | object | Modifiers used when performing the query |
| offset | integer | |
| operand | object | |
| order | object | |
| order_direction | object | Replay originally had all ordering as descending by specifying the field name, this runs counter to Django behavior where the field name specifies ascending sorting (e.g. the_field_name) and -the_fiel |
| person_uuid | string | |
| properties | array | |
| response | object | |
| session_ids | array | |
| session_recording_id | string | If provided, this recording will be fetched and prepended to the results, even if it doesn't match the filters |
| tags | object | |
| user_modified_filters | object | |
| version | number | version of the node, used for schema migrations |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/RecordingsQuery",
"title": "RecordingsQuery",
"additionalProperties": false,
"properties": {
"actions": {
"default": null,
"title": "Actions",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array",
"nullable": true
},
"after": {
"default": null,
"description": "Cursor for pagination. Contains the ordering value and session_id from the last record of the previous page.",
"title": "After",
"type": "string",
"nullable": true
},
"comment_text": {
"default": null,
"allOf": [
{
"$ref": "#/components/schemas/RecordingPropertyFilter"
}
],
"nullable": true
},
"console_log_filters": {
"default": null,
"title": "Console Log Filters",
"items": {
"$ref": "#/components/schemas/LogEntryPropertyFilter"
},
"type": "array",
"nullable": true
},
"date_from": {
"default": "-3d",
"title": "Date From",
"type": "string",
"nullable": true
},
"date_to": {
"default": null,
"title": "Date To",
"type": "string",
"nullable": true
},
"distinct_ids": {
"default": null,
"title": "Distinct Ids",
"items": {
"type": "string"
},
"type": "array",
"nullable": true
},
"events": {
"default": null,
"title": "Events",
"items": {
"additionalProperties": true,
"type": "object"
},
"type": "array",
"nullable": true
},
"filter_test_accounts": {
"default": null,
"title": "Filter Test Accounts",
"type": "boolean",
"nullable": true
},
"having_predicates": {
"default": null,
"title": "Having Predicates",
"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": "RecordingsQuery",
"title": "Kind",
"type": "string",
"enum": [
"RecordingsQuery"
]
},
"limit": {
"default": null,
"title": "Limit",
"type": "integer",
"nullable": true
},
"modifiers": {
"default": null,
"description": "Modifiers used when performing the query",
"allOf": [
{
"$ref": "#/components/schemas/HogQLQueryModifiers"
}
],
"nullable": true
},
"offset": {
"default": null,
"title": "Offset",
"type": "integer",
"nullable": true
},
"operand": {
"default": "AND",
"allOf": [
{
"$ref": "#/components/schemas/FilterLogicalOperator"
}
],
"nullable": true
},
"order": {
"default": "start_time",
"allOf": [
{
"$ref": "#/components/schemas/RecordingOrder"
}
],
"nullable": true
},
"order_direction": {
"default": "DESC",
"description": "Replay originally had all ordering as descending by specifying the field name, this runs counter to Django behavior where the field name specifies ascending sorting (e.g. the_field_name) and -the_field_name would indicate descending order to avoid invalidating or migrating all existing filters we keep DESC as the default or allow specification of an explicit order direction here",
"allOf": [
{
"$ref": "#/components/schemas/RecordingOrderDirection"
}
],
"nullable": true
},
"person_uuid": {
"default": null,
"title": "Person Uuid",
"type": "string",
"nullable": true
},
"properties": {
"default": null,
"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,
"allOf": [
{
"$ref": "#/components/schemas/RecordingsQueryResponse"
}
],
"nullable": true
},
"session_ids": {
"default": null,
"title": "Session Ids",
"items": {
"type": "string"
},
"type": "array",
"nullable": true
},
"session_recording_id": {
"default": null,
"description": "If provided, this recording will be fetched and prepended to the results, even if it doesn't match the filters",
"title": "Session Recording Id",
"type": "string",
"nullable": true
},
"tags": {
"default": null,
"allOf": [
{
"$ref": "#/components/schemas/QueryLogTags"
}
],
"nullable": true
},
"user_modified_filters": {
"default": null,
"title": "User Modified Filters",
"additionalProperties": true,
"type": "object",
"nullable": true
},
"version": {
"default": null,
"description": "version of the node, used for schema migrations",
"title": "Version",
"type": "number",
"nullable": true
}
},
"type": "object"
}