Statsig · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Statsig Gates API
57 actions
57 updates
phrasing
extends
openapi/statsig-gates-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Statsig's API. It is a proposal applied on top of the contract, not a document Statsig publishes.
What the actions change
x-apievangelist-phrasing
Targets 57 · first 16 shown; the file carries all of them
$.info
$.paths['/gates'].get
$.paths['/gates'].post
$.paths['/gates/{id}'].get
$.paths['/gates/{id}'].delete
$.paths['/gates/{id}'].patch
$.paths['/gates/{id}/enable'].put
$.paths['/gates/{id}/disable'].put
$.paths['/gates/{id}/launch'].put
$.paths['/gates/{id}/archive'].put
$.paths['/gates/{id}/rules'].get
$.paths['/gates/{id}/rules'].put
$.paths['/gates/{id}/rules'].post
$.paths['/gates/{id}/rules/{ruleID}'].delete
$.paths['/gates/{id}/overrides'].get
$.paths['/gates/{id}/overrides'].put
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Statsig Gates API
version: 1.0.0
extends: openapi/statsig-gates-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 56
- target: $.paths['/gates'].get
update:
x-apievangelist-phrasing:
intent: List feature gates and their status
effect: read
questions:
- Which feature gates exist in my Statsig project?
- Can I page through all our feature flags with their current status?
instructions:
- text: List all feature gates in my project.
- text: Show page {page} of feature gates, {limit} per page.
slots:
page: query.page
limit: query.limit
method: generated
generated: '2026-09-26'
- target: $.paths['/gates'].post
update:
x-apievangelist-phrasing:
intent: Create a feature gate
effect: write
questions:
- How do I create a new feature flag?
- Can a new gate start out enabled with targeting rules already in place?
- Is it possible to scope a new feature gate to certain target apps?
instructions:
- text: Create a feature gate named {name}.
slots:
name: requestBody.name
- text: Create gate {name} with initial rules {rules}.
slots:
name: requestBody.name
rules: requestBody.rules
- text: Create feature gate {name} scoped to target apps {targetApps}.
slots:
name: requestBody.name
targetApps: requestBody.targetApps
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a feature gate's full configuration
effect: read
questions:
- What rules, conditions and overrides does a particular feature gate have?
- Can I look up everything about one feature flag by its name?
instructions:
- text: Show the full configuration of feature gate {id}.
slots:
id: path.id
- text: Get everything configured on gate {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a feature gate
effect: destructive
questions:
- Can a deleted feature gate be recovered afterward?
- What is the way to permanently remove a feature flag instead of archiving it?
instructions:
- text: Delete feature gate {id} permanently.
slots:
id: path.id
- text: Remove gate {id} from the project for good.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Update fields on an existing feature gate
effect: write
questions:
- Can I change the description or tags on an existing feature gate?
- How do I re-scope an existing gate to different target apps?
instructions:
- text: Update the description of gate {id} to {description}.
slots:
id: path.id
description: requestBody.description
- text: Set the tags on existing gate {id} to {tags}.
slots:
id: path.id
tags: requestBody.tags
- text: Change the target apps of gate {id} to {targetApps}.
slots:
id: path.id
targetApps: requestBody.targetApps
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/enable'].put
update:
x-apievangelist-phrasing:
intent: Enable a feature gate
effect: write
questions:
- How do I turn a feature gate back on so its rules are evaluated?
- Can I switch on a gate without editing its rules?
instructions:
- text: Enable feature gate {id}.
slots:
id: path.id
- text: Turn on gate {id} so its rules start evaluating.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/disable'].put
update:
x-apievangelist-phrasing:
intent: Disable a feature gate
effect: write
questions:
- Can I kill-switch a feature so the gate returns false for everyone?
- What happens to a gate's rules when it is disabled?
instructions:
- text: Disable feature gate {id}.
slots:
id: path.id
- text: Turn off gate {id} so it fails for all users.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/launch'].put
update:
x-apievangelist-phrasing:
intent: Mark a feature gate as fully launched
effect: write
questions:
- How do I mark a feature as fully rolled out so its gate can be cleaned up?
- Can I launch a feature gate once the rollout is complete?
instructions:
- text: Launch feature gate {id}.
slots:
id: path.id
- text: Mark gate {id} as fully rolled out.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/archive'].put
update:
x-apievangelist-phrasing:
intent: Archive a feature gate
effect: write
questions:
- Can I retire a feature gate but keep its configuration for reference?
- What does archiving a gate do compared to removing it entirely?
instructions:
- text: Archive feature gate {id}.
slots:
id: path.id
- text: Take gate {id} out of active use but keep its configuration.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/rules'].get
update:
x-apievangelist-phrasing:
intent: List the targeting rules on a feature gate
effect: read
questions:
- What targeting rules are set on a specific feature gate?
- Which conditions decide who passes a given gate?
instructions:
- text: List only the rules on gate {id}.
slots:
id: path.id
- text: Show the targeting rules for feature gate {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/rules'].put
update:
x-apievangelist-phrasing:
intent: Replace all rules on a feature gate
effect: write
questions:
- Can I overwrite every targeting rule on a gate with a new set?
- How do I replace a gate's whole rule list in one request?
instructions:
- text: Replace all rules on gate {id} with {rules}.
slots:
id: path.id
rules: requestBody.rules
- text: Overwrite the full rule set of feature gate {id} with {rules}.
slots:
id: path.id
rules: requestBody.rules
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/rules'].post
update:
x-apievangelist-phrasing:
intent: Add a targeting rule to a feature gate
effect: write
questions:
- Can I add one more targeting rule to a gate without touching the existing ones?
- Is it possible to roll a gate out to a percentage of users matching certain conditions?
- Can a new gate rule apply only in specific environments?
instructions:
- text: Add a rule named {name} to gate {id} passing {passPercentage} percent of matching users.
slots:
name: requestBody.name
id: path.id
passPercentage: requestBody.passPercentage
- text: Add a rule to gate {id} with conditions {conditions}.
slots:
id: path.id
conditions: requestBody.conditions
- text: Append a rule to gate {id} active only in environments {environments}.
slots:
id: path.id
environments: requestBody.environments
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/rules/{ruleID}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one rule from a feature gate
effect: destructive
questions:
- Can I remove just one targeting rule from a gate?
- How do I drop a single outdated rule from a feature flag?
instructions:
- text: Delete rule {ruleID} from gate {id}.
slots:
ruleID: path.ruleID
id: path.id
- text: Remove targeting rule {ruleID} on feature gate {id}.
slots:
ruleID: path.ruleID
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/overrides'].get
update:
x-apievangelist-phrasing:
intent: Get the overrides on a feature gate
effect: read
questions:
- Which users are forced to pass or fail a gate through overrides?
- What ID overrides are configured on a specific feature gate?
instructions:
- text: Show the user and ID overrides on gate {id}.
slots:
id: path.id
- text: List who is overridden on feature gate {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/overrides'].put
update:
x-apievangelist-phrasing:
intent: Replace all overrides on a feature gate
effect: write
questions:
- Can I replace the entire override list on a gate with a new one?
- Is there a way to reset a gate's overrides to exactly the set I provide?
instructions:
- text: Replace all user overrides on gate {id} with {userOverrides}.
slots:
id: path.id
userOverrides: requestBody.userOverrides
- text: Overwrite the ID overrides on gate {id} with {idOverrides}.
slots:
id: path.id
idOverrides: requestBody.idOverrides
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/overrides'].post
update:
x-apievangelist-phrasing:
intent: Add overrides to a feature gate
effect: write
questions:
- How do I force a specific user to always pass a feature gate?
- Can I add a few more override IDs to a gate while keeping the existing ones?
instructions:
- text: Add user overrides {userOverrides} to gate {id}.
slots:
userOverrides: requestBody.userOverrides
id: path.id
- text: Add custom ID overrides {idOverrides} to feature gate {id}.
slots:
idOverrides: requestBody.idOverrides
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/gates/{id}/overrides'].delete
update:
x-apievangelist-phrasing:
intent: Remove all overrides from a feature gate
effect: destructive
questions:
- Can I clear every user and ID override from a gate?
- What removes all forced pass or fail results from a feature flag?
instructions:
- text: Delete all overrides on gate {id}.
slots:
id: path.id
- text: Clear every user and ID override from feature gate {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/console/v1/gates'].get
update:
x-apievangelist-phrasing:
intent: Search gates by team, type, creator or tag
effect: read
questions:
- Can I filter my gates by owning team or by who created them?
- Which gates sit in a particular release pipeline or target app?
- Is there a way to include archived gates when browsing the gate list?
instructions:
- text: List gates owned by team {teamID}.
slots:
teamID: query.teamID
- text: Find gates created by {creatorName} that are tagged {tags}.
slots:
creatorName: query.creatorName
tags: query.tags
- text: Show gates in release pipeline {releasePipelineID}, archived ones included.
slots:
releasePipelineID: query.releasePipelineID
- text: Filter gates to unit ID type {idType} and gate type {type}.
slots:
idType: query.idType
type: query.type
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates'].post
update:
x-apievangelist-phrasing:
intent: Create a gate with team, ID type and pipeline
effect: write
questions:
- Can a new gate be assigned to a team and a custom unit ID type when it is created?
- Is it possible to attach a release pipeline to a gate at creation time?
- Can I create a gate that is saved as a reusable template?
instructions:
- text: Create gate {name} owned by team {teamID} using ID type {idType}.
slots:
name: requestBody.name
teamID: requestBody.teamID
idType: requestBody.idType
- text: Create gate {name} rolled out through release pipeline {releasePipelineID}.
slots:
name: requestBody.name
releasePipelineID: requestBody.releasePipelineID
- text: Create gate {name} that tracks monitoring metrics {monitoringMetrics} during rollout.
slots:
name: requestBody.name
monitoringMetrics: requestBody.monitoringMetrics
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}'].get
update:
x-apievangelist-phrasing:
intent: Read a gate with its team and archive metadata
effect: read
questions:
- Can I read a gate together with its archive metadata?
- What team, unit ID type and review settings does a particular gate carry?
instructions:
- text: Read gate {id} including its archive metadata.
slots:
id: path.id
- text: Fetch the owning team, ID type and review settings of gate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}'].post
update:
x-apievangelist-phrasing:
intent: Fully replace a gate's definition
effect: write
questions:
- Can I resend a gate's complete definition, including rules and enabled state, in one call?
- Does a full gate update also let me change the owning team and review settings?
instructions:
- text: Fully update gate {id} with description {description}, rules {rules} and enabled set to {isEnabled}.
slots:
id: path.id
description: requestBody.description
rules: requestBody.rules
isEnabled: requestBody.isEnabled
- text: Overwrite every setting on gate {id} and move it to team {teamID}.
slots:
id: path.id
teamID: requestBody.teamID
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a gate through the Console API
effect: destructive
questions:
- Can I delete a gate using the Console API v1 endpoint?
- What is the console call that erases a gate rather than archiving it?
instructions:
- text: Delete gate {id} via the Console API.
slots:
id: path.id
- text: Erase gate {id} and its configuration using Console v1.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Change selected settings on a gate
effect: write
questions:
- Can I change only a gate's ID type or owning team without resending its rules?
- Is it possible to update just the monitoring metrics or review settings of a gate?
instructions:
- text: Change the owning team of gate {id} to {teamID}.
slots:
id: path.id
teamID: requestBody.teamID
- text: Update the review settings on gate {id} to {reviewSettings}.
slots:
id: path.id
reviewSettings: requestBody.reviewSettings
- text: Set the monitoring metrics of gate {id} to {monitoringMetrics}.
slots:
id: path.id
monitoringMetrics: requestBody.monitoringMetrics
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/alerts/{metricId}/resolve'].post
update:
x-apievangelist-phrasing:
intent: Resolve a metric alert raised during a gate rollout
effect: write
questions:
- What clears a metric alert that fired while a gate was rolling out?
- Can I record my reasoning when resolving a rollout alert on a gate?
instructions:
- text: Resolve the rollout alert for metric {metricId} on gate {id}.
slots:
metricId: path.metricId
id: path.id
- text: Mark metric {metricId}'s alert on gate {id} resolved with reasoning {reasoning}.
slots:
metricId: path.metricId
id: path.id
reasoning: requestBody.reasoning
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/archive'].put
update:
x-apievangelist-phrasing:
intent: Archive a gate with a recorded reason
effect: write
questions:
- Can I archive a gate and note why it was archived?
- Is there a force option when archiving a gate?
instructions:
- text: Archive gate {id} with reason {archiveReason}.
slots:
id: path.id
archiveReason: requestBody.archiveReason
- text: Force-archive gate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/checks'].get
update:
x-apievangelist-phrasing:
intent: See how often a gate is being checked
effect: read
questions:
- How many times has a particular gate been checked?
- Can I see the check volume recorded for one gate?
instructions:
- text: Show the check data for gate {id}.
slots:
id: path.id
- text: Read the gate checks recorded for {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/code_cleanup'].post
update:
x-apievangelist-phrasing:
intent: Start code cleanup for a gate
effect: write
questions:
- Can Statsig kick off code cleanup for a gate I am finished with?
- What starts removing a retired gate's references from our codebase?
instructions:
- text: Start code cleanup for gate {id}.
slots:
id: path.id
- text: Kick off the code cleanup job for gate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/disable'].put
update:
x-apievangelist-phrasing:
intent: Disable a gate through the Console API
effect: write
questions:
- Which Console API v1 call switches a gate off?
- Can I disable a gate and get the updated gate back with archive metadata?
instructions:
- text: Disable gate {id} via the Console API.
slots:
id: path.id
- text: Switch off gate {id} and return it with archive metadata.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/dynamic_config_references'].get
update:
x-apievangelist-phrasing:
intent: List dynamic configs that reference a gate
effect: read
questions:
- Which dynamic configs reference a given gate?
- Can I check whether any dynamic config depends on a gate before I remove it?
instructions:
- text: List dynamic configs that reference gate {id}.
slots:
id: path.id
- text: Show page {page} of dynamic config references to gate {id}.
slots:
page: query.page
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/eligible_reviewers'].get
update:
x-apievangelist-phrasing:
intent: List who can review changes to a gate
effect: read
questions:
- Who is allowed to review changes to a particular gate?
- Which people can I pick as reviewers for a gate change request?
instructions:
- text: List eligible reviewers for gate {id}.
slots:
id: path.id
- text: Show who can approve changes to gate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/enable'].put
update:
x-apievangelist-phrasing:
intent: Enable a gate through the Console API
effect: write
questions:
- Is there a Console API v1 endpoint to turn a gate on?
- Can I enable a gate and receive it back including archive metadata?
instructions:
- text: Enable gate {id} via the Console API.
slots:
id: path.id
- text: Turn gate {id} on and include archive metadata in the result.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/experiment_references'].get
update:
x-apievangelist-phrasing:
intent: List experiments that reference a gate
effect: read
questions:
- Which experiments are referencing a given gate?
- Can I find out if an experiment still relies on a gate before cleaning it up?
instructions:
- text: List experiments that reference gate {id}.
slots:
id: path.id
- text: Show page {page} of experiment references to gate {id}, {limit} at a time.
slots:
page: query.page
id: path.id
limit: query.limit
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/gate_references'].get
update:
x-apievangelist-phrasing:
intent: List other gates that reference a gate
effect: read
questions:
- Which other gates use this gate in their conditions?
- Can I see gate-to-gate dependencies for one feature gate?
instructions:
- text: List gates that reference gate {id}.
slots:
id: path.id
- text: Show which gates depend on gate {id}, page {page}.
slots:
id: path.id
page: query.page
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/launch'].put
update:
x-apievangelist-phrasing:
intent: Launch a gate through the Console API
effect: write
questions:
- Which Console API v1 call marks a gate as launched?
- Can I launch a gate and get it back with archive metadata attached?
instructions:
- text: Launch gate {id} via the Console API.
slots:
id: path.id
- text: Ship gate {id} to everyone and return it with archive metadata.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/load_pulse'].post
update:
x-apievangelist-phrasing:
intent: Load Pulse metric results for a gate rule
effect: write
questions:
- Can I trigger a Pulse metric load for one rule of a gate?
- Is it possible to load gate Pulse results for only certain metrics or in turbo mode?
instructions:
- text: Load Pulse for rule {ruleId} on gate {id}.
slots:
ruleId: requestBody.ruleId
id: path.id
- text: Refresh Pulse for gate {id} rule {ruleId} with metrics {metricIDs}.
slots:
id: path.id
ruleId: requestBody.ruleId
metricIDs: requestBody.metricIDs
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/overrides'].get
update:
x-apievangelist-phrasing:
intent: Read a gate's overrides through the Console API
effect: read
questions:
- Can I read a gate's overrides through the Console API v1?
- What overrides are currently forcing results on one gate, per the console endpoint?
instructions:
- text: Get the overrides on gate {id} via the Console API.
slots:
id: path.id
- text: Read the Console v1 override list for gate {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/overrides'].post
update:
x-apievangelist-phrasing:
intent: Replace a gate's overrides through the Console API
effect: write
questions:
- Which Console API v1 call replaces the whole override set on a gate?
- Can I swap out a gate's overrides entirely using the console endpoint?
instructions:
- text: Replace the overrides on gate {id} via the Console API.
slots:
id: path.id
- text: Overwrite gate {id}'s override set using Console v1.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/overrides'].delete
update:
x-apievangelist-phrasing:
intent: Clear a gate's overrides through the Console API
effect: destructive
questions:
- Which Console API v1 call wipes every override from a gate?
- Can I clear all forced results on a gate with the console endpoint?
instructions:
- text: Delete all overrides on gate {id} via the Console API.
slots:
id: path.id
- text: Wipe the override list of gate {id} using Console v1.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/overrides'].patch
update:
x-apievangelist-phrasing:
intent: Append overrides to a gate through the Console API
effect: write
questions:
- Can I append overrides to a gate through the Console API v1 without losing existing ones?
- Which console call adds extra forced results to a gate?
instructions:
- text: Add overrides to gate {id} via the Console API.
slots:
id: path.id
- text: Append new entries to gate {id}'s overrides using Console v1.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/overrides/userID/{userID}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one user ID override from a gate
effect: destructive
questions:
- Can I remove just one user ID from a gate's pass or fail override list?
- What happens if I remove a user override that is not actually set on the gate?
instructions:
- text: Remove user {userID} from the {groupID} override bucket on gate {id}.
slots:
userID: path.userID
groupID: query.groupID
id: path.id
- text: Stop overriding user {userID} on gate {id} in group {groupID}.
slots:
userID: path.userID
id: path.id
groupID: query.groupID
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews'].get
update:
x-apievangelist-phrasing:
intent: List change reviews on a gate
effect: read
questions:
- Which change reviews have been requested on a gate?
- Can I page through the review history of one feature gate?
instructions:
- text: List the change reviews on gate {id}.
slots:
id: path.id
- text: Show page {page} of reviews for gate {id}.
slots:
page: query.page
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews'].post
update:
x-apievangelist-phrasing:
intent: Request a review of a gate change
effect: write
questions:
- Can I submit a gate change for approval before it goes live?
- Is it possible to name specific reviewers or reviewer groups on a gate change request?
instructions:
- text: Request review of change {change} on gate {id} described as {description}.
slots:
change: requestBody.change
id: path.id
description: requestBody.description
- text: Open a review on gate {id} for {change}, assigned to reviewers {reviewer_ids}.
slots:
id: path.id
change: requestBody.change
reviewer_ids: requestBody.reviewer_ids
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews/{reviewID}'].get
update:
x-apievangelist-phrasing:
intent: Get one review on a gate
effect: read
questions:
- What is the status of a specific change review on a gate?
- Can I look up one gate review to see what change it proposes?
instructions:
- text: Get review {reviewID} on gate {id}.
slots:
reviewID: path.reviewID
id: path.id
- text: Show the proposed change in review {reviewID} for gate {id}.
slots:
reviewID: path.reviewID
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews/{reviewID}'].put
update:
x-apievangelist-phrasing:
intent: Edit a pending gate review
effect: write
questions:
- Can I change the reviewers on a gate review that is already open?
- Is it possible to revise the proposed change in a pending gate review?
instructions:
- text: Set the reviewers on review {reviewID} for gate {id} to {reviewer_ids}.
slots:
reviewID: path.reviewID
id: path.id
reviewer_ids: requestBody.reviewer_ids
- text: Rewrite the summary text of pending review {reviewID} on gate {id} as {description}.
slots:
id: path.id
reviewID: path.reviewID
description: requestBody.description
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews/{reviewID}'].delete
update:
x-apievangelist-phrasing:
intent: Cancel a pending gate review
effect: destructive
questions:
- Can I withdraw a gate change request that is still waiting for review?
- What cancels a gate review I no longer need?
instructions:
- text: Cancel review {reviewID} on gate {id}.
slots:
reviewID: path.reviewID
id: path.id
- text: Withdraw gate {id}'s pending review {reviewID}.
slots:
id: path.id
reviewID: path.reviewID
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews/{reviewID}/approve'].put
update:
x-apievangelist-phrasing:
intent: Approve a gate change review
effect: write
questions:
- Can I approve a teammate's proposed gate change through the API?
- Is there a way to leave a reason when approving a gate review?
instructions:
- text: Approve review {reviewID} on gate {id}.
slots:
reviewID: path.reviewID
id: path.id
- text: Approve gate {id} review {reviewID} with reason {reason}.
slots:
id: path.id
reviewID: path.reviewID
reason: requestBody.reason
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/gates/{id}/reviews/{reviewID}/commit'].put
update:
x-apievangelist-phrasing:
intent: Commit an approved gate change
effect: write
questions:
- Once a gate review is approved, what applies the change?
- Can I commit an approved gate change so it takes effect?
instructions:
- text: Commit review {reviewID} on gate {id}.
slots:
reviewID: path.reviewID
id: path.id
- text: Apply the approved change from review {reviewID} to gate {id}.
slots:
reviewID: path.reviewID
id: path.id
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/statsig/refs/heads/main/overlays/statsig-gates-api-phrasing-overlay.yaml
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/statsig-gates-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.