Я хотел бы предоставить ряд пользовательских кодов и сообщений для моей ошибки 400, но не могу найти способ сделать это. В идеале что-то вроде:
Error: type: object enum: - [E01, 'Error1'] - [E02, 'Error2']
И так далее
Так что я не уверен, что перечисления здесь могут вам помочь. Если вы посмотрите официальную документацию, перечисления - это просто строки, а не объект https://swagger.io/docs/specification/data-models/enums/.
Поэтому мое предложение заключается в использовании:
ErrorType: type: object properties: code: type: integer name: type: string example: # Sample object code: 10 name: Custom Error Error: type: object properties: errors: oneOf: - $ref '#/ErrorType' - etc... or directly without properties Error: type: object oneOf: - $ref '#/ErrorType' - etc...
Вы можете взять другие примеры можно найти на официальной странице https://swagger.io/docs/specification/data-models/oneof-anyof-allof-not/