Skip to main content

API Documentation Generator

Generate Markdown HTTP-endpoint documentation from form fields and JSON examples.

Written by Golam Rabbani, Founder & Lead Engineer

Used as the H1 heading

One short paragraph describing the endpoint

One per line, format: Name: description

One per line, format: name: description

One per line, format: name: description

How to use this api documentation generator

  1. Name the endpoint — it becomes the H1 heading.
  2. Pick the HTTP method and enter the path (path parameters like {id} are kept verbatim).
  3. Add a one-paragraph summary, then list headers, path params, and query params one per line as name: description.
  4. Paste a JSON request body and a JSON response example; both are validated and re-pretty-printed.
  5. Set the response status code and press Generate to emit ready-to-publish Markdown.

About this api documentation generator

The API documentation generator turns six form fields into a clean Markdown page suitable for a README, Confluence import, or static-site doc folder. Headers, path parameters, and query parameters each render as a Markdown table; JSON request and response examples are parsed and re-emitted with two-space indentation, so even ugly input becomes pretty output. Validation catches bad JSON before generation, so what you copy is always syntactically clean.

Worked example: endpoint name "Get user by ID", method GET, path "/v1/users/{id}", summary "Returns a single user record by its numeric ID.", path parameter "id: numeric user identifier", status code 200, response example {"id": 42, "name": "Ada"}. The tool emits:

# Get user by ID

Returns a single user record by its numeric ID.

## Request

``` GET /v1/users/{id} ```

### Path parameters

| Name | Description | | --- | --- | | `id` | numeric user identifier |

## Response

Status: `200`

```json { "id": 42, "name": "Ada" } ```

Drop that straight into a Markdown file. Everything is generated locally; the form values, JSON snippets, and final Markdown never leave your browser.

FAQ

What format does the output use?
CommonMark-compatible Markdown with GitHub-flavoured tables and triple-backtick fenced code blocks. It renders correctly on GitHub, GitLab, Notion, Hugo, MkDocs, Docusaurus, and most static-site generators.
How are JSON examples handled?
Both the request body and the response example fields are parsed with the native JSON parser. Invalid JSON blocks generation and shows the underlying parse error. Valid JSON is re-emitted with two-space indentation inside ```json fenced blocks.
Can I document path or query parameters?
Yes. Each section accepts one entry per line in name: description form. The tool builds a Markdown table per section so the docs read consistently endpoint after endpoint.
Does it generate OpenAPI or RAML?
Not in this version. The output is plain Markdown, which is what most teams need for a single-endpoint reference. OpenAPI tooling is a separate generator.
Why is the status code restricted to three digits?
HTTP status codes are by spec exactly three digits (100–599). The validation catches typos like "20" or "2000" before they end up in your published docs.
Is the input ever uploaded?
No. Generation is purely client-side. Your endpoint details, JSON examples, and the final Markdown stay in the browser.