# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Console Alerts API version: 1.0.0 extends: openapi/statsig-alerts-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: 9 - target: $.paths['/console/v1/alerts'].get update: x-apievangelist-phrasing: intent: List topline alerts effect: read questions: - Which topline metric alerts are configured in my project? - Can I page through all our alerts? instructions: - text: List all topline alerts. - text: Show alerts page {page}, {limit} per page. slots: page: query.page limit: query.limit method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts'].post update: x-apievangelist-phrasing: intent: Create a topline alert effect: write questions: - How do I get alerted when a topline metric moves? - Can an alert combine several metrics with a formula? - Is it possible to group an alert's metrics by a property? instructions: - text: Create a topline alert named {name} with message {message}. slots: name: requestBody.name message: requestBody.message - text: Create alert {name} on metrics {definitionMetricsJson} using formula {formula}, grouped by {groupBys}. slots: name: requestBody.name definitionMetricsJson: requestBody.definitionMetricsJson formula: requestBody.formula groupBys: requestBody.groupBys method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}'].get update: x-apievangelist-phrasing: intent: Read one topline alert effect: read questions: - What threshold and condition does a given alert use? - Who gets notified when a specific alert fires? instructions: - text: Show topline alert {id}. slots: id: path.id - text: Get the configuration of alert {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a topline alert effect: destructive questions: - Can I remove an alert that keeps firing for no reason? - Is deleting a topline alert permanent? instructions: - text: Delete topline alert {id}. slots: id: path.id - text: Remove alert {id} from the project. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}'].patch update: x-apievangelist-phrasing: intent: Update a topline alert's thresholds or routing effect: write questions: - How do I raise the threshold on an alert? - Can I route an alert to Slack or PagerDuty subscribers? - Is there a way to change how often an alert is checked? instructions: - text: Set alert {id}'s threshold to {alertThreshold} and warning threshold to {warningThreshold}. slots: id: path.id alertThreshold: requestBody.alertThreshold warningThreshold: requestBody.warningThreshold - text: Change alert {id} to priority {priority} with an evaluation window of {windowMs} ms. slots: id: path.id priority: requestBody.priority windowMs: requestBody.windowMs - text: Send alert {id} notifications to subscribers {subscribers}. slots: id: path.id subscribers: requestBody.subscribers method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}/events'].get update: x-apievangelist-phrasing: intent: List an alert's firing history effect: read questions: - When has a particular alert fired in the past? - Can I see the history of triggers for one alert? instructions: - text: List the events fired by alert {id}. slots: id: path.id - text: Show page {page} of alert {id}'s firing history. slots: id: path.id page: query.page method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}/events/{eventId}'].get update: x-apievangelist-phrasing: intent: Read one alert firing event effect: read questions: - What exactly happened during a specific alert firing? - Can I drill into a single trigger of an alert? instructions: - text: Show event {eventId} of alert {id}. slots: id: path.id eventId: path.eventId - text: Get the details of firing {eventId} for alert {id}. slots: id: path.id eventId: path.eventId method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}/mute'].post update: x-apievangelist-phrasing: intent: Mute a topline alert effect: write questions: - Can I silence an alert for a few hours during a planned launch? - Is it possible to mute an alert only for certain group-by values? instructions: - text: Mute alert {id} for {durationSeconds} seconds. slots: id: path.id durationSeconds: requestBody.durationSeconds - text: 'Mute alert {id} indefinitely: {indefinite}.' slots: id: path.id indefinite: requestBody.indefinite - text: Mute alert {id} only where the group-by values are {groupBys}. slots: id: path.id groupBys: requestBody.groupBys method: generated generated: '2026-10-01' - target: $.paths['/console/v1/alerts/{id}/unmute'].post update: x-apievangelist-phrasing: intent: Unmute a topline alert effect: write questions: - How do I turn notifications back on for a muted alert? - Can I unmute just one group-by slice of an alert? instructions: - text: Unmute alert {id}. slots: id: path.id - text: Unmute alert {id} for group-by values {groupBys}. slots: id: path.id groupBys: requestBody.groupBys method: generated generated: '2026-10-01'