PostHog · Schema
FeatureFlag
Serializer mixin that handles tags for objects.
A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording
Properties
| Name | Type | Description |
|---|---|---|
| id | integer | |
| name | string | contains the description for the flag (field name `name` is kept for backwards-compatibility) |
| key | string | |
| filters | object | |
| deleted | boolean | |
| active | boolean | |
| created_by | object | |
| created_at | string | |
| updated_at | string | |
| version | integer | |
| last_modified_by | object | |
| ensure_experience_continuity | boolean | |
| experiment_set | array | |
| experiment_set_metadata | array | |
| surveys | object | |
| features | object | |
| rollback_conditions | object | |
| performed_rollback | boolean | |
| can_edit | boolean | |
| tags | array | |
| evaluation_contexts | array | |
| usage_dashboard | integer | |
| analytics_dashboards | array | |
| has_enriched_analytics | boolean | |
| user_access_level | string | The effective access level the user has for this object |
| creation_context | object | Indicates the origin product of the feature flag. Choices: 'feature_flags', 'experiments', 'surveys', 'early_access_features', 'web_experiments', 'product_tours'. * `feature_flags` - feature_flags * ` |
| is_remote_configuration | boolean | |
| has_encrypted_payloads | boolean | |
| status | string | |
| evaluation_runtime | object | Specifies where this feature flag should be evaluated * `server` - Server * `client` - Client * `all` - All |
| bucketing_identifier | object | Identifier used for bucketing users into rollout and variants * `distinct_id` - User ID (default) * `device_id` - Device ID |
| last_called_at | string | Last time this feature flag was called (from $feature_flag_called events) |
| _create_in_folder | string | |
| _should_create_usage_dashboard | boolean | |
| is_used_in_replay_settings | boolean | Check if this feature flag is used in any team's session recording linked flag setting. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/FeatureFlag",
"title": "FeatureFlag",
"type": "object",
"description": "Serializer mixin that handles tags for objects.",
"properties": {
"id": {
"type": "integer",
"readOnly": true
},
"name": {
"type": "string",
"description": "contains the description for the flag (field name `name` is kept for backwards-compatibility)"
},
"key": {
"type": "string",
"maxLength": 400
},
"filters": {
"type": "object",
"additionalProperties": true
},
"deleted": {
"type": "boolean"
},
"active": {
"type": "boolean"
},
"created_by": {
"allOf": [
{
"$ref": "#/components/schemas/UserBasic"
}
],
"readOnly": true
},
"created_at": {
"type": "string",
"format": "date-time"
},
"updated_at": {
"type": "string",
"format": "date-time",
"readOnly": true,
"nullable": true
},
"version": {
"type": "integer",
"default": 0
},
"last_modified_by": {
"allOf": [
{
"$ref": "#/components/schemas/UserBasic"
}
],
"readOnly": true
},
"ensure_experience_continuity": {
"type": "boolean",
"nullable": true
},
"experiment_set": {
"type": "array",
"items": {
"type": "integer"
},
"readOnly": true
},
"experiment_set_metadata": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"readOnly": true
},
"surveys": {
"type": "object",
"additionalProperties": true,
"readOnly": true
},
"features": {
"type": "object",
"additionalProperties": true,
"readOnly": true
},
"rollback_conditions": {
"nullable": true
},
"performed_rollback": {
"type": "boolean",
"nullable": true
},
"can_edit": {
"type": "boolean",
"readOnly": true
},
"tags": {
"type": "array",
"items": {}
},
"evaluation_contexts": {
"type": "array",
"items": {},
"writeOnly": true
},
"usage_dashboard": {
"type": "integer",
"readOnly": true
},
"analytics_dashboards": {
"type": "array",
"items": {
"type": "integer"
}
},
"has_enriched_analytics": {
"type": "boolean",
"nullable": true
},
"user_access_level": {
"type": "string",
"nullable": true,
"readOnly": true,
"description": "The effective access level the user has for this object"
},
"creation_context": {
"allOf": [
{
"$ref": "#/components/schemas/FeatureFlagCreationContextEnum"
}
],
"writeOnly": true,
"description": "Indicates the origin product of the feature flag. Choices: 'feature_flags', 'experiments', 'surveys', 'early_access_features', 'web_experiments', 'product_tours'.\n\n* `feature_flags` - feature_flags\n* `experiments` - experiments\n* `surveys` - surveys\n* `early_access_features` - early_access_features\n* `web_experiments` - web_experiments\n* `product_tours` - product_tours"
},
"is_remote_configuration": {
"type": "boolean",
"nullable": true
},
"has_encrypted_payloads": {
"type": "boolean",
"nullable": true
},
"status": {
"type": "string",
"readOnly": true
},
"evaluation_runtime": {
"nullable": true,
"description": "Specifies where this feature flag should be evaluated\n\n* `server` - Server\n* `client` - Client\n* `all` - All",
"oneOf": [
{
"$ref": "#/components/schemas/EvaluationRuntimeEnum"
},
{
"$ref": "#/components/schemas/BlankEnum"
},
{
"$ref": "#/components/schemas/NullEnum"
}
]
},
"bucketing_identifier": {
"nullable": true,
"description": "Identifier used for bucketing users into rollout and variants\n\n* `distinct_id` - User ID (default)\n* `device_id` - Device ID",
"oneOf": [
{
"$ref": "#/components/schemas/BucketingIdentifierEnum"
},
{
"$ref": "#/components/schemas/BlankEnum"
},
{
"$ref": "#/components/schemas/NullEnum"
}
]
},
"last_called_at": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Last time this feature flag was called (from $feature_flag_called events)"
},
"_create_in_folder": {
"type": "string",
"writeOnly": true,
"title": " create in folder"
},
"_should_create_usage_dashboard": {
"type": "boolean",
"writeOnly": true,
"default": true,
"title": " should create usage dashboard"
},
"is_used_in_replay_settings": {
"type": "boolean",
"description": "Check if this feature flag is used in any team's session recording linked flag setting.",
"readOnly": true
}
},
"required": [
"can_edit",
"created_by",
"experiment_set",
"experiment_set_metadata",
"features",
"id",
"is_used_in_replay_settings",
"key",
"last_modified_by",
"status",
"surveys",
"updated_at",
"usage_dashboard",
"user_access_level"
]
}