swagger-php/Examples/using-traits/using-traits.yaml

123 lines
3.0 KiB
YAML

openapi: 3.0.0
info:
title: 'Example of using traits in swagger-php'
version: 1.0.0
paths:
'/entities/{id}':
delete:
tags:
- Entities
operationId: 372df3207489872fd3c775f623f8340f
parameters:
-
name: id
in: path
description: 'ID of entity to delete'
required: true
schema:
type: string
responses:
default:
description: 'successful operation'
'/products/{product_id}':
get:
tags:
- Products
operationId: 569395beea865794cbde04d55c0ba4a2
parameters:
-
name: product_id
in: path
description: 'ID of product to return'
required: true
schema:
type: string
responses:
default:
description: 'successful operation'
components:
schemas:
BellsAndWhistles:
title: 'Bells and Whistles trait'
allOf:
-
$ref: '#/components/schemas/Bells'
-
$ref: '#/components/schemas/Whistles'
-
properties:
plating:
description: 'The plating.'
example: gold
CustomName/Blink:
title: 'Blink trait'
properties:
frequency:
description: 'The frequency.'
example: 1
type: object
Colour:
title: 'Colour trait'
properties:
colour:
description: 'The colour.'
example: red
type: object
Bells:
title: 'Bells trait'
properties:
bell:
description: 'The bell.'
example: chime
type: object
Whistles:
title: 'Whistles trait'
properties:
whistle:
description: 'The bell.'
example: 'bone whistle'
type: object
DeleteEntity:
title: 'Delete entity trait'
Product:
title: 'Product model'
allOf:
-
$ref: '#/components/schemas/Colour'
-
$ref: '#/components/schemas/BellsAndWhistles'
-
properties:
id:
description: 'The unique identifier of a product in our catalog.'
type: integer
format: int64
example: 1
bell:
description: 'The product bell.'
example: gong
SimpleProduct:
title: 'SimpleProduct model'
allOf:
-
$ref: '#/components/schemas/Bells'
-
properties:
id:
description: 'The unique identifier of a simple product in our catalog.'
type: integer
format: int64
example: 1
TrickyProduct:
title: 'TrickyProduct model'
allOf:
-
$ref: '#/components/schemas/SimpleProduct'
-
$ref: '#/components/schemas/CustomName~1Blink'
-
properties:
trick:
description: 'The trick.'
example: 'recite poem'