@voyant-travel/openapi 0.2.6 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/package.json +8 -5
  2. package/spec/admin/accommodations.json +1443 -0
  3. package/spec/admin/action-ledger.json +6285 -0
  4. package/spec/admin/booking-requirements.json +5975 -0
  5. package/spec/admin/bookings.json +19276 -0
  6. package/spec/admin/catalog.json +703 -0
  7. package/spec/admin/distribution.json +20434 -0
  8. package/spec/admin/external-refs.json +1437 -0
  9. package/spec/admin/extras.json +4787 -0
  10. package/spec/admin/finance.json +36583 -0
  11. package/spec/admin/identity.json +4141 -0
  12. package/spec/admin/legal.json +14821 -0
  13. package/spec/admin/markets.json +5551 -0
  14. package/spec/admin/notifications.json +8667 -0
  15. package/spec/admin/operations.json +41627 -0
  16. package/spec/admin/operator-settings.json +1451 -0
  17. package/spec/admin/pricing.json +11136 -0
  18. package/spec/admin/products.json +23257 -0
  19. package/spec/admin/promotions.json +2778 -0
  20. package/spec/admin/quotes.json +7333 -0
  21. package/spec/admin/relationships.json +14512 -0
  22. package/spec/admin/sellability.json +5056 -0
  23. package/spec/admin/storefront.json +1973 -0
  24. package/spec/admin/suppliers.json +6094 -0
  25. package/spec/admin/trips.json +9531 -0
  26. package/spec/framework-admin.json +12715 -1375
  27. package/spec/framework-openapi.json +13731 -1482
  28. package/spec/framework-storefront.json +1022 -107
  29. package/spec/storefront/booking-requirements.json +380 -0
  30. package/spec/storefront/bookings.json +6213 -0
  31. package/spec/storefront/catalog.json +703 -0
  32. package/spec/storefront/customer-portal.json +6177 -0
  33. package/spec/storefront/finance.json +4914 -0
  34. package/spec/storefront/legal.json +2165 -0
  35. package/spec/storefront/markets.json +269 -0
  36. package/spec/storefront/operator-settings.json +329 -0
  37. package/spec/storefront/pricing.json +598 -0
  38. package/spec/storefront/products.json +2965 -0
  39. package/spec/storefront/storefront-verification.json +943 -0
  40. package/spec/storefront/storefront.json +4157 -0
  41. package/spec/storefront/trips.json +9531 -0
@@ -0,0 +1,380 @@
1
+ {
2
+ "openapi": "3.1.0",
3
+ "info": {
4
+ "title": "Voyant Framework API",
5
+ "version": "0.0.0",
6
+ "description": "Generated from the Voyant framework's standard module composition. Do not edit by hand."
7
+ },
8
+ "servers": [
9
+ {
10
+ "url": "/",
11
+ "description": "This deployment (same origin)"
12
+ }
13
+ ],
14
+ "components": {
15
+ "schemas": {
16
+ "CatalogSearchFilter": {
17
+ "anyOf": [
18
+ {
19
+ "type": "object",
20
+ "properties": {
21
+ "kind": {
22
+ "type": "string",
23
+ "enum": [
24
+ "eq"
25
+ ]
26
+ },
27
+ "field": {
28
+ "type": "string",
29
+ "minLength": 1
30
+ },
31
+ "value": {
32
+ "anyOf": [
33
+ {
34
+ "type": "string"
35
+ },
36
+ {
37
+ "type": "number"
38
+ },
39
+ {
40
+ "type": "boolean"
41
+ }
42
+ ]
43
+ }
44
+ },
45
+ "required": [
46
+ "kind",
47
+ "field",
48
+ "value"
49
+ ]
50
+ },
51
+ {
52
+ "type": "object",
53
+ "properties": {
54
+ "kind": {
55
+ "type": "string",
56
+ "enum": [
57
+ "in"
58
+ ]
59
+ },
60
+ "field": {
61
+ "type": "string",
62
+ "minLength": 1
63
+ },
64
+ "values": {
65
+ "type": "array",
66
+ "items": {
67
+ "anyOf": [
68
+ {
69
+ "type": "string"
70
+ },
71
+ {
72
+ "type": "number"
73
+ }
74
+ ]
75
+ }
76
+ }
77
+ },
78
+ "required": [
79
+ "kind",
80
+ "field",
81
+ "values"
82
+ ]
83
+ },
84
+ {
85
+ "type": "object",
86
+ "properties": {
87
+ "kind": {
88
+ "type": "string",
89
+ "enum": [
90
+ "range"
91
+ ]
92
+ },
93
+ "field": {
94
+ "type": "string",
95
+ "minLength": 1
96
+ },
97
+ "gte": {
98
+ "type": "number"
99
+ },
100
+ "lte": {
101
+ "type": "number"
102
+ }
103
+ },
104
+ "required": [
105
+ "kind",
106
+ "field"
107
+ ]
108
+ },
109
+ {
110
+ "type": "object",
111
+ "properties": {
112
+ "kind": {
113
+ "type": "string",
114
+ "enum": [
115
+ "and"
116
+ ]
117
+ },
118
+ "clauses": {
119
+ "type": "array",
120
+ "items": {
121
+ "$ref": "#/components/schemas/CatalogSearchFilter"
122
+ }
123
+ }
124
+ },
125
+ "required": [
126
+ "kind",
127
+ "clauses"
128
+ ]
129
+ },
130
+ {
131
+ "type": "object",
132
+ "properties": {
133
+ "kind": {
134
+ "type": "string",
135
+ "enum": [
136
+ "or"
137
+ ]
138
+ },
139
+ "clauses": {
140
+ "type": "array",
141
+ "items": {
142
+ "$ref": "#/components/schemas/CatalogSearchFilter"
143
+ }
144
+ }
145
+ },
146
+ "required": [
147
+ "kind",
148
+ "clauses"
149
+ ]
150
+ }
151
+ ]
152
+ }
153
+ },
154
+ "parameters": {}
155
+ },
156
+ "paths": {
157
+ "/v1/public/booking-requirements/products/{productId}/transport-requirements": {
158
+ "get": {
159
+ "parameters": [
160
+ {
161
+ "schema": {
162
+ "type": "string"
163
+ },
164
+ "required": true,
165
+ "name": "productId",
166
+ "in": "path"
167
+ },
168
+ {
169
+ "schema": {
170
+ "type": "string"
171
+ },
172
+ "required": false,
173
+ "name": "optionId",
174
+ "in": "query"
175
+ }
176
+ ],
177
+ "responses": {
178
+ "200": {
179
+ "description": "Public transport requirements for a product",
180
+ "content": {
181
+ "application/json": {
182
+ "schema": {
183
+ "type": "object",
184
+ "properties": {
185
+ "data": {
186
+ "type": "object",
187
+ "properties": {
188
+ "productId": {
189
+ "type": "string"
190
+ },
191
+ "optionId": {
192
+ "type": [
193
+ "string",
194
+ "null"
195
+ ]
196
+ },
197
+ "hasTransport": {
198
+ "type": "boolean"
199
+ },
200
+ "requiresPassengerDocuments": {
201
+ "type": "boolean"
202
+ },
203
+ "requiresPassport": {
204
+ "type": "boolean"
205
+ },
206
+ "requiresNationality": {
207
+ "type": "boolean"
208
+ },
209
+ "requiresDateOfBirth": {
210
+ "type": "boolean"
211
+ },
212
+ "requiredFields": {
213
+ "type": "array",
214
+ "items": {
215
+ "type": "string",
216
+ "enum": [
217
+ "date_of_birth",
218
+ "nationality",
219
+ "passport_number",
220
+ "passport_expiry"
221
+ ]
222
+ }
223
+ },
224
+ "fieldsByScope": {
225
+ "type": "object",
226
+ "properties": {
227
+ "booking": {
228
+ "type": "array",
229
+ "items": {
230
+ "type": "string",
231
+ "enum": [
232
+ "date_of_birth",
233
+ "nationality",
234
+ "passport_number",
235
+ "passport_expiry"
236
+ ]
237
+ }
238
+ },
239
+ "lead_traveler": {
240
+ "type": "array",
241
+ "items": {
242
+ "type": "string",
243
+ "enum": [
244
+ "date_of_birth",
245
+ "nationality",
246
+ "passport_number",
247
+ "passport_expiry"
248
+ ]
249
+ }
250
+ },
251
+ "traveler": {
252
+ "type": "array",
253
+ "items": {
254
+ "type": "string",
255
+ "enum": [
256
+ "date_of_birth",
257
+ "nationality",
258
+ "passport_number",
259
+ "passport_expiry"
260
+ ]
261
+ }
262
+ },
263
+ "booker": {
264
+ "type": "array",
265
+ "items": {
266
+ "type": "string",
267
+ "enum": [
268
+ "date_of_birth",
269
+ "nationality",
270
+ "passport_number",
271
+ "passport_expiry"
272
+ ]
273
+ }
274
+ }
275
+ },
276
+ "required": [
277
+ "booking",
278
+ "lead_traveler",
279
+ "traveler",
280
+ "booker"
281
+ ]
282
+ },
283
+ "requirements": {
284
+ "type": "array",
285
+ "items": {
286
+ "type": "object",
287
+ "properties": {
288
+ "fieldKey": {
289
+ "type": "string",
290
+ "enum": [
291
+ "date_of_birth",
292
+ "nationality",
293
+ "passport_number",
294
+ "passport_expiry"
295
+ ]
296
+ },
297
+ "scope": {
298
+ "type": "string",
299
+ "enum": [
300
+ "booking",
301
+ "lead_traveler",
302
+ "traveler",
303
+ "booker"
304
+ ]
305
+ },
306
+ "isRequired": {
307
+ "type": "boolean"
308
+ },
309
+ "perTraveler": {
310
+ "type": "boolean"
311
+ },
312
+ "notes": {
313
+ "type": [
314
+ "string",
315
+ "null"
316
+ ]
317
+ }
318
+ },
319
+ "required": [
320
+ "fieldKey",
321
+ "scope",
322
+ "isRequired",
323
+ "perTraveler",
324
+ "notes"
325
+ ]
326
+ }
327
+ }
328
+ },
329
+ "required": [
330
+ "productId",
331
+ "optionId",
332
+ "hasTransport",
333
+ "requiresPassengerDocuments",
334
+ "requiresPassport",
335
+ "requiresNationality",
336
+ "requiresDateOfBirth",
337
+ "requiredFields",
338
+ "fieldsByScope",
339
+ "requirements"
340
+ ]
341
+ }
342
+ },
343
+ "required": [
344
+ "data"
345
+ ]
346
+ }
347
+ }
348
+ }
349
+ },
350
+ "404": {
351
+ "description": "Product not found",
352
+ "content": {
353
+ "application/json": {
354
+ "schema": {
355
+ "type": "object",
356
+ "properties": {
357
+ "error": {
358
+ "type": "string"
359
+ }
360
+ },
361
+ "required": [
362
+ "error"
363
+ ]
364
+ }
365
+ }
366
+ }
367
+ }
368
+ },
369
+ "operationId": "getPublicBookingRequirementsProductsByProductIdTransportRequirements",
370
+ "summary": "GET /v1/public/booking-requirements/products/{productId}/transport-requirements",
371
+ "tags": [
372
+ "booking-requirements"
373
+ ],
374
+ "x-voyant-module": "booking-requirements",
375
+ "x-voyant-surface": "storefront"
376
+ }
377
+ }
378
+ },
379
+ "webhooks": {}
380
+ }