---
title: "PUT /api/v1/projects/{project_pk}/features/{id}/"
method: PUT
path: "/api/v1/projects/{project_pk}/features/{id}/"
tags: ["mcp"]
---

# PUT /api/v1/projects/{project_pk}/features/{id}/

`PUT /api/v1/projects/{project_pk}/features/{id}/`

Updates feature flag properties such as name and description.

## Path parameters

- `id` integer, required
- `project_pk` integer, required — Changing the project selected will remove previous Feature States for the previously associated projects Environments that are related to this Feature. New default Feature States will be created for the new selected projects Environments for this Feature. Also this will remove any Tags associated with a feature as Tags are Project defined

## Request body

- UpdateFeature — prevent users from changing certain values after creation
  - `id` integer
  - `name` string
  - `type` union
    - 'STANDARD' | 'MULTIVARIATE' — * `STANDARD` - STANDARD * `MULTIVARIATE` - MULTIVARIATE
    - ''
  - `default_enabled` boolean
  - `initial_value` string, nullable
  - `created_date` string, date-time
  - `description` string, nullable
  - `tags` integer[]
  - `multivariate_options` NestedMultivariateFeatureOption[]
    - `id` integer
    - `uuid` string, uuid
    - `type` union
      - 'int' | 'unicode' | 'bool' — * `int` - Integer * `unicode` - String * `bool` - Boolean
      - ''
      - unknown
    - `integer_value` integer, nullable
    - `string_value` string, nullable
    - `boolean_value` boolean, nullable
    - `default_percentage_allocation` number, double
    - `key` string, nullable — A stable, human-readable identifier for the variant.
  - `is_archived` boolean
  - `owners` integer[]
  - `group_owners` integer[]
  - `uuid` string, uuid
  - `project` integer — Changing the project selected will remove previous Feature States for the previously associated projects Environments that are related to this Feature. New default Feature States will be created for the new selected projects Environments for this Feature. Also this will remove any Tags associated with a feature as Tags are Project defined
  - `environment_feature_state` FeatureStateSerializerSmall
    - `id` integer
    - `feature_state_value` union
      - string
      - integer
      - boolean
    - `environment` integer, nullable
    - `identity` integer, nullable
    - `feature_segment` integer, nullable
    - `enabled` boolean
  - `segment_feature_state` FeatureStateSerializerSmall
    - `id` integer
    - `feature_state_value` union
      - string
      - integer
      - boolean
    - `environment` integer, nullable
    - `identity` integer, nullable
    - `feature_segment` integer, nullable
    - `enabled` boolean
  - `num_segment_overrides` integer — Number of segment overrides that exist for the given feature in the environment provided by the `environment` query parameter.
  - `num_identity_overrides` integer, nullable — Number of identity overrides that exist for the given feature in the environment provided by the `environment` query parameter. Note: will return null for Edge enabled projects.
  - `is_num_identity_overrides_complete` boolean
  - `is_server_key_only` boolean
  - `last_modified_in_any_environment` string, date-time, nullable — Datetime representing the last time that the feature was modified in any environment in the given project. Note: requires feature versioning v2 enabled on the environment.
  - `last_modified_in_current_environment` string, date-time, nullable — Datetime representing the last time that the feature was modified in any environment in the current environment. Note: requires that the environment query parameter is passed and feature versioning v2 enabled on the environment.
  - `metadata` Metadata[]
    - `id` integer
    - `model_field` integer, required
    - `field_value` string, required
  - `code_references_counts` FeatureFlagCodeReferencesRepositoryCount[]
    - `repository_url` string, uri, required
    - `count` integer, required
    - `last_successful_repository_scanned_at` string, date-time, required
    - `last_feature_found_at` string, date-time, nullable, required
  - `lifecycle_stage` 'new' | 'live' | 'stale' | 'permanent' | 'needs_monitoring' | 'to_remove' — * `new` - new * `live` - live * `stale` - stale * `permanent` - permanent * `needs_monitoring` - needs_monitoring * `to_remove` - to_remove

## Response `200`

- UpdateFeature — prevent users from changing certain values after creation
  - `id` integer
  - `name` string
  - `type` union
    - 'STANDARD' | 'MULTIVARIATE' — * `STANDARD` - STANDARD * `MULTIVARIATE` - MULTIVARIATE
    - ''
  - `default_enabled` boolean
  - `initial_value` string, nullable
  - `created_date` string, date-time
  - `description` string, nullable
  - `tags` integer[]
  - `multivariate_options` NestedMultivariateFeatureOption[]
    - `id` integer
    - `uuid` string, uuid
    - `type` union
      - 'int' | 'unicode' | 'bool' — * `int` - Integer * `unicode` - String * `bool` - Boolean
      - ''
      - unknown
    - `integer_value` integer, nullable
    - `string_value` string, nullable
    - `boolean_value` boolean, nullable
    - `default_percentage_allocation` number, double
    - `key` string, nullable — A stable, human-readable identifier for the variant.
  - `is_archived` boolean
  - `owners` integer[]
  - `group_owners` integer[]
  - `uuid` string, uuid
  - `project` integer — Changing the project selected will remove previous Feature States for the previously associated projects Environments that are related to this Feature. New default Feature States will be created for the new selected projects Environments for this Feature. Also this will remove any Tags associated with a feature as Tags are Project defined
  - `environment_feature_state` FeatureStateSerializerSmall
    - `id` integer
    - `feature_state_value` union
      - string
      - integer
      - boolean
    - `environment` integer, nullable
    - `identity` integer, nullable
    - `feature_segment` integer, nullable
    - `enabled` boolean
  - `segment_feature_state` FeatureStateSerializerSmall
    - `id` integer
    - `feature_state_value` union
      - string
      - integer
      - boolean
    - `environment` integer, nullable
    - `identity` integer, nullable
    - `feature_segment` integer, nullable
    - `enabled` boolean
  - `num_segment_overrides` integer — Number of segment overrides that exist for the given feature in the environment provided by the `environment` query parameter.
  - `num_identity_overrides` integer, nullable — Number of identity overrides that exist for the given feature in the environment provided by the `environment` query parameter. Note: will return null for Edge enabled projects.
  - `is_num_identity_overrides_complete` boolean
  - `is_server_key_only` boolean
  - `last_modified_in_any_environment` string, date-time, nullable — Datetime representing the last time that the feature was modified in any environment in the given project. Note: requires feature versioning v2 enabled on the environment.
  - `last_modified_in_current_environment` string, date-time, nullable — Datetime representing the last time that the feature was modified in any environment in the current environment. Note: requires that the environment query parameter is passed and feature versioning v2 enabled on the environment.
  - `metadata` Metadata[]
    - `id` integer
    - `model_field` integer, required
    - `field_value` string, required
  - `code_references_counts` FeatureFlagCodeReferencesRepositoryCount[]
    - `repository_url` string, uri, required
    - `count` integer, required
    - `last_successful_repository_scanned_at` string, date-time, required
    - `last_feature_found_at` string, date-time, nullable, required
  - `lifecycle_stage` 'new' | 'live' | 'stale' | 'permanent' | 'needs_monitoring' | 'to_remove' — * `new` - new * `live` - live * `stale` - stale * `permanent` - permanent * `needs_monitoring` - needs_monitoring * `to_remove` - to_remove

---

[API](https://skmtc.dev/flagsmith/apis/flagsmith-api.md) · [All operations](https://skmtc.dev/flagsmith/apis/flagsmith-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/flagsmith/flagsmith-api/revisions/5a8154d05269/schema)
