Best for
- APIs documented only by their router file
- Partner integrations stalling on 'what does this field mean?'
- Keeping docs true after the API moved on
What you give it
- The API: code, spec, or a running instance to call
What you get back
- Per endpoint: purpose, auth, parameters with meanings and constraints, real examples, every error
- The cross-cutting pages done once: authentication, pagination, rate limits, versioning, idempotency
- A drift report where documentation and API disagree — with the API as the truth
How it works
- Verifies against reality: examples captured from actual calls where a running instance exists, from code where not — never from memory.
- Documents meanings, not just types: what the field controls, its constraints, its default, what happens when omitted.
- Catalogues errors as first-class content: trigger, status, shape, and what the caller should do.
- Writes the cross-cutting concerns once, well, and links them — auth explained per-endpoint is auth explained badly.
Example
You: Document our 25-endpoint partner API properly before onboarding the next integrator.
Result: 25 endpoints documented with examples captured from real calls (three responses differed from the old docs — drift report attached), every error catalogued with its trigger and shape, the auth page written once with a working token walkthrough, and the two 'everyone asks this' fields given the paragraph they deserved. The next integrator connected without a single what-does-this-mean email.
Limits — please read
- Field semantics only the business knows get asked, not invented.
- Generated reference stays fresh only if regeneration is wired in; it sets that up where the stack allows.
- SDK examples in many languages multiply maintenance; it starts with the ones your integrators use.