@voyant-travel/openapi 0.2.6 → 0.3.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 +1395 -0
  3. package/spec/admin/action-ledger.json +6202 -0
  4. package/spec/admin/booking-requirements.json +5689 -0
  5. package/spec/admin/bookings.json +18794 -0
  6. package/spec/admin/catalog.json +690 -0
  7. package/spec/admin/distribution.json +19581 -0
  8. package/spec/admin/external-refs.json +1382 -0
  9. package/spec/admin/extras.json +4648 -0
  10. package/spec/admin/finance.json +35506 -0
  11. package/spec/admin/identity.json +4072 -0
  12. package/spec/admin/legal.json +14339 -0
  13. package/spec/admin/markets.json +5286 -0
  14. package/spec/admin/notifications.json +8409 -0
  15. package/spec/admin/operations.json +39806 -0
  16. package/spec/admin/operator-settings.json +1389 -0
  17. package/spec/admin/pricing.json +10640 -0
  18. package/spec/admin/products.json +22131 -0
  19. package/spec/admin/promotions.json +2730 -0
  20. package/spec/admin/quotes.json +7033 -0
  21. package/spec/admin/relationships.json +13911 -0
  22. package/spec/admin/sellability.json +4840 -0
  23. package/spec/admin/storefront.json +1953 -0
  24. package/spec/admin/suppliers.json +5850 -0
  25. package/spec/admin/trips.json +9357 -0
  26. package/spec/framework-admin.json +2812 -552
  27. package/spec/framework-openapi.json +2710 -276
  28. package/spec/framework-storefront.json +178 -4
  29. package/spec/storefront/booking-requirements.json +367 -0
  30. package/spec/storefront/bookings.json +6137 -0
  31. package/spec/storefront/catalog.json +690 -0
  32. package/spec/storefront/customer-portal.json +6038 -0
  33. package/spec/storefront/finance.json +4824 -0
  34. package/spec/storefront/legal.json +2082 -0
  35. package/spec/storefront/markets.json +256 -0
  36. package/spec/storefront/operator-settings.json +309 -0
  37. package/spec/storefront/pricing.json +585 -0
  38. package/spec/storefront/products.json +2910 -0
  39. package/spec/storefront/storefront-verification.json +909 -0
  40. package/spec/storefront/storefront.json +4067 -0
  41. package/spec/storefront/trips.json +9357 -0
@@ -43812,6 +43812,42 @@
43812
43812
  }
43813
43813
  }
43814
43814
  }
43815
+ },
43816
+ "404": {
43817
+ "description": "Referenced resource pool or resource not found",
43818
+ "content": {
43819
+ "application/json": {
43820
+ "schema": {
43821
+ "type": "object",
43822
+ "properties": {
43823
+ "error": {
43824
+ "type": "string"
43825
+ }
43826
+ },
43827
+ "required": [
43828
+ "error"
43829
+ ]
43830
+ }
43831
+ }
43832
+ }
43833
+ },
43834
+ "409": {
43835
+ "description": "Resource pool member already exists",
43836
+ "content": {
43837
+ "application/json": {
43838
+ "schema": {
43839
+ "type": "object",
43840
+ "properties": {
43841
+ "error": {
43842
+ "type": "string"
43843
+ }
43844
+ },
43845
+ "required": [
43846
+ "error"
43847
+ ]
43848
+ }
43849
+ }
43850
+ }
43815
43851
  }
43816
43852
  }
43817
43853
  }
@@ -44163,6 +44199,24 @@
44163
44199
  }
44164
44200
  }
44165
44201
  }
44202
+ },
44203
+ "404": {
44204
+ "description": "Referenced resource pool not found",
44205
+ "content": {
44206
+ "application/json": {
44207
+ "schema": {
44208
+ "type": "object",
44209
+ "properties": {
44210
+ "error": {
44211
+ "type": "string"
44212
+ }
44213
+ },
44214
+ "required": [
44215
+ "error"
44216
+ ]
44217
+ }
44218
+ }
44219
+ }
44166
44220
  }
44167
44221
  }
44168
44222
  }
@@ -44707,7 +44761,7 @@
44707
44761
  }
44708
44762
  },
44709
44763
  "404": {
44710
- "description": "Resource requirement not found",
44764
+ "description": "Resource requirement or referenced resource pool not found",
44711
44765
  "content": {
44712
44766
  "application/json": {
44713
44767
  "schema": {
@@ -45072,6 +45126,24 @@
45072
45126
  }
45073
45127
  }
45074
45128
  }
45129
+ },
45130
+ "404": {
45131
+ "description": "Referenced resource pool not found",
45132
+ "content": {
45133
+ "application/json": {
45134
+ "schema": {
45135
+ "type": "object",
45136
+ "properties": {
45137
+ "error": {
45138
+ "type": "string"
45139
+ }
45140
+ },
45141
+ "required": [
45142
+ "error"
45143
+ ]
45144
+ }
45145
+ }
45146
+ }
45075
45147
  }
45076
45148
  }
45077
45149
  }
@@ -45616,7 +45688,7 @@
45616
45688
  }
45617
45689
  },
45618
45690
  "404": {
45619
- "description": "Resource allocation not found",
45691
+ "description": "Resource allocation or referenced resource pool not found",
45620
45692
  "content": {
45621
45693
  "application/json": {
45622
45694
  "schema": {
@@ -46041,6 +46113,24 @@
46041
46113
  }
46042
46114
  }
46043
46115
  }
46116
+ },
46117
+ "404": {
46118
+ "description": "Referenced resource pool or resource not found",
46119
+ "content": {
46120
+ "application/json": {
46121
+ "schema": {
46122
+ "type": "object",
46123
+ "properties": {
46124
+ "error": {
46125
+ "type": "string"
46126
+ }
46127
+ },
46128
+ "required": [
46129
+ "error"
46130
+ ]
46131
+ }
46132
+ }
46133
+ }
46044
46134
  }
46045
46135
  }
46046
46136
  }
@@ -46662,7 +46752,7 @@
46662
46752
  }
46663
46753
  },
46664
46754
  "404": {
46665
- "description": "Resource slot assignment not found",
46755
+ "description": "Resource slot assignment or referenced resource pool/resource not found",
46666
46756
  "content": {
46667
46757
  "application/json": {
46668
46758
  "schema": {
@@ -46998,6 +47088,24 @@
46998
47088
  }
46999
47089
  }
47000
47090
  }
47091
+ },
47092
+ "404": {
47093
+ "description": "Referenced resource not found",
47094
+ "content": {
47095
+ "application/json": {
47096
+ "schema": {
47097
+ "type": "object",
47098
+ "properties": {
47099
+ "error": {
47100
+ "type": "string"
47101
+ }
47102
+ },
47103
+ "required": [
47104
+ "error"
47105
+ ]
47106
+ }
47107
+ }
47108
+ }
47001
47109
  }
47002
47110
  }
47003
47111
  }
@@ -47520,7 +47628,7 @@
47520
47628
  }
47521
47629
  },
47522
47630
  "404": {
47523
- "description": "Resource closeout not found",
47631
+ "description": "Resource closeout or referenced resource not found",
47524
47632
  "content": {
47525
47633
  "application/json": {
47526
47634
  "schema": {
@@ -76650,6 +76758,39 @@
76650
76758
  "active": {
76651
76759
  "type": "boolean",
76652
76760
  "default": true
76761
+ },
76762
+ "sourceKind": {
76763
+ "type": [
76764
+ "string",
76765
+ "null"
76766
+ ],
76767
+ "minLength": 1
76768
+ },
76769
+ "sourceConnectionId": {
76770
+ "type": [
76771
+ "string",
76772
+ "null"
76773
+ ],
76774
+ "minLength": 1
76775
+ },
76776
+ "pushBookings": {
76777
+ "type": "boolean",
76778
+ "default": true
76779
+ },
76780
+ "pushAvailability": {
76781
+ "type": "boolean",
76782
+ "default": true
76783
+ },
76784
+ "pushContent": {
76785
+ "type": "boolean",
76786
+ "default": true
76787
+ },
76788
+ "policy": {
76789
+ "type": [
76790
+ "object",
76791
+ "null"
76792
+ ],
76793
+ "additionalProperties": {}
76653
76794
  }
76654
76795
  },
76655
76796
  "required": [
@@ -76843,8 +76984,37 @@
76843
76984
  ]
76844
76985
  },
76845
76986
  "active": {
76846
- "type": "boolean",
76847
- "default": true
76987
+ "type": "boolean"
76988
+ },
76989
+ "sourceKind": {
76990
+ "type": [
76991
+ "string",
76992
+ "null"
76993
+ ],
76994
+ "minLength": 1
76995
+ },
76996
+ "sourceConnectionId": {
76997
+ "type": [
76998
+ "string",
76999
+ "null"
77000
+ ],
77001
+ "minLength": 1
77002
+ },
77003
+ "pushBookings": {
77004
+ "type": "boolean"
77005
+ },
77006
+ "pushAvailability": {
77007
+ "type": "boolean"
77008
+ },
77009
+ "pushContent": {
77010
+ "type": "boolean"
77011
+ },
77012
+ "policy": {
77013
+ "type": [
77014
+ "object",
77015
+ "null"
77016
+ ],
77017
+ "additionalProperties": {}
76848
77018
  }
76849
77019
  }
76850
77020
  }
@@ -77311,8 +77481,37 @@
77311
77481
  ]
77312
77482
  },
77313
77483
  "active": {
77314
- "type": "boolean",
77315
- "default": true
77484
+ "type": "boolean"
77485
+ },
77486
+ "sourceKind": {
77487
+ "type": [
77488
+ "string",
77489
+ "null"
77490
+ ],
77491
+ "minLength": 1
77492
+ },
77493
+ "sourceConnectionId": {
77494
+ "type": [
77495
+ "string",
77496
+ "null"
77497
+ ],
77498
+ "minLength": 1
77499
+ },
77500
+ "pushBookings": {
77501
+ "type": "boolean"
77502
+ },
77503
+ "pushAvailability": {
77504
+ "type": "boolean"
77505
+ },
77506
+ "pushContent": {
77507
+ "type": "boolean"
77508
+ },
77509
+ "policy": {
77510
+ "type": [
77511
+ "object",
77512
+ "null"
77513
+ ],
77514
+ "additionalProperties": {}
77316
77515
  }
77317
77516
  }
77318
77517
  }
@@ -77938,6 +78137,24 @@
77938
78137
  }
77939
78138
  }
77940
78139
  }
78140
+ },
78141
+ "409": {
78142
+ "description": "duplicate_channel_booking_link",
78143
+ "content": {
78144
+ "application/json": {
78145
+ "schema": {
78146
+ "type": "object",
78147
+ "properties": {
78148
+ "error": {
78149
+ "type": "string"
78150
+ }
78151
+ },
78152
+ "required": [
78153
+ "error"
78154
+ ]
78155
+ }
78156
+ }
78157
+ }
77941
78158
  }
77942
78159
  }
77943
78160
  }
@@ -128722,6 +128939,34 @@
128722
128939
  }
128723
128940
  }
128724
128941
  }
128942
+ },
128943
+ "409": {
128944
+ "description": "Active promotional offer slug or code already exists",
128945
+ "content": {
128946
+ "application/json": {
128947
+ "schema": {
128948
+ "type": "object",
128949
+ "properties": {
128950
+ "error": {
128951
+ "type": "string"
128952
+ },
128953
+ "code": {
128954
+ "type": "string"
128955
+ },
128956
+ "requestId": {
128957
+ "type": "string"
128958
+ },
128959
+ "details": {
128960
+ "type": "object",
128961
+ "additionalProperties": {}
128962
+ }
128963
+ },
128964
+ "required": [
128965
+ "error"
128966
+ ]
128967
+ }
128968
+ }
128969
+ }
128725
128970
  }
128726
128971
  }
128727
128972
  }
@@ -129723,6 +129968,34 @@
129723
129968
  }
129724
129969
  }
129725
129970
  }
129971
+ },
129972
+ "409": {
129973
+ "description": "Active promotional offer slug or code already exists",
129974
+ "content": {
129975
+ "application/json": {
129976
+ "schema": {
129977
+ "type": "object",
129978
+ "properties": {
129979
+ "error": {
129980
+ "type": "string"
129981
+ },
129982
+ "code": {
129983
+ "type": "string"
129984
+ },
129985
+ "requestId": {
129986
+ "type": "string"
129987
+ },
129988
+ "details": {
129989
+ "type": "object",
129990
+ "additionalProperties": {}
129991
+ }
129992
+ },
129993
+ "required": [
129994
+ "error"
129995
+ ]
129996
+ }
129997
+ }
129998
+ }
129726
129999
  }
129727
130000
  }
129728
130001
  },
@@ -165634,6 +165907,24 @@
165634
165907
  }
165635
165908
  }
165636
165909
  }
165910
+ },
165911
+ "409": {
165912
+ "description": "Booking item mutations are not allowed for this booking",
165913
+ "content": {
165914
+ "application/json": {
165915
+ "schema": {
165916
+ "type": "object",
165917
+ "properties": {
165918
+ "error": {
165919
+ "type": "string"
165920
+ }
165921
+ },
165922
+ "required": [
165923
+ "error"
165924
+ ]
165925
+ }
165926
+ }
165927
+ }
165637
165928
  }
165638
165929
  }
165639
165930
  }
@@ -166118,6 +166409,24 @@
166118
166409
  }
166119
166410
  }
166120
166411
  }
166412
+ },
166413
+ "409": {
166414
+ "description": "Booking item mutations are not allowed for this booking",
166415
+ "content": {
166416
+ "application/json": {
166417
+ "schema": {
166418
+ "type": "object",
166419
+ "properties": {
166420
+ "error": {
166421
+ "type": "string"
166422
+ }
166423
+ },
166424
+ "required": [
166425
+ "error"
166426
+ ]
166427
+ }
166428
+ }
166429
+ }
166121
166430
  }
166122
166431
  }
166123
166432
  },
@@ -166176,6 +166485,24 @@
166176
166485
  }
166177
166486
  }
166178
166487
  }
166488
+ },
166489
+ "409": {
166490
+ "description": "Booking item mutations are not allowed for this booking",
166491
+ "content": {
166492
+ "application/json": {
166493
+ "schema": {
166494
+ "type": "object",
166495
+ "properties": {
166496
+ "error": {
166497
+ "type": "string"
166498
+ }
166499
+ },
166500
+ "required": [
166501
+ "error"
166502
+ ]
166503
+ }
166504
+ }
166505
+ }
166179
166506
  }
166180
166507
  }
166181
166508
  }
@@ -166396,6 +166723,24 @@
166396
166723
  }
166397
166724
  }
166398
166725
  }
166726
+ },
166727
+ "409": {
166728
+ "description": "Booking item mutations are not allowed for this booking",
166729
+ "content": {
166730
+ "application/json": {
166731
+ "schema": {
166732
+ "type": "object",
166733
+ "properties": {
166734
+ "error": {
166735
+ "type": "string"
166736
+ }
166737
+ },
166738
+ "required": [
166739
+ "error"
166740
+ ]
166741
+ }
166742
+ }
166743
+ }
166399
166744
  }
166400
166745
  }
166401
166746
  }
@@ -166464,6 +166809,24 @@
166464
166809
  }
166465
166810
  }
166466
166811
  }
166812
+ },
166813
+ "409": {
166814
+ "description": "Booking item mutations are not allowed for this booking",
166815
+ "content": {
166816
+ "application/json": {
166817
+ "schema": {
166818
+ "type": "object",
166819
+ "properties": {
166820
+ "error": {
166821
+ "type": "string"
166822
+ }
166823
+ },
166824
+ "required": [
166825
+ "error"
166826
+ ]
166827
+ }
166828
+ }
166829
+ }
166467
166830
  }
166468
166831
  }
166469
166832
  }
@@ -171033,7 +171396,7 @@
171033
171396
  ],
171034
171397
  "responses": {
171035
171398
  "200": {
171036
- "description": "A booking by id (PII redacted unless reveal-authorized)",
171399
+ "description": "A booking by id with its bookings-owned child collections (items, travelers, documents); PII redacted unless reveal-authorized",
171037
171400
  "content": {
171038
171401
  "application/json": {
171039
171402
  "schema": {
@@ -171309,6 +171672,386 @@
171309
171672
  },
171310
171673
  "updatedAt": {
171311
171674
  "type": "string"
171675
+ },
171676
+ "items": {
171677
+ "type": "array",
171678
+ "items": {
171679
+ "type": "object",
171680
+ "properties": {
171681
+ "id": {
171682
+ "type": "string"
171683
+ },
171684
+ "bookingId": {
171685
+ "type": "string"
171686
+ },
171687
+ "title": {
171688
+ "type": "string"
171689
+ },
171690
+ "description": {
171691
+ "type": [
171692
+ "string",
171693
+ "null"
171694
+ ]
171695
+ },
171696
+ "itemType": {
171697
+ "type": "string",
171698
+ "enum": [
171699
+ "unit",
171700
+ "extra",
171701
+ "service",
171702
+ "fee",
171703
+ "tax",
171704
+ "discount",
171705
+ "adjustment",
171706
+ "accommodation",
171707
+ "transport",
171708
+ "other"
171709
+ ]
171710
+ },
171711
+ "status": {
171712
+ "type": "string",
171713
+ "enum": [
171714
+ "draft",
171715
+ "on_hold",
171716
+ "confirmed",
171717
+ "cancelled",
171718
+ "expired",
171719
+ "fulfilled"
171720
+ ]
171721
+ },
171722
+ "serviceDate": {
171723
+ "type": [
171724
+ "string",
171725
+ "null"
171726
+ ]
171727
+ },
171728
+ "startsAt": {
171729
+ "type": [
171730
+ "string",
171731
+ "null"
171732
+ ]
171733
+ },
171734
+ "endsAt": {
171735
+ "type": [
171736
+ "string",
171737
+ "null"
171738
+ ]
171739
+ },
171740
+ "quantity": {
171741
+ "type": "integer"
171742
+ },
171743
+ "sellCurrency": {
171744
+ "type": "string"
171745
+ },
171746
+ "unitSellAmountCents": {
171747
+ "type": [
171748
+ "integer",
171749
+ "null"
171750
+ ]
171751
+ },
171752
+ "totalSellAmountCents": {
171753
+ "type": [
171754
+ "integer",
171755
+ "null"
171756
+ ]
171757
+ },
171758
+ "costCurrency": {
171759
+ "type": [
171760
+ "string",
171761
+ "null"
171762
+ ]
171763
+ },
171764
+ "unitCostAmountCents": {
171765
+ "type": [
171766
+ "integer",
171767
+ "null"
171768
+ ]
171769
+ },
171770
+ "totalCostAmountCents": {
171771
+ "type": [
171772
+ "integer",
171773
+ "null"
171774
+ ]
171775
+ },
171776
+ "notes": {
171777
+ "type": [
171778
+ "string",
171779
+ "null"
171780
+ ]
171781
+ },
171782
+ "productId": {
171783
+ "type": [
171784
+ "string",
171785
+ "null"
171786
+ ]
171787
+ },
171788
+ "optionId": {
171789
+ "type": [
171790
+ "string",
171791
+ "null"
171792
+ ]
171793
+ },
171794
+ "optionUnitId": {
171795
+ "type": [
171796
+ "string",
171797
+ "null"
171798
+ ]
171799
+ },
171800
+ "pricingCategoryId": {
171801
+ "type": [
171802
+ "string",
171803
+ "null"
171804
+ ]
171805
+ },
171806
+ "availabilitySlotId": {
171807
+ "type": [
171808
+ "string",
171809
+ "null"
171810
+ ]
171811
+ },
171812
+ "productNameSnapshot": {
171813
+ "type": [
171814
+ "string",
171815
+ "null"
171816
+ ]
171817
+ },
171818
+ "optionNameSnapshot": {
171819
+ "type": [
171820
+ "string",
171821
+ "null"
171822
+ ]
171823
+ },
171824
+ "unitNameSnapshot": {
171825
+ "type": [
171826
+ "string",
171827
+ "null"
171828
+ ]
171829
+ },
171830
+ "departureLabelSnapshot": {
171831
+ "type": [
171832
+ "string",
171833
+ "null"
171834
+ ]
171835
+ },
171836
+ "sourceSnapshotId": {
171837
+ "type": [
171838
+ "string",
171839
+ "null"
171840
+ ]
171841
+ },
171842
+ "sourceOfferId": {
171843
+ "type": [
171844
+ "string",
171845
+ "null"
171846
+ ]
171847
+ },
171848
+ "metadata": {
171849
+ "type": [
171850
+ "object",
171851
+ "null"
171852
+ ],
171853
+ "additionalProperties": {}
171854
+ },
171855
+ "createdAt": {
171856
+ "type": "string"
171857
+ },
171858
+ "updatedAt": {
171859
+ "type": "string"
171860
+ }
171861
+ },
171862
+ "required": [
171863
+ "id",
171864
+ "bookingId",
171865
+ "title",
171866
+ "description",
171867
+ "itemType",
171868
+ "status",
171869
+ "serviceDate",
171870
+ "startsAt",
171871
+ "endsAt",
171872
+ "quantity",
171873
+ "sellCurrency",
171874
+ "unitSellAmountCents",
171875
+ "totalSellAmountCents",
171876
+ "costCurrency",
171877
+ "unitCostAmountCents",
171878
+ "totalCostAmountCents",
171879
+ "notes",
171880
+ "productId",
171881
+ "optionId",
171882
+ "optionUnitId",
171883
+ "pricingCategoryId",
171884
+ "availabilitySlotId",
171885
+ "productNameSnapshot",
171886
+ "optionNameSnapshot",
171887
+ "unitNameSnapshot",
171888
+ "departureLabelSnapshot",
171889
+ "sourceSnapshotId",
171890
+ "sourceOfferId",
171891
+ "metadata",
171892
+ "createdAt",
171893
+ "updatedAt"
171894
+ ]
171895
+ }
171896
+ },
171897
+ "travelers": {
171898
+ "type": "array",
171899
+ "items": {
171900
+ "type": "object",
171901
+ "properties": {
171902
+ "id": {
171903
+ "type": "string"
171904
+ },
171905
+ "bookingId": {
171906
+ "type": "string"
171907
+ },
171908
+ "participantType": {
171909
+ "type": "string",
171910
+ "enum": [
171911
+ "traveler",
171912
+ "occupant",
171913
+ "other"
171914
+ ]
171915
+ },
171916
+ "travelerCategory": {
171917
+ "type": [
171918
+ "string",
171919
+ "null"
171920
+ ],
171921
+ "enum": [
171922
+ "adult",
171923
+ "child",
171924
+ "infant",
171925
+ "senior",
171926
+ "other",
171927
+ null
171928
+ ]
171929
+ },
171930
+ "firstName": {
171931
+ "type": "string"
171932
+ },
171933
+ "lastName": {
171934
+ "type": "string"
171935
+ },
171936
+ "email": {
171937
+ "type": [
171938
+ "string",
171939
+ "null"
171940
+ ]
171941
+ },
171942
+ "phone": {
171943
+ "type": [
171944
+ "string",
171945
+ "null"
171946
+ ]
171947
+ },
171948
+ "preferredLanguage": {
171949
+ "type": [
171950
+ "string",
171951
+ "null"
171952
+ ]
171953
+ },
171954
+ "specialRequests": {
171955
+ "type": [
171956
+ "string",
171957
+ "null"
171958
+ ]
171959
+ },
171960
+ "isPrimary": {
171961
+ "type": "boolean"
171962
+ },
171963
+ "notes": {
171964
+ "type": [
171965
+ "string",
171966
+ "null"
171967
+ ]
171968
+ },
171969
+ "createdAt": {
171970
+ "type": "string"
171971
+ },
171972
+ "updatedAt": {
171973
+ "type": "string"
171974
+ }
171975
+ },
171976
+ "required": [
171977
+ "id",
171978
+ "bookingId",
171979
+ "participantType",
171980
+ "travelerCategory",
171981
+ "firstName",
171982
+ "lastName",
171983
+ "email",
171984
+ "phone",
171985
+ "preferredLanguage",
171986
+ "specialRequests",
171987
+ "isPrimary",
171988
+ "notes",
171989
+ "createdAt",
171990
+ "updatedAt"
171991
+ ]
171992
+ }
171993
+ },
171994
+ "documents": {
171995
+ "type": "array",
171996
+ "items": {
171997
+ "type": "object",
171998
+ "properties": {
171999
+ "id": {
172000
+ "type": "string"
172001
+ },
172002
+ "bookingId": {
172003
+ "type": "string"
172004
+ },
172005
+ "travelerId": {
172006
+ "type": [
172007
+ "string",
172008
+ "null"
172009
+ ]
172010
+ },
172011
+ "type": {
172012
+ "type": "string",
172013
+ "enum": [
172014
+ "visa",
172015
+ "insurance",
172016
+ "health",
172017
+ "passport_copy",
172018
+ "other"
172019
+ ]
172020
+ },
172021
+ "fileName": {
172022
+ "type": "string"
172023
+ },
172024
+ "fileUrl": {
172025
+ "type": "string"
172026
+ },
172027
+ "expiresAt": {
172028
+ "type": [
172029
+ "string",
172030
+ "null"
172031
+ ]
172032
+ },
172033
+ "notes": {
172034
+ "type": [
172035
+ "string",
172036
+ "null"
172037
+ ]
172038
+ },
172039
+ "createdAt": {
172040
+ "type": "string"
172041
+ }
172042
+ },
172043
+ "required": [
172044
+ "id",
172045
+ "bookingId",
172046
+ "travelerId",
172047
+ "type",
172048
+ "fileName",
172049
+ "fileUrl",
172050
+ "expiresAt",
172051
+ "notes",
172052
+ "createdAt"
172053
+ ]
172054
+ }
171312
172055
  }
171313
172056
  },
171314
172057
  "required": [
@@ -171356,7 +172099,10 @@
171356
172099
  "paidAt",
171357
172100
  "redeemedAt",
171358
172101
  "createdAt",
171359
- "updatedAt"
172102
+ "updatedAt",
172103
+ "items",
172104
+ "travelers",
172105
+ "documents"
171360
172106
  ]
171361
172107
  }
171362
172108
  },
@@ -185426,7 +186172,7 @@
185426
186172
  },
185427
186173
  "amountCents": {
185428
186174
  "type": "integer",
185429
- "minimum": 0
186175
+ "minimum": 1
185430
186176
  },
185431
186177
  "provider": {
185432
186178
  "type": [
@@ -186148,7 +186894,7 @@
186148
186894
  },
186149
186895
  "amountCents": {
186150
186896
  "type": "integer",
186151
- "minimum": 0
186897
+ "minimum": 1
186152
186898
  },
186153
186899
  "provider": {
186154
186900
  "type": [
@@ -186661,7 +187407,7 @@
186661
187407
  },
186662
187408
  "amountCents": {
186663
187409
  "type": "integer",
186664
- "minimum": 0
187410
+ "minimum": 1
186665
187411
  },
186666
187412
  "provider": {
186667
187413
  "type": [
@@ -187011,7 +187757,7 @@
187011
187757
  },
187012
187758
  "amountCents": {
187013
187759
  "type": "integer",
187014
- "minimum": 0
187760
+ "minimum": 1
187015
187761
  },
187016
187762
  "provider": {
187017
187763
  "type": [
@@ -192018,6 +192764,32 @@
192018
192764
  }
192019
192765
  }
192020
192766
  },
192767
+ "400": {
192768
+ "description": "invalid_request: guarantee state does not allow deletion",
192769
+ "content": {
192770
+ "application/json": {
192771
+ "schema": {
192772
+ "type": "object",
192773
+ "properties": {
192774
+ "error": {
192775
+ "type": "string"
192776
+ },
192777
+ "code": {
192778
+ "type": "string"
192779
+ },
192780
+ "details": {
192781
+ "type": "object",
192782
+ "additionalProperties": {}
192783
+ }
192784
+ },
192785
+ "required": [
192786
+ "error",
192787
+ "code"
192788
+ ]
192789
+ }
192790
+ }
192791
+ }
192792
+ },
192021
192793
  "404": {
192022
192794
  "description": "Booking guarantee not found",
192023
192795
  "content": {
@@ -192204,238 +192976,240 @@
192204
192976
  "maxLength": 3
192205
192977
  },
192206
192978
  "amountCents": {
192207
- "type": "integer"
192208
- },
192209
- "rateBasisPoints": {
192210
- "type": [
192211
- "integer",
192212
- "null"
192213
- ],
192214
- "minimum": 0
192215
- },
192216
- "includedInPrice": {
192217
- "type": "boolean",
192218
- "default": false
192219
- },
192220
- "remittanceParty": {
192221
- "type": [
192222
- "string",
192223
- "null"
192224
- ],
192225
- "maxLength": 255
192226
- },
192227
- "sortOrder": {
192228
192979
  "type": "integer",
192229
- "minimum": 0,
192230
- "default": 0
192231
- }
192232
- },
192233
- "required": [
192234
- "name",
192235
- "currency",
192236
- "amountCents"
192237
- ]
192238
- }
192239
- }
192240
- }
192241
- },
192242
- "responses": {
192243
- "201": {
192244
- "description": "The created tax line",
192245
- "content": {
192246
- "application/json": {
192247
- "schema": {
192248
- "type": "object",
192249
- "properties": {
192250
- "data": {
192251
- "type": "object",
192252
- "properties": {
192253
- "id": {
192254
- "type": "string"
192255
- },
192256
- "bookingItemId": {
192257
- "type": "string"
192258
- },
192259
- "code": {
192260
- "type": [
192261
- "string",
192262
- "null"
192263
- ]
192264
- },
192265
- "name": {
192266
- "type": "string"
192267
- },
192268
- "jurisdiction": {
192269
- "type": [
192270
- "string",
192271
- "null"
192272
- ]
192273
- },
192274
- "scope": {
192275
- "type": "string",
192276
- "enum": [
192277
- "included",
192278
- "excluded",
192279
- "withheld"
192280
- ]
192281
- },
192282
- "currency": {
192283
- "type": "string"
192284
- },
192285
- "amountCents": {
192286
- "type": "integer"
192287
- },
192288
- "rateBasisPoints": {
192289
- "type": [
192290
- "integer",
192291
- "null"
192292
- ]
192293
- },
192294
- "includedInPrice": {
192295
- "type": "boolean"
192296
- },
192297
- "remittanceParty": {
192298
- "type": [
192299
- "string",
192300
- "null"
192301
- ]
192302
- },
192303
- "sortOrder": {
192304
- "type": "integer"
192305
- },
192306
- "createdAt": {
192307
- "type": "string"
192308
- },
192309
- "updatedAt": {
192310
- "type": "string"
192311
- }
192312
- },
192313
- "required": [
192314
- "id",
192315
- "bookingItemId",
192316
- "code",
192317
- "name",
192318
- "jurisdiction",
192319
- "scope",
192320
- "currency",
192321
- "amountCents",
192322
- "rateBasisPoints",
192323
- "includedInPrice",
192324
- "remittanceParty",
192325
- "sortOrder",
192326
- "createdAt",
192327
- "updatedAt"
192328
- ]
192329
- }
192330
- },
192331
- "required": [
192332
- "data"
192333
- ]
192334
- }
192335
- }
192336
- }
192337
- },
192338
- "400": {
192339
- "description": "invalid_request: request body failed validation",
192340
- "content": {
192341
- "application/json": {
192342
- "schema": {
192343
- "type": "object",
192344
- "properties": {
192345
- "error": {
192346
- "type": "string"
192347
- }
192348
- },
192349
- "required": [
192350
- "error"
192351
- ]
192352
- }
192353
- }
192354
- }
192355
- },
192356
- "404": {
192357
- "description": "Booking item not found",
192358
- "content": {
192359
- "application/json": {
192360
- "schema": {
192361
- "type": "object",
192362
- "properties": {
192363
- "error": {
192364
- "type": "string"
192365
- }
192366
- },
192367
- "required": [
192368
- "error"
192369
- ]
192370
- }
192371
- }
192372
- }
192373
- }
192374
- }
192375
- }
192376
- },
192377
- "/v1/admin/finance/booking-items/{bookingItemId}/tax-lines/{taxLineId}": {
192378
- "patch": {
192379
- "parameters": [
192380
- {
192381
- "schema": {
192382
- "type": "string"
192383
- },
192384
- "required": true,
192385
- "name": "bookingItemId",
192386
- "in": "path"
192387
- },
192388
- {
192389
- "schema": {
192390
- "type": "string"
192391
- },
192392
- "required": true,
192393
- "name": "taxLineId",
192394
- "in": "path"
192395
- }
192396
- ],
192397
- "requestBody": {
192398
- "required": true,
192399
- "content": {
192400
- "application/json": {
192401
- "schema": {
192402
- "type": "object",
192403
- "properties": {
192404
- "code": {
192405
- "type": [
192406
- "string",
192407
- "null"
192408
- ],
192409
- "maxLength": 100
192410
- },
192411
- "name": {
192412
- "type": "string",
192413
- "minLength": 1,
192414
- "maxLength": 255
192415
- },
192416
- "jurisdiction": {
192417
- "type": [
192418
- "string",
192419
- "null"
192420
- ],
192421
- "maxLength": 255
192422
- },
192423
- "scope": {
192424
- "type": "string",
192425
- "enum": [
192426
- "included",
192427
- "excluded",
192428
- "withheld"
192429
- ],
192430
- "default": "excluded"
192431
- },
192432
- "currency": {
192433
- "type": "string",
192434
- "minLength": 3,
192435
- "maxLength": 3
192436
- },
192437
- "amountCents": {
192438
- "type": "integer"
192980
+ "minimum": 0
192981
+ },
192982
+ "rateBasisPoints": {
192983
+ "type": [
192984
+ "integer",
192985
+ "null"
192986
+ ],
192987
+ "minimum": 0
192988
+ },
192989
+ "includedInPrice": {
192990
+ "type": "boolean",
192991
+ "default": false
192992
+ },
192993
+ "remittanceParty": {
192994
+ "type": [
192995
+ "string",
192996
+ "null"
192997
+ ],
192998
+ "maxLength": 255
192999
+ },
193000
+ "sortOrder": {
193001
+ "type": "integer",
193002
+ "minimum": 0,
193003
+ "default": 0
193004
+ }
193005
+ },
193006
+ "required": [
193007
+ "name",
193008
+ "currency",
193009
+ "amountCents"
193010
+ ]
193011
+ }
193012
+ }
193013
+ }
193014
+ },
193015
+ "responses": {
193016
+ "201": {
193017
+ "description": "The created tax line",
193018
+ "content": {
193019
+ "application/json": {
193020
+ "schema": {
193021
+ "type": "object",
193022
+ "properties": {
193023
+ "data": {
193024
+ "type": "object",
193025
+ "properties": {
193026
+ "id": {
193027
+ "type": "string"
193028
+ },
193029
+ "bookingItemId": {
193030
+ "type": "string"
193031
+ },
193032
+ "code": {
193033
+ "type": [
193034
+ "string",
193035
+ "null"
193036
+ ]
193037
+ },
193038
+ "name": {
193039
+ "type": "string"
193040
+ },
193041
+ "jurisdiction": {
193042
+ "type": [
193043
+ "string",
193044
+ "null"
193045
+ ]
193046
+ },
193047
+ "scope": {
193048
+ "type": "string",
193049
+ "enum": [
193050
+ "included",
193051
+ "excluded",
193052
+ "withheld"
193053
+ ]
193054
+ },
193055
+ "currency": {
193056
+ "type": "string"
193057
+ },
193058
+ "amountCents": {
193059
+ "type": "integer"
193060
+ },
193061
+ "rateBasisPoints": {
193062
+ "type": [
193063
+ "integer",
193064
+ "null"
193065
+ ]
193066
+ },
193067
+ "includedInPrice": {
193068
+ "type": "boolean"
193069
+ },
193070
+ "remittanceParty": {
193071
+ "type": [
193072
+ "string",
193073
+ "null"
193074
+ ]
193075
+ },
193076
+ "sortOrder": {
193077
+ "type": "integer"
193078
+ },
193079
+ "createdAt": {
193080
+ "type": "string"
193081
+ },
193082
+ "updatedAt": {
193083
+ "type": "string"
193084
+ }
193085
+ },
193086
+ "required": [
193087
+ "id",
193088
+ "bookingItemId",
193089
+ "code",
193090
+ "name",
193091
+ "jurisdiction",
193092
+ "scope",
193093
+ "currency",
193094
+ "amountCents",
193095
+ "rateBasisPoints",
193096
+ "includedInPrice",
193097
+ "remittanceParty",
193098
+ "sortOrder",
193099
+ "createdAt",
193100
+ "updatedAt"
193101
+ ]
193102
+ }
193103
+ },
193104
+ "required": [
193105
+ "data"
193106
+ ]
193107
+ }
193108
+ }
193109
+ }
193110
+ },
193111
+ "400": {
193112
+ "description": "invalid_request: request body failed validation",
193113
+ "content": {
193114
+ "application/json": {
193115
+ "schema": {
193116
+ "type": "object",
193117
+ "properties": {
193118
+ "error": {
193119
+ "type": "string"
193120
+ }
193121
+ },
193122
+ "required": [
193123
+ "error"
193124
+ ]
193125
+ }
193126
+ }
193127
+ }
193128
+ },
193129
+ "404": {
193130
+ "description": "Booking item not found",
193131
+ "content": {
193132
+ "application/json": {
193133
+ "schema": {
193134
+ "type": "object",
193135
+ "properties": {
193136
+ "error": {
193137
+ "type": "string"
193138
+ }
193139
+ },
193140
+ "required": [
193141
+ "error"
193142
+ ]
193143
+ }
193144
+ }
193145
+ }
193146
+ }
193147
+ }
193148
+ }
193149
+ },
193150
+ "/v1/admin/finance/booking-items/{bookingItemId}/tax-lines/{taxLineId}": {
193151
+ "patch": {
193152
+ "parameters": [
193153
+ {
193154
+ "schema": {
193155
+ "type": "string"
193156
+ },
193157
+ "required": true,
193158
+ "name": "bookingItemId",
193159
+ "in": "path"
193160
+ },
193161
+ {
193162
+ "schema": {
193163
+ "type": "string"
193164
+ },
193165
+ "required": true,
193166
+ "name": "taxLineId",
193167
+ "in": "path"
193168
+ }
193169
+ ],
193170
+ "requestBody": {
193171
+ "required": true,
193172
+ "content": {
193173
+ "application/json": {
193174
+ "schema": {
193175
+ "type": "object",
193176
+ "properties": {
193177
+ "code": {
193178
+ "type": [
193179
+ "string",
193180
+ "null"
193181
+ ],
193182
+ "maxLength": 100
193183
+ },
193184
+ "name": {
193185
+ "type": "string",
193186
+ "minLength": 1,
193187
+ "maxLength": 255
193188
+ },
193189
+ "jurisdiction": {
193190
+ "type": [
193191
+ "string",
193192
+ "null"
193193
+ ],
193194
+ "maxLength": 255
193195
+ },
193196
+ "scope": {
193197
+ "type": "string",
193198
+ "enum": [
193199
+ "included",
193200
+ "excluded",
193201
+ "withheld"
193202
+ ],
193203
+ "default": "excluded"
193204
+ },
193205
+ "currency": {
193206
+ "type": "string",
193207
+ "minLength": 3,
193208
+ "maxLength": 3
193209
+ },
193210
+ "amountCents": {
193211
+ "type": "integer",
193212
+ "minimum": 0
192439
193213
  },
192440
193214
  "rateBasisPoints": {
192441
193215
  "type": [
@@ -192855,7 +193629,8 @@
192855
193629
  "type": [
192856
193630
  "integer",
192857
193631
  "null"
192858
- ]
193632
+ ],
193633
+ "minimum": 0
192859
193634
  },
192860
193635
  "rateBasisPoints": {
192861
193636
  "type": [
@@ -193032,10 +193807,18 @@
193032
193807
  "properties": {
193033
193808
  "error": {
193034
193809
  "type": "string"
193810
+ },
193811
+ "code": {
193812
+ "type": "string"
193813
+ },
193814
+ "details": {
193815
+ "type": "object",
193816
+ "additionalProperties": {}
193035
193817
  }
193036
193818
  },
193037
193819
  "required": [
193038
- "error"
193820
+ "error",
193821
+ "code"
193039
193822
  ]
193040
193823
  }
193041
193824
  }
@@ -193114,8 +193897,7 @@
193114
193897
  "fixed",
193115
193898
  "markup",
193116
193899
  "net"
193117
- ],
193118
- "default": "percentage"
193900
+ ]
193119
193901
  },
193120
193902
  "currency": {
193121
193903
  "type": [
@@ -193129,7 +193911,8 @@
193129
193911
  "type": [
193130
193912
  "integer",
193131
193913
  "null"
193132
- ]
193914
+ ],
193915
+ "minimum": 0
193133
193916
  },
193134
193917
  "rateBasisPoints": {
193135
193918
  "type": [
@@ -193146,8 +193929,7 @@
193146
193929
  "payable",
193147
193930
  "paid",
193148
193931
  "void"
193149
- ],
193150
- "default": "pending"
193932
+ ]
193151
193933
  },
193152
193934
  "payableAt": {
193153
193935
  "type": [
@@ -193303,10 +194085,18 @@
193303
194085
  "properties": {
193304
194086
  "error": {
193305
194087
  "type": "string"
194088
+ },
194089
+ "code": {
194090
+ "type": "string"
194091
+ },
194092
+ "details": {
194093
+ "type": "object",
194094
+ "additionalProperties": {}
193306
194095
  }
193307
194096
  },
193308
194097
  "required": [
193309
- "error"
194098
+ "error",
194099
+ "code"
193310
194100
  ]
193311
194101
  }
193312
194102
  }
@@ -194200,6 +194990,24 @@
194200
194990
  }
194201
194991
  }
194202
194992
  }
194993
+ },
194994
+ "409": {
194995
+ "description": "The payment conflicts with the invoice state (e.g. overpayment)",
194996
+ "content": {
194997
+ "application/json": {
194998
+ "schema": {
194999
+ "type": "object",
195000
+ "properties": {
195001
+ "error": {
195002
+ "type": "string"
195003
+ }
195004
+ },
195005
+ "required": [
195006
+ "error"
195007
+ ]
195008
+ }
195009
+ }
195010
+ }
194203
195011
  }
194204
195012
  }
194205
195013
  },
@@ -194962,6 +195770,28 @@
194962
195770
  }
194963
195771
  }
194964
195772
  }
195773
+ },
195774
+ "422": {
195775
+ "description": "supplier payment payable invariant failed",
195776
+ "content": {
195777
+ "application/json": {
195778
+ "schema": {
195779
+ "type": "object",
195780
+ "properties": {
195781
+ "error": {
195782
+ "type": "string"
195783
+ },
195784
+ "code": {
195785
+ "type": "string"
195786
+ }
195787
+ },
195788
+ "required": [
195789
+ "error",
195790
+ "code"
195791
+ ]
195792
+ }
195793
+ }
195794
+ }
194965
195795
  }
194966
195796
  }
194967
195797
  }
@@ -195269,6 +196099,28 @@
195269
196099
  }
195270
196100
  }
195271
196101
  }
196102
+ },
196103
+ "422": {
196104
+ "description": "supplier payment payable invariant failed",
196105
+ "content": {
196106
+ "application/json": {
196107
+ "schema": {
196108
+ "type": "object",
196109
+ "properties": {
196110
+ "error": {
196111
+ "type": "string"
196112
+ },
196113
+ "code": {
196114
+ "type": "string"
196115
+ }
196116
+ },
196117
+ "required": [
196118
+ "error",
196119
+ "code"
196120
+ ]
196121
+ }
196122
+ }
196123
+ }
195272
196124
  }
195273
196125
  }
195274
196126
  }
@@ -196086,6 +196938,42 @@
196086
196938
  }
196087
196939
  }
196088
196940
  }
196941
+ },
196942
+ "404": {
196943
+ "description": "Booking, person, or organization reference not found",
196944
+ "content": {
196945
+ "application/json": {
196946
+ "schema": {
196947
+ "type": "object",
196948
+ "properties": {
196949
+ "error": {
196950
+ "type": "string"
196951
+ }
196952
+ },
196953
+ "required": [
196954
+ "error"
196955
+ ]
196956
+ }
196957
+ }
196958
+ }
196959
+ },
196960
+ "409": {
196961
+ "description": "Invoice number already exists",
196962
+ "content": {
196963
+ "application/json": {
196964
+ "schema": {
196965
+ "type": "object",
196966
+ "properties": {
196967
+ "error": {
196968
+ "type": "string"
196969
+ }
196970
+ },
196971
+ "required": [
196972
+ "error"
196973
+ ]
196974
+ }
196975
+ }
196976
+ }
196089
196977
  }
196090
196978
  }
196091
196979
  }
@@ -196117,6 +197005,13 @@
196117
197005
  "type": "string",
196118
197006
  "minLength": 1
196119
197007
  },
197008
+ "convertedFromInvoiceId": {
197009
+ "type": [
197010
+ "string",
197011
+ "null"
197012
+ ],
197013
+ "minLength": 1
197014
+ },
196120
197015
  "issueDate": {
196121
197016
  "type": "string",
196122
197017
  "minLength": 1
@@ -197612,6 +198507,24 @@
197612
198507
  }
197613
198508
  }
197614
198509
  }
198510
+ },
198511
+ "409": {
198512
+ "description": "Invoice number already exists",
198513
+ "content": {
198514
+ "application/json": {
198515
+ "schema": {
198516
+ "type": "object",
198517
+ "properties": {
198518
+ "error": {
198519
+ "type": "string"
198520
+ }
198521
+ },
198522
+ "required": [
198523
+ "error"
198524
+ ]
198525
+ }
198526
+ }
198527
+ }
197615
198528
  }
197616
198529
  }
197617
198530
  },
@@ -200068,6 +200981,24 @@
200068
200981
  }
200069
200982
  }
200070
200983
  }
200984
+ },
200985
+ "409": {
200986
+ "description": "Credit note would exceed the invoice balance due",
200987
+ "content": {
200988
+ "application/json": {
200989
+ "schema": {
200990
+ "type": "object",
200991
+ "properties": {
200992
+ "error": {
200993
+ "type": "string"
200994
+ }
200995
+ },
200996
+ "required": [
200997
+ "error"
200998
+ ]
200999
+ }
201000
+ }
201001
+ }
200071
201002
  }
200072
201003
  }
200073
201004
  }
@@ -200286,6 +201217,24 @@
200286
201217
  }
200287
201218
  }
200288
201219
  }
201220
+ },
201221
+ "409": {
201222
+ "description": "Credit note would exceed the invoice balance due",
201223
+ "content": {
201224
+ "application/json": {
201225
+ "schema": {
201226
+ "type": "object",
201227
+ "properties": {
201228
+ "error": {
201229
+ "type": "string"
201230
+ }
201231
+ },
201232
+ "required": [
201233
+ "error"
201234
+ ]
201235
+ }
201236
+ }
201237
+ }
200289
201238
  }
200290
201239
  }
200291
201240
  }
@@ -202618,7 +203567,7 @@
202618
203567
  "null"
202619
203568
  ],
202620
203569
  "minimum": 0,
202621
- "maximum": 10000
203570
+ "maximum": 100
202622
203571
  },
202623
203572
  "description": {
202624
203573
  "type": [
@@ -202942,7 +203891,7 @@
202942
203891
  "null"
202943
203892
  ],
202944
203893
  "minimum": 0,
202945
- "maximum": 10000
203894
+ "maximum": 100
202946
203895
  },
202947
203896
  "description": {
202948
203897
  "type": [
@@ -208032,18 +208981,36 @@
208032
208981
  "id": {
208033
208982
  "type": "string"
208034
208983
  },
208984
+ "source": {
208985
+ "type": "string",
208986
+ "enum": [
208987
+ "payment",
208988
+ "voucher_redemption"
208989
+ ],
208990
+ "default": "payment"
208991
+ },
208035
208992
  "invoiceId": {
208036
- "type": "string"
208993
+ "type": [
208994
+ "string",
208995
+ "null"
208996
+ ]
208037
208997
  },
208038
208998
  "invoiceNumber": {
208039
- "type": "string"
208999
+ "type": [
209000
+ "string",
209001
+ "null"
209002
+ ]
208040
209003
  },
208041
209004
  "invoiceType": {
208042
- "type": "string",
209005
+ "type": [
209006
+ "string",
209007
+ "null"
209008
+ ],
208043
209009
  "enum": [
208044
209010
  "invoice",
208045
209011
  "proforma",
208046
- "credit_note"
209012
+ "credit_note",
209013
+ null
208047
209014
  ]
208048
209015
  },
208049
209016
  "status": {
@@ -210407,6 +211374,27 @@
210407
211374
  }
210408
211375
  }
210409
211376
  }
211377
+ },
211378
+ "422": {
211379
+ "description": "Supplier invoice payable invariant failed",
211380
+ "content": {
211381
+ "application/json": {
211382
+ "schema": {
211383
+ "type": "object",
211384
+ "properties": {
211385
+ "error": {
211386
+ "type": "string"
211387
+ },
211388
+ "code": {
211389
+ "type": "string"
211390
+ }
211391
+ },
211392
+ "required": [
211393
+ "error"
211394
+ ]
211395
+ }
211396
+ }
211397
+ }
210410
211398
  }
210411
211399
  }
210412
211400
  },
@@ -210959,6 +211947,27 @@
210959
211947
  }
210960
211948
  }
210961
211949
  }
211950
+ },
211951
+ "422": {
211952
+ "description": "Supplier invoice payable invariant failed",
211953
+ "content": {
211954
+ "application/json": {
211955
+ "schema": {
211956
+ "type": "object",
211957
+ "properties": {
211958
+ "error": {
211959
+ "type": "string"
211960
+ },
211961
+ "code": {
211962
+ "type": "string"
211963
+ }
211964
+ },
211965
+ "required": [
211966
+ "error"
211967
+ ]
211968
+ }
211969
+ }
211970
+ }
210962
211971
  }
210963
211972
  }
210964
211973
  },
@@ -211556,7 +212565,7 @@
211556
212565
  }
211557
212566
  },
211558
212567
  "422": {
211559
- "description": "Edit would over-allocate a surviving whole-invoice allocation (§6.1)",
212568
+ "description": "Supplier invoice payable or allocation invariant failed",
211560
212569
  "content": {
211561
212570
  "application/json": {
211562
212571
  "schema": {
@@ -212789,6 +213798,27 @@
212789
213798
  }
212790
213799
  }
212791
213800
  }
213801
+ },
213802
+ "422": {
213803
+ "description": "supplier invoice payable invariant failed",
213804
+ "content": {
213805
+ "application/json": {
213806
+ "schema": {
213807
+ "type": "object",
213808
+ "properties": {
213809
+ "error": {
213810
+ "type": "string"
213811
+ },
213812
+ "code": {
213813
+ "type": "string"
213814
+ }
213815
+ },
213816
+ "required": [
213817
+ "error"
213818
+ ]
213819
+ }
213820
+ }
213821
+ }
212792
213822
  }
212793
213823
  }
212794
213824
  }
@@ -214712,18 +215742,36 @@
214712
215742
  "id": {
214713
215743
  "type": "string"
214714
215744
  },
215745
+ "source": {
215746
+ "type": "string",
215747
+ "enum": [
215748
+ "payment",
215749
+ "voucher_redemption"
215750
+ ],
215751
+ "default": "payment"
215752
+ },
214715
215753
  "invoiceId": {
214716
- "type": "string"
215754
+ "type": [
215755
+ "string",
215756
+ "null"
215757
+ ]
214717
215758
  },
214718
215759
  "invoiceNumber": {
214719
- "type": "string"
215760
+ "type": [
215761
+ "string",
215762
+ "null"
215763
+ ]
214720
215764
  },
214721
215765
  "invoiceType": {
214722
- "type": "string",
215766
+ "type": [
215767
+ "string",
215768
+ "null"
215769
+ ],
214723
215770
  "enum": [
214724
215771
  "invoice",
214725
215772
  "proforma",
214726
- "credit_note"
215773
+ "credit_note",
215774
+ null
214727
215775
  ]
214728
215776
  },
214729
215777
  "status": {
@@ -220526,14 +221574,12 @@
220526
221574
  },
220527
221575
  "separator": {
220528
221576
  "type": "string",
220529
- "maxLength": 5,
220530
- "default": ""
221577
+ "maxLength": 5
220531
221578
  },
220532
221579
  "padLength": {
220533
221580
  "type": "integer",
220534
221581
  "minimum": 0,
220535
- "maximum": 12,
220536
- "default": 4
221582
+ "maximum": 12
220537
221583
  },
220538
221584
  "resetStrategy": {
220539
221585
  "type": "string",
@@ -220541,8 +221587,7 @@
220541
221587
  "never",
220542
221588
  "annual",
220543
221589
  "monthly"
220544
- ],
220545
- "default": "never"
221590
+ ]
220546
221591
  },
220547
221592
  "scope": {
220548
221593
  "type": "string",
@@ -220552,12 +221597,10 @@
220552
221597
  "partner",
220553
221598
  "channel",
220554
221599
  "other"
220555
- ],
220556
- "default": "customer"
221600
+ ]
220557
221601
  },
220558
221602
  "isDefault": {
220559
- "type": "boolean",
220560
- "default": false
221603
+ "type": "boolean"
220561
221604
  },
220562
221605
  "externalProvider": {
220563
221606
  "type": [
@@ -220576,8 +221619,7 @@
220576
221619
  "maxLength": 100
220577
221620
  },
220578
221621
  "active": {
220579
- "type": "boolean",
220580
- "default": true
221622
+ "type": "boolean"
220581
221623
  }
220582
221624
  }
220583
221625
  }
@@ -276216,6 +277258,1398 @@
276216
277258
  }
276217
277259
  }
276218
277260
  }
277261
+ },
277262
+ "/v1/admin/settings/operator-profile": {
277263
+ "get": {
277264
+ "responses": {
277265
+ "200": {
277266
+ "description": "The operator profile",
277267
+ "content": {
277268
+ "application/json": {
277269
+ "schema": {
277270
+ "type": "object",
277271
+ "properties": {
277272
+ "data": {
277273
+ "type": [
277274
+ "object",
277275
+ "null"
277276
+ ],
277277
+ "properties": {
277278
+ "id": {
277279
+ "type": "string"
277280
+ },
277281
+ "name": {
277282
+ "type": [
277283
+ "string",
277284
+ "null"
277285
+ ]
277286
+ },
277287
+ "legalName": {
277288
+ "type": [
277289
+ "string",
277290
+ "null"
277291
+ ]
277292
+ },
277293
+ "vatId": {
277294
+ "type": [
277295
+ "string",
277296
+ "null"
277297
+ ]
277298
+ },
277299
+ "registrationNumber": {
277300
+ "type": [
277301
+ "string",
277302
+ "null"
277303
+ ]
277304
+ },
277305
+ "address": {
277306
+ "type": [
277307
+ "string",
277308
+ "null"
277309
+ ]
277310
+ },
277311
+ "phone": {
277312
+ "type": [
277313
+ "string",
277314
+ "null"
277315
+ ]
277316
+ },
277317
+ "email": {
277318
+ "type": [
277319
+ "string",
277320
+ "null"
277321
+ ]
277322
+ },
277323
+ "website": {
277324
+ "type": [
277325
+ "string",
277326
+ "null"
277327
+ ]
277328
+ },
277329
+ "license": {
277330
+ "type": [
277331
+ "string",
277332
+ "null"
277333
+ ]
277334
+ },
277335
+ "licenseAuthority": {
277336
+ "type": [
277337
+ "string",
277338
+ "null"
277339
+ ]
277340
+ },
277341
+ "signatoryName": {
277342
+ "type": [
277343
+ "string",
277344
+ "null"
277345
+ ]
277346
+ },
277347
+ "signatoryRole": {
277348
+ "type": [
277349
+ "string",
277350
+ "null"
277351
+ ]
277352
+ },
277353
+ "createdAt": {
277354
+ "type": "string"
277355
+ },
277356
+ "updatedAt": {
277357
+ "type": "string"
277358
+ }
277359
+ },
277360
+ "required": [
277361
+ "id",
277362
+ "name",
277363
+ "legalName",
277364
+ "vatId",
277365
+ "registrationNumber",
277366
+ "address",
277367
+ "phone",
277368
+ "email",
277369
+ "website",
277370
+ "license",
277371
+ "licenseAuthority",
277372
+ "signatoryName",
277373
+ "signatoryRole",
277374
+ "createdAt",
277375
+ "updatedAt"
277376
+ ]
277377
+ }
277378
+ },
277379
+ "required": [
277380
+ "data"
277381
+ ]
277382
+ }
277383
+ }
277384
+ }
277385
+ }
277386
+ }
277387
+ },
277388
+ "patch": {
277389
+ "requestBody": {
277390
+ "required": true,
277391
+ "content": {
277392
+ "application/json": {
277393
+ "schema": {
277394
+ "type": "object",
277395
+ "properties": {
277396
+ "name": {
277397
+ "type": [
277398
+ "string",
277399
+ "null"
277400
+ ]
277401
+ },
277402
+ "legalName": {
277403
+ "type": [
277404
+ "string",
277405
+ "null"
277406
+ ]
277407
+ },
277408
+ "vatId": {
277409
+ "type": [
277410
+ "string",
277411
+ "null"
277412
+ ]
277413
+ },
277414
+ "registrationNumber": {
277415
+ "type": [
277416
+ "string",
277417
+ "null"
277418
+ ]
277419
+ },
277420
+ "address": {
277421
+ "type": [
277422
+ "string",
277423
+ "null"
277424
+ ]
277425
+ },
277426
+ "phone": {
277427
+ "type": [
277428
+ "string",
277429
+ "null"
277430
+ ]
277431
+ },
277432
+ "email": {
277433
+ "anyOf": [
277434
+ {
277435
+ "type": [
277436
+ "string",
277437
+ "null"
277438
+ ],
277439
+ "format": "email"
277440
+ },
277441
+ {
277442
+ "type": "string",
277443
+ "enum": [
277444
+ ""
277445
+ ]
277446
+ },
277447
+ {
277448
+ "type": "null"
277449
+ }
277450
+ ]
277451
+ },
277452
+ "website": {
277453
+ "anyOf": [
277454
+ {
277455
+ "type": [
277456
+ "string",
277457
+ "null"
277458
+ ],
277459
+ "format": "uri"
277460
+ },
277461
+ {
277462
+ "type": "string",
277463
+ "enum": [
277464
+ ""
277465
+ ]
277466
+ },
277467
+ {
277468
+ "type": "null"
277469
+ }
277470
+ ]
277471
+ },
277472
+ "license": {
277473
+ "type": [
277474
+ "string",
277475
+ "null"
277476
+ ]
277477
+ },
277478
+ "licenseAuthority": {
277479
+ "type": [
277480
+ "string",
277481
+ "null"
277482
+ ]
277483
+ },
277484
+ "signatoryName": {
277485
+ "type": [
277486
+ "string",
277487
+ "null"
277488
+ ]
277489
+ },
277490
+ "signatoryRole": {
277491
+ "type": [
277492
+ "string",
277493
+ "null"
277494
+ ]
277495
+ }
277496
+ }
277497
+ }
277498
+ }
277499
+ }
277500
+ },
277501
+ "responses": {
277502
+ "200": {
277503
+ "description": "The updated operator profile",
277504
+ "content": {
277505
+ "application/json": {
277506
+ "schema": {
277507
+ "type": "object",
277508
+ "properties": {
277509
+ "data": {
277510
+ "type": [
277511
+ "object",
277512
+ "null"
277513
+ ],
277514
+ "properties": {
277515
+ "id": {
277516
+ "type": "string"
277517
+ },
277518
+ "name": {
277519
+ "type": [
277520
+ "string",
277521
+ "null"
277522
+ ]
277523
+ },
277524
+ "legalName": {
277525
+ "type": [
277526
+ "string",
277527
+ "null"
277528
+ ]
277529
+ },
277530
+ "vatId": {
277531
+ "type": [
277532
+ "string",
277533
+ "null"
277534
+ ]
277535
+ },
277536
+ "registrationNumber": {
277537
+ "type": [
277538
+ "string",
277539
+ "null"
277540
+ ]
277541
+ },
277542
+ "address": {
277543
+ "type": [
277544
+ "string",
277545
+ "null"
277546
+ ]
277547
+ },
277548
+ "phone": {
277549
+ "type": [
277550
+ "string",
277551
+ "null"
277552
+ ]
277553
+ },
277554
+ "email": {
277555
+ "type": [
277556
+ "string",
277557
+ "null"
277558
+ ]
277559
+ },
277560
+ "website": {
277561
+ "type": [
277562
+ "string",
277563
+ "null"
277564
+ ]
277565
+ },
277566
+ "license": {
277567
+ "type": [
277568
+ "string",
277569
+ "null"
277570
+ ]
277571
+ },
277572
+ "licenseAuthority": {
277573
+ "type": [
277574
+ "string",
277575
+ "null"
277576
+ ]
277577
+ },
277578
+ "signatoryName": {
277579
+ "type": [
277580
+ "string",
277581
+ "null"
277582
+ ]
277583
+ },
277584
+ "signatoryRole": {
277585
+ "type": [
277586
+ "string",
277587
+ "null"
277588
+ ]
277589
+ },
277590
+ "createdAt": {
277591
+ "type": "string"
277592
+ },
277593
+ "updatedAt": {
277594
+ "type": "string"
277595
+ }
277596
+ },
277597
+ "required": [
277598
+ "id",
277599
+ "name",
277600
+ "legalName",
277601
+ "vatId",
277602
+ "registrationNumber",
277603
+ "address",
277604
+ "phone",
277605
+ "email",
277606
+ "website",
277607
+ "license",
277608
+ "licenseAuthority",
277609
+ "signatoryName",
277610
+ "signatoryRole",
277611
+ "createdAt",
277612
+ "updatedAt"
277613
+ ]
277614
+ }
277615
+ },
277616
+ "required": [
277617
+ "data"
277618
+ ]
277619
+ }
277620
+ }
277621
+ }
277622
+ }
277623
+ }
277624
+ }
277625
+ },
277626
+ "/v1/admin/settings/operator-payment-instructions": {
277627
+ "get": {
277628
+ "responses": {
277629
+ "200": {
277630
+ "description": "The operator payment instructions",
277631
+ "content": {
277632
+ "application/json": {
277633
+ "schema": {
277634
+ "type": "object",
277635
+ "properties": {
277636
+ "data": {
277637
+ "type": [
277638
+ "object",
277639
+ "null"
277640
+ ],
277641
+ "properties": {
277642
+ "id": {
277643
+ "type": "string"
277644
+ },
277645
+ "bankTransferBeneficiary": {
277646
+ "type": [
277647
+ "string",
277648
+ "null"
277649
+ ]
277650
+ },
277651
+ "iban": {
277652
+ "type": [
277653
+ "string",
277654
+ "null"
277655
+ ]
277656
+ },
277657
+ "bank": {
277658
+ "type": [
277659
+ "string",
277660
+ "null"
277661
+ ]
277662
+ },
277663
+ "notes": {
277664
+ "type": [
277665
+ "string",
277666
+ "null"
277667
+ ]
277668
+ },
277669
+ "createdAt": {
277670
+ "type": "string"
277671
+ },
277672
+ "updatedAt": {
277673
+ "type": "string"
277674
+ }
277675
+ },
277676
+ "required": [
277677
+ "id",
277678
+ "bankTransferBeneficiary",
277679
+ "iban",
277680
+ "bank",
277681
+ "notes",
277682
+ "createdAt",
277683
+ "updatedAt"
277684
+ ]
277685
+ }
277686
+ },
277687
+ "required": [
277688
+ "data"
277689
+ ]
277690
+ }
277691
+ }
277692
+ }
277693
+ }
277694
+ }
277695
+ },
277696
+ "patch": {
277697
+ "requestBody": {
277698
+ "required": true,
277699
+ "content": {
277700
+ "application/json": {
277701
+ "schema": {
277702
+ "type": "object",
277703
+ "properties": {
277704
+ "bankTransferBeneficiary": {
277705
+ "type": [
277706
+ "string",
277707
+ "null"
277708
+ ]
277709
+ },
277710
+ "iban": {
277711
+ "type": [
277712
+ "string",
277713
+ "null"
277714
+ ]
277715
+ },
277716
+ "bank": {
277717
+ "type": [
277718
+ "string",
277719
+ "null"
277720
+ ]
277721
+ },
277722
+ "notes": {
277723
+ "type": [
277724
+ "string",
277725
+ "null"
277726
+ ]
277727
+ }
277728
+ }
277729
+ }
277730
+ }
277731
+ }
277732
+ },
277733
+ "responses": {
277734
+ "200": {
277735
+ "description": "The updated operator payment instructions",
277736
+ "content": {
277737
+ "application/json": {
277738
+ "schema": {
277739
+ "type": "object",
277740
+ "properties": {
277741
+ "data": {
277742
+ "type": [
277743
+ "object",
277744
+ "null"
277745
+ ],
277746
+ "properties": {
277747
+ "id": {
277748
+ "type": "string"
277749
+ },
277750
+ "bankTransferBeneficiary": {
277751
+ "type": [
277752
+ "string",
277753
+ "null"
277754
+ ]
277755
+ },
277756
+ "iban": {
277757
+ "type": [
277758
+ "string",
277759
+ "null"
277760
+ ]
277761
+ },
277762
+ "bank": {
277763
+ "type": [
277764
+ "string",
277765
+ "null"
277766
+ ]
277767
+ },
277768
+ "notes": {
277769
+ "type": [
277770
+ "string",
277771
+ "null"
277772
+ ]
277773
+ },
277774
+ "createdAt": {
277775
+ "type": "string"
277776
+ },
277777
+ "updatedAt": {
277778
+ "type": "string"
277779
+ }
277780
+ },
277781
+ "required": [
277782
+ "id",
277783
+ "bankTransferBeneficiary",
277784
+ "iban",
277785
+ "bank",
277786
+ "notes",
277787
+ "createdAt",
277788
+ "updatedAt"
277789
+ ]
277790
+ }
277791
+ },
277792
+ "required": [
277793
+ "data"
277794
+ ]
277795
+ }
277796
+ }
277797
+ }
277798
+ }
277799
+ }
277800
+ }
277801
+ },
277802
+ "/v1/admin/settings/operator-payment-defaults": {
277803
+ "get": {
277804
+ "responses": {
277805
+ "200": {
277806
+ "description": "The operator payment defaults",
277807
+ "content": {
277808
+ "application/json": {
277809
+ "schema": {
277810
+ "type": "object",
277811
+ "properties": {
277812
+ "data": {
277813
+ "type": [
277814
+ "object",
277815
+ "null"
277816
+ ],
277817
+ "properties": {
277818
+ "id": {
277819
+ "type": "string"
277820
+ },
277821
+ "customerPaymentPolicy": {},
277822
+ "bookingCheckoutUrlTemplate": {
277823
+ "type": [
277824
+ "string",
277825
+ "null"
277826
+ ]
277827
+ },
277828
+ "invoicePayUrlTemplate": {
277829
+ "type": [
277830
+ "string",
277831
+ "null"
277832
+ ]
277833
+ },
277834
+ "createdAt": {
277835
+ "type": "string"
277836
+ },
277837
+ "updatedAt": {
277838
+ "type": "string"
277839
+ }
277840
+ },
277841
+ "required": [
277842
+ "id",
277843
+ "bookingCheckoutUrlTemplate",
277844
+ "invoicePayUrlTemplate",
277845
+ "createdAt",
277846
+ "updatedAt"
277847
+ ]
277848
+ }
277849
+ },
277850
+ "required": [
277851
+ "data"
277852
+ ]
277853
+ }
277854
+ }
277855
+ }
277856
+ }
277857
+ }
277858
+ },
277859
+ "patch": {
277860
+ "requestBody": {
277861
+ "required": true,
277862
+ "content": {
277863
+ "application/json": {
277864
+ "schema": {
277865
+ "type": "object",
277866
+ "properties": {
277867
+ "customerPaymentPolicy": {
277868
+ "type": [
277869
+ "object",
277870
+ "null"
277871
+ ],
277872
+ "properties": {
277873
+ "deposit": {
277874
+ "type": "object",
277875
+ "properties": {
277876
+ "kind": {
277877
+ "type": "string",
277878
+ "enum": [
277879
+ "none",
277880
+ "percent",
277881
+ "fixed_cents"
277882
+ ]
277883
+ },
277884
+ "percent": {
277885
+ "type": "number",
277886
+ "minimum": 0,
277887
+ "maximum": 100
277888
+ },
277889
+ "amountCents": {
277890
+ "type": "integer",
277891
+ "minimum": 0
277892
+ }
277893
+ },
277894
+ "required": [
277895
+ "kind"
277896
+ ]
277897
+ },
277898
+ "minDaysBeforeDepartureForDeposit": {
277899
+ "type": "integer",
277900
+ "minimum": 0
277901
+ },
277902
+ "balanceDueDaysBeforeDeparture": {
277903
+ "type": "integer",
277904
+ "minimum": 0
277905
+ },
277906
+ "balanceDueMinDaysFromNow": {
277907
+ "type": "integer",
277908
+ "minimum": 0
277909
+ }
277910
+ },
277911
+ "required": [
277912
+ "deposit",
277913
+ "minDaysBeforeDepartureForDeposit",
277914
+ "balanceDueDaysBeforeDeparture",
277915
+ "balanceDueMinDaysFromNow"
277916
+ ]
277917
+ },
277918
+ "bookingCheckoutUrlTemplate": {
277919
+ "type": [
277920
+ "string",
277921
+ "null"
277922
+ ]
277923
+ },
277924
+ "invoicePayUrlTemplate": {
277925
+ "type": [
277926
+ "string",
277927
+ "null"
277928
+ ]
277929
+ }
277930
+ }
277931
+ }
277932
+ }
277933
+ }
277934
+ },
277935
+ "responses": {
277936
+ "200": {
277937
+ "description": "The updated operator payment defaults",
277938
+ "content": {
277939
+ "application/json": {
277940
+ "schema": {
277941
+ "type": "object",
277942
+ "properties": {
277943
+ "data": {
277944
+ "type": [
277945
+ "object",
277946
+ "null"
277947
+ ],
277948
+ "properties": {
277949
+ "id": {
277950
+ "type": "string"
277951
+ },
277952
+ "customerPaymentPolicy": {},
277953
+ "bookingCheckoutUrlTemplate": {
277954
+ "type": [
277955
+ "string",
277956
+ "null"
277957
+ ]
277958
+ },
277959
+ "invoicePayUrlTemplate": {
277960
+ "type": [
277961
+ "string",
277962
+ "null"
277963
+ ]
277964
+ },
277965
+ "createdAt": {
277966
+ "type": "string"
277967
+ },
277968
+ "updatedAt": {
277969
+ "type": "string"
277970
+ }
277971
+ },
277972
+ "required": [
277973
+ "id",
277974
+ "bookingCheckoutUrlTemplate",
277975
+ "invoicePayUrlTemplate",
277976
+ "createdAt",
277977
+ "updatedAt"
277978
+ ]
277979
+ }
277980
+ },
277981
+ "required": [
277982
+ "data"
277983
+ ]
277984
+ }
277985
+ }
277986
+ }
277987
+ }
277988
+ }
277989
+ }
277990
+ },
277991
+ "/v1/public/operator-profile": {
277992
+ "get": {
277993
+ "responses": {
277994
+ "200": {
277995
+ "description": "The public operator profile (null when unset)",
277996
+ "content": {
277997
+ "application/json": {
277998
+ "schema": {
277999
+ "type": "object",
278000
+ "properties": {
278001
+ "data": {
278002
+ "type": [
278003
+ "object",
278004
+ "null"
278005
+ ],
278006
+ "properties": {
278007
+ "name": {
278008
+ "type": "string"
278009
+ },
278010
+ "legalName": {
278011
+ "type": "string"
278012
+ },
278013
+ "address": {
278014
+ "type": "string"
278015
+ },
278016
+ "phone": {
278017
+ "type": "string"
278018
+ },
278019
+ "email": {
278020
+ "type": "string"
278021
+ },
278022
+ "website": {
278023
+ "type": "string"
278024
+ },
278025
+ "license": {
278026
+ "type": "string"
278027
+ },
278028
+ "licenseAuthority": {
278029
+ "type": "string"
278030
+ },
278031
+ "customerPaymentPolicy": {},
278032
+ "bookingCheckoutUrlTemplate": {
278033
+ "type": [
278034
+ "string",
278035
+ "null"
278036
+ ]
278037
+ },
278038
+ "invoicePayUrlTemplate": {
278039
+ "type": [
278040
+ "string",
278041
+ "null"
278042
+ ]
278043
+ }
278044
+ },
278045
+ "required": [
278046
+ "name",
278047
+ "legalName",
278048
+ "address",
278049
+ "phone",
278050
+ "email",
278051
+ "website",
278052
+ "license",
278053
+ "licenseAuthority",
278054
+ "bookingCheckoutUrlTemplate",
278055
+ "invoicePayUrlTemplate"
278056
+ ]
278057
+ }
278058
+ },
278059
+ "required": [
278060
+ "data"
278061
+ ]
278062
+ }
278063
+ }
278064
+ }
278065
+ }
278066
+ }
278067
+ }
278068
+ },
278069
+ "/v1/admin/settings/operator": {
278070
+ "get": {
278071
+ "responses": {
278072
+ "200": {
278073
+ "description": "The combined operator settings",
278074
+ "content": {
278075
+ "application/json": {
278076
+ "schema": {
278077
+ "type": "object",
278078
+ "properties": {
278079
+ "data": {
278080
+ "type": [
278081
+ "object",
278082
+ "null"
278083
+ ],
278084
+ "properties": {
278085
+ "id": {
278086
+ "type": "string"
278087
+ },
278088
+ "name": {
278089
+ "type": [
278090
+ "string",
278091
+ "null"
278092
+ ]
278093
+ },
278094
+ "legalName": {
278095
+ "type": [
278096
+ "string",
278097
+ "null"
278098
+ ]
278099
+ },
278100
+ "vatId": {
278101
+ "type": [
278102
+ "string",
278103
+ "null"
278104
+ ]
278105
+ },
278106
+ "registrationNumber": {
278107
+ "type": [
278108
+ "string",
278109
+ "null"
278110
+ ]
278111
+ },
278112
+ "address": {
278113
+ "type": [
278114
+ "string",
278115
+ "null"
278116
+ ]
278117
+ },
278118
+ "phone": {
278119
+ "type": [
278120
+ "string",
278121
+ "null"
278122
+ ]
278123
+ },
278124
+ "email": {
278125
+ "type": [
278126
+ "string",
278127
+ "null"
278128
+ ]
278129
+ },
278130
+ "website": {
278131
+ "type": [
278132
+ "string",
278133
+ "null"
278134
+ ]
278135
+ },
278136
+ "license": {
278137
+ "type": [
278138
+ "string",
278139
+ "null"
278140
+ ]
278141
+ },
278142
+ "licenseAuthority": {
278143
+ "type": [
278144
+ "string",
278145
+ "null"
278146
+ ]
278147
+ },
278148
+ "signatoryName": {
278149
+ "type": [
278150
+ "string",
278151
+ "null"
278152
+ ]
278153
+ },
278154
+ "signatoryRole": {
278155
+ "type": [
278156
+ "string",
278157
+ "null"
278158
+ ]
278159
+ },
278160
+ "createdAt": {
278161
+ "type": "string"
278162
+ },
278163
+ "updatedAt": {
278164
+ "type": "string"
278165
+ },
278166
+ "bankTransferBeneficiary": {
278167
+ "type": [
278168
+ "string",
278169
+ "null"
278170
+ ]
278171
+ },
278172
+ "iban": {
278173
+ "type": [
278174
+ "string",
278175
+ "null"
278176
+ ]
278177
+ },
278178
+ "bank": {
278179
+ "type": [
278180
+ "string",
278181
+ "null"
278182
+ ]
278183
+ },
278184
+ "notes": {
278185
+ "type": [
278186
+ "string",
278187
+ "null"
278188
+ ]
278189
+ },
278190
+ "customerPaymentPolicy": {},
278191
+ "bookingCheckoutUrlTemplate": {
278192
+ "type": [
278193
+ "string",
278194
+ "null"
278195
+ ]
278196
+ },
278197
+ "invoicePayUrlTemplate": {
278198
+ "type": [
278199
+ "string",
278200
+ "null"
278201
+ ]
278202
+ }
278203
+ },
278204
+ "required": [
278205
+ "bankTransferBeneficiary",
278206
+ "iban",
278207
+ "bank",
278208
+ "notes",
278209
+ "bookingCheckoutUrlTemplate",
278210
+ "invoicePayUrlTemplate"
278211
+ ]
278212
+ }
278213
+ },
278214
+ "required": [
278215
+ "data"
278216
+ ]
278217
+ }
278218
+ }
278219
+ }
278220
+ }
278221
+ }
278222
+ },
278223
+ "patch": {
278224
+ "requestBody": {
278225
+ "required": true,
278226
+ "content": {
278227
+ "application/json": {
278228
+ "schema": {
278229
+ "type": "object",
278230
+ "properties": {
278231
+ "name": {
278232
+ "type": [
278233
+ "string",
278234
+ "null"
278235
+ ]
278236
+ },
278237
+ "legalName": {
278238
+ "type": [
278239
+ "string",
278240
+ "null"
278241
+ ]
278242
+ },
278243
+ "vatId": {
278244
+ "type": [
278245
+ "string",
278246
+ "null"
278247
+ ]
278248
+ },
278249
+ "registrationNumber": {
278250
+ "type": [
278251
+ "string",
278252
+ "null"
278253
+ ]
278254
+ },
278255
+ "address": {
278256
+ "type": [
278257
+ "string",
278258
+ "null"
278259
+ ]
278260
+ },
278261
+ "phone": {
278262
+ "type": [
278263
+ "string",
278264
+ "null"
278265
+ ]
278266
+ },
278267
+ "email": {
278268
+ "anyOf": [
278269
+ {
278270
+ "type": [
278271
+ "string",
278272
+ "null"
278273
+ ],
278274
+ "format": "email"
278275
+ },
278276
+ {
278277
+ "type": "string",
278278
+ "enum": [
278279
+ ""
278280
+ ]
278281
+ },
278282
+ {
278283
+ "type": "null"
278284
+ }
278285
+ ]
278286
+ },
278287
+ "website": {
278288
+ "anyOf": [
278289
+ {
278290
+ "type": [
278291
+ "string",
278292
+ "null"
278293
+ ],
278294
+ "format": "uri"
278295
+ },
278296
+ {
278297
+ "type": "string",
278298
+ "enum": [
278299
+ ""
278300
+ ]
278301
+ },
278302
+ {
278303
+ "type": "null"
278304
+ }
278305
+ ]
278306
+ },
278307
+ "license": {
278308
+ "type": [
278309
+ "string",
278310
+ "null"
278311
+ ]
278312
+ },
278313
+ "licenseAuthority": {
278314
+ "type": [
278315
+ "string",
278316
+ "null"
278317
+ ]
278318
+ },
278319
+ "signatoryName": {
278320
+ "type": [
278321
+ "string",
278322
+ "null"
278323
+ ]
278324
+ },
278325
+ "signatoryRole": {
278326
+ "type": [
278327
+ "string",
278328
+ "null"
278329
+ ]
278330
+ },
278331
+ "bankTransferBeneficiary": {
278332
+ "type": [
278333
+ "string",
278334
+ "null"
278335
+ ]
278336
+ },
278337
+ "iban": {
278338
+ "type": [
278339
+ "string",
278340
+ "null"
278341
+ ]
278342
+ },
278343
+ "bank": {
278344
+ "type": [
278345
+ "string",
278346
+ "null"
278347
+ ]
278348
+ },
278349
+ "notes": {
278350
+ "type": [
278351
+ "string",
278352
+ "null"
278353
+ ]
278354
+ },
278355
+ "customerPaymentPolicy": {
278356
+ "type": [
278357
+ "object",
278358
+ "null"
278359
+ ],
278360
+ "properties": {
278361
+ "deposit": {
278362
+ "type": "object",
278363
+ "properties": {
278364
+ "kind": {
278365
+ "type": "string",
278366
+ "enum": [
278367
+ "none",
278368
+ "percent",
278369
+ "fixed_cents"
278370
+ ]
278371
+ },
278372
+ "percent": {
278373
+ "type": "number",
278374
+ "minimum": 0,
278375
+ "maximum": 100
278376
+ },
278377
+ "amountCents": {
278378
+ "type": "integer",
278379
+ "minimum": 0
278380
+ }
278381
+ },
278382
+ "required": [
278383
+ "kind"
278384
+ ]
278385
+ },
278386
+ "minDaysBeforeDepartureForDeposit": {
278387
+ "type": "integer",
278388
+ "minimum": 0
278389
+ },
278390
+ "balanceDueDaysBeforeDeparture": {
278391
+ "type": "integer",
278392
+ "minimum": 0
278393
+ },
278394
+ "balanceDueMinDaysFromNow": {
278395
+ "type": "integer",
278396
+ "minimum": 0
278397
+ }
278398
+ },
278399
+ "required": [
278400
+ "deposit",
278401
+ "minDaysBeforeDepartureForDeposit",
278402
+ "balanceDueDaysBeforeDeparture",
278403
+ "balanceDueMinDaysFromNow"
278404
+ ]
278405
+ },
278406
+ "bookingCheckoutUrlTemplate": {
278407
+ "type": [
278408
+ "string",
278409
+ "null"
278410
+ ]
278411
+ },
278412
+ "invoicePayUrlTemplate": {
278413
+ "type": [
278414
+ "string",
278415
+ "null"
278416
+ ]
278417
+ }
278418
+ }
278419
+ }
278420
+ }
278421
+ }
278422
+ },
278423
+ "responses": {
278424
+ "200": {
278425
+ "description": "The updated combined operator settings",
278426
+ "content": {
278427
+ "application/json": {
278428
+ "schema": {
278429
+ "type": "object",
278430
+ "properties": {
278431
+ "data": {
278432
+ "type": [
278433
+ "object",
278434
+ "null"
278435
+ ],
278436
+ "properties": {
278437
+ "id": {
278438
+ "type": "string"
278439
+ },
278440
+ "name": {
278441
+ "type": [
278442
+ "string",
278443
+ "null"
278444
+ ]
278445
+ },
278446
+ "legalName": {
278447
+ "type": [
278448
+ "string",
278449
+ "null"
278450
+ ]
278451
+ },
278452
+ "vatId": {
278453
+ "type": [
278454
+ "string",
278455
+ "null"
278456
+ ]
278457
+ },
278458
+ "registrationNumber": {
278459
+ "type": [
278460
+ "string",
278461
+ "null"
278462
+ ]
278463
+ },
278464
+ "address": {
278465
+ "type": [
278466
+ "string",
278467
+ "null"
278468
+ ]
278469
+ },
278470
+ "phone": {
278471
+ "type": [
278472
+ "string",
278473
+ "null"
278474
+ ]
278475
+ },
278476
+ "email": {
278477
+ "type": [
278478
+ "string",
278479
+ "null"
278480
+ ]
278481
+ },
278482
+ "website": {
278483
+ "type": [
278484
+ "string",
278485
+ "null"
278486
+ ]
278487
+ },
278488
+ "license": {
278489
+ "type": [
278490
+ "string",
278491
+ "null"
278492
+ ]
278493
+ },
278494
+ "licenseAuthority": {
278495
+ "type": [
278496
+ "string",
278497
+ "null"
278498
+ ]
278499
+ },
278500
+ "signatoryName": {
278501
+ "type": [
278502
+ "string",
278503
+ "null"
278504
+ ]
278505
+ },
278506
+ "signatoryRole": {
278507
+ "type": [
278508
+ "string",
278509
+ "null"
278510
+ ]
278511
+ },
278512
+ "createdAt": {
278513
+ "type": "string"
278514
+ },
278515
+ "updatedAt": {
278516
+ "type": "string"
278517
+ },
278518
+ "bankTransferBeneficiary": {
278519
+ "type": [
278520
+ "string",
278521
+ "null"
278522
+ ]
278523
+ },
278524
+ "iban": {
278525
+ "type": [
278526
+ "string",
278527
+ "null"
278528
+ ]
278529
+ },
278530
+ "bank": {
278531
+ "type": [
278532
+ "string",
278533
+ "null"
278534
+ ]
278535
+ },
278536
+ "notes": {
278537
+ "type": [
278538
+ "string",
278539
+ "null"
278540
+ ]
278541
+ },
278542
+ "customerPaymentPolicy": {},
278543
+ "bookingCheckoutUrlTemplate": {
278544
+ "type": [
278545
+ "string",
278546
+ "null"
278547
+ ]
278548
+ },
278549
+ "invoicePayUrlTemplate": {
278550
+ "type": [
278551
+ "string",
278552
+ "null"
278553
+ ]
278554
+ }
278555
+ },
278556
+ "required": [
278557
+ "bankTransferBeneficiary",
278558
+ "iban",
278559
+ "bank",
278560
+ "notes",
278561
+ "bookingCheckoutUrlTemplate",
278562
+ "invoicePayUrlTemplate"
278563
+ ]
278564
+ }
278565
+ },
278566
+ "required": [
278567
+ "data"
278568
+ ]
278569
+ }
278570
+ }
278571
+ }
278572
+ }
278573
+ }
278574
+ }
278575
+ },
278576
+ "/v1/public/settings/operator": {
278577
+ "get": {
278578
+ "responses": {
278579
+ "200": {
278580
+ "description": "The public operator settings (null when unset)",
278581
+ "content": {
278582
+ "application/json": {
278583
+ "schema": {
278584
+ "type": "object",
278585
+ "properties": {
278586
+ "data": {
278587
+ "type": [
278588
+ "object",
278589
+ "null"
278590
+ ],
278591
+ "properties": {
278592
+ "name": {
278593
+ "type": "string"
278594
+ },
278595
+ "legalName": {
278596
+ "type": "string"
278597
+ },
278598
+ "address": {
278599
+ "type": "string"
278600
+ },
278601
+ "phone": {
278602
+ "type": "string"
278603
+ },
278604
+ "email": {
278605
+ "type": "string"
278606
+ },
278607
+ "website": {
278608
+ "type": "string"
278609
+ },
278610
+ "license": {
278611
+ "type": "string"
278612
+ },
278613
+ "licenseAuthority": {
278614
+ "type": "string"
278615
+ },
278616
+ "customerPaymentPolicy": {},
278617
+ "bookingCheckoutUrlTemplate": {
278618
+ "type": [
278619
+ "string",
278620
+ "null"
278621
+ ]
278622
+ },
278623
+ "invoicePayUrlTemplate": {
278624
+ "type": [
278625
+ "string",
278626
+ "null"
278627
+ ]
278628
+ }
278629
+ },
278630
+ "required": [
278631
+ "name",
278632
+ "legalName",
278633
+ "address",
278634
+ "phone",
278635
+ "email",
278636
+ "website",
278637
+ "license",
278638
+ "licenseAuthority",
278639
+ "bookingCheckoutUrlTemplate",
278640
+ "invoicePayUrlTemplate"
278641
+ ]
278642
+ }
278643
+ },
278644
+ "required": [
278645
+ "data"
278646
+ ]
278647
+ }
278648
+ }
278649
+ }
278650
+ }
278651
+ }
278652
+ }
276219
278653
  }
276220
278654
  },
276221
278655
  "webhooks": {}