forked from juice-shop/juice-shop
-
Notifications
You must be signed in to change notification settings - Fork 1
/
swagger.yml
96 lines (96 loc) · 2.53 KB
/
swagger.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
openapi: 3.0.0
servers:
- url: /b2b/v2
info:
version: 2.0.0
title: NextGen B2B API
description: 'New & secure JSON-based API for our enterprise customers. (Deprecates previously offered XML-based endpoints)'
license:
name: MIT
url: 'https://opensource.org/licenses/MIT'
tags:
- name: Order
description: API for customer orders
paths:
/orders:
post:
tags:
- Order
description: Create new customer order
responses:
'200':
description: New customer order is created
content:
application/json:
schema:
$ref: '#/components/schemas/OrderConfirmation'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Order'
description: Customer order to be placed
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
schemas:
Order:
required:
- cid
properties:
cid:
type: string
uniqueItems: true
example: 'JS0815DE'
orderLines:
$ref: '#/components/schemas/OrderLines'
orderLinesData:
$ref: '#/components/schemas/OrderLinesData'
OrderConfirmation:
required:
- cid
- orderNo
- paymentDue
properties:
cid:
type: string
uniqueItems: true
example: 'JS0815DE'
orderNo:
type: string
uniqueItems: true
example: '3d06ac5e1bdf39d26392f8100f124742'
paymentDue:
description: All payments are due 14 days after order placement
type: string
format: date
example: '2018-01-19T07:02:06.800Z'
OrderLine:
description: Order line in default JSON format
required:
- productId
- quantity
properties:
productId:
type: integer
example: 8
quantity:
type: integer
minimum: 1
example: 500
customerReference:
type: string
example: 'PO0000001'
OrderLines:
type: array
items:
$ref: '#/components/schemas/OrderLine'
OrderLinesData:
description: Order line(s) in customer specific JSON format
type: string
example: '[{"productId": 12,"quantity": 10000,"customerReference": ["PO0000001.2", "SM20180105|042"],"couponCode": "pes[Bh.u*t"},{"productId": 13,"quantity": 2000,"customerReference": "PO0000003.4"}]'
security:
- bearerAuth: []