You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.5 KiB
95 lines
2.5 KiB
openapi: 3.0.0
|
|
info:
|
|
title: 'Example of using references in swagger-php'
|
|
version: 1.0.0
|
|
paths:
|
|
'/products/{product_id}':
|
|
get:
|
|
tags:
|
|
- Products
|
|
operationId: 'UsingRefs\ProductController::getProduct'
|
|
responses:
|
|
default:
|
|
description: 'successful operation'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/responses/product'
|
|
patch:
|
|
tags:
|
|
- Products
|
|
operationId: 'UsingRefs\ProductController::updateProduct'
|
|
requestBody:
|
|
$ref: '#/components/requestBodies/product_in_body'
|
|
responses:
|
|
default:
|
|
description: 'successful operation'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/responses/product'
|
|
parameters:
|
|
-
|
|
$ref: '#/components/parameters/product_id_in_path_required'
|
|
/products:
|
|
post:
|
|
tags:
|
|
- Products
|
|
operationId: 'UsingRefs\ProductController::addProduct'
|
|
parameters:
|
|
-
|
|
$ref: '#/components/requestBodies/product_in_body'
|
|
responses:
|
|
default:
|
|
description: 'successful operation'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/responses/product'
|
|
components:
|
|
schemas:
|
|
Product:
|
|
title: 'Product model'
|
|
description: 'Product model'
|
|
properties:
|
|
id:
|
|
description: 'The unique identifier of a product in our catalog.'
|
|
type: integer
|
|
format: int64
|
|
example: 1
|
|
status:
|
|
$ref: '#/components/schemas/product_status'
|
|
type: object
|
|
product_status:
|
|
description: 'The status of a product'
|
|
type: string
|
|
default: available
|
|
enum:
|
|
- available
|
|
- discontinued
|
|
responses:
|
|
product:
|
|
description: 'All information about a product'
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Product'
|
|
todo:
|
|
description: 'This API call has no documentated response (yet)'
|
|
parameters:
|
|
product_id_in_path_required:
|
|
name: product_id
|
|
in: path
|
|
description: 'The ID of the product'
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
format: int64
|
|
requestBodies:
|
|
product_in_body:
|
|
description: product_request
|
|
required: true
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Product'
|
|
|