API declaration reference
Every key a founder or coding agent writes to declare an API, with its type, what it holds and the page that explains it.
An API is declared in four places: the Product file, its Interface, its Offers and its Publication. Every other part compiles from these keys.
Product file
products/, frontmatter. Products is the file convention.
| Key | Type | Holds | Explained in |
|---|---|---|---|
$type | list | API, alone or beside App, Agent, Dataset or Service | Anatomy of an API |
nouns | Noun names | The Nouns it exposes | Design an API |
verbs | Verb ids | The Verbs a Customer may call | Customize an API |
interfaces | list | The Interfaces it ships on; every kind by default | Packages under your name |
Interface
| Key | Type | Holds | Explained in |
|---|---|---|---|
kind | api, mcp, cli, sdk, site, app, docs or webhooks | Which Interface it is | Packages under your name |
path | string | Where it mounts on the Domain, such as / | Customize an API |
conformsTo | list | The Standards it also speaks, each mapping operations onto Verbs | Standards your API speaks |
Offer
offers/, frontmatter. Offers has every key; these decide what an API caller gets.
| Key | Type | Holds | Explained in |
|---|---|---|---|
price | { amount, | What it charges each interval | Sell an API |
interval | once, day, week, month or year | How often it bills | Sell an API |
atBound | stop, overage or upgrade | What a call past a Limit gets | API plans, limits and uptime |
credit | { amount, | Prepaid credit each purchase issues | Sell an API |
Offer.grant adds each Entitlement: a Verb, optionally with a Limit.
Publication
Compiled from the Brand, the Domain and one Version. Each field can be set.
| Key | Holds | Explained in |
|---|---|---|
api, mcp, docs, statusPage, portal | Where each Interface answers on the Domain | Customize an API |
packages | The SDK, CLI and MCP package names, per package registry | Packages under your name |
envPrefix | The prefix of the key variable the packages read | Packages under your name |
webhookHeader | The signature header on every delivery | Webhooks for your customers |
errorNamespace | The base of every error type | Design an API |
Per Tenant and per Watch
| Record | Key | Holds | Explained in |
|---|---|---|---|
| Tenant | apiVersion | The version an unversioned call answers at | Versioning your API |
| Watch | selector, url, payload | Which Events go where, in full or thin | Webhooks for your customers |
Every route, method, command and tool: API · SDK · CLI · MCP.