Statsig · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Statsig Metrics API
23 actions
23 updates
phrasing
extends
openapi/statsig-metrics-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 23 · first 16 shown; the file carries all of them
$.info
$.paths['/metrics'].get
$.paths['/metrics/{id}'].get
$.paths['/console/v1/metrics'].get
$.paths['/console/v1/metrics'].post
$.paths['/console/v1/metrics/{id}'].get
$.paths['/console/v1/metrics/{id}'].post
$.paths['/console/v1/metrics/{id}'].delete
$.paths['/console/v1/metrics/{id}/cancel_archive'].put
$.paths['/console/v1/metrics/{id}/experiments'].get
$.paths['/console/v1/metrics/{id}/reload'].post
$.paths['/console/v1/metrics/{id}/schedule_archive'].put
$.paths['/console/v1/metrics/{id}/sql'].get
$.paths['/console/v1/metrics/{id}/unarchive'].put
$.paths['/console/v1/metrics/{name}/{type}'].get
$.paths['/console/v1/metrics/list'].get
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 Metrics API
version: 1.0.0
extends: openapi/statsig-metrics-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: 22
- target: $.paths['/metrics'].get
update:
x-apievangelist-phrasing:
intent: List metric definitions
effect: read
questions:
- Which metrics are defined in my Statsig project?
- Can I page through all our metric definitions?
instructions:
- text: List all metrics in my project.
- text: Show page {page} of metrics, {limit} per page.
slots:
page: query.page
limit: query.limit
method: generated
generated: '2026-09-26'
- target: $.paths['/metrics/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a metric's definition
effect: read
questions:
- How is a specific metric defined?
- Can I look up one metric's definition by name?
instructions:
- text: Show the definition of metric {id}.
slots:
id: path.id
- text: Get metric {id}.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/console/v1/metrics'].get
update:
x-apievangelist-phrasing:
intent: Read a metric's value for one day
effect: read
questions:
- What was a metric's value on a specific date?
- Can I pull a single day's value for one metric and type?
instructions:
- text: Get the value of metric {id} on {date}.
slots:
id: query.id
date: query.date
- text: Read metric {id} for {date}.
slots:
id: query.id
date: query.date
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics'].post
update:
x-apievangelist-phrasing:
intent: Create a metric
effect: write
questions:
- Can I define a new ratio or funnel metric through the API?
- Can I set whether an increase or decrease is good for a new metric?
- Is there a way to validate a new metric definition without saving it?
instructions:
- text: Create metric {name} of type {type}.
slots:
name: requestBody.name
type: requestBody.type
- text: Create a {type} metric {name} computed from events {metricEvents}.
slots:
type: requestBody.type
name: requestBody.name
metricEvents: requestBody.metricEvents
- text: Validate metric {name} of type {type} without saving, dry run {dryRun}.
slots:
name: requestBody.name
type: requestBody.type
dryRun: requestBody.dryRun
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}'].get
update:
x-apievangelist-phrasing:
intent: Read a metric definition via Console API v1
effect: read
questions:
- Can the Console API v1 return a metric's full definition by its ID?
- Is a given metric verified or read-only?
instructions:
- text: Read metric definition {id} from the v1 console.
slots:
id: path.id
- text: Check whether metric {id} is verified, read-only or permanent.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}'].post
update:
x-apievangelist-phrasing:
intent: Update a metric's definition
effect: write
questions:
- Can I mark an existing metric as verified?
- Can I schedule warehouse native reloads for a metric at a set hour?
- Is it possible to change a metric's directionality after it was created?
instructions:
- text: Set the verified flag on metric {id} to {isVerified}.
slots:
id: path.id
isVerified: requestBody.isVerified
- text: Schedule reloads of metric {id} at UTC hour {scheduledReloadHour} on days {scheduledReloadDays}.
slots:
id: path.id
scheduledReloadHour: requestBody.scheduledReloadHour
scheduledReloadDays: requestBody.scheduledReloadDays
- text: Update the description of metric {id} to {description}.
slots:
id: path.id
description: requestBody.description
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a metric
effect: destructive
questions:
- Can I permanently delete a metric definition?
- Is deleting a metric irreversible?
instructions:
- text: Delete metric {id}.
slots:
id: path.id
- text: Permanently remove metric {id} from the project.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/cancel_archive'].put
update:
x-apievangelist-phrasing:
intent: Cancel a scheduled metric archive
effect: write
questions:
- Can I stop a metric that's scheduled for archiving from being archived?
- Is there a way to call off a pending metric archive?
instructions:
- text: Cancel the scheduled archive of metric {id}.
slots:
id: path.id
- text: Keep metric {id} active by cancelling its pending archive.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/experiments'].get
update:
x-apievangelist-phrasing:
intent: List experiments that use a metric
effect: read
questions:
- Which experiments use a particular metric?
- Can I see only the experiments in a given status that track a metric?
- What stale experiments still reference a metric?
instructions:
- text: List experiments that use metric {id}.
slots:
id: path.id
- text: Show experiments with status {status} that track metric {id}.
slots:
status: query.status
id: path.id
- text: Show experiments on metric {id} created between {createdStartDate} and {createdEndDate}.
slots:
id: path.id
createdStartDate: query.createdStartDate
createdEndDate: query.createdEndDate
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/reload'].post
update:
x-apievangelist-phrasing:
intent: Reload a metric's data
effect: write
questions:
- Can I trigger a recomputation of a metric's data?
- Is an incremental reload possible instead of a full one?
instructions:
- text: Reload data for metric {id}.
slots:
id: path.id
- text: Reload metric {id} incrementally ({incremental}).
slots:
id: path.id
incremental: query.incremental
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/schedule_archive'].put
update:
x-apievangelist-phrasing:
intent: Schedule a metric for archiving
effect: write
questions:
- Can I schedule an unused metric to be archived?
- Is there a way to queue a metric for archive rather than archiving it now?
instructions:
- text: Schedule metric {id} for archive.
slots:
id: path.id
- text: Queue metric {id} to be archived.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/sql'].get
update:
x-apievangelist-phrasing:
intent: Get the SQL behind a metric
effect: read
questions:
- What SQL does Statsig run to compute a metric?
- Can I see the generated query for a metric?
instructions:
- text: Show the SQL for metric {id}.
slots:
id: path.id
- text: Get the query that computes metric {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{id}/unarchive'].put
update:
x-apievangelist-phrasing:
intent: Unarchive a metric
effect: write
questions:
- Can I bring back a metric that was archived?
- Is restoring an archived metric possible?
instructions:
- text: Unarchive metric {id}.
slots:
id: path.id
- text: Restore archived metric {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/{name}/{type}'].get
update:
x-apievangelist-phrasing:
intent: Look up a metric by name and type
effect: read
questions:
- Can I find a metric's definition when I know its name and type but not its ID?
- What is the definition of the metric with a given name and type?
instructions:
- text: Get the metric named {name} of type {type}.
slots:
name: path.name
type: path.type
- text: Look up metric definition by name {name} and type {type}.
slots:
name: path.name
type: path.type
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/list'].get
update:
x-apievangelist-phrasing:
intent: Search and filter the metric catalog
effect: read
questions:
- Can I include hidden metrics when listing our metrics?
- Which metrics match a search term like checkout?
- Can I list only metrics with a certain tag?
instructions:
- text: List metrics matching {filters}.
slots:
filters: query.filters
- text: List metrics tagged {tags} with hidden metrics set to {showHiddenMetrics}.
slots:
tags: query.tags
showHiddenMetrics: query.showHiddenMetrics
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source'].post
update:
x-apievangelist-phrasing:
intent: Create a metric source from SQL
effect: write
questions:
- Can I define a metric source from a SQL query in our warehouse?
- Which column mappings does a new metric source need?
- Is there a way to skip SQL validation when creating a metric source?
instructions:
- text: Create metric source {name} from SQL {sql} with timestamp column {timestampColumn} and ID mapping {idTypeMapping}.
slots:
name: requestBody.name
sql: requestBody.sql
timestampColumn: requestBody.timestampColumn
idTypeMapping: requestBody.idTypeMapping
- text: 'Validate new metric source {name} without saving: SQL {sql}, dry run {dryRun}.'
slots:
name: requestBody.name
sql: requestBody.sql
dryRun: requestBody.dryRun
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source/{name}'].get
update:
x-apievangelist-phrasing:
intent: Read a metric source
effect: read
questions:
- What SQL and column mappings does a metric source use?
- Can I view one metric source's configuration by name?
instructions:
- text: Show metric source {name}.
slots:
name: path.name
- text: Get the SQL and ID mapping of metric source {name}.
slots:
name: path.name
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source/{name}'].post
update:
x-apievangelist-phrasing:
intent: Update a metric source
effect: write
questions:
- Can I change the SQL behind an existing metric source?
- Can I disable CURE for every metric built on a source?
- Is it possible to switch an existing metric source to a different timestamp column?
instructions:
- text: Update metric source {name} to use SQL {sql}, timestamp {timestampColumn}, ID mapping {idTypeMapping}.
slots:
name: path.name
sql: requestBody.sql
timestampColumn: requestBody.timestampColumn
idTypeMapping: requestBody.idTypeMapping
- text: Turn off CURE on metric source {name} with {disableCURE}, keeping SQL {sql}, timestamp {timestampColumn} and ID mapping {idTypeMapping}.
slots:
name: path.name
disableCURE: requestBody.disableCURE
sql: requestBody.sql
timestampColumn: requestBody.timestampColumn
idTypeMapping: requestBody.idTypeMapping
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source/{name}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a metric source
effect: destructive
questions:
- Can I remove a metric source we no longer query?
- Is deleting a metric source permanent?
instructions:
- text: Delete metric source {name}.
slots:
name: path.name
- text: Permanently remove metric source {name}.
slots:
name: path.name
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source/{name}/metrics'].get
update:
x-apievangelist-phrasing:
intent: List metrics built on a metric source
effect: read
questions:
- Which metrics are built on top of a particular metric source?
- What depends on a metric source before I change it?
instructions:
- text: List metrics that use metric source {name}.
slots:
name: path.name
- text: Show page {page} of metrics built from source {name}.
slots:
page: query.page
name: path.name
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/metric_source/list'].get
update:
x-apievangelist-phrasing:
intent: List metric sources
effect: read
questions:
- Which metric sources are set up in our project?
- Can I page through every metric source?
instructions:
- text: List all metric sources.
- text: Show page {page} of metric sources, {limit} per page.
slots:
page: query.page
limit: query.limit
method: generated
generated: '2026-10-01'
- target: $.paths['/console/v1/metrics/values'].get
update:
x-apievangelist-phrasing:
intent: List all metric values for a date
effect: read
questions:
- What values did all our metrics have on a given day?
- Can I filter the daily metric values by metric name or type?
instructions:
- text: List all metric values for {date}.
slots:
date: query.date
- text: Show values of metric {metricName} of type {metricType} on {date}.
slots:
metricName: query.metricName
metricType: query.metricType
date: query.date
method: generated
generated: '2026-10-01'
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-metrics-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.