Statsig · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Statsig Experiments API
67 actions
67 updates
phrasing
extends
openapi/statsig-experiments-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 67 · first 16 shown; the file carries all of them
$.info
$.paths['/experiments'].get
$.paths['/experiments'].post
$.paths['/experiments/{id}'].get
$.paths['/experiments/{id}'].delete
$.paths['/experiments/{id}'].patch
$.paths['/experiments/{id}/start'].put
$.paths['/experiments/{id}/reset'].put
$.paths['/get_experiment'].post
$.paths['/console/v1/experiments'].get
$.paths['/console/v1/experiments'].post
$.paths['/console/v1/experiments/{id}'].get
$.paths['/console/v1/experiments/{id}'].post
$.paths['/console/v1/experiments/{id}'].delete
$.paths['/console/v1/experiments/{id}'].patch
$.paths['/console/v1/experiments/{id}/abandon'].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 Experiments API
version: 1.0.0
extends: openapi/statsig-experiments-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: 66
- target: $.paths['/experiments'].get
update:
x-apievangelist-phrasing:
intent: List experiments and their status
effect: read
questions:
- Which experiments are running or set up in my Statsig project?
- Can I see the status of every experiment we have, a page at a time?
instructions:
- text: List all experiments in my project with their status.
- text: Show page {page} of experiments, {limit} per page.
slots:
page: query.page
limit: query.limit
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments'].post
update:
x-apievangelist-phrasing:
intent: Create an A/B experiment
effect: write
questions:
- How do I set up a new A/B test with a hypothesis and groups?
- Can I put a new experiment inside a layer or behind a targeting gate?
- What percentage of users can I allocate when creating an experiment?
instructions:
- text: Create an experiment named {name} with hypothesis {hypothesis}.
slots:
name: requestBody.name
hypothesis: requestBody.hypothesis
- text: Create experiment {name} in layer {layerID} allocating {allocation} percent of users.
slots:
name: requestBody.name
layerID: requestBody.layerID
allocation: requestBody.allocation
- text: Create experiment {name} limited to users passing gate {targetingGateID}.
slots:
name: requestBody.name
targetingGateID: requestBody.targetingGateID
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get an experiment's full setup
effect: read
questions:
- What groups, parameters and hypothesis does a specific experiment have?
- Can I look up how an experiment is configured in the console by its name?
instructions:
- text: Show the console configuration of experiment {id}.
slots:
id: path.id
- text: Get the groups and hypothesis defined for experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an experiment
effect: destructive
questions:
- How do I permanently remove an experiment from the project?
- Is there a way to delete an old experiment we no longer need?
instructions:
- text: Delete experiment {id}.
slots:
id: path.id
- text: Permanently remove experiment {id} from the project.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Update fields on an existing experiment
effect: write
questions:
- Can I change the allocation of an experiment that already exists?
- How do I edit the hypothesis or tags on an existing experiment?
instructions:
- text: Change the allocation of experiment {id} to {allocation} percent.
slots:
id: path.id
allocation: requestBody.allocation
- text: Update the hypothesis of existing experiment {id} to {hypothesis}.
slots:
id: path.id
hypothesis: requestBody.hypothesis
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments/{id}/start'].put
update:
x-apievangelist-phrasing:
intent: Start an experiment
effect: write
questions:
- How do I start an experiment so users begin getting assigned to groups?
- When does an experiment begin logging exposures?
instructions:
- text: Start experiment {id}.
slots:
id: path.id
- text: Kick off experiment {id} and begin allocating users to its groups.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/experiments/{id}/reset'].put
update:
x-apievangelist-phrasing:
intent: Reset an experiment and clear its data
effect: destructive
questions:
- Can I wipe an experiment's collected data and start its assignments over?
- What happens to user assignments when an experiment is reset?
instructions:
- text: Reset experiment {id}, clearing its collected data.
slots:
id: path.id
- text: Clear all results and user assignments for experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/get_experiment'].post
update:
x-apievangelist-phrasing:
intent: Get a user's experiment group assignment
effect: read
questions:
- Which experiment group is a particular user assigned to?
- Does fetching a user's experiment assignment log an exposure?
instructions:
- text: Get the group assignment for user {user} in experiment {experimentName}.
slots:
user: requestBody.user
experimentName: requestBody.experimentName
- text: Evaluate experiment {experimentName} for user {user} and return their parameters.
slots:
experimentName: requestBody.experimentName
user: requestBody.user
method: generated
generated: '2026-09-26'
- target: $.paths['/console/v1/experiments'].get
update:
x-apievangelist-phrasing:
intent: Search experiments with filters
effect: read
questions:
- Which experiments are stale or still in setup, filtered by team or tag?
- Can I find every experiment a particular creator launched within a date range?
- What experiments run inside a given layer through the Console v1 API?
instructions:
- text: Find experiments with status {status} tagged {tags}.
slots:
status: query.status
tags: query.tags
- text: List console v1 experiments in layer {layerID} created between {createdStartDate} and {createdEndDate}.
slots:
layerID: query.layerID
createdStartDate: query.createdStartDate
createdEndDate: query.createdEndDate
- text: Show experiments owned by team {teamID} with stale set to {stale}.
slots:
teamID: query.teamID
stale: query.stale
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments'].post
update:
x-apievangelist-phrasing:
intent: Create an experiment with full analysis settings
effect: write
questions:
- Can I turn on sequential testing or Bonferroni correction when I create an experiment?
- Is it possible to set primary and secondary metrics and a control group for a new test in the v1 console?
- What duration and target exposures can a brand-new experiment be given up front?
instructions:
- text: Create a console v1 experiment {name} with primary metrics {primaryMetrics} and control group {controlGroupID}.
slots:
name: requestBody.name
primaryMetrics: requestBody.primaryMetrics
controlGroupID: requestBody.controlGroupID
- text: Set up new experiment {name} running {duration} days with sequential testing {sequentialTesting}.
slots:
name: requestBody.name
duration: requestBody.duration
sequentialTesting: requestBody.sequentialTesting
- text: Create experiment {name} on unit type {idType} with analysis-only set to {isAnalysisOnly}.
slots:
name: requestBody.name
idType: requestBody.idType
isAnalysisOnly: requestBody.isAnalysisOnly
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}'].get
update:
x-apievangelist-phrasing:
intent: Fetch one experiment's selected fields
effect: read
questions:
- Can I pull back only certain fields of an experiment, like its metrics and status?
- Where do I read the full console v1 record for one experiment, analysis settings included?
instructions:
- text: Fetch console v1 experiment {id} returning only the fields {fields}.
slots:
id: path.id
fields: query.fields
- text: Read the full v1 experiment record for {id}, including its analysis settings.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}'].post
update:
x-apievangelist-phrasing:
intent: Replace an experiment's entire configuration
effect: write
questions:
- How can I overwrite every setting on an experiment in one request?
- Which fields must I resend when replacing an experiment's whole definition?
instructions:
- text: Replace the whole configuration of experiment {id}, resending groups {groups} and allocation {allocation}.
slots:
id: path.id
groups: requestBody.groups
allocation: requestBody.allocation
- text: Fully overwrite experiment {id} with hypothesis {hypothesis} and status {status}.
slots:
id: path.id
hypothesis: requestBody.hypothesis
status: requestBody.status
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an experiment via the Console v1 API
effect: destructive
questions:
- Can the console v1 endpoint erase an experiment for good?
- What is the v1 call to drop an experiment from the console entirely?
instructions:
- text: Erase experiment {id} using the console v1 endpoint.
slots:
id: path.id
- text: Drop v1 experiment {id} from the console for good.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Change selected settings on an experiment
effect: write
questions:
- Can I switch on turbo mode or change the confidence interval of a running experiment?
- Is it possible to edit just the secondary metrics of an experiment without resending the rest?
instructions:
- text: Patch experiment {id} so its secondary metrics are {secondaryMetrics}.
slots:
id: path.id
secondaryMetrics: requestBody.secondaryMetrics
- text: Set the default confidence interval of experiment {id} to {defaultConfidenceInterval}.
slots:
id: path.id
defaultConfidenceInterval: requestBody.defaultConfidenceInterval
- text: Turn turbo mode {turboMode} on console v1 experiment {id}.
slots:
turboMode: requestBody.turboMode
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/abandon'].put
update:
x-apievangelist-phrasing:
intent: Abandon an experiment
effect: destructive
questions:
- How do I abandon an experiment without shipping any group?
- Do I have to give a reason when abandoning a test?
instructions:
- text: Abandon experiment {id} because {decisionReason}.
slots:
id: path.id
decisionReason: requestBody.decisionReason
- text: Give up on experiment {id} with the reason {decisionReason}.
slots:
id: path.id
decisionReason: requestBody.decisionReason
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/alerts'].get
update:
x-apievangelist-phrasing:
intent: Check an experiment's guardrail alerts
effect: read
questions:
- Have any guardrail metrics fired alerts on my experiment?
- Which guardrail alerts are currently open for a test?
instructions:
- text: Show the guardrail alert statuses for experiment {id}.
slots:
id: path.id
- text: Check whether any guardrail alerts have fired on experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/alerts/{metricId}/resolve'].post
update:
x-apievangelist-phrasing:
intent: Resolve a metric rollout alert
effect: write
questions:
- How do I mark a metric rollout alert on an experiment as resolved?
- Can I record my reasoning when dismissing a guardrail alert for one metric?
instructions:
- text: Resolve the rollout alert for metric {metricId} on experiment {id}.
slots:
metricId: path.metricId
id: path.id
- text: Mark metric {metricId}'s alert on experiment {id} resolved, noting {reasoning}.
slots:
metricId: path.metricId
id: path.id
reasoning: requestBody.reasoning
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/archive'].put
update:
x-apievangelist-phrasing:
intent: Archive an experiment
effect: write
questions:
- How do I archive a finished experiment so it leaves the active list?
- Can I note why an experiment was archived?
instructions:
- text: Archive experiment {id}.
slots:
id: path.id
- text: Archive experiment {id} with the reason {archiveReason}.
slots:
id: path.id
archiveReason: requestBody.archiveReason
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/code_cleanup'].post
update:
x-apievangelist-phrasing:
intent: Start code cleanup for an experiment
effect: write
questions:
- Can Statsig kick off cleanup of the code paths behind a concluded experiment?
- How do I start removing dead experiment code once a test is done?
instructions:
- text: Start code cleanup for experiment {id}.
slots:
id: path.id
- text: Begin removing the leftover code references for experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/context'].get
update:
x-apievangelist-phrasing:
intent: Get an experiment's context
effect: read
questions:
- What background context is recorded for an experiment?
- Can I fetch the context summary behind a test before reviewing results?
instructions:
- text: Get the context for experiment {id}.
slots:
id: path.id
- text: Pull the background context recorded on experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/cumulative_exposures'].get
update:
x-apievangelist-phrasing:
intent: Get cumulative exposures for an experiment
effect: read
questions:
- How many users have been exposed to my experiment so far in total?
- Can I see exposure counts accumulating over the life of a test?
instructions:
- text: Show cumulative exposures for experiment {id}.
slots:
id: path.id
- text: Get the running total of users exposed to experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/defer_decision'].put
update:
x-apievangelist-phrasing:
intent: Conclude an experiment and defer the decision
effect: write
questions:
- Can I stop an experiment now but decide which group to ship later?
- Is there a way to end a test without picking a winner yet?
instructions:
- text: Conclude experiment {id} and defer the ship decision.
slots:
id: path.id
- text: Stop experiment {id} for the reason {stopReason} and decide on a winner later.
slots:
id: path.id
stopReason: requestBody.stopReason
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/diagnostics_checks'].get
update:
x-apievangelist-phrasing:
intent: Get an experiment's health check diagnostics
effect: read
questions:
- Are there sample ratio mismatch or other health check failures on my experiment?
- Can I see experiment diagnostics checks for just the last few days?
instructions:
- text: Show health check diagnostics for experiment {id} over the last {lastDays} days.
slots:
id: path.id
lastDays: query.lastDays
- text: Get {type} diagnostics checks for experiment {id} from {startDate} to {endDate}.
slots:
type: query.type
id: path.id
startDate: query.startDate
endDate: query.endDate
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/dimensional_exposures'].get
update:
x-apievangelist-phrasing:
intent: Break down experiment exposures by dimension
effect: read
questions:
- Are exposures to my experiment balanced across dimensions like platform or country?
- Which dimensions show severe exposure imbalances in a test?
instructions:
- text: Break down exposures for experiment {id} by dimension {dimension_type}.
slots:
id: path.id
dimension_type: query.dimension_type
- text: Show dimensional exposure imbalances of severity {severity} for experiment {id}.
slots:
severity: query.severity
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/disable_groups'].post
update:
x-apievangelist-phrasing:
intent: Disable groups in an experiment
effect: write
questions:
- Can I switch off one variant of an experiment while the others keep running?
- How do I stop sending users to a badly performing test group?
instructions:
- text: Disable groups {group_names} in experiment {id}.
slots:
group_names: requestBody.group_names
id: path.id
- text: Turn off the variant {group_names} on experiment {id} so no new users land in it.
slots:
group_names: requestBody.group_names
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/eligible_reviewers'].get
update:
x-apievangelist-phrasing:
intent: List who can review an experiment
effect: read
questions:
- Who is allowed to approve changes to my experiment?
- Which teammates are eligible reviewers for a test?
instructions:
- text: List the eligible reviewers for experiment {id}.
slots:
id: path.id
- text: Show who can approve review requests on experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/enable_groups'].post
update:
x-apievangelist-phrasing:
intent: Re-enable groups in an experiment
effect: write
questions:
- How do I turn a disabled experiment group back on?
- Can a variant I switched off start receiving users again?
instructions:
- text: Enable groups {group_names} in experiment {id}.
slots:
group_names: requestBody.group_names
id: path.id
- text: Re-enable the previously disabled variant {group_names} on experiment {id}.
slots:
group_names: requestBody.group_names
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/load_pulse'].post
update:
x-apievangelist-phrasing:
intent: Trigger a Pulse results load in the warehouse
effect: write
questions:
- How do I kick off a fresh Pulse calculation for a warehouse native experiment?
- Can I reload Pulse for only certain metrics, with turbo mode?
instructions:
- text: Load Pulse for warehouse native experiment {id}.
slots:
id: path.id
- text: Run a Pulse load on experiment {id} for metrics {metricIDs} with turbo mode {turboMode}.
slots:
id: path.id
metricIDs: requestBody.metricIDs
turboMode: requestBody.turboMode
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/make_decision'].put
update:
x-apievangelist-phrasing:
intent: Finish an experiment early and ship a group
effect: write
questions:
- How do I end an experiment early and ship the winning group?
- Can I keep a holdout or remove targeting when I make the ship decision?
instructions:
- text: Finish experiment {id} early and ship group {groupId} because {decisionReason}.
slots:
id: path.id
groupId: requestBody.id
decisionReason: requestBody.decisionReason
- text: Ship group {groupId} of experiment {id} now, removing targeting {removeTargeting}, reason {decisionReason}.
slots:
groupId: requestBody.id
id: path.id
removeTargeting: requestBody.removeTargeting
decisionReason: requestBody.decisionReason
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides'].get
update:
x-apievangelist-phrasing:
intent: View an experiment's overrides
effect: read
questions:
- Which users or segments are forced into a particular experiment group?
- What overrides are currently set on a test?
instructions:
- text: Show the overrides on experiment {id}.
slots:
id: path.id
- text: List which users and segments are forced into groups in experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides'].post
update:
x-apievangelist-phrasing:
intent: Replace all overrides on an experiment
effect: write
questions:
- How do I replace the full set of overrides on an experiment at once?
- Can I reset every forced user ID assignment in a test with a new list?
instructions:
- text: Replace all overrides on experiment {id} with {overrides} and user ID overrides {userIDOverrides}.
slots:
id: path.id
overrides: requestBody.overrides
userIDOverrides: requestBody.userIDOverrides
- text: Overwrite the complete override list of experiment {id} with gate and segment overrides {overrides} and user IDs {userIDOverrides}.
slots:
id: path.id
userIDOverrides: requestBody.userIDOverrides
overrides: requestBody.overrides
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides'].delete
update:
x-apievangelist-phrasing:
intent: Remove all overrides from an experiment
effect: destructive
questions:
- How do I clear every override on an experiment at once?
- Can I wipe all forced group assignments from a test?
instructions:
- text: Delete all overrides on experiment {id}.
slots:
id: path.id
- text: Clear every forced group assignment from experiment {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides'].patch
update:
x-apievangelist-phrasing:
intent: Add to an experiment's overrides
effect: write
questions:
- Can I add a few user overrides to an experiment without replacing the existing ones?
- How do I merge new segment overrides into a test's current list?
instructions:
- text: Add user ID overrides {userIDOverrides} and conditional overrides {overrides} to experiment {id}, keeping existing ones.
slots:
userIDOverrides: requestBody.userIDOverrides
id: path.id
overrides: requestBody.overrides
- text: Merge segment overrides {overrides} and user overrides {userIDOverrides} into the current list on experiment {id}.
slots:
overrides: requestBody.overrides
id: path.id
userIDOverrides: requestBody.userIDOverrides
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides/conditional/{type}/{name}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one gate or segment override
effect: destructive
questions:
- How do I remove a single segment override from an experiment group?
- Can I drop one gate override in a specific environment and leave the rest?
instructions:
- text: Remove the {type} override {name} for group {groupID} on experiment {id}.
slots:
type: path.type
name: path.name
groupID: query.groupID
id: path.id
- text: Delete the {type} override {name} from group {groupID} of experiment {id} in {environment}.
slots:
type: path.type
name: path.name
groupID: query.groupID
id: path.id
environment: query.environment
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/overrides/userID/{userID}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one user ID override
effect: destructive
questions:
- How do I take one user out of a forced experiment group?
- Can I un-override a single user ID for only one unit type and environment?
instructions:
- text: Remove user {userID} from the group {groupID} override on experiment {id}.
slots:
userID: path.userID
groupID: query.groupID
id: path.id
- text: Stop forcing user {userID} into group {groupID} of experiment {id} for unit type {unitType}.
slots:
userID: path.userID
groupID: query.groupID
id: path.id
unitType: query.unitType
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/pulse_load_history'].get
update:
x-apievangelist-phrasing:
intent: List past Pulse loads for an experiment
effect: read
questions:
- When was Pulse last loaded for my warehouse native experiment?
- Can I page through the history of Pulse loads on a test?
instructions:
- text: Show the Pulse load history for experiment {id}.
slots:
id: path.id
- text: List page {page} of past Pulse loads for experiment {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/experiments/{id}/pulse_load_history/{dagID}'].get
update:
x-apievangelist-phrasing:
intent: Get details of one Pulse load run
effect: read
questions:
- Why did a particular Pulse load fail or take so long?
- What steps ran in one specific warehouse Pulse load?
instructions:
- text: Get the details of Pulse load {dagID} for experiment {id}.
slots:
dagID: path.dagID
id: path.id
- text: Show the status and steps of load run {dagID} on experiment {id}.
slots:
dagID: path.dagID
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/pulse_load_history/{dagID}/cancel'].post
update:
x-apievangelist-phrasing:
intent: Cancel a running Pulse load
effect: destructive
questions:
- Can I stop a Pulse load that is still running in my warehouse?
- How do I cancel a stuck warehouse Pulse computation?
instructions:
- text: Cancel Pulse load {dagID} for experiment {id}.
slots:
dagID: path.dagID
id: path.id
- text: Abort the in-progress load run {dagID} on experiment {id}.
slots:
dagID: path.dagID
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/pulse_metric_result'].get
update:
x-apievangelist-phrasing:
intent: Get Pulse results for a single metric
effect: read
questions:
- What lift does one specific metric show between test and control?
- Can I see a single metric's result with CUPED applied?
instructions:
- text: Get the Pulse result for metric {metricID} in experiment {id}, comparing {test} to {control}.
slots:
metricID: query.metricID
id: path.id
test: query.test
control: query.control
- text: Show metric {metricID}'s lift for {test} vs {control} on experiment {id} at {confidence} confidence.
slots:
metricID: query.metricID
test: query.test
control: query.control
id: path.id
confidence: query.confidence
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/pulse_results'].get
update:
x-apievangelist-phrasing:
intent: Get Pulse results across all metrics
effect: read
questions:
- How are all the metrics trending for my test group against control?
- Can I pull an experiment's full scorecard with a Bonferroni correction applied?
instructions:
- text: Get the full Pulse scorecard for experiment {id}, test group {test} vs control {control}.
slots:
id: path.id
test: query.test
control: query.control
- text: Show all metric results for experiment {id} on {date}, {test} against {control}.
slots:
id: path.id
date: query.date
test: query.test
control: query.control
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/reset'].put
update:
x-apievangelist-phrasing:
intent: Reset an experiment via the Console v1 API
effect: destructive
questions:
- Which console v1 call wipes an experiment back to a fresh state?
- Can I restart an experiment's data collection from zero with the v1 endpoint?
instructions:
- text: Reset experiment {id} through the console v1 endpoint.
slots:
id: path.id
- text: Wipe v1 experiment {id} back to a fresh state and restart data collection.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/experiments/{id}/restart_as_new'].post
update:
x-apievangelist-phrasing:
intent: Restart an experiment as a new copy
effect: write
questions:
- Can I relaunch an experiment as a new one under a different name?
- How do I rerun a test from scratch while keeping the original's results?
instructions:
- text: Restart experiment {id} as a new experiment named {name}.
slots:
id: path.id
name: requestBody.name
- text: Relaunch experiment {id} as a fresh copy called {name}.
slots:
id: path.id
name: requestBody.name
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/statsig/refs/heads/main/overlays/statsig-experiments-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-experiments-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.