fix(oas3): fix getting initial values for request body in OpenAPI 3.x (#9762)
Refs #9745
This commit is contained in:
@@ -0,0 +1,197 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: Example app
|
||||
description: This is my test applicaiton
|
||||
version: 1.0.0
|
||||
contact:
|
||||
name: John Doe
|
||||
email: jonhdoe@contact.com
|
||||
servers:
|
||||
- url: https://dev.app.com/appApplicationName
|
||||
description: DEV
|
||||
paths:
|
||||
/documentsWithCombineOneOf:
|
||||
post:
|
||||
description: ''
|
||||
summary: Add a document - KO
|
||||
requestBody:
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ModelPostDocumentOneOfCombineModelFile'
|
||||
operationId: testOneOf
|
||||
security:
|
||||
- Basic: []
|
||||
tags: []
|
||||
responses:
|
||||
'200':
|
||||
$ref: '#/components/responses/Default'
|
||||
/documentsWithCombineAnyOf:
|
||||
post:
|
||||
description: ''
|
||||
summary: Add a document - KO
|
||||
requestBody:
|
||||
content:
|
||||
application/x-www-form-urlencoded:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ModelPostDocumentAnyOfCombineModelFile'
|
||||
operationId: testAnyOf
|
||||
security:
|
||||
- Basic: []
|
||||
tags: []
|
||||
responses:
|
||||
'200':
|
||||
$ref: '#/components/responses/Default'
|
||||
components:
|
||||
schemas:
|
||||
AbstractModelPostDocument:
|
||||
type: object
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
default: ''
|
||||
maxLength: 64
|
||||
example: MyDocument.pdf'
|
||||
category:
|
||||
type: string
|
||||
pattern: ''
|
||||
type:
|
||||
type: string
|
||||
description: Type depends on category
|
||||
issuingApplicationId:
|
||||
type: string
|
||||
enum:
|
||||
- App1
|
||||
- App2
|
||||
- App3
|
||||
- App4
|
||||
documentDate:
|
||||
type: string
|
||||
description: >-
|
||||
Creation date of the document. Example : For ID card, it is the
|
||||
issuing date of the card.
|
||||
format: date
|
||||
sharedWith:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- CustomerPortal
|
||||
- PartnerPortal
|
||||
uniqueItems: true
|
||||
minItems: 0
|
||||
maxItems: 2
|
||||
required:
|
||||
- title
|
||||
- category
|
||||
- type
|
||||
- documentDate
|
||||
- file
|
||||
ModelPostDocumentPolicy:
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/AbstractModelPostDocument'
|
||||
- type: object
|
||||
properties:
|
||||
policyNumber:
|
||||
type: string
|
||||
description: Policy Number
|
||||
example: '132456'
|
||||
minLength: 1
|
||||
maxLength: 36
|
||||
pattern: ''
|
||||
description: Metadata for policy documents
|
||||
required:
|
||||
- policyNumber
|
||||
ModelPostDocumentCustomer:
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/AbstractModelPostDocument'
|
||||
- type: object
|
||||
properties:
|
||||
customerNumber:
|
||||
type: number
|
||||
description: Customer Number
|
||||
exclusiveMinimum: true
|
||||
minimum: 0
|
||||
exclusiveMaximum: true
|
||||
maximum: 99999999999999
|
||||
organisationName:
|
||||
type: string
|
||||
enum:
|
||||
- Organisation1
|
||||
- Organisation2
|
||||
- Organisation3
|
||||
description: Organisation Name
|
||||
required:
|
||||
- organisationName
|
||||
- customerNumber
|
||||
description: Metadata for Customer Documents
|
||||
ModelPostDocumentInvoice:
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/AbstractModelPostDocument'
|
||||
- type: object
|
||||
properties:
|
||||
invoiceNumber:
|
||||
type: string
|
||||
description: Invoice Number
|
||||
example: '132456'
|
||||
minLength: 1
|
||||
maxLength: 36
|
||||
pattern: ''
|
||||
amount:
|
||||
type: number
|
||||
example: 1234.56
|
||||
description: Invoice Amount
|
||||
description: Metadata for invoice documents
|
||||
required:
|
||||
- amount
|
||||
- invoiceNumber
|
||||
ModelPostDocumentOneOf:
|
||||
oneOf:
|
||||
- $ref: '#/components/schemas/ModelPostDocumentPolicy'
|
||||
- $ref: '#/components/schemas/ModelPostDocumentCustomer'
|
||||
- $ref: '#/components/schemas/ModelPostDocumentInvoice'
|
||||
ModelFile:
|
||||
type: object
|
||||
properties:
|
||||
content:
|
||||
type: string
|
||||
format: binary
|
||||
required:
|
||||
- content
|
||||
ModelPostDocumentOneOfCombineModelFile:
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/ModelFile'
|
||||
- type: object
|
||||
properties:
|
||||
metadata:
|
||||
$ref: '#/components/schemas/ModelPostDocumentOneOf'
|
||||
required:
|
||||
- metadata
|
||||
ModelPostDocumentAnyOf:
|
||||
anyOf:
|
||||
- $ref: '#/components/schemas/ModelPostDocumentPolicy'
|
||||
- $ref: '#/components/schemas/ModelPostDocumentCustomer'
|
||||
- $ref: '#/components/schemas/ModelPostDocumentInvoice'
|
||||
ModelPostDocumentAnyOfCombineModelFile:
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/ModelFile'
|
||||
- type: object
|
||||
properties:
|
||||
metadata:
|
||||
$ref: '#/components/schemas/ModelPostDocumentAnyOf'
|
||||
required:
|
||||
- metadata
|
||||
securitySchemes:
|
||||
Basic:
|
||||
type: http
|
||||
scheme: basic
|
||||
responses:
|
||||
Default:
|
||||
description: Not needed
|
||||
headers: {}
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: string
|
||||
description: not needed
|
||||
tags: []
|
||||
Reference in New Issue
Block a user