# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Flagsmith MCP API version: 1.0.0 extends: openapi/flagsmith-mcp-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 54 - target: $.paths['/api/v1/environments/'].get update: x-apievangelist-phrasing: intent: List environments I can access effect: read questions: - Which Flagsmith environments does my account have access to? - Can I narrow the environment list down to a single project? instructions: - text: List every environment I have access to. - text: Show the environments that belong to project {project}. slots: project: query.project method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/create-change-request/'].post update: x-apievangelist-phrasing: intent: Open a change request for flag changes effect: write questions: - How do I propose a flag change for approval instead of applying it directly? - Can a change request bundle several feature state changes in one environment? instructions: - text: 'Open a change request titled {title} in environment {environment_api_key} with these feature state changes: {feature_states}.' slots: title: requestBody.title environment_api_key: path.environment_api_key feature_states: requestBody.feature_states - text: Submit a change request in {environment_api_key} called {title} explaining {description}. slots: environment_api_key: path.environment_api_key title: requestBody.title description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiment-metrics/'].get update: x-apievangelist-phrasing: intent: List experiment metrics in an environment effect: read questions: - What experiment metrics are defined for this environment? - Can I search experiment metrics by name? instructions: - text: List the experiment metrics in environment {environment_api_key}. slots: environment_api_key: path.environment_api_key - text: Find experiment metrics named like {q} in {environment_api_key}. slots: q: query.q environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiment-metrics/'].post update: x-apievangelist-phrasing: intent: Define a new experiment metric effect: write questions: - How do I define a metric to measure an experiment against? - Can I set whether a metric should go up or down when I create it? instructions: - text: Create an experiment metric {name} in {environment_api_key} using event definition {definition}. slots: name: requestBody.name environment_api_key: path.environment_api_key definition: requestBody.definition - text: Add metric {name} to {environment_api_key} with aggregation {aggregation} and expected direction {direction}, defined by {definition}. slots: name: requestBody.name environment_api_key: path.environment_api_key aggregation: requestBody.aggregation direction: requestBody.direction definition: requestBody.definition method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiment-metrics/{id}/'].get update: x-apievangelist-phrasing: intent: Get an experiment metric's details effect: read questions: - Which experiments are using a particular metric? - What aggregation and event definition does this experiment metric use? instructions: - text: Show experiment metric {id} in environment {environment_api_key} and the experiments that use it. slots: id: path.id environment_api_key: path.environment_api_key - text: Tell me which experiments use metric {id} in {environment_api_key}. slots: id: path.id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiment-metrics/{id}/'].put update: x-apievangelist-phrasing: intent: Update an experiment metric effect: write questions: - Can I change the event definition of an existing experiment metric? - How would I rename a metric I already created for experiments? instructions: - text: Rename experiment metric {id} in {environment_api_key} to {name}, keeping definition {definition}. slots: id: path.id environment_api_key: path.environment_api_key name: requestBody.name definition: requestBody.definition - text: Change the expected direction of existing metric {id} in {environment_api_key} to {direction}. slots: id: path.id environment_api_key: path.environment_api_key direction: requestBody.direction method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/'].get update: x-apievangelist-phrasing: intent: List experiments in an environment effect: read questions: - Which experiments are currently running in this environment? - Can I filter experiments by status or search by feature name? instructions: - text: List the experiments in environment {environment_api_key}. slots: environment_api_key: path.environment_api_key - text: Show experiments in {environment_api_key} with status {status}. slots: environment_api_key: path.environment_api_key status: query.status - text: Search experiments in {environment_api_key} for {q}. slots: environment_api_key: path.environment_api_key q: query.q method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/'].post update: x-apievangelist-phrasing: intent: Start an experiment on a multivariate feature effect: write questions: - How do I set up an A/B experiment on a multivariate flag? - Is it possible to run two active experiments on the same feature? instructions: - text: Create experiment {name} on feature {feature} in {environment_api_key} with hypothesis {hypothesis}. slots: name: requestBody.name feature: requestBody.feature environment_api_key: path.environment_api_key hypothesis: requestBody.hypothesis - text: Set up an experiment on feature {feature} in {environment_api_key} called {name}, testing {hypothesis}, and attach metrics {metrics}. slots: feature: requestBody.feature environment_api_key: path.environment_api_key name: requestBody.name hypothesis: requestBody.hypothesis metrics: requestBody.metrics method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/{experiment_id}/'].get update: x-apievangelist-phrasing: intent: Get an experiment's configuration effect: read questions: - What metrics and rollout state does this experiment have? - Which feature is a given experiment configured against? instructions: - text: Show the configuration of experiment {experiment_id} in environment {environment_api_key}. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key - text: List the metrics attached to experiment {experiment_id} in {environment_api_key} and its rollout state. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/{experiment_id}/'].put update: x-apievangelist-phrasing: intent: Rename an experiment or change its hypothesis effect: write questions: - Can I reword the hypothesis of an experiment that already exists? - How would I rename an experiment after creating it? instructions: - text: Rename experiment {experiment_id} in {environment_api_key} to {name}, keeping feature {feature} and hypothesis {hypothesis}. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key name: requestBody.name feature: requestBody.feature hypothesis: requestBody.hypothesis - text: Change the hypothesis of existing experiment {experiment_id} to {hypothesis}. slots: experiment_id: path.experiment_id hypothesis: requestBody.hypothesis method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/{experiment_id}/exposures/'].get update: x-apievangelist-phrasing: intent: Get variant exposure counts for an experiment effect: read questions: - How many users have been exposed to each variant of my experiment? - Why would an experiment's exposure counts come back empty? instructions: - text: Show the variant exposure counts for experiment {experiment_id} in {environment_api_key}. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key - text: Check how many users saw each variant in experiment {experiment_id} ({environment_api_key}). slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/experiments/{experiment_id}/results/'].get update: x-apievangelist-phrasing: intent: Get statistical results for an experiment effect: read questions: - Is my experiment showing a statistically significant winner yet? - What do the metric results look like for a finished experiment? instructions: - text: Get the statistical results for experiment {experiment_id} in {environment_api_key}. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key - text: Tell me whether experiment {experiment_id} in {environment_api_key} has a winning variant yet. slots: experiment_id: path.experiment_id environment_api_key: path.environment_api_key method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/features/{feature_pk}/create-segment-override/'].post update: x-apievangelist-phrasing: intent: Add a segment override to a feature in one call effect: write questions: - How do I give a segment a different flag value in a single request? - Can I bind a segment and set its override value at the same time? instructions: - text: Override feature {feature_pk} in {environment_api_key} for segment {feature_segment} with value {feature_state_value}. slots: feature_pk: path.feature_pk environment_api_key: path.environment_api_key feature_segment: requestBody.feature_segment feature_state_value: requestBody.feature_state_value - text: Create a segment override on feature {feature_pk} in {environment_api_key} that sets enabled to {enabled} and value {feature_state_value}. slots: feature_pk: path.feature_pk environment_api_key: path.environment_api_key enabled: requestBody.enabled feature_state_value: requestBody.feature_state_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/featurestates/{id}/'].put update: x-apievangelist-phrasing: intent: Update a feature state in an unversioned environment effect: write questions: - How do I turn a flag on in an environment that doesn't use v2 feature versioning? - Can I change a flag's value in an environment scoped by its API key? instructions: - text: In environment {environment_api_key}, set feature state {id} for feature {feature} to enabled {enabled}. slots: environment_api_key: path.environment_api_key id: path.id feature: requestBody.feature enabled: requestBody.enabled - text: Change the value of feature state {id} in environment {environment_api_key} to {feature_state_value} for feature {feature}. slots: id: path.id environment_api_key: path.environment_api_key feature_state_value: requestBody.feature_state_value feature: requestBody.feature method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_api_key}/list-change-requests/'].get update: x-apievangelist-phrasing: intent: List change requests in an environment effect: read questions: - Which change requests are still waiting to be committed in this environment? - Can I find change requests that touch a particular feature or segment in one environment? instructions: - text: List the change requests for environment {environment_api_key}. slots: environment_api_key: path.environment_api_key - text: Show uncommitted change requests in {environment_api_key} for feature {feature_id}. slots: environment_api_key: path.environment_api_key feature_id: query.feature_id - text: Search change requests in {environment_api_key} for {search}. slots: environment_api_key: path.environment_api_key search: query.search method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/feature-lifecycle-counts/'].get update: x-apievangelist-phrasing: intent: Count features by lifecycle stage effect: read questions: - How many flags are in each lifecycle stage for this environment? - What share of an environment's features are stale or ready to remove? instructions: - text: Give me feature counts per lifecycle stage for environment {environment_pk}. slots: environment_pk: path.environment_pk - text: Summarise how many flags in environment {environment_pk} sit in each lifecycle stage. slots: environment_pk: path.environment_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/'].get update: x-apievangelist-phrasing: intent: List versions of a feature in an environment effect: read questions: - What version history does a flag have in a v2-versioned environment? - Can I see past published versions of a feature in one environment? instructions: - text: List the versions of feature {feature_pk} in environment {environment_pk}. slots: feature_pk: path.feature_pk environment_pk: path.environment_pk - text: Show the version history of flag {feature_pk} for v2-versioned environment {environment_pk}. slots: feature_pk: path.feature_pk environment_pk: path.environment_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/'].post update: x-apievangelist-phrasing: intent: Create a new feature version in an environment effect: write questions: - How do I draft a new version of a flag in a v2-versioned environment? - Can I create a feature version and publish it immediately? instructions: - text: Create a new version of feature {feature_pk} in environment {environment_pk}. slots: feature_pk: path.feature_pk environment_pk: path.environment_pk - text: 'Draft a version of feature {feature_pk} in {environment_pk} described as {description} and publish immediately: {publish_immediately}.' slots: feature_pk: path.feature_pk environment_pk: path.environment_pk description: requestBody.description publish_immediately: requestBody.publish_immediately - text: In a new version of feature {feature_pk} for {environment_pk}, remove the overrides for segments {segment_ids_to_delete_overrides}. slots: feature_pk: path.feature_pk environment_pk: path.environment_pk segment_ids_to_delete_overrides: requestBody.segment_ids_to_delete_overrides method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/{environment_feature_version_pk}/featurestates/'].get update: x-apievangelist-phrasing: intent: List feature states inside a feature version effect: read questions: - Which feature states make up a specific feature version? - What values did a flag have in a particular version in this environment? instructions: - text: Show the feature states in version {environment_feature_version_pk} of feature {feature_pk} in environment {environment_pk}. slots: environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk - text: List the flag values captured in version {environment_feature_version_pk} for feature {feature_pk}, environment {environment_pk}. slots: environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/{environment_feature_version_pk}/featurestates/'].post update: x-apievangelist-phrasing: intent: Add a feature state to a draft version effect: write questions: - How do I add a segment override to an unpublished feature version? - Can I add a new feature state to a version before it goes live? instructions: - text: Add a feature state with value {feature_state_value} to version {environment_feature_version_pk} of feature {feature_pk} in {environment_pk}. slots: feature_state_value: requestBody.feature_state_value environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk - text: In draft version {environment_feature_version_pk} of {feature_pk} in {environment_pk}, override segment {feature_segment} with {feature_state_value}. slots: environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk feature_segment: requestBody.feature_segment feature_state_value: requestBody.feature_state_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/{environment_feature_version_pk}/featurestates/{id}/'].put update: x-apievangelist-phrasing: intent: Edit a feature state inside a draft version effect: write questions: - Can I change a feature state that is already part of a draft version? - How do I toggle a flag inside a version that hasn't been published? instructions: - text: Set feature state {id} in version {environment_feature_version_pk} of feature {feature_pk} in {environment_pk} to value {feature_state_value}. slots: id: path.id environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk feature_state_value: requestBody.feature_state_value - text: Toggle versioned state {id} to {enabled} in version {environment_feature_version_pk}, feature {feature_pk}, env {environment_pk}, value {feature_state_value}. slots: enabled: requestBody.enabled id: path.id environment_feature_version_pk: path.environment_feature_version_pk feature_pk: path.feature_pk environment_pk: path.environment_pk feature_state_value: requestBody.feature_state_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/environments/{environment_pk}/features/{feature_pk}/versions/{id}/publish/'].post update: x-apievangelist-phrasing: intent: Publish a feature version to go live effect: write questions: - How do I make a drafted feature version live? - Can I schedule a feature version to go live at a later time? instructions: - text: Publish version {id} of feature {feature_pk} in environment {environment_pk}. slots: id: path.id feature_pk: path.feature_pk environment_pk: path.environment_pk - text: Publish version {id} of feature {feature_pk} in {environment_pk} to go live at {live_from}. slots: id: path.id feature_pk: path.feature_pk environment_pk: path.environment_pk live_from: requestBody.live_from method: generated generated: '2026-09-26' - target: $.paths['/api/v1/features/feature-segments/'].get update: x-apievangelist-phrasing: intent: List segment overrides for a feature effect: read questions: - Which segments override this flag in a given environment? - What segment overrides exist for one feature in one environment? instructions: - text: List the segment overrides for feature {feature} in environment {environment}. slots: feature: query.feature environment: query.environment - text: Show which segments override flag {feature} in environment {environment}. slots: feature: query.feature environment: query.environment method: generated generated: '2026-09-26' - target: $.paths['/api/v1/features/feature-segments/{id}/'].delete update: x-apievangelist-phrasing: intent: Remove a segment override effect: destructive questions: - How do I remove a segment override from a flag in an unversioned environment? - Can I delete a segment override without deleting the segment itself? instructions: - text: Delete segment override {id}. slots: id: path.id - text: Remove feature segment {id} so the segment falls back to the environment default. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/features/featurestates/{id}/'].put update: x-apievangelist-phrasing: intent: Update a feature state or segment override value effect: write questions: - How can I change a segment override's value by its feature state ID? - Can I update a feature state directly without going through an environment key? instructions: - text: Update feature state {id} for feature {feature} in environment {environment} to value {feature_state_value}. slots: id: path.id feature: requestBody.feature environment: requestBody.environment feature_state_value: requestBody.feature_state_value - text: Set enabled to {enabled} on feature state {id} (feature {feature}, environment {environment}). slots: enabled: requestBody.enabled id: path.id feature: requestBody.feature environment: requestBody.environment method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/'].get update: x-apievangelist-phrasing: intent: List my organisations effect: read questions: - Which Flagsmith organisations can my API key see? - What organisations am I a member of? instructions: - text: List all organisations I can access. - text: Show me the organisations my API key belongs to. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/{organisation_pk}/groups/'].get update: x-apievangelist-phrasing: intent: List permission groups in an organisation effect: read questions: - What permission groups exist in my organisation? - Which user groups have been set up for access control? instructions: - text: List the permission groups in organisation {organisation_pk}. slots: organisation_pk: path.organisation_pk - text: Show every user group set up for access control in organisation {organisation_pk}. slots: organisation_pk: path.organisation_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/{organisation_pk}/invites/'].get update: x-apievangelist-phrasing: intent: List pending organisation invitations effect: read questions: - Who has been invited to the organisation but not joined yet? - Are there any outstanding invites for my organisation? instructions: - text: Show the pending invitations for organisation {organisation_pk}. slots: organisation_pk: path.organisation_pk - text: List who has been invited to organisation {organisation_pk} but hasn't joined. slots: organisation_pk: path.organisation_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/{organisation_pk}/invites/'].post update: x-apievangelist-phrasing: intent: Invite someone to an organisation effect: write questions: - How do I invite a teammate to my organisation by email? - Can I put a new invitee straight into permission groups? instructions: - text: Invite {email} to organisation {organisation_pk}. slots: email: requestBody.email organisation_pk: path.organisation_pk - text: Invite {email} to organisation {organisation_pk} as {role} and add them to groups {permission_groups}. slots: email: requestBody.email organisation_pk: path.organisation_pk role: requestBody.role permission_groups: requestBody.permission_groups method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/{organisation_pk}/roles/'].get update: x-apievangelist-phrasing: intent: List custom roles in an organisation effect: read questions: - What custom roles have been defined for my organisation? - Which roles could I assign to organisation members? instructions: - text: List the custom roles in organisation {organisation_pk}. slots: organisation_pk: path.organisation_pk - text: Show which custom roles I could assign in organisation {organisation_pk}. slots: organisation_pk: path.organisation_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/organisations/{id}/projects/'].get update: x-apievangelist-phrasing: intent: List projects in an organisation effect: read questions: - What projects exist inside an organisation? - Which projects does organisation 12 contain? instructions: - text: List the projects in organisation {id}. slots: id: path.id - text: Show every project that organisation {id} owns. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{id}/'].get update: x-apievangelist-phrasing: intent: Get a project's settings and stats effect: read questions: - What settings and statistics does a project have? - Is realtime updates or edge identities turned on for this project? instructions: - text: Show the details of project {id}. slots: id: path.id - text: Get the configuration and statistics for project {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{id}/'].put update: x-apievangelist-phrasing: intent: Update a project's configuration effect: write questions: - How do I rename a project? - Can I require a minimum number of change request approvals for a project? - Is there a way to hide disabled flags from SDK responses project-wide? instructions: - text: Rename project {id} to {name}. slots: id: path.id name: requestBody.name - text: Set project {id} (name {name}) to require {minimum_change_request_approvals} change request approvals. slots: id: path.id name: requestBody.name minimum_change_request_approvals: requestBody.minimum_change_request_approvals - text: Mark flags stale after {stale_flags_limit_days} days in project {id} named {name}. slots: stale_flags_limit_days: requestBody.stale_flags_limit_days id: path.id name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{id}/environments/'].get update: x-apievangelist-phrasing: intent: List environments in a project effect: read questions: - What environments are configured under one project? - Does project 5 have a staging and a production environment? instructions: - text: List the environments in project {id}. slots: id: path.id - text: Show which environments are configured under project {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/change-requests/'].get update: x-apievangelist-phrasing: intent: List change requests across a project effect: read questions: - What change requests are open across every environment in a project? - Can I see project-wide change requests that affect a particular segment? instructions: - text: List all change requests for project {project_pk}. slots: project_pk: path.project_pk - text: Show change requests in project {project_pk} filtered by committed status {committed}. slots: project_pk: path.project_pk committed: query.committed - text: Find change requests in project {project_pk} touching segment {segment_id}. slots: project_pk: path.project_pk segment_id: query.segment_id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/feature-health/events/'].get update: x-apievangelist-phrasing: intent: Get feature health events for a project effect: read questions: - Have any flags in my project reported unhealthy events? - What feature health monitoring events has this project recorded? instructions: - text: Show feature health events for project {project_pk}. slots: project_pk: path.project_pk - text: List any unhealthy flag events reported in project {project_pk}. slots: project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/'].get update: x-apievangelist-phrasing: intent: List feature flags in a project effect: read questions: - What feature flags exist in my project? - Can I filter a project's flags by tag, owner or archived status? - Is there a way to see each flag's live state in a chosen environment while listing? instructions: - text: List the feature flags in project {project_pk}. slots: project_pk: path.project_pk - text: List project {project_pk} flags with their live state in environment {environment}. slots: project_pk: path.project_pk environment: query.environment - text: Search project {project_pk} for flags named {search} tagged {tags}. slots: project_pk: path.project_pk search: query.search tags: query.tags method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/'].post update: x-apievangelist-phrasing: intent: Create a feature flag effect: write questions: - How do I add a new feature flag to a project? - Can a new flag start enabled with an initial value? instructions: - text: Create a feature flag named {name} in project {project_pk}. slots: name: requestBody.name project_pk: path.project_pk - text: 'Create flag {name} in project {project_pk}, enabled by default: {default_enabled}, with initial value {initial_value}.' slots: name: requestBody.name project_pk: path.project_pk default_enabled: requestBody.default_enabled initial_value: requestBody.initial_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/code-references/'].get update: x-apievangelist-phrasing: intent: Find where a flag is referenced in code effect: read questions: - Where in our codebase is this feature flag still used? - Is a flag safe to remove, judging by its code references? instructions: - text: Show the code references for feature {feature_pk} in project {project_pk}. slots: feature_pk: path.feature_pk project_pk: path.project_pk - text: Tell me where flag {feature_pk} from project {project_pk} is still used in code. slots: feature_pk: path.feature_pk project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/feature-external-resources/'].get update: x-apievangelist-phrasing: intent: List external resources linked to a flag effect: read questions: - What issues or pull requests are linked to this feature flag? - Which external resources are attached to a flag? instructions: - text: List the external resources linked to feature {feature_pk} in project {project_pk}. slots: feature_pk: path.feature_pk project_pk: path.project_pk - text: Show the issues and pull requests linked to flag {feature_pk} in project {project_pk}. slots: feature_pk: path.feature_pk project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/mv-options/'].get update: x-apievangelist-phrasing: intent: List a flag's multivariate options effect: read questions: - What variants does a multivariate flag have? - How is traffic split between a flag's variations by default? instructions: - text: List the multivariate options for feature {feature_pk} in project {project_pk}. slots: feature_pk: path.feature_pk project_pk: path.project_pk - text: Show the variants and their default allocations for flag {feature_pk} in project {project_pk}. slots: feature_pk: path.feature_pk project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/mv-options/'].post update: x-apievangelist-phrasing: intent: Add a variant to a multivariate flag effect: write questions: - How do I add another variation to a multivariate flag? - Can I give a new variant a default percentage allocation? instructions: - text: Add a variant with string value {string_value} to feature {feature} (project {project_pk}, path feature {feature_pk}). slots: string_value: requestBody.string_value feature: requestBody.feature project_pk: path.project_pk feature_pk: path.feature_pk - text: Create a multivariate option on feature {feature_pk} in {project_pk} for feature {feature} with {default_percentage_allocation} percent allocation. slots: feature_pk: path.feature_pk project_pk: path.project_pk feature: requestBody.feature default_percentage_allocation: requestBody.default_percentage_allocation method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/mv-options/{id}/'].put update: x-apievangelist-phrasing: intent: Edit a multivariate option effect: write questions: - Can I change the value of an existing flag variant? - What's involved in rebalancing the allocation of one existing variant? instructions: - text: Change variant {id} of feature {feature_pk} in project {project_pk} (feature {feature}) to allocation {default_percentage_allocation}. slots: id: path.id feature_pk: path.feature_pk project_pk: path.project_pk feature: requestBody.feature default_percentage_allocation: requestBody.default_percentage_allocation - text: Update existing variant {id} on feature {feature_pk}, project {project_pk}, feature {feature} to string value {string_value}. slots: id: path.id feature_pk: path.feature_pk project_pk: path.project_pk feature: requestBody.feature string_value: requestBody.string_value method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{feature_pk}/mv-options/{id}/'].delete update: x-apievangelist-phrasing: intent: Delete a multivariate option effect: destructive questions: - How do I remove a variation from a multivariate flag? - Can I drop one variant without deleting the whole flag? instructions: - text: Delete variant {id} from feature {feature_pk} in project {project_pk}. slots: id: path.id feature_pk: path.feature_pk project_pk: path.project_pk - text: Remove multivariate option {id} from flag {feature_pk} (project {project_pk}). slots: id: path.id feature_pk: path.feature_pk project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{id}/'].get update: x-apievangelist-phrasing: intent: Get a feature flag's details effect: read questions: - What are the full details of one feature flag? - Who owns a specific flag and what tags does it carry? instructions: - text: Show feature flag {id} in project {project_pk}. slots: id: path.id project_pk: path.project_pk - text: Get the owners, tags and settings of flag {id} in project {project_pk}. slots: id: path.id project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{id}/'].put update: x-apievangelist-phrasing: intent: Update a feature flag's properties effect: write questions: - How do I rename a feature flag or change its description? - Can I archive a flag by updating it? instructions: - text: Rename flag {id} in project {project_pk} to {name}. slots: id: path.id project_pk: path.project_pk name: requestBody.name - text: Set the description of flag {id} in {project_pk} to {description}. slots: id: path.id project_pk: path.project_pk description: requestBody.description - text: 'Archive flag {id} in project {project_pk}: is_archived {is_archived}.' slots: id: path.id project_pk: path.project_pk is_archived: requestBody.is_archived method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/features/{id}/evaluation-data/'].get update: x-apievangelist-phrasing: intent: Get evaluation analytics for a flag effect: read questions: - How often has a flag been evaluated in production lately? - Can I break flag evaluations down by client application version? instructions: - text: Show evaluation data for flag {id} in project {project_pk} for environment {environment_id}. slots: id: path.id project_pk: path.project_pk environment_id: query.environment_id - text: Get evaluations of flag {id} in {project_pk}, environment {environment_id}, over period {period} for app {client_application_name}. slots: id: path.id project_pk: path.project_pk environment_id: query.environment_id period: query.period client_application_name: query.client_application_name method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/release-pipelines/'].get update: x-apievangelist-phrasing: intent: List release pipelines in a project effect: read questions: - What release pipelines has my project configured? - Which staged rollout pipelines exist for a project? instructions: - text: List the release pipelines in project {project_pk}. slots: project_pk: path.project_pk - text: Show the staged rollout pipelines set up in project {project_pk}, ordered by {ordering}. slots: project_pk: path.project_pk ordering: query.ordering method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/release-pipelines/{id}/'].get update: x-apievangelist-phrasing: intent: Get a release pipeline's details effect: read questions: - What stages and features does a particular release pipeline have? - When was a release pipeline published and by whom? instructions: - text: Show release pipeline {id} in project {project_pk}. slots: id: path.id project_pk: path.project_pk - text: Tell me the stages and flags in release pipeline {id} of project {project_pk}. slots: id: path.id project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/release-pipelines/{id}/add-feature/'].post update: x-apievangelist-phrasing: intent: Add a flag to a release pipeline effect: write questions: - How do I put a feature flag into a staged rollout pipeline? - Can I attach a flag to an existing release pipeline? instructions: - text: Add feature flags {features} to release pipeline {id} ({name}) in project {project_pk}. slots: features: requestBody.features id: path.id name: requestBody.name project_pk: path.project_pk - text: Put flags {features} into the staged rollout of pipeline {id} named {name} in project {project_pk}. slots: features: requestBody.features id: path.id name: requestBody.name project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/segments/'].get update: x-apievangelist-phrasing: intent: List segments in a project effect: read questions: - What audience segments are defined in my project? - Which segments does a particular identity belong to? instructions: - text: List the segments in project {project_pk}. slots: project_pk: path.project_pk - text: Search project {project_pk} segments by name for {q}. slots: project_pk: path.project_pk q: query.q - text: Show the segments in project {project_pk} that identity {identity} matches. slots: project_pk: path.project_pk identity: query.identity method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/segments/'].post update: x-apievangelist-phrasing: intent: Create an audience segment effect: write questions: - How do I define a new user segment for targeting? - Can I build a segment from trait-based rules? instructions: - text: Create segment {name} in project {project_pk} with rules {rules}. slots: name: requestBody.name project_pk: path.project_pk rules: requestBody.rules - text: Add a segment {name} to {project_pk} described as {description} using rules {rules}. slots: name: requestBody.name project_pk: path.project_pk description: requestBody.description rules: requestBody.rules method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/segments/{id}/'].get update: x-apievangelist-phrasing: intent: Get a segment's rules and details effect: read questions: - What rules define a particular segment? - How many members does a segment have? instructions: - text: Show segment {id} in project {project_pk}. slots: id: path.id project_pk: path.project_pk - text: Show the rules and member count of segment {id} in project {project_pk}. slots: id: path.id project_pk: path.project_pk method: generated generated: '2026-09-26' - target: $.paths['/api/v1/projects/{project_pk}/segments/{id}/'].put update: x-apievangelist-phrasing: intent: Update a segment's rules effect: write questions: - Can I change the targeting rules of an existing segment? - What's the way to rename a segment I already made? instructions: - text: Replace the rules of segment {id} in project {project_pk} with {rules}, keeping name {name}. slots: id: path.id project_pk: path.project_pk rules: requestBody.rules name: requestBody.name - text: Rename existing segment {id} in {project_pk} to {name} with rules {rules}. slots: id: path.id project_pk: path.project_pk name: requestBody.name rules: requestBody.rules method: generated generated: '2026-09-26'