Skip to content
Docs

Feature Flags

Read and update feature flags and their settings. Create SDK keys and list the keys available for a project.

Create a flag.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.
requestBodyobjectYesRequest body for this tool.

Create an SDK key.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.
requestBodyobjectNoRequest body for this tool.

Get a flag.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
flagIdOrSlugstringYesThe flag id or name
ifMatchstringNoETag to match, can be used interchangeably with the if-match header
withMetadatabooleanNoWhether to include metadata in the response
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Retrieve a feature flag segment by ID or slug.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
segmentIdOrSlugstringYesThe segment slug
withMetadatabooleanNoWhether to include metadata Default: false.
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Get project flag settings.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Get all SDK keys.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

List all feature flag segments for a project.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
withMetadatabooleanNoWhether to include metadata Default: false.
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Lists flag versions for a given flag.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project ID or name.
flagIdOrSlugstringYesThe feature flag ID or slug.
limitnumberNoMinimum: 1. Maximum: 100. Default: 20.
cursorstringNoPagination cursor
environmentstringNoEnvironment to filter by
withMetadatabooleanNoWhether to include metadata Default: false.
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

List flags.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
statestringNoThe state of the flags to retrieve. Defaults to active. Allowed values: "active", "archived".
withMetadatabooleanNoDeprecated. Whether to include creator metadata in each flag in the response. Resolve creator identity client-side (e.g. via the team members endpoint) instead. This parameter will be removed in a future release. Use GET /v1/projects/:id/feature-flags/flags/:flagIdOrSlug?withMetadata=true for single-flag lookups that need creator metadata.
limitintegerNoMaximum number of flags to return. When not set, all flags are returned. Minimum: 1. Maximum: 100.
cursorstringNoPagination cursor to continue from.
searchstringNoSearch flags by their slug or description. Case-insensitive.
tagsArray<string>NoFilter flags by tag. Repeat the parameter for multiple tags (all must match).
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

List flags.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
statestringNoThe state of the flags to retrieve. Defaults to active. Allowed values: "active", "archived".
limitintegerNoMaximum number of flags to return. Minimum: 1. Maximum: 100. Default: 25.
cursorstringNoPagination cursor to continue from.
searchstringNoSearch flags by their slug or description. Case-insensitive.
tagsArray<string>NoFilter flags by tag. Repeat the parameter for multiple tags (all must match).
createdBystringNoFilter flags by the id of the entity that created them (a user or team id).
maintainerIdsArray<string>NoFilter flags by maintainer user id. Repeat the parameter for multiple maintainers (any may match).
includeMarketplaceFlagsbooleanNoWhether to include Marketplace experimentation items in the paginated response. Defaults to false.
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Retrieve feature flag settings for projects in a team.

Parameters

ParameterTypeRequiredDescription
limitintegerNoMaximum number of settings to return. Minimum: 1. Maximum: 100. Default: 20.
cursorstringNoPagination cursor to continue from.
teamIdstringYesTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Retrieve all feature flags for a team across all projects. The list can be filtered by state and supports pagination.

Parameters

ParameterTypeRequiredDescription
statestringNoThe state of the flags to retrieve. Defaults to active. Allowed values: "active", "archived".
withMetadatabooleanNoDeprecated. Whether to include creator metadata in each flag in the response. Resolve creator identity client-side (e.g. via the team members endpoint) instead. This parameter will be removed in a future release.
limitintegerNoMaximum number of flags to return. Minimum: 1. Maximum: 100. Default: 20.
cursorstringNoPagination cursor to continue from.
searchstringNoSearch flags by their slug or description. Case-insensitive.
kindstringNoThe kind of flags to retrieve. Allowed values: "boolean", "string", "number", "json".
tagsArray<string>NoFilter flags by tag. Repeat the parameter for multiple tags (all must match).
teamIdstringYesTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Retrieve all feature flags for a team across all projects. Returns an opaque cursor for pagination.

Parameters

ParameterTypeRequiredDescription
statestringNoThe state of the flags to retrieve. Defaults to active. Allowed values: "active", "archived".
limitintegerNoMaximum number of flags to return. Minimum: 1. Maximum: 100. Default: 25.
cursorstringNoPagination cursor to continue from.
searchstringNoSearch flags by their slug or description. Case-insensitive.
kindstringNoThe kind of flags to retrieve. Allowed values: "boolean", "string", "number", "json".
tagsArray<string>NoFilter flags by tag. Repeat the parameter for multiple tags (all must match).
createdBystringNoFilter flags by the id of the entity that created them (a user or team id).
maintainerIdsArray<string>NoFilter flags by maintainer user id. Repeat the parameter for multiple maintainers (any may match).
includeMarketplaceFlagsbooleanNoWhether to include Marketplace experimentation items in the paginated response. Defaults to false.
teamIdstringYesTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.

Update a flag.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
flagIdOrSlugstringYesThe flag id or name
ifMatchstringNoETag to match, can be used interchangeably with the if-match header
withMetadatabooleanNoWhether to include metadata in the response
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.
requestBodyobjectNoRequest body for this tool.

Update an existing feature flag segment.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
segmentIdOrSlugstringYesThe segment slug
withMetadatabooleanNoWhether to include metadata Default: false.
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.
requestBodyobjectNoRequest body for this tool.

Update project flag settings.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID to use for this operation.
slugstringNoTeam slug to use for this operation. Use instead of teamId.
requestBodyobjectNoRequest body for this tool.

List the flag connections for a project within one team.

Use role: "source" (the default) to list projects that can read this project's flags. Use role: "consumer" to list projects whose flags it can read. Connections apply across environments.

On a project-scoped MCP connection, the selected project and team come from the route. Your OAuth grant must include that project, and you need permission to list its connections.

Example

{
  "teamId": "team_example",
  "projectIdOrName": "prj_source",
  "role": "source"
}

The response contains a data array with the source and consumer project IDs, available names, and creation details.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
rolestringNoList connections where this project is the source (default) or the consumer Allowed values: "source", "consumer".
teamIdstringNoTeam ID.
slugstringNoTeam slug.

Connect two projects in the same team. The source owns the flags; the consumer receives read and evaluate access across environments. Your consumer project's OIDC token selects the environment. Connections do not permit flag changes.

Set projectIdOrName to the source and requestBody.consumerProjectId to the consumer. Confirm both projects before creating the connection. On a project-scoped MCP connection, connect to the source project.

Example

{
  "teamId": "team_example",
  "projectIdOrName": "prj_source",
  "requestBody": {
    "consumerProjectId": "prj_consumer"
  }
}

The response identifies both projects and the connection's creator and creation time. Read it back with list_flags_project_connections. An existing connection returns a conflict; inspect it before retrying.

Required permissions

Your MCP OAuth grant must cover both projects. You need permission to manage connections on the source and view the consumer. See Project Connections permissions.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
teamIdstringNoTeam ID.
slugstringNoTeam slug.
requestBodyobjectYesRequest body for this tool.

Get the source project's Flags Connections page, where you can disconnect the selected consumer. This tool checks the source project's team and returns requires_user_action with mutationExecuted: false. It does not revoke access.

Set projectIdOrName to the source and consumerProjectId to the consumer. On a project-scoped MCP connection, connect to the source project.

Example

{
  "teamId": "team_example",
  "projectIdOrName": "prj_source",
  "consumerProjectId": "prj_consumer"
}

Open the returned URL, find the consumer under projects that can read the source's flags, and select Remove Connection. This removes access across environments. Use list_flags_project_connections to verify removal.

You need permission to manage connections on the source to complete this action. You don't need access to the consumer. See Project Connections permissions.

Parameters

ParameterTypeRequiredDescription
projectIdOrNamestringYesThe project id or name
consumerProjectIdstringYesThe connected consumer project id
teamIdstringYesTeam ID.

Was this helpful?

supported.