Starters

The smallest correct version of each artifact in the API Commons stack. Copy one, rename everything, and grow it.

A starter is the smallest document that is still correct and worth copying. A base is a full working template for a real domain — the whole error contract, pagination, conditional writes, merge-patch. Start here when you are starting something; start from a base when one already resembles what you are building.

The starter OpenAPI returns zero findings under both spectral:oas and the API Commons Problem Details ruleset. That is deliberate — whatever you build on top of it starts from zero, so the first warning you ever see is one you introduced. A starter that ships with warnings teaches you to ignore warnings.

Starter APIs.json - The smallest APIs.json document that validates — one index, one API, and the properties a consumer actually needs to find their way in. Where an OpenAPI describes one API's surface, this describes where an API lives, who runs it, and which artifacts sit alongside it: documentation, a portal, a changelog, a status page, terms. Written against specificationVersion 0.22 and validated against the published schema.
Starter JSON Schema - The smallest JSON Schema worth copying — an object, typed properties, one constraint, one required field, and a description on everything. Written against 2020-12, the dialect OpenAPI 3.1 uses, so it drops straight into components.schemas with no translation. Its own examples are validated against the properties they sit on, because a starter whose examples do not validate is worse than no starter.
Starter OpenAPI - The smallest OpenAPI 3.1 document complete enough to be useful — one resource with a list, a create, and a read by id, and RFC 9457 problem details on every error. It returns zero findings under both spectral:oas and the API Commons Problem Details ruleset, which is the point: whatever you build on top starts from zero, so the first warning you ever see is one you introduced. Copy it, rename the Thing, and grow it.

Every starter on GitHub