¿Cómo especificar si un campo es opcional o requerido en swagger?
(2)
¿Cómo defino en swagger si un campo es opcional o obligatorio y cuál es el valor predeterminado?
Los campos son opcionales a menos que estén marcados como necesarios.
Enumera los campos obligatorios como este:
SomeObject:
type: object
required:
- name
- fartingPower
properties:
name:
type: string
fartingPower:
type: integer
Por defecto, los campos en un modelo son opcionales a menos que los coloque en la lista
required
.
A continuación se muestra un ejemplo:
id
,
category
son campos opcionales, se requiere
name
.
Tenga en cuenta que
required
no es un atributo de los campos, sino un atributo del objeto en sí mismo: es una lista de propiedades requeridas.
type: object
required: # List the required properties here
- name
properties:
id:
type: integer
format: int64
category:
$ref: ''#/definitions/Category''
name:
type: string
example: doggie
Si este es el modelo para el cuerpo de la solicitud, probablemente también deba marcar el cuerpo como sea
required
:
# swagger: ''2.0''
parameters:
- in: body
name: body
required: true # <----
schema:
$ref: ''#/definitions/Pet''
# openapi: 3.0.1
requestBody:
required: true # <----
content:
...
Para especificar el valor predeterminado de los campos opcionales, puede usar el atributo
default
.
Aquí hay un ejemplo:
type: object
properties:
huntingSkill:
type: string
description: The measured skill for hunting
default: lazy