Better Stack · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Better Stack Uptime Status Pages API
7 actions
7 updates
phrasing
extends
openapi/betterstack-status-pages-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Better Stack's API. It is a proposal applied on top of the contract, not a document Better Stack publishes.
What the actions change
x-apievangelist-phrasing
Targets 7
$.info
$.paths['/status-pages'].get
$.paths['/status-pages'].post
$.paths['/status-pages/{id}'].get
$.paths['/status-pages/{id}'].delete
$.paths['/status-pages/{id}'].patch
$.paths['/status-pages/group/{id}'].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 Better Stack Uptime Status Pages API
version: 1.0.0
extends: openapi/betterstack-status-pages-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: 6
- target: $.paths['/status-pages'].get
update:
x-apievangelist-phrasing:
intent: List status pages
effect: read
questions:
- Which public status pages do I have in Better Stack?
- Can I page through my status pages if I have a lot of them?
instructions:
- text: List all of my status pages.
- text: Show page {page} of my status pages, {per_page} at a time.
slots:
page: query.page
per_page: query.per_page
method: generated
generated: '2026-10-01'
- target: $.paths['/status-pages'].post
update:
x-apievangelist-phrasing:
intent: Create a public status page
effect: write
questions:
- How do I publish a status page for my customers?
- Can a new status page be password-protected or hidden from search engines?
- Can I put a status page on my own custom domain?
instructions:
- text: Create a status page for {company_name} at {company_url} on subdomain {subdomain}.
slots:
company_name: requestBody.company_name
company_url: requestBody.company_url
subdomain: requestBody.subdomain
- text: Set up a new status page for {company_name} ({company_url}) on subdomain {subdomain} served at {custom_domain}.
slots:
company_name: requestBody.company_name
company_url: requestBody.company_url
subdomain: requestBody.subdomain
custom_domain: requestBody.custom_domain
method: generated
generated: '2026-10-01'
- target: $.paths['/status-pages/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a status page's settings
effect: read
questions:
- What subdomain and custom domain is a specific status page using?
- Does one particular status page allow visitors to subscribe to updates?
instructions:
- text: Show me status page {id}.
slots:
id: path.id
- text: Get the configuration of status page {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/status-pages/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a status page
effect: destructive
questions:
- Can I take down a status page I no longer need?
- Is removing a status page permanent?
instructions:
- text: Delete status page {id}.
slots:
id: path.id
- text: Take status page {id} down permanently.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/status-pages/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Change an existing status page
effect: write
questions:
- Can I post an announcement on a status page I already have?
- How do I change the logo or timezone of an existing status page?
instructions:
- text: Update status page {id} for {company_name} ({company_url}, subdomain {subdomain}) with announcement {announcement}.
slots:
id: path.id
company_name: requestBody.company_name
company_url: requestBody.company_url
subdomain: requestBody.subdomain
announcement: requestBody.announcement
- text: Change status page {id} for {company_name} at {company_url} on {subdomain} to use timezone {timezone}.
slots:
id: path.id
company_name: requestBody.company_name
company_url: requestBody.company_url
subdomain: requestBody.subdomain
timezone: requestBody.timezone
method: generated
generated: '2026-10-01'
- target: $.paths['/status-pages/group/{id}'].get
update:
x-apievangelist-phrasing:
intent: List the status pages in a group
effect: read
questions:
- Which status pages belong to a particular status page group?
- Can I see all the pages grouped together under one group?
instructions:
- text: List the status pages in group {id}.
slots:
id: path.id
- text: Show every status page that belongs to group {id}.
slots:
id: path.id
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/betterstack-status-pages-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.