// api.md
OpenAPI spec → LLM-readable docs.
Paste an OpenAPI 3.x or Swagger 2.x JSON spec. Get clean markdown — endpoints, parameters, schemas, and responses — without the JSON noise. Feed it to any LLM as API context.
yaml-to-json.com or paste it into Claude / ChatGPT and ask for JSON output.Docs appear here
Paste an OpenAPI JSON spec on the left
// why not just paste the spec
OpenAPI JSON is noisy. LLMs don't need all of it.
A typical OpenAPI spec is 50–90% structural overhead — deeply nested JSON, repeated $ref chains, example payloads, server variable definitions, and extension keys. The LLM needs the endpoints, the parameters, and the schemas. Nothing else.
This tool resolves $refreferences inline, flattens the schema hierarchy to a readable depth, groups endpoints by tag, and removes everything the LLM doesn't need to generate correct API calls.
The result is typically 40–70% fewer tokens than the raw JSON spec — while containing all the information an LLM needs to write client code, generate tests, or answer questions about the API.
// faq
Frequently asked questions
Which spec versions are supported?
OpenAPI 3.x (3.0, 3.1) and Swagger 2.x. Both JSON formats are supported. YAML is not supported — convert to JSON first using any free online converter or by asking an LLM.
Are $ref schemas resolved?
Yes. References to components/schemas (OpenAPI 3.x) and definitions (Swagger 2.x) are resolved inline up to 3 levels deep. Circular references are truncated with { ... } to prevent infinite loops.
What gets omitted?
Examples, extensions (x-* fields), server variable definitions, security scheme details, external docs links, and deeply nested schema levels beyond 3. These rarely affect the LLM's ability to generate correct API calls.
How should I use the output?
Paste api.md into your LLM context at the start of a session before asking it to write API calls, generate SDK clients, build integrations, or answer questions about the API. It gives the model accurate endpoint and schema knowledge without guessing.