OpenAPI Specification
Where the machine-readable OpenAPI document lives, what it carries beyond paths, and how to load it into your tooling.
Subscriby publishes a full OpenAPI 3.1 description of every /v1/* endpoint and every outbound webhook event. The document is generated from the PHP code — request validation rules, API resources, return types and the webhook catalogue are all inspected — and its prose is maintained beside that code, so there is no hand-written YAML to rot.
The same document builds this site's API Reference, one page per resource carrying every operation with its playground, and the webhooks' Event Reference, one page per event family. What you read there is exactly what a client generated from the spec sees.
Where it lives
| URL | Purpose |
|---|---|
https://api.subscriby.net/openapi.json | The OpenAPI document. |
https://api.subscriby.net/postman.json | The same document as a Postman collection: worked bodies, a saved response per status, a signed simulation of every webhook event. |
https://api.subscriby.net/postman-environment.json | The collection's companion environment: the host, and the token and webhook secret as secrets. |
https://api.subscriby.net/abilities.json | The full ability catalog as JSON (convenient for token-minting UIs). |
https://api.subscriby.net/.well-known/ai-plugin.json | ChatGPT plugin manifest that points agents at the OpenAPI spec. |
Every JSON file here is regenerated on every Subscriby deploy, so none of them drifts from the code.
What the document carries
paths— every operation with a summary, a description covering tenancy, behaviour and refusals, every parameter and body field described with its type and constraints, the error envelope on each failure status, and request and response examples.webhooks— every outbound event, keyed by its name, described as thePOSTyour endpoint receives: the signed envelope, thedataobject field by field, named payload examples, and theSB-*headers.components.securitySchemes.bearerToken— the personal access token, so a generated client or a playground knows to sendAuthorization: Bearer.servers—https://api.subscriby.net, the only host the document describes.
Vendor extensions
Every operation carries three x- extensions, and every webhook entry carries the first of them:
| Extension | Value |
|---|---|
x-required-scopes | The ability strings the calling token must carry; on a webhook, the ability a token needs to subscribe an endpoint to the event. |
x-webhook-events | The webhook event names the operation can fire. |
x-mcp-tools | The MCP tools that wrap the same operation. |
{
"paths": {
"/v1/projects/{project}/plans": {
"post": {
"summary": "Create a plan",
"x-required-scopes": ["project-subscription-plan:create"],
"x-webhook-events": ["plan.created"],
"x-mcp-tools": ["create_plan"],
"requestBody": { "...": "..." }
}
}
}
}Tooling reads them to generate permission-aware UIs (Postman collections, auto-generated SDK comments, LangChain toolkits) without inspecting the server, and the reference pages on this site render them as the badge row above each operation.
Typical consumers
- Postman / Insomnia — import the generated collection, which carries worked bodies, a saved response per status, a fresh idempotency key on every write and a signed simulation of every webhook event; or import this JSON URL and let the app build a plain collection by tag.
- openapi-generator / Stainless / Speakeasy / Fern — produce a typed client in any language.
x-required-scopesends up as comments in the generated source. - LangChain / LangGraph — use
OpenAPIToolkitto expose every Subscriby endpoint as an LLM tool. - Custom agents — feed the spec to your LLM alongside a personal access token and let it compose requests.
- Webhook consumers — generate the payload types for your handlers from the
webhooksobject, so a renamed field is a compile error rather than a silentundefined.
Related
- API Reference — the document rendered as pages, with a playground on each.
- Event Reference — every webhook event's envelope and payload, from the same document.
- Ability catalog — the strings that appear in
x-required-scopes. - Errors — the envelope every operation can return on failure.
How is this guide?
Last updated on
Error Codes
The complete catalogue of error codes from api.subscriby.net and mcp.subscriby.net, their HTTP statuses and what to do about each.
Agent Readiness
Subscriby is built for AI agents as much as for people. This page is the map: the documents an agent reads to find Subscriby on its own, how it gets in with a creator's approval, what it can do once inside, and why Cloudflare's public scan rates the site Agent-Native, its top level.