# OpenAPI & Swagger Viewer - Browse, Validate, Export API Docs

> View OpenAPI 3.x and Swagger 2.0 (JSON/YAML) online: tag-grouped endpoints, search, $ref schema trees, example JSON, curl/fetch snippets and HTML export.

- URL: https://qilingtools.com/en/openapi-viewer
- Category: Developer Tools (https://qilingtools.com/en/dev)
- Tags: [Developer](https://qilingtools.com/en/tags/dev), [Data Formats](https://qilingtools.com/en/tags/data), [Network & HTTP](https://qilingtools.com/en/tags/network)
- Last updated: 2026-10-26
- Price: Free, no sign-up
- Privacy: Runs locally in the browser; files are never uploaded

Got an openapi.yaml or swagger.json and don’t want to deploy Swagger UI just to read it? Paste the document or open a local file, and it’s turned into readable API docs right in your browser: title, version, description, servers and security schemes at the top; every endpoint grouped by tag on the left with colored method badges and search across paths, summaries, operationIds and tags; and the selected operation’s parameters, request body and responses on the right. Every $ref is resolved into a schema tree you can expand level by level, showing types, required fields, enums, ranges, readOnly and other constraints. Circular references are marked with “↻” instead of expanding forever, and example JSON is generated from each schema (request examples skip read-only fields). Swagger 2.0 body / formData parameters and definitions are converted to the same structure as OpenAPI 3. The Try it panel lets you choose a server, fill in parameters and tokens, and builds curl and fetch code as you type; after you opt in, it can also send the request straight from your browser (the API must allow CORS). Validation warnings flag unresolved references, missing or duplicate operationIds, paths that differ only by parameter name and mismatched path parameters. Finally, export a standalone static HTML page to share with your team. Your document is processed locally and never uploaded.

## How to use

1. Paste OpenAPI / Swagger JSON or YAML, or open a local file (or click Sample spec to try it)
2. Browse endpoints by tag or search, and inspect parameters, request bodies, response schemas and example JSON
3. Build curl / fetch code in the Try it panel, or export static HTML docs

## Features

- OpenAPI 3.0 / 3.1 and Swagger 2.0, as JSON or YAML
- Endpoints grouped by tag with colored method badges and search
- $ref resolved into expandable schema trees, safe with circular references
- Example JSON generated from schemas (readOnly / writeOnly aware)
- Warnings for unresolved refs, missing or duplicate operationIds, duplicate paths and path parameter mismatches
- Try it: server variables, parameters, Bearer / Basic / API key auth, curl and fetch snippets
- Optional live request from the browser with the response shown (subject to CORS)
- One-click export to a single-file static HTML page

## FAQ

### How is this different from Swagger UI or Redoc?

It shows much the same information, but there’s nothing to deploy and nothing is uploaded to a third-party site — paste and read, all parsed locally in your browser. It also adds validation warnings and exports a script-free static HTML page you can email or drop into an internal wiki.

### Are external file references ($ref: other.yaml#/...) supported?

No. To avoid making network requests, only references inside the same document (JSON Pointers starting with #) are resolved. External references are listed in the warnings; bundle multi-file specs first with swagger-cli bundle or redocly bundle and paste the result.

### Why did “Send request” fail?

The request goes directly from your browser to the API — this site doesn’t proxy it. If the server doesn’t return CORS headers that allow this origin, the browser blocks the response and the request shows as failed. Copy the generated curl command and run it in a terminal instead; the result is the same.

### How are recursive schemas displayed?

When, say, Category.parent points back to Category, the tree shows “↻ circular reference” at the point where the schema repeats and stops there, and the example JSON is cut off at the same place, so even deeply recursive models never hang the page.

## Related tools

- [JSON Formatter](https://qilingtools.com/en/json): Free online JSON formatter: beautify or minify, validate with the exact line and column of any error, browse a collapsible tree, sort keys and escape strings.
- [Base64 Encode/Decode](https://qilingtools.com/en/base64): Free online Base64 encoder and decoder: UTF-8 safe, optional URL-safe variant, convert text to Base64 and back in real time. Processed locally, never uploaded.
- [URL Encode/Decode](https://qilingtools.com/en/url-encode): Free online URL encoder and decoder with encodeURIComponent and encodeURI modes. Escapes Chinese, spaces and special characters. Real-time and local, no upload.
- [JWT Decoder](https://qilingtools.com/en/jwt): Free online JWT decoder: decode the header and payload of a JSON Web Token, show expiry and issued-at times, all locally without uploading the token.
- [Timestamp Converter](https://qilingtools.com/en/timestamp): Free online Unix timestamp converter: convert timestamps and dates, auto-detect seconds or milliseconds, and show local, UTC, ISO 8601 and relative time.
- [Hash / Checksum](https://qilingtools.com/en/hash): Free online hash calculator: SHA-1, SHA-256, SHA-384 and SHA-512 of text or any file through the browser crypto API. Files never leave your device.
- [UUID Generator](https://qilingtools.com/en/uuid): Free online UUID generator: create RFC 4122 UUID v4 in bulk with a cryptographic RNG. Options for uppercase, no hyphens and braces, with one-click copy.
- [Base Converter](https://qilingtools.com/en/base-convert): Free online number base converter: convert between binary, octal, decimal, hexadecimal and any base 2–36. Uses BigInt for huge integers, computed locally.
