PostHog feature_flags API

The feature_flags API from PostHog — 19 operation(s) for feature_flags.

Operations 23

GET /api/projects/{project_id}/feature_flags/ #
POST /api/projects/{project_id}/feature_flags/ #
GET /api/projects/{project_id}/feature_flags/{id}/ #
PUT /api/projects/{project_id}/feature_flags/{id}/ #
PATCH /api/projects/{project_id}/feature_flags/{id}/ #
DELETE /api/projects/{project_id}/feature_flags/{id}/ #
GET /api/projects/{project_id}/feature_flags/{id}/activity/ #
POST /api/projects/{project_id}/feature_flags/{id}/create_static_cohort_for_flag/ #
POST /api/projects/{project_id}/feature_flags/{id}/dashboard/ #
GET /api/projects/{project_id}/feature_flags/{id}/dependent_flags/ #
POST /api/projects/{project_id}/feature_flags/{id}/enrich_usage_dashboard/ #
GET /api/projects/{project_id}/feature_flags/{id}/remote_config/ #
GET /api/projects/{project_id}/feature_flags/{id}/status/ #
GET /api/projects/{project_id}/feature_flags/{id}/versions/{version_number}/ #
GET /api/projects/{project_id}/feature_flags/activity/ #
POST /api/projects/{project_id}/feature_flags/bulk_delete/ #
POST /api/projects/{project_id}/feature_flags/bulk_keys/ #
POST /api/projects/{project_id}/feature_flags/bulk_update_tags/ #
GET /api/projects/{project_id}/feature_flags/evaluation_reasons/ #
GET /api/projects/{project_id}/feature_flags/local_evaluation/ #
GET /api/projects/{project_id}/feature_flags/matching_ids/ #
GET /api/projects/{project_id}/feature_flags/my_flags/ #
POST /api/projects/{project_id}/feature_flags/user_blast_radius/ #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/posthog-feature-flags-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

posthog-feature-flags-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: PostHog actions Feature Flags API
  version: 1.0.0
  description: ''
servers:
- url: https://app.posthog.com/api
  description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: feature_flags
paths:
  /api/projects/{project_id}/feature_flags/:
    get:
      operationId: feature_flags_list
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: query
        name: active
        schema:
          type: string
          enum:
          - STALE
          - 'false'
          - 'true'
      - in: query
        name: created_by_id
        schema:
          type: string
        description: The User ID which initially created the feature flag.
      - in: query
        name: evaluation_runtime
        schema:
          type: string
          enum:
          - both
          - client
          - server
        description: Filter feature flags by their evaluation runtime.
      - in: query
        name: excluded_properties
        schema:
          type: string
        description: JSON-encoded list of feature flag keys to exclude from the results.
      - in: query
        name: has_evaluation_contexts
        schema:
          type: string
          enum:
          - 'false'
          - 'true'
        description: Filter feature flags by presence of evaluation contexts. 'true' returns only flags with at least one evaluation context, 'false' returns only flags without.
      - 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'
      - in: query
        name: search
        schema:
          type: string
        description: Search by feature flag key or name. Case insensitive.
      - in: query
        name: tags
        schema:
          type: string
        description: JSON-encoded list of tag names to filter feature flags by.
      - in: query
        name: type
        schema:
          type: string
          enum:
          - boolean
          - experiment
          - multivariant
          - remote_config
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedFeatureFlagList'
          description: ''
      x-explicit-tags:
      - feature_flags
    post:
      operationId: feature_flags_create
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlagCreateRequestSchema'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlagCreateRequestSchema'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlagCreateRequestSchema'
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:write
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlag'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/:
    get:
      operationId: feature_flags_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlag'
          description: ''
      x-explicit-tags:
      - feature_flags
    put:
      operationId: feature_flags_update
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:write
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlag'
          description: ''
      x-explicit-tags:
      - feature_flags
    patch:
      operationId: feature_flags_partial_update
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFeatureFlagPartialUpdateRequestSchema'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/PatchedFeatureFlagPartialUpdateRequestSchema'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/PatchedFeatureFlagPartialUpdateRequestSchema'
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:write
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlag'
          description: ''
      x-explicit-tags:
      - feature_flags
    delete:
      operationId: feature_flags_destroy
      description: Hard delete of this model is not allowed. Use a patch API call to set "deleted" to true
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:write
      responses:
        '405':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/activity/:
    get:
      operationId: feature_flags_activity_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - in: query
        name: limit
        schema:
          type: integer
          minimum: 1
          default: 10
        description: Number of items per page
      - in: query
        name: page
        schema:
          type: integer
          minimum: 1
          default: 1
        description: Page number
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - activity_log:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActivityLogPaginatedResponse'
          description: ''
        '404':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/create_static_cohort_for_flag/:
    post:
      operationId: feature_flags_create_static_cohort_for_flag_create
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/dashboard/:
    post:
      operationId: feature_flags_dashboard_create
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/dependent_flags/:
    get:
      operationId: feature_flags_dependent_flags_list
      description: Get other active flags that depend on this flag.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DependentFlag'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/enrich_usage_dashboard/:
    post:
      operationId: feature_flags_enrich_usage_dashboard_create
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/remote_config/:
    get:
      operationId: feature_flags_remote_config_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/status/:
    get:
      operationId: feature_flags_status_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlagStatusResponse'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/{id}/versions/{version_number}/:
    get:
      operationId: feature_flags_versions_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this feature flag.
        required: true
      - $ref: '#/components/parameters/ProjectIdPath'
      - in: path
        name: version_number
        schema:
          type: integer
        description: The version number to reconstruct.
        required: true
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FeatureFlagVersionResponse'
          description: ''
        '400':
          description: Version history is not available for remote configuration flags.
        '404':
          description: Version not found.
        '422':
          description: Activity log incomplete; cannot reconstruct this version.
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/activity/:
    get:
      operationId: feature_flags_all_activity_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: query
        name: limit
        schema:
          type: integer
          minimum: 1
          default: 10
        description: Number of items per page
      - in: query
        name: page
        schema:
          type: integer
          minimum: 1
          default: 1
        description: Page number
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - activity_log:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActivityLogPaginatedResponse'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/bulk_delete/:
    post:
      operationId: feature_flags_bulk_delete_create
      description: 'Bulk delete feature flags by filter criteria or explicit IDs.


        Accepts either:

        - {"filters": {...}} - Same filter params as list endpoint (search, active, type, etc.)

        - {"ids": [...]} - Explicit list of flag IDs (no limit)


        Returns same format as bulk_delete for UI compatibility.


        Uses bulk operations for efficiency: database updates are batched and cache

        invalidation happens once at the end rather than per-flag.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:write
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/bulk_keys/:
    post:
      operationId: feature_flags_bulk_keys_create
      description: 'Get feature flag keys by IDs.

        Accepts a list of feature flag IDs and returns a mapping of ID to key.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FeatureFlag'
        required: true
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/bulk_update_tags/:
    post:
      operationId: feature_flags_bulk_update_tags_create
      description: 'Bulk update tags on multiple objects.


        Accepts:

        - {"ids": [...], "action": "add"|"remove"|"set", "tags": ["tag1", "tag2"]}


        Actions:

        - "add": Add tags to existing tags on each object

        - "remove": Remove specific tags from each object

        - "set": Replace all tags on each object with the provided list'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkUpdateTagsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/BulkUpdateTagsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/BulkUpdateTagsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkUpdateTagsResponse'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/evaluation_reasons/:
    get:
      operationId: feature_flags_evaluation_reasons_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: query
        name: distinct_id
        schema:
          type: string
          minLength: 1
        description: User distinct ID
        required: true
      - in: query
        name: groups
        schema:
          type: string
          default: '{}'
        description: Groups for feature flag evaluation (JSON object string)
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/local_evaluation/:
    get:
      operationId: feature_flags_local_evaluation_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      - in: query
        name: send_cohorts
        schema:
          type:
          - boolean
          - 'null'
          default: false
        description: Include cohorts in response
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocalEvaluationResponse'
          description: ''
        '402':
          description: Payment required
        '500':
          description: Internal server error
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/matching_ids/:
    get:
      operationId: feature_flags_matching_ids_retrieve
      description: 'Get IDs of all feature flags matching the current filters.

        Uses the same filtering logic as the list endpoint.

        Returns only IDs that the user has permission to edit.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          description: No response body
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/my_flags/:
    get:
      operationId: feature_flags_my_flags_retrieve
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - in: query
        name: groups
        schema:
          type: string
          default: '{}'
        description: Groups for feature flag evaluation (JSON object string)
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MyFlagsResponse'
          description: ''
      x-explicit-tags:
      - feature_flags
  /api/projects/{project_id}/feature_flags/user_blast_radius/:
    post:
      operationId: feature_flags_user_blast_radius_create
      description: 'Create, read, update and delete feature flags. [See docs](https://posthog.com/docs/feature-flags) for more information on feature flags.


        If you''re looking to use feature flags on your application, you can either use our JavaScript Library or our dedicated endpoint to check if feature flags are enabled for a given user.'
      parameters:
      - $ref: '#/components/parameters/ProjectIdPath'
      tags:
      - feature_flags
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserBlastRadiusRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/UserBlastRadiusRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UserBlastRadiusRequest'
        required: true
      security:
      - PersonalAPIKeyAuth:
        - feature_flag:read
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserBlastRadiusResponse'
          description: ''
      x-explicit-tags:
      - feature_flags
components:
  schemas:
    NullEnum:
      enum:
      - null
    FeatureFlagMultivariateSchema:
      type: object
      properties:
        variants:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlagMultivariateVariantSchema'
          description: Variant definitions for multivariate feature flags.
      required:
      - variants
    FeatureFlagVersionResponse:
      type: object
      description: Feature flag state at a given version plus reconstruction metadata.
      properties:
        id:
          type: integer
          readOnly: true
        key:
          type: string
          maxLength: 400
        name:
          type: string
        filters:
          type: object
          additionalProperties: true
          readOnly: true
        active:
          type: boolean
        deleted:
          type: boolean
        version:
          type:
          - integer
          - 'null'
          maximum: 2147483647
          minimum: -2147483648
        rollback_conditions: {}
        performed_rollback:
          type:
          - boolean
          - 'null'
        ensure_experience_continuity:
          type:
          - boolean
          - 'null'
        has_enriched_analytics:
          type:
          - boolean
          - 'null'
        is_remote_configuration:
          type:
          - boolean
          - 'null'
        has_encrypted_payloads:
          type:
          - boolean
          - 'null'
        evaluation_runtime:
          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:
          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'
        last_called_at:
          type:
          - string
          - 'null'
          format: date-time
          description: Last time this feature flag was called (from $feature_flag_called events)
        created_at:
          type: string
          format: date-time
        created_by:
          type:
          - integer
          - 'null'
          readOnly: true
        is_historical:
          type: boolean
          readOnly: true
          description: False for the current version; true for reconstructed historical versions.
        version_timestamp:
          type:
          - string
          - 'null'
          format: date-time
          readOnly: true
        modified_by:
          type:
          - integer
          - 'null'
          readOnly: true
          description: User from the activity log entry that produced this version.
      required:
      - created_by
      - filters
      - id
      - is_historical
      - key
      - modified_by
      - version_timestamp
    FeatureFlagFilterPropertyFlagEvaluatesSchemaOperatorEnum:
      enum:
      - flag_evaluates_to
      type: string
      description: '* `flag_evaluates_to` - flag_evaluates_to'
    Trigger:
      type: object
      properties:
        job_type:
          type: string
          readOnly: true
        job_id:
          type: string
          readOnly: true
        payload:
          readOnly: true
      required:
      - job_id
      - job_type
      - payload
    BulkUpdateTagsResponse:
      type: object
      properties:
        updated:
          type: array
          items:
            $ref: '#/components/schemas/BulkUpdateTagsItem'
        skipped:
          type: array
          items:
            $ref: '#/components/schemas/BulkUpdateTagsError'
      required:
      - skipped
      - updated
    BulkUpdateTagsError:
      type: object
      properties:
        id:
          type: integer
        reason:
          type: string
      required:
      - id
      - reason
    FeatureFlagFiltersSchema:
      type: object
      properties:
        groups:
          type: array
          items:
      

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/posthog/refs/heads/main/openapi/posthog-feature-flags-api-openapi.yml