API Specifications · Schema

SpecificationRecord

A normalized record describing a single API specification language — its name, current version, governing body, license, format, and tooling ecosystem.

API SpecificationSpecification LanguagesAPI DesignContractsSchemasInterface DefinitionsStandards

Properties

Name Type Description
id string Stable identifier for the specification.
name string Human-readable name of the specification.
aliases array Alternative or historical names for the specification.
category string The high-level category of specification.
currentVersion string Latest stable specification version.
versions array Known versions of the specification.
governingBody object Organization or working group responsible for the specification.
license object License under which the specification is published.
format string Primary serialization format of the specification source.
transports array Transports or protocols the specification targets.
primaryUseCase string The primary use case the specification is designed for.
specificationUrl string Canonical URL of the current specification text.
documentationUrl string Primary documentation entrypoint.
repositoryUrl string Canonical source repository for the specification.
toolingEcosystemUrl string URL to the curated tooling directory for the specification.
tags array Categorization tags (Title Case).
status string Overall lifecycle status of the specification.
embeddedSchemaLanguage string Schema language embedded inside the spec, if any.
emits array Other specification formats this spec can be compiled/emitted to.
View JSON Schema on GitHub

JSON Schema

specification-record-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/specifications/refs/heads/main/json-schema/specification-record-schema.json",
  "title": "SpecificationRecord",
  "description": "A normalized record describing a single API specification language — its name, current version, governing body, license, format, and tooling ecosystem.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Stable identifier for the specification.",
      "example": "openapi",
      "pattern": "^[a-z0-9][a-z0-9-]*$"
    },
    "name": {
      "type": "string",
      "description": "Human-readable name of the specification.",
      "example": "OpenAPI Specification"
    },
    "aliases": {
      "type": "array",
      "description": "Alternative or historical names for the specification.",
      "items": { "type": "string" },
      "example": ["Swagger Specification", "OAS"]
    },
    "category": {
      "type": "string",
      "description": "The high-level category of specification.",
      "enum": [
        "HTTP Request/Response",
        "Event-Driven",
        "Service Interface (IDL)",
        "Schema",
        "RPC Protocol",
        "Vendor-Defined"
      ],
      "example": "HTTP Request/Response"
    },
    "currentVersion": {
      "type": "string",
      "description": "Latest stable specification version.",
      "example": "3.1.0"
    },
    "versions": {
      "type": "array",
      "description": "Known versions of the specification.",
      "items": {
        "type": "object",
        "properties": {
          "version": { "type": "string" },
          "status": {
            "type": "string",
            "enum": ["active", "deprecated", "draft", "historical"]
          },
          "releaseDate": { "type": "string", "format": "date" },
          "url": { "type": "string", "format": "uri" }
        },
        "required": ["version", "status"]
      }
    },
    "governingBody": {
      "type": "object",
      "description": "Organization or working group responsible for the specification.",
      "properties": {
        "name": {
          "type": "string",
          "example": "OpenAPI Initiative"
        },
        "parent": {
          "type": "string",
          "description": "Umbrella foundation, if any.",
          "example": "Linux Foundation"
        },
        "url": { "type": "string", "format": "uri" },
        "governanceUrl": { "type": "string", "format": "uri" }
      },
      "required": ["name"]
    },
    "license": {
      "type": "object",
      "description": "License under which the specification is published.",
      "properties": {
        "id": {
          "type": "string",
          "description": "SPDX-style license identifier.",
          "example": "Apache-2.0"
        },
        "url": { "type": "string", "format": "uri" }
      },
      "required": ["id"]
    },
    "format": {
      "type": "string",
      "description": "Primary serialization format of the specification source.",
      "enum": ["YAML", "JSON", "Markdown", "XML", "DSL", "Protobuf", "Multiple"],
      "example": "YAML"
    },
    "transports": {
      "type": "array",
      "description": "Transports or protocols the specification targets.",
      "items": {
        "type": "string",
        "enum": [
          "HTTP/1.1",
          "HTTP/2",
          "HTTP/3",
          "WebSocket",
          "Kafka",
          "AMQP",
          "MQTT",
          "NATS",
          "SNS/SQS",
          "TCP",
          "gRPC",
          "XML/SOAP",
          "Multiple",
          "N/A"
        ]
      },
      "example": ["HTTP/1.1", "HTTP/2"]
    },
    "primaryUseCase": {
      "type": "string",
      "description": "The primary use case the specification is designed for.",
      "example": "Describing synchronous HTTP REST APIs and generating SDKs, documentation, and mocks."
    },
    "specificationUrl": {
      "type": "string",
      "format": "uri",
      "description": "Canonical URL of the current specification text."
    },
    "documentationUrl": {
      "type": "string",
      "format": "uri",
      "description": "Primary documentation entrypoint."
    },
    "repositoryUrl": {
      "type": "string",
      "format": "uri",
      "description": "Canonical source repository for the specification."
    },
    "toolingEcosystemUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL to the curated tooling directory for the specification.",
      "example": "https://tools.openapis.org/"
    },
    "tags": {
      "type": "array",
      "description": "Categorization tags (Title Case).",
      "items": { "type": "string" }
    },
    "status": {
      "type": "string",
      "description": "Overall lifecycle status of the specification.",
      "enum": ["active", "maintenance", "legacy", "historical", "emerging"],
      "example": "active"
    },
    "embeddedSchemaLanguage": {
      "type": "string",
      "description": "Schema language embedded inside the spec, if any.",
      "example": "JSON Schema 2020-12"
    },
    "emits": {
      "type": "array",
      "description": "Other specification formats this spec can be compiled/emitted to.",
      "items": { "type": "string" },
      "example": ["OpenAPI 3.0", "JSON Schema", "Protobuf"]
    }
  },
  "required": [
    "id",
    "name",
    "category",
    "currentVersion",
    "governingBody",
    "license",
    "primaryUseCase"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/specification-record"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.