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

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

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

Updates project configuration settings such as the project name and feature visibility.

## Path parameters

- `id` integer, required

## Request body

- ProjectUpdate — Mixin to add read only status to fields in a given serializer based on the existence of a subscription and a black list of plan ids Example usage: class MySerializer(ReadOnlyIfNotValidPlanMixin, ModelSerializer): class Meta: model = MyModel fields = ("my_field",) invalid_plans = ("free",) field_names = ("my_field",) def get_subscription(self): return subscription
  - `id` integer
  - `uuid` string, uuid
  - `name` string, required
  - `organisation` integer
  - `hide_disabled_flags` boolean — If true will exclude flags from SDK which are disabled
  - `enable_dynamo_db` boolean — If true will sync environment data with dynamodb and allow access to dynamodb identities
  - `migration_status` string — Edge migration status of the project; can be one of: MIGRATION_SCHEDULED, MIGRATION_COMPLETED, MIGRATION_IN_PROGRESS, MIGRATION_NOT_STARTED, NOT_APPLICABLE
  - `use_edge_identities` boolean
  - `prevent_flag_defaults` boolean — Prevent defaults from being set in all environments when creating a feature.
  - `enable_realtime_updates` boolean — Enable this to trigger a realtime(sse) event whenever the value of a flag changes
  - `only_allow_lower_case_feature_names` boolean — Used by UI to validate feature names
  - `feature_name_regex` string, nullable — Used for validating feature names
  - `show_edge_identity_overrides_for_feature` boolean
  - `stale_flags_limit_days` integer — Number of days without modification in any environment before a flag is considered stale.
  - `edge_v2_migration_status` 'NOT_STARTED' | 'IN_PROGRESS' | 'COMPLETE' | 'INCOMPLETE' — * `NOT_STARTED` - Not Started * `IN_PROGRESS` - In Progress * `COMPLETE` - Complete * `INCOMPLETE` - Incomplete (identity overrides skipped)
  - `minimum_change_request_approvals` integer, nullable
  - `enforce_feature_owners` boolean — Require at least one user or group owner when creating a feature.

## Response `200`

- ProjectUpdate — Mixin to add read only status to fields in a given serializer based on the existence of a subscription and a black list of plan ids Example usage: class MySerializer(ReadOnlyIfNotValidPlanMixin, ModelSerializer): class Meta: model = MyModel fields = ("my_field",) invalid_plans = ("free",) field_names = ("my_field",) def get_subscription(self): return subscription
  - `id` integer
  - `uuid` string, uuid
  - `name` string, required
  - `organisation` integer
  - `hide_disabled_flags` boolean — If true will exclude flags from SDK which are disabled
  - `enable_dynamo_db` boolean — If true will sync environment data with dynamodb and allow access to dynamodb identities
  - `migration_status` string — Edge migration status of the project; can be one of: MIGRATION_SCHEDULED, MIGRATION_COMPLETED, MIGRATION_IN_PROGRESS, MIGRATION_NOT_STARTED, NOT_APPLICABLE
  - `use_edge_identities` boolean
  - `prevent_flag_defaults` boolean — Prevent defaults from being set in all environments when creating a feature.
  - `enable_realtime_updates` boolean — Enable this to trigger a realtime(sse) event whenever the value of a flag changes
  - `only_allow_lower_case_feature_names` boolean — Used by UI to validate feature names
  - `feature_name_regex` string, nullable — Used for validating feature names
  - `show_edge_identity_overrides_for_feature` boolean
  - `stale_flags_limit_days` integer — Number of days without modification in any environment before a flag is considered stale.
  - `edge_v2_migration_status` 'NOT_STARTED' | 'IN_PROGRESS' | 'COMPLETE' | 'INCOMPLETE' — * `NOT_STARTED` - Not Started * `IN_PROGRESS` - In Progress * `COMPLETE` - Complete * `INCOMPLETE` - Incomplete (identity overrides skipped)
  - `minimum_change_request_approvals` integer, nullable
  - `enforce_feature_owners` boolean — Require at least one user or group owner when creating a feature.

---

[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)
