OpenAPI & Swagger Validator and Endpoint Extractor avatar

OpenAPI & Swagger Validator and Endpoint Extractor

Pricing

from $2.00 / 1,000 specification validateds

Go to Apify Store
OpenAPI & Swagger Validator and Endpoint Extractor

OpenAPI & Swagger Validator and Endpoint Extractor

Validate inline OpenAPI 3.0, 3.1 and Swagger 2.0 JSON specifications and extract endpoint inventories without fetching external references.

Pricing

from $2.00 / 1,000 specification validateds

Rating

0.0

(0)

Developer

asaf meizner

asaf meizner

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Validate OpenAPI 3.0.x, 3.1.x and Swagger 2.0 specifications in bulk and get a clean JSON report: valid or not, the exact errors, and a list of every endpoint (method, path, operationId). Use it in CI pipelines, API catalog checks, AI-agent tool pipelines, or before importing a spec into a gateway or SDK generator.

It works fully offline on the spec you send: no requests to your API, no external $ref fetching, no login or proxies. It uses the openapi-spec-validator library.

What you get

  • Validity check against the OpenAPI / Swagger schema (valid: true/false)
  • Up to 50 readable error messages per spec for invalid documents
  • Spec version and API title
  • Endpoint inventory: HTTP method, path, operationId (up to 1,000 operations)
  • Safe handling of bad input: unsupported or unsafe documents return status: rejected with a reason, and are not charged

Example input

{
"documents": [
{
"openapi": "3.0.3",
"info": { "title": "Health API", "version": "1.0" },
"paths": {
"/health": {
"get": {
"operationId": "health",
"responses": { "200": { "description": "OK" } }
}
}
}
}
]
}

Supply 1–20 documents. Each must be an inline JSON object, at most 1 MB. YAML text and URL inputs are not supported: convert YAML to JSON and inline external references first.

Example output

{
"index": 0,
"status": "validated",
"version": "3.0.3",
"title": "Health API",
"valid": true,
"errors": [],
"errorsTruncated": false,
"operationCount": 1,
"operations": [{ "method": "GET", "path": "/health", "operationId": "health" }],
"operationsTruncated": false
}

An invalid spec (for example, a missing responses object) is still a successful run: you get valid: false and the list of errors to fix.

Pricing

$0.002 per specification checked ($2 per 1,000), including invalid specifications. Rejected inputs are not charged the spec event. Apify platform start and dataset charges may also apply, shown on the pricing page.

Limits

Validation checks the specification itself, not the running API or response correctness. Only ordinary operations directly under paths are inventoried; callbacks and webhooks are not expanded. External $ref / $dynamicRef values (file, relative or URL) are rejected; broken internal references give an invalid report. Do not upload confidential specifications you are not allowed to share.

FAQ

Can it validate a Swagger 2.0 file? Yes, 2.0, 3.0.x and 3.1.x. Can I pass a URL? Not yet; send the JSON content. Does it call my API? No. Processing is offline.

Local use

Install requirements, then run python -m src.main with Apify local input storage. Tests: python -m unittest discover -s tests -v.