OpenAPI · Schema
OpenAPI Document
Schema describing the top-level structure of an OpenAPI 3.1.0 document, the industry standard for defining RESTful APIs.
DocumentationRESTSpecification
Properties
| Name | Type | Description |
|---|---|---|
| openapi | string | The OpenAPI Specification version. Must be a supported version string. |
| info | object | |
| jsonSchemaDialect | string | The default JSON Schema dialect for Schema Objects in this document. |
| servers | array | An array of Server Objects providing connectivity information to target servers. |
| paths | object | |
| webhooks | object | Incoming webhooks that may be received by the API provider. |
| components | object | |
| security | array | A declaration of which security mechanisms can be used across the API. |
| tags | array | A list of tags used by the document with additional metadata. |
| externalDocs | object |
JSON Schema
{
"$id": "openapi-document.json",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "OpenAPI Document",
"description": "Schema describing the top-level structure of an OpenAPI 3.1.0 document, the industry standard for defining RESTful APIs.",
"type": "object",
"required": [
"openapi",
"info"
],
"properties": {
"openapi": {
"type": "string",
"description": "The OpenAPI Specification version. Must be a supported version string.",
"pattern": "^3\\.1\\.\\d+$",
"examples": [
"3.1.0"
]
},
"info": {
"$ref": "openapi-info.json"
},
"jsonSchemaDialect": {
"type": "string",
"format": "uri",
"description": "The default JSON Schema dialect for Schema Objects in this document.",
"default": "https://spec.openapis.org/oas/3.1/dialect/base"
},
"servers": {
"type": "array",
"description": "An array of Server Objects providing connectivity information to target servers.",
"items": {
"$ref": "openapi-server.json"
},
"default": [
{
"url": "/"
}
]
},
"paths": {
"$ref": "openapi-paths.json"
},
"webhooks": {
"type": "object",
"description": "Incoming webhooks that may be received by the API provider.",
"additionalProperties": {
"$ref": "openapi-path-item.json"
}
},
"components": {
"$ref": "openapi-components.json"
},
"security": {
"type": "array",
"description": "A declaration of which security mechanisms can be used across the API.",
"items": {
"$ref": "openapi-security-requirement.json"
}
},
"tags": {
"type": "array",
"description": "A list of tags used by the document with additional metadata.",
"items": {
"$ref": "openapi-tag.json"
}
},
"externalDocs": {
"$ref": "openapi-external-documentation.json"
}
},
"patternProperties": {
"^x-": {}
},
"additionalProperties": false
}