openapi: 3.0.3 info: title: PostHog actions early_access_features API version: 1.0.0 description: '' tags: - name: early_access_features paths: /api/projects/{project_id}/early_access_feature/: get: operationId: early_access_feature_list parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features security: - PersonalAPIKeyAuth: - early_access_feature:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedEarlyAccessFeatureList' description: '' x-explicit-tags: - early_access_features post: operationId: early_access_feature_create parameters: - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features requestBody: content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeatureSerializerCreateOnly' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarlyAccessFeatureSerializerCreateOnly' multipart/form-data: schema: $ref: '#/components/schemas/EarlyAccessFeatureSerializerCreateOnly' required: true security: - PersonalAPIKeyAuth: - early_access_feature:write responses: '201': content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeatureSerializerCreateOnly' description: '' x-explicit-tags: - early_access_features /api/projects/{project_id}/early_access_feature/{id}/: get: operationId: early_access_feature_retrieve parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this early access feature. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features security: - PersonalAPIKeyAuth: - early_access_feature:read responses: '200': content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeature' description: '' x-explicit-tags: - early_access_features put: operationId: early_access_feature_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this early access feature. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features requestBody: content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeature' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarlyAccessFeature' multipart/form-data: schema: $ref: '#/components/schemas/EarlyAccessFeature' required: true security: - PersonalAPIKeyAuth: - early_access_feature:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeature' description: '' x-explicit-tags: - early_access_features patch: operationId: early_access_feature_partial_update parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this early access feature. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedEarlyAccessFeature' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedEarlyAccessFeature' multipart/form-data: schema: $ref: '#/components/schemas/PatchedEarlyAccessFeature' security: - PersonalAPIKeyAuth: - early_access_feature:write responses: '200': content: application/json: schema: $ref: '#/components/schemas/EarlyAccessFeature' description: '' x-explicit-tags: - early_access_features delete: operationId: early_access_feature_destroy parameters: - in: path name: id schema: type: string format: uuid description: A UUID string identifying this early access feature. required: true - $ref: '#/components/parameters/ProjectIdPath' tags: - early_access_features security: - PersonalAPIKeyAuth: - early_access_feature:write responses: '204': description: No response body x-explicit-tags: - early_access_features components: schemas: EvaluationRuntimeEnum: enum: - server - client - all type: string description: '* `server` - Server * `client` - Client * `all` - All' BlankEnum: enum: - '' PaginatedEarlyAccessFeatureList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/EarlyAccessFeature' MinimalFeatureFlag: type: object properties: id: type: integer readOnly: true team_id: type: integer readOnly: true name: type: string key: type: string maxLength: 400 filters: type: object additionalProperties: true deleted: type: boolean active: type: boolean ensure_experience_continuity: type: boolean nullable: true has_encrypted_payloads: type: boolean nullable: true version: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true evaluation_runtime: nullable: true description: 'Specifies where this feature flag should be evaluated * `server` - Server * `client` - Client * `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 * `distinct_id` - User ID (default) * `device_id` - Device ID' oneOf: - $ref: '#/components/schemas/BucketingIdentifierEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' evaluation_contexts: type: array items: type: string readOnly: true required: - evaluation_contexts - id - key - team_id StageEnum: enum: - draft - concept - alpha - beta - general-availability - archived type: string description: '* `draft` - draft * `concept` - concept * `alpha` - alpha * `beta` - beta * `general-availability` - general availability * `archived` - archived' BucketingIdentifierEnum: enum: - distinct_id - device_id type: string description: '* `distinct_id` - User ID (default) * `device_id` - Device ID' PatchedEarlyAccessFeature: type: object properties: id: type: string format: uuid readOnly: true feature_flag: allOf: - $ref: '#/components/schemas/MinimalFeatureFlag' readOnly: true name: type: string description: The name of the early access feature. maxLength: 200 description: type: string description: A longer description of what this early access feature does, shown to users in the opt-in UI. stage: allOf: - $ref: '#/components/schemas/StageEnum' description: 'Lifecycle stage. Valid values: draft, concept, alpha, beta, general-availability, archived. Moving to an active stage (alpha/beta/general-availability) enables the feature flag for opted-in users. * `draft` - draft * `concept` - concept * `alpha` - alpha * `beta` - beta * `general-availability` - general availability * `archived` - archived' documentation_url: type: string format: uri description: URL to external documentation for this feature. Shown to users in the opt-in UI. maxLength: 800 payload: type: object additionalProperties: true description: Feature flag payload for this early access feature readOnly: true created_at: type: string format: date-time readOnly: true EarlyAccessFeature: type: object properties: id: type: string format: uuid readOnly: true feature_flag: allOf: - $ref: '#/components/schemas/MinimalFeatureFlag' readOnly: true name: type: string description: The name of the early access feature. maxLength: 200 description: type: string description: A longer description of what this early access feature does, shown to users in the opt-in UI. stage: allOf: - $ref: '#/components/schemas/StageEnum' description: 'Lifecycle stage. Valid values: draft, concept, alpha, beta, general-availability, archived. Moving to an active stage (alpha/beta/general-availability) enables the feature flag for opted-in users. * `draft` - draft * `concept` - concept * `alpha` - alpha * `beta` - beta * `general-availability` - general availability * `archived` - archived' documentation_url: type: string format: uri description: URL to external documentation for this feature. Shown to users in the opt-in UI. maxLength: 800 payload: type: object additionalProperties: true description: Feature flag payload for this early access feature readOnly: true created_at: type: string format: date-time readOnly: true required: - created_at - feature_flag - id - name - payload - stage EarlyAccessFeatureSerializerCreateOnly: type: object properties: id: type: string format: uuid readOnly: true name: type: string description: The name of the early access feature. maxLength: 200 description: type: string description: A longer description of what this early access feature does, shown to users in the opt-in UI. stage: allOf: - $ref: '#/components/schemas/StageEnum' description: 'Lifecycle stage. Valid values: draft, concept, alpha, beta, general-availability, archived. Moving to an active stage (alpha/beta/general-availability) enables the feature flag for opted-in users. * `draft` - draft * `concept` - concept * `alpha` - alpha * `beta` - beta * `general-availability` - general availability * `archived` - archived' documentation_url: type: string format: uri description: URL to external documentation for this feature. Shown to users in the opt-in UI. maxLength: 800 payload: description: Arbitrary JSON metadata associated with this feature. created_at: type: string format: date-time readOnly: true feature_flag_id: type: integer writeOnly: true description: Optional ID of an existing feature flag to link. If omitted, a new flag is auto-created from the feature name. The flag must not already be linked to another feature, must not be group-based, and must not be multivariate. feature_flag: allOf: - $ref: '#/components/schemas/MinimalFeatureFlag' readOnly: true _create_in_folder: type: string writeOnly: true title: ' create in folder' required: - created_at - feature_flag - id - name - stage NullEnum: enum: - null parameters: ProjectIdPath: in: path name: project_id required: true schema: type: string description: Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/. securitySchemes: PersonalAPIKeyAuth: type: http scheme: bearer x-tagGroups: - name: All endpoints tags: - LLM Analytics - actions - activity_log - activity_logs - advanced_activity_logs - alerts - annotations - approval_policies - batch_exports - cdp - change_requests - code - code-invites - cohorts - comments - conversations - core - customer_analytics - customer_journeys - customer_profile_configs - dashboard_templates - dashboards - data_color_themes - data_modeling_jobs - data_warehouse - dataset_items - datasets - desktop_recordings - domains - early_access_feature - early_access_features - elements - endpoints - environments - error_tracking - evaluation_runs - evaluations - event_definitions - event_filter - event_schemas - events - experiment_holdouts - experiment_saved_metrics - experiments - exports - external_data_schemas - external_data_sources - feature_flags - file_system - file_system_shortcut - flag_value - groups - groups_types - health_issues - heatmap_screenshots - heatmaps - hog_flows - hog_function_templates - hog_functions - insight_variables - insights - integrations - invites - js-snippet - legal_documents - lineage - live_debugger_breakpoints - llm_analytics - llm_prompts - llm_skills - logs - managed_viewsets - max - max_tools - mcp_server_installations - mcp_servers - mcp_store - mcp_tools - members - notebooks - oauth_applications - object_media_previews - organizations - persisted_folder - persons - platform_features - plugin_configs - product_analytics - product_tours - project_secret_api_keys - projects - property_definitions - proxy_records - public_hog_function_templates - query - replay - reverse_proxy - role_external_references - roles - sandbox-environments - sandbox_environments - saved - schema_property_groups - sdk_doctor - session_group_summaries - session_recording_playlists - session_recordings - session_summaries - sessions - signals - subscriptions - surveys - taggers - task-automations - task-runs - task_automations - tasks - uploaded_media - user_home_settings - user_interviews - users - visual_review - warehouse_dag - warehouse_model_paths - warehouse_saved_queries - warehouse_saved_query_folders - warehouse_tables - warehouse_view_link - warehouse_view_links - web_analytics - web_experiments - web_vitals - welcome - workflows