@readme/oas-examples
Version:
A collection of example OpenAPI 3.x and Swagger 2.0 documents.
866 lines (865 loc) • 28.6 kB
JSON
{
"openapi": "3.0.0",
"info": {
"title": "Support for request body and parameter examples",
"description": "https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#requestBodyObject",
"version": "1.0.0"
},
"servers": [
{
"url": "https://httpbin.org/anything"
}
],
"tags": [
{
"name": "Multiple examples"
},
{
"name": "Single example"
},
{
"name": "Multiple media types"
}
],
"paths": {
"/parameterExamples/{param1}/{param2}": {
"get": {
"tags": ["Multiple examples"],
"summary": "Within `examples` (parameters)",
"description": "This operation has several parameters with examples alongside separately maintained example within `examples` at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"parameters": [
{
"name": "param1",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 1)",
"description": "a lengthier example description (param 1)",
"value": "param1-example"
},
"yetAnotherParamExample": {
"value": "param1-example-again"
}
}
},
{
"name": "param2",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 2)",
"description": "a lengthier example description (param 2)",
"value": "param2-example"
}
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"userRegistration": {
"value": {
"summary": "example summary (response)",
"description": "a lengthier example description (response)",
"id": 1234,
"email": "test+response@example.com",
"name": "Test user name (response)"
}
},
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"400": {
"description": "Validation failed",
"content": {
"application/xml": {
"examples": {
"response": {
"value": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><note><body>Invalid user!</body></note>"
}
}
}
}
},
"default": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
}
}
},
"patch": {
"tags": ["Multiple examples"],
"summary": "Within `examples` (mixed)",
"description": "This operation has parameter and body examples alongside separately maintained example within `examples` at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"parameters": [
{
"name": "param1",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 1)",
"description": "a lengthier example description (param 1)",
"value": "param1-example"
},
"yetAnotherParamExample": {
"value": "param1-example-again"
}
}
},
{
"name": "param2",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 2)",
"description": "a lengthier example description (param 2)",
"value": "param2-example"
}
}
},
{
"name": "param3",
"in": "query",
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 3)",
"description": "a lengthier example description (param 3)",
"value": "param3-example"
}
}
},
{
"name": "param4",
"in": "query",
"schema": {
"type": "string"
},
"example": "param4-example"
},
{
"name": "param5",
"in": "header",
"required": true,
"schema": {
"type": "string"
},
"examples": {
"userRegistration": {
"summary": "example summary (param 5)",
"description": "a lengthier example description (param 5)",
"value": "param5-example"
}
}
},
{
"name": "param6",
"in": "header",
"schema": {
"type": "string"
},
"example": "param6-example"
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"userRegistration": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
},
"userRegistration alt": {
"value": {
"id": 5678,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"userRegistration": {
"value": {
"summary": "example summary (response)",
"description": "a lengthier example description (response)",
"id": 1234,
"email": "test+response@example.com",
"name": "Test user name (response)"
}
},
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"400": {
"description": "Validation failed",
"content": {
"application/xml": {
"examples": {
"response": {
"value": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><note><body>Invalid user!</body></note>"
}
}
}
}
},
"default": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
}
}
},
"put": {
"tags": ["Single example"],
"summary": "Within `example`",
"description": "This operation has a param example and `requestBody` with separately maintained example within a simple `example` object at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"parameters": [
{
"name": "param1",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "param1-example"
},
{
"name": "param2",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"example": "param2-example"
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"id": 12343354,
"email": "test@example.com",
"name": "Test user name"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"id": 12343354,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
}
},
"/requestBody": {
"post": {
"tags": ["Multiple examples"],
"summary": "Within `examples` (body)",
"description": "This operation has a `requestBody` with separately maintained examples within `examples` at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"userRegistration": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
},
"userRegistration alt": {
"value": {
"id": 5678,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"userRegistration": {
"summary": "example summary (response)",
"description": "a lengthier example description (response)",
"value": {
"id": 1234,
"email": "test+response@example.com",
"name": "Test user name (response)"
}
},
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"400": {
"description": "Validation failed",
"content": {
"application/xml": {
"examples": {
"response": {
"value": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><note><body>Invalid user!</body></note>"
}
}
}
}
},
"default": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"examples": {
"response": {
"value": {
"id": 1234,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
}
}
},
"patch": {
"tags": ["Single example"],
"summary": "Within `example`",
"description": "This operation has a `requestBody` with separately maintained example within a simple `example` object at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"id": 12343354,
"email": "test@example.com",
"name": "Test user name"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"id": 12343354,
"email": "test@example.com",
"name": "Test user name"
}
}
}
}
}
},
"put": {
"tags": ["Single example"],
"summary": "`$ref` within `example`",
"description": "This operation has a `requestBody` with separately maintained example within a `$ref` in a simple `example` object at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"$ref": "#/components/examples/user/value"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
},
"example": {
"$ref": "#/components/examples/user/value"
}
}
}
}
}
}
},
"/requestBody-primitive-example": {
"post": {
"tags": ["Single example"],
"summary": "Primitive `example`",
"description": "This operation has a `requestBody` with separately maintained **primitive** example within a simple `example` object at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "string"
},
"example": "column1,column2,column3,column4"
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "string"
},
"example": "column1,column2,column3,column4"
}
}
}
}
},
"patch": {
"tags": ["Multiple examples"],
"summary": "Stringified JSON object in an `examples` value",
"description": "This operation has a `requestBody` with separately maintained example within `examples` at the Media Type Object level containing stringified JSON object.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/pet"
},
"examples": {
"cat": {
"summary": "An example of a cat",
"value": "{\n \"name\": \"Fluffy\",\n \"petType\": \"Cat\"\n}"
},
"dog": {
"summary": "An example of a dog",
"value": "{\n \"name\": \"Buster\",\n \"petType\": \"Dog\"\n}"
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/pet"
},
"examples": {
"cat": {
"summary": "An example of a cat",
"value": "{\n \"name\": \"Fluffy\",\n \"petType\": \"Cat\"\n}"
},
"dog": {
"summary": "An example of a dog",
"value": "{\n \"name\": \"Buster\",\n \"petType\": \"Dog\"\n}"
}
}
}
}
}
}
},
"put": {
"tags": ["Multiple examples"],
"summary": "Stringified JSON arrays in an `examples` value",
"description": "This operation has a `requestBody` with separately maintained example within `examples` at the Media Type Object level containing a stringified JSON array.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/pets"
},
"examples": {
"cat": {
"summary": "An example of a cat",
"value": "[\n {\n \"name\": \"Fluffy\",\n \"petType\": \"Cat\"\n }\n]"
},
"dog": {
"summary": "An example of a dog",
"value": "[\n {\n \"name\": \"Buster\",\n \"petType\": \"Dog\"\n }\n]"
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/pets"
},
"examples": {
"cat": {
"summary": "An example of a cat",
"value": "[\n {\n \"name\": \"Fluffy\",\n \"petType\": \"Cat\"\n }\n]"
},
"dog": {
"summary": "An example of a dog",
"value": "[\n {\n \"name\": \"Buster\",\n \"petType\": \"Dog\"\n }\n]"
}
}
}
}
}
}
}
},
"/requestBody-multi-media-types": {
"post": {
"tags": ["Multiple media types"],
"summary": "Within `examples`",
"description": "This operation has a `requestBody` containing multiple media types with each containing a separately maintained example within `examples` at the Media Type Object level.\n\n📚 OpenAPI specification references:\n\n* [3.0.3 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject)\n\n* [3.1.0 Media Type Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject)",
"requestBody": {
"required": true,
"content": {
"text/plain": {
"examples": {
"response": {
"value": "OK"
}
}
},
"application/json": {
"examples": {
"cat": {
"summary": "An example of a cat",
"value": {
"name": "Fluffy",
"petType": "Cat"
}
},
"dog": {
"summary": "An example of a dog",
"value": {
"name": "Buster",
"petType": "Dog"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"examples": {
"response": {
"value": "OK"
}
}
},
"application/json": {
"examples": {
"cat": {
"summary": "An example of a cat",
"value": {
"name": "Fluffy",
"petType": "Cat"
}
},
"dog": {
"summary": "An example of a dog",
"value": {
"name": "Buster",
"petType": "Dog"
}
}
}
}
}
},
"400": {
"description": "Validation failed",
"content": {
"application/xml": {
"examples": {
"response": {
"value": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><note><body>Invalid pet!</body></note>"
}
}
}
}
}
}
}
},
"/requestBody-form-data-example": {
"post": {
"summary": "Demo handling of formData",
"operationId": "demoFormData",
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"required": ["client_id", "client_secret"],
"type": "object",
"properties": {
"client_id": {
"type": "string"
},
"client_secret": {
"type": "string"
},
"scope": {
"type": "integer",
"format": "int32"
}
}
},
"examples": {
"auth_example": {
"value": {
"client_id": "id123",
"client_secret": "secret456",
"scope": 789
}
}
}
}
},
"required": false
},
"responses": {
"200": {
"description": "Valid Token",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Token"
},
"examples": {
"auth_example": {
"value": {
"access_token": 123,
"token_type": "type456",
"expires_in": 789
}
}
}
}
}
},
"401": {
"description": "Unauthorized"
}
}
}
}
},
"components": {
"examples": {
"user": {
"value": {
"id": 12343354,
"email": "test@example.com",
"name": "Test user name"
}
}
},
"schemas": {
"pet": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"petType": {
"type": "string",
"enum": ["Cat", "Dog"]
}
}
},
"pets": {
"type": "array",
"items": {
"$ref": "#/components/schemas/pet"
}
},
"tag": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
}
}
},
"Token": {
"title": "Token",
"required": ["access_token", "token_type", "expires_in"],
"type": "object",
"properties": {
"access_token": {
"type": "integer",
"format": "int32"
},
"token_type": {
"type": "string"
},
"expires_in": {
"type": "integer",
"format": "int32"
}
}
},
"user": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"email": {
"type": "string"
},
"name": {
"type": "string"
}
}
}
}
}
}