123 lines
3.0 KiB
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'
|