@percayso-community/cayso-contracts 0.24.0 → 0.27.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.
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  export const CONTRACT_SCHEMA = {
17
- "contractVersion": "0.24.0",
17
+ "contractVersion": "0.27.0",
18
18
  "packageName": "@percayso-community/cayso-contracts",
19
19
  "capabilities": {
20
20
  "wallet": "cayso.wallet",
@@ -57,6 +57,10 @@ export const CONTRACT_SCHEMA = {
57
57
  "method": "POST",
58
58
  "path": "/api/commercial-payments"
59
59
  },
60
+ "citizenTransfer": {
61
+ "method": "POST",
62
+ "path": "/api/citizen-transfers"
63
+ },
60
64
  "citizenMarket": {
61
65
  "method": "GET",
62
66
  "path": "/api/citizen-market"
@@ -77,11 +81,21 @@ export const CONTRACT_SCHEMA = {
77
81
  "method": "POST",
78
82
  "path": "/api/marketplace/orders"
79
83
  },
84
+ "standingAuthorisation": {
85
+ "method": "POST",
86
+ "path": "/api/cloud/standing-authorisations"
87
+ },
80
88
  "version": {
81
89
  "method": "GET",
82
90
  "path": "/api/version"
83
91
  }
84
92
  },
93
+ "issuerRoutes": {
94
+ "cloudSettlement": {
95
+ "method": "POST",
96
+ "path": "/api/cloud/settlement-assertions"
97
+ }
98
+ },
85
99
  "types": {
86
100
  "Allowance": {
87
101
  "kind": "object",
@@ -284,6 +298,67 @@ export const CONTRACT_SCHEMA = {
284
298
  }
285
299
  }
286
300
  },
301
+ "AuthorisationAcknowledgementClaims": {
302
+ "kind": "object",
303
+ "properties": {
304
+ "iss": {
305
+ "type": {
306
+ "scalar": "string"
307
+ },
308
+ "readonly": true,
309
+ "optional": false
310
+ },
311
+ "aud": {
312
+ "type": {
313
+ "ref": "PercaysoCloudAudience"
314
+ },
315
+ "readonly": true,
316
+ "optional": false
317
+ },
318
+ "authorisation": {
319
+ "type": {
320
+ "scalar": "string"
321
+ },
322
+ "readonly": true,
323
+ "optional": false
324
+ },
325
+ "instance_kid": {
326
+ "type": {
327
+ "ref": "InstanceKeyId"
328
+ },
329
+ "readonly": true,
330
+ "optional": false
331
+ },
332
+ "cap_cents": {
333
+ "type": {
334
+ "ref": "Cents"
335
+ },
336
+ "readonly": true,
337
+ "optional": false
338
+ },
339
+ "period": {
340
+ "type": {
341
+ "ref": "SettlementPeriodRule"
342
+ },
343
+ "readonly": true,
344
+ "optional": false
345
+ },
346
+ "iat": {
347
+ "type": {
348
+ "scalar": "number"
349
+ },
350
+ "readonly": true,
351
+ "optional": false
352
+ },
353
+ "exp": {
354
+ "type": {
355
+ "scalar": "number"
356
+ },
357
+ "readonly": true,
358
+ "optional": false
359
+ }
360
+ }
361
+ },
287
362
  "Balance": {
288
363
  "kind": "object",
289
364
  "properties": {
@@ -583,6 +658,9 @@ export const CONTRACT_SCHEMA = {
583
658
  {
584
659
  "literal": "commercial_payment_store_not_configured"
585
660
  },
661
+ {
662
+ "literal": "citizen_transfer_store_not_configured"
663
+ },
586
664
  {
587
665
  "literal": "citizen_market_not_configured"
588
666
  },
@@ -625,6 +703,9 @@ export const CONTRACT_SCHEMA = {
625
703
  {
626
704
  "ref": "CommercialPaymentRefusal"
627
705
  },
706
+ {
707
+ "ref": "CitizenTransferRefusal"
708
+ },
628
709
  {
629
710
  "ref": "QuotePlacementRefusal"
630
711
  },
@@ -642,6 +723,12 @@ export const CONTRACT_SCHEMA = {
642
723
  },
643
724
  {
644
725
  "ref": "MarketplaceRefundRefusal"
726
+ },
727
+ {
728
+ "ref": "StandingAuthorisationRefusal"
729
+ },
730
+ {
731
+ "ref": "SettlementAssertionRefusal"
645
732
  }
646
733
  ]
647
734
  }
@@ -816,6 +903,163 @@ export const CONTRACT_SCHEMA = {
816
903
  }
817
904
  }
818
905
  },
906
+ "CitizenTransfer": {
907
+ "kind": "object",
908
+ "properties": {
909
+ "movementId": {
910
+ "type": {
911
+ "scalar": "string"
912
+ },
913
+ "readonly": true,
914
+ "optional": false
915
+ },
916
+ "fromWalletId": {
917
+ "type": {
918
+ "scalar": "string"
919
+ },
920
+ "readonly": true,
921
+ "optional": false
922
+ },
923
+ "payeeWalletId": {
924
+ "type": {
925
+ "scalar": "string"
926
+ },
927
+ "readonly": true,
928
+ "optional": false
929
+ },
930
+ "cents": {
931
+ "type": {
932
+ "ref": "Cents"
933
+ },
934
+ "readonly": true,
935
+ "optional": false
936
+ },
937
+ "transferredAt": {
938
+ "type": {
939
+ "ref": "Millis"
940
+ },
941
+ "readonly": true,
942
+ "optional": false
943
+ }
944
+ }
945
+ },
946
+ "CitizenTransferMade": {
947
+ "kind": "object",
948
+ "properties": {
949
+ "outcome": {
950
+ "type": {
951
+ "literal": "transferred"
952
+ },
953
+ "readonly": true,
954
+ "optional": false
955
+ },
956
+ "transfer": {
957
+ "type": {
958
+ "ref": "CitizenTransfer"
959
+ },
960
+ "readonly": true,
961
+ "optional": false
962
+ }
963
+ }
964
+ },
965
+ "CitizenTransferRefusal": {
966
+ "kind": "alias",
967
+ "of": {
968
+ "union": [
969
+ {
970
+ "literal": "assurance_not_money_grade"
971
+ },
972
+ {
973
+ "literal": "sender_has_no_citizen_wallet"
974
+ },
975
+ {
976
+ "literal": "payee_wallet_not_found"
977
+ },
978
+ {
979
+ "literal": "payee_wallet_not_a_citizens"
980
+ },
981
+ {
982
+ "literal": "payee_wallet_has_no_live_binding"
983
+ },
984
+ {
985
+ "literal": "payee_is_the_sender"
986
+ },
987
+ {
988
+ "literal": "amount_not_positive_whole_cents"
989
+ },
990
+ {
991
+ "literal": "unrestricted_cents_insufficient"
992
+ },
993
+ {
994
+ "literal": "cents_frozen"
995
+ },
996
+ {
997
+ "literal": "idempotency_key_reused_for_a_different_transfer"
998
+ },
999
+ {
1000
+ "literal": "carve_contended"
1001
+ }
1002
+ ]
1003
+ }
1004
+ },
1005
+ "CitizenTransferRefused": {
1006
+ "kind": "object",
1007
+ "properties": {
1008
+ "outcome": {
1009
+ "type": {
1010
+ "literal": "refused"
1011
+ },
1012
+ "readonly": true,
1013
+ "optional": false
1014
+ },
1015
+ "error": {
1016
+ "type": {
1017
+ "ref": "CitizenTransferRefusal"
1018
+ },
1019
+ "readonly": true,
1020
+ "optional": false
1021
+ }
1022
+ }
1023
+ },
1024
+ "CitizenTransferRequest": {
1025
+ "kind": "object",
1026
+ "properties": {
1027
+ "payeeWalletId": {
1028
+ "type": {
1029
+ "scalar": "string"
1030
+ },
1031
+ "readonly": true,
1032
+ "optional": false
1033
+ },
1034
+ "cents": {
1035
+ "type": {
1036
+ "ref": "Cents"
1037
+ },
1038
+ "readonly": true,
1039
+ "optional": false
1040
+ },
1041
+ "idempotencyKey": {
1042
+ "type": {
1043
+ "scalar": "string"
1044
+ },
1045
+ "readonly": true,
1046
+ "optional": false
1047
+ }
1048
+ }
1049
+ },
1050
+ "CitizenTransferResponse": {
1051
+ "kind": "alias",
1052
+ "of": {
1053
+ "union": [
1054
+ {
1055
+ "ref": "CitizenTransferMade"
1056
+ },
1057
+ {
1058
+ "ref": "CitizenTransferRefused"
1059
+ }
1060
+ ]
1061
+ }
1062
+ },
819
1063
  "Citizenship": {
820
1064
  "kind": "alias",
821
1065
  "of": {
@@ -1122,24 +1366,123 @@ export const CONTRACT_SCHEMA = {
1122
1366
  ]
1123
1367
  }
1124
1368
  },
1125
- "ContractOperation": {
1369
+ "ConsumptionRow": {
1370
+ "kind": "object",
1371
+ "properties": {
1372
+ "authorisation": {
1373
+ "type": {
1374
+ "scalar": "string"
1375
+ },
1376
+ "readonly": true,
1377
+ "optional": false
1378
+ },
1379
+ "service": {
1380
+ "type": {
1381
+ "scalar": "string"
1382
+ },
1383
+ "readonly": true,
1384
+ "optional": false
1385
+ },
1386
+ "quantity": {
1387
+ "type": {
1388
+ "scalar": "number"
1389
+ },
1390
+ "readonly": true,
1391
+ "optional": false
1392
+ },
1393
+ "unit": {
1394
+ "type": {
1395
+ "scalar": "string"
1396
+ },
1397
+ "readonly": true,
1398
+ "optional": false
1399
+ },
1400
+ "amount_cents": {
1401
+ "type": {
1402
+ "ref": "Cents"
1403
+ },
1404
+ "readonly": true,
1405
+ "optional": false
1406
+ },
1407
+ "cap_cents": {
1408
+ "type": {
1409
+ "ref": "Cents"
1410
+ },
1411
+ "readonly": true,
1412
+ "optional": false
1413
+ }
1414
+ }
1415
+ },
1416
+ "ConsumptionRowRefusal": {
1126
1417
  "kind": "alias",
1127
1418
  "of": {
1128
1419
  "union": [
1129
1420
  {
1130
- "literal": "read-own-wallet"
1131
- },
1132
- {
1133
- "literal": "read-purchase-result"
1421
+ "literal": "consumption_authorisation_unknown"
1134
1422
  },
1135
1423
  {
1136
- "literal": "authorise-purchase"
1424
+ "literal": "consumption_authorisation_revoked"
1137
1425
  },
1138
1426
  {
1139
- "literal": "cancel-purchase"
1427
+ "literal": "consumption_cap_not_the_acknowledged_cap"
1140
1428
  },
1141
1429
  {
1142
- "literal": "provision-citizenship"
1430
+ "literal": "consumption_over_cap"
1431
+ }
1432
+ ]
1433
+ }
1434
+ },
1435
+ "ConsumptionRowRefused": {
1436
+ "kind": "object",
1437
+ "properties": {
1438
+ "outcome": {
1439
+ "type": {
1440
+ "literal": "refused"
1441
+ },
1442
+ "readonly": true,
1443
+ "optional": false
1444
+ },
1445
+ "error": {
1446
+ "type": {
1447
+ "ref": "ConsumptionRowRefusal"
1448
+ },
1449
+ "readonly": true,
1450
+ "optional": false
1451
+ },
1452
+ "leg": {
1453
+ "type": {
1454
+ "literal": "consumption"
1455
+ },
1456
+ "readonly": true,
1457
+ "optional": false
1458
+ },
1459
+ "row": {
1460
+ "type": {
1461
+ "scalar": "number"
1462
+ },
1463
+ "readonly": true,
1464
+ "optional": false
1465
+ }
1466
+ }
1467
+ },
1468
+ "ContractOperation": {
1469
+ "kind": "alias",
1470
+ "of": {
1471
+ "union": [
1472
+ {
1473
+ "literal": "read-own-wallet"
1474
+ },
1475
+ {
1476
+ "literal": "read-purchase-result"
1477
+ },
1478
+ {
1479
+ "literal": "authorise-purchase"
1480
+ },
1481
+ {
1482
+ "literal": "cancel-purchase"
1483
+ },
1484
+ {
1485
+ "literal": "provision-citizenship"
1143
1486
  },
1144
1487
  {
1145
1488
  "literal": "read-own-citizenship"
@@ -1153,6 +1496,9 @@ export const CONTRACT_SCHEMA = {
1153
1496
  {
1154
1497
  "literal": "make-commercial-payment"
1155
1498
  },
1499
+ {
1500
+ "literal": "make-citizen-transfer"
1501
+ },
1156
1502
  {
1157
1503
  "literal": "place-quote"
1158
1504
  },
@@ -1173,6 +1519,205 @@ export const CONTRACT_SCHEMA = {
1173
1519
  },
1174
1520
  {
1175
1521
  "literal": "settle-marketplace-refund"
1522
+ },
1523
+ {
1524
+ "literal": "present-standing-authorisation"
1525
+ }
1526
+ ]
1527
+ }
1528
+ },
1529
+ "ContributionQualification": {
1530
+ "kind": "alias",
1531
+ "of": {
1532
+ "union": [
1533
+ {
1534
+ "ref": "ContributionQualified"
1535
+ },
1536
+ {
1537
+ "ref": "ContributionWithheld"
1538
+ }
1539
+ ]
1540
+ }
1541
+ },
1542
+ "ContributionQualified": {
1543
+ "kind": "object",
1544
+ "properties": {
1545
+ "gate": {
1546
+ "type": {
1547
+ "literal": "passed"
1548
+ },
1549
+ "readonly": true,
1550
+ "optional": false
1551
+ },
1552
+ "position": {
1553
+ "type": {
1554
+ "scalar": "string"
1555
+ },
1556
+ "readonly": true,
1557
+ "optional": false
1558
+ }
1559
+ }
1560
+ },
1561
+ "ContributionRow": {
1562
+ "kind": "object",
1563
+ "properties": {
1564
+ "node_id": {
1565
+ "type": {
1566
+ "ref": "NodeId"
1567
+ },
1568
+ "readonly": true,
1569
+ "optional": false
1570
+ },
1571
+ "type": {
1572
+ "type": {
1573
+ "ref": "ContributionType"
1574
+ },
1575
+ "readonly": true,
1576
+ "optional": false
1577
+ },
1578
+ "quantity": {
1579
+ "type": {
1580
+ "scalar": "number"
1581
+ },
1582
+ "readonly": true,
1583
+ "optional": false
1584
+ },
1585
+ "unit": {
1586
+ "type": {
1587
+ "scalar": "string"
1588
+ },
1589
+ "readonly": true,
1590
+ "optional": false
1591
+ },
1592
+ "fulfilment": {
1593
+ "type": {
1594
+ "scalar": "number"
1595
+ },
1596
+ "readonly": true,
1597
+ "optional": false
1598
+ },
1599
+ "qualified": {
1600
+ "type": {
1601
+ "ref": "ContributionQualification"
1602
+ },
1603
+ "readonly": true,
1604
+ "optional": false
1605
+ },
1606
+ "amount_cents": {
1607
+ "type": {
1608
+ "ref": "Cents"
1609
+ },
1610
+ "readonly": true,
1611
+ "optional": false
1612
+ }
1613
+ }
1614
+ },
1615
+ "ContributionRowRefusal": {
1616
+ "kind": "alias",
1617
+ "of": {
1618
+ "literal": "contribution_node_not_bound"
1619
+ }
1620
+ },
1621
+ "ContributionRowRefused": {
1622
+ "kind": "object",
1623
+ "properties": {
1624
+ "outcome": {
1625
+ "type": {
1626
+ "literal": "refused"
1627
+ },
1628
+ "readonly": true,
1629
+ "optional": false
1630
+ },
1631
+ "error": {
1632
+ "type": {
1633
+ "ref": "ContributionRowRefusal"
1634
+ },
1635
+ "readonly": true,
1636
+ "optional": false
1637
+ },
1638
+ "leg": {
1639
+ "type": {
1640
+ "literal": "contribution"
1641
+ },
1642
+ "readonly": true,
1643
+ "optional": false
1644
+ },
1645
+ "row": {
1646
+ "type": {
1647
+ "scalar": "number"
1648
+ },
1649
+ "readonly": true,
1650
+ "optional": false
1651
+ }
1652
+ }
1653
+ },
1654
+ "ContributionStoreIssuer": {
1655
+ "kind": "alias",
1656
+ "of": {
1657
+ "union": [
1658
+ {
1659
+ "literal": "percayso-cloud-store:dev"
1660
+ },
1661
+ {
1662
+ "literal": "percayso-cloud-store:stage"
1663
+ },
1664
+ {
1665
+ "literal": "percayso-cloud-store:main"
1666
+ }
1667
+ ]
1668
+ }
1669
+ },
1670
+ "ContributionType": {
1671
+ "kind": "alias",
1672
+ "of": {
1673
+ "union": [
1674
+ {
1675
+ "literal": "storage"
1676
+ },
1677
+ {
1678
+ "literal": "compute"
1679
+ },
1680
+ {
1681
+ "literal": "full-node"
1682
+ }
1683
+ ]
1684
+ }
1685
+ },
1686
+ "ContributionWithheld": {
1687
+ "kind": "object",
1688
+ "properties": {
1689
+ "gate": {
1690
+ "type": {
1691
+ "literal": "withheld"
1692
+ },
1693
+ "readonly": true,
1694
+ "optional": false
1695
+ },
1696
+ "position": {
1697
+ "type": {
1698
+ "scalar": "string"
1699
+ },
1700
+ "readonly": true,
1701
+ "optional": false
1702
+ },
1703
+ "reason": {
1704
+ "type": {
1705
+ "ref": "ContributionWithheldReason"
1706
+ },
1707
+ "readonly": true,
1708
+ "optional": false
1709
+ }
1710
+ }
1711
+ },
1712
+ "ContributionWithheldReason": {
1713
+ "kind": "alias",
1714
+ "of": {
1715
+ "union": [
1716
+ {
1717
+ "literal": "node_not_bound"
1718
+ },
1719
+ {
1720
+ "literal": "ladder_gate_not_passed"
1176
1721
  }
1177
1722
  ]
1178
1723
  }
@@ -1362,6 +1907,12 @@ export const CONTRACT_SCHEMA = {
1362
1907
  }
1363
1908
  }
1364
1909
  },
1910
+ "InstanceKeyId": {
1911
+ "kind": "alias",
1912
+ "of": {
1913
+ "scalar": "string"
1914
+ }
1915
+ },
1365
1916
  "InternalOperation": {
1366
1917
  "kind": "alias",
1367
1918
  "of": {
@@ -1908,6 +2459,12 @@ export const CONTRACT_SCHEMA = {
1908
2459
  "scalar": "number"
1909
2460
  }
1910
2461
  },
2462
+ "NodeId": {
2463
+ "kind": "alias",
2464
+ "of": {
2465
+ "scalar": "string"
2466
+ }
2467
+ },
1911
2468
  "OrganisationView": {
1912
2469
  "kind": "object",
1913
2470
  "properties": {
@@ -2086,6 +2643,12 @@ export const CONTRACT_SCHEMA = {
2086
2643
  }
2087
2644
  }
2088
2645
  },
2646
+ "PercaysoCloudAudience": {
2647
+ "kind": "alias",
2648
+ "of": {
2649
+ "literal": "percayso-cloud"
2650
+ }
2651
+ },
2089
2652
  "PurchaseAuthorisationResponse": {
2090
2653
  "kind": "alias",
2091
2654
  "of": {
@@ -2843,64 +3406,524 @@ export const CONTRACT_SCHEMA = {
2843
3406
  ]
2844
3407
  }
2845
3408
  },
2846
- "SignUpGrant": {
3409
+ "SettlementAssertionClaims": {
2847
3410
  "kind": "object",
2848
3411
  "properties": {
2849
- "movementId": {
3412
+ "iss": {
2850
3413
  "type": {
2851
- "scalar": "string"
3414
+ "ref": "ContributionStoreIssuer"
2852
3415
  },
2853
3416
  "readonly": true,
2854
3417
  "optional": false
2855
3418
  },
2856
- "cents": {
3419
+ "aud": {
2857
3420
  "type": {
2858
- "ref": "Cents"
3421
+ "literal": "cayso"
2859
3422
  },
2860
3423
  "readonly": true,
2861
3424
  "optional": false
2862
3425
  },
2863
- "restriction": {
3426
+ "period": {
2864
3427
  "type": {
2865
- "literal": "restricted"
3428
+ "ref": "SettlementPeriod"
2866
3429
  },
2867
3430
  "readonly": true,
2868
3431
  "optional": false
2869
3432
  },
2870
- "expiresAt": {
3433
+ "commitment": {
2871
3434
  "type": {
2872
- "ref": "Millis"
3435
+ "scalar": "string"
2873
3436
  },
2874
3437
  "readonly": true,
2875
3438
  "optional": false
2876
3439
  },
2877
- "grantedAt": {
3440
+ "contribution": {
2878
3441
  "type": {
2879
- "ref": "Millis"
3442
+ "array": {
3443
+ "ref": "ContributionRow"
3444
+ },
3445
+ "readonly": true
2880
3446
  },
2881
3447
  "readonly": true,
2882
3448
  "optional": false
2883
- }
2884
- }
2885
- },
2886
- "SignUpGrantTerms": {
2887
- "kind": "object",
2888
- "properties": {
2889
- "cents": {
3449
+ },
3450
+ "consumption": {
2890
3451
  "type": {
2891
- "ref": "Cents"
3452
+ "array": {
3453
+ "ref": "ConsumptionRow"
3454
+ },
3455
+ "readonly": true
2892
3456
  },
2893
3457
  "readonly": true,
2894
3458
  "optional": false
2895
3459
  },
2896
- "restrictionMonths": {
3460
+ "totals": {
2897
3461
  "type": {
2898
- "scalar": "number"
3462
+ "ref": "SettlementTotals"
2899
3463
  },
2900
3464
  "readonly": true,
2901
3465
  "optional": false
2902
- }
2903
- }
3466
+ },
3467
+ "jti": {
3468
+ "type": {
3469
+ "scalar": "string"
3470
+ },
3471
+ "readonly": true,
3472
+ "optional": false
3473
+ },
3474
+ "iat": {
3475
+ "type": {
3476
+ "scalar": "number"
3477
+ },
3478
+ "readonly": true,
3479
+ "optional": false
3480
+ },
3481
+ "exp": {
3482
+ "type": {
3483
+ "scalar": "number"
3484
+ },
3485
+ "readonly": true,
3486
+ "optional": false
3487
+ }
3488
+ }
3489
+ },
3490
+ "SettlementAssertionLevelRefusal": {
3491
+ "kind": "alias",
3492
+ "of": {
3493
+ "union": [
3494
+ {
3495
+ "literal": "settlement_malformed"
3496
+ },
3497
+ {
3498
+ "literal": "settlement_issuer_not_recognised"
3499
+ },
3500
+ {
3501
+ "literal": "settlement_issuer_for_another_environment"
3502
+ },
3503
+ {
3504
+ "literal": "settlement_signature_invalid"
3505
+ },
3506
+ {
3507
+ "literal": "settlement_audience_wrong"
3508
+ },
3509
+ {
3510
+ "literal": "settlement_expired"
3511
+ },
3512
+ {
3513
+ "literal": "settlement_issued_in_the_future"
3514
+ },
3515
+ {
3516
+ "literal": "settlement_jti_not_the_period"
3517
+ },
3518
+ {
3519
+ "literal": "settlement_period_already_settled_differently"
3520
+ },
3521
+ {
3522
+ "literal": "settlement_totals_do_not_add"
3523
+ }
3524
+ ]
3525
+ }
3526
+ },
3527
+ "SettlementAssertionRefusal": {
3528
+ "kind": "alias",
3529
+ "of": {
3530
+ "union": [
3531
+ {
3532
+ "ref": "SettlementAssertionLevelRefusal"
3533
+ },
3534
+ {
3535
+ "ref": "ContributionRowRefusal"
3536
+ },
3537
+ {
3538
+ "ref": "ConsumptionRowRefusal"
3539
+ }
3540
+ ]
3541
+ }
3542
+ },
3543
+ "SettlementAssertionRefused": {
3544
+ "kind": "object",
3545
+ "properties": {
3546
+ "outcome": {
3547
+ "type": {
3548
+ "literal": "refused"
3549
+ },
3550
+ "readonly": true,
3551
+ "optional": false
3552
+ },
3553
+ "error": {
3554
+ "type": {
3555
+ "ref": "SettlementAssertionLevelRefusal"
3556
+ },
3557
+ "readonly": true,
3558
+ "optional": false
3559
+ },
3560
+ "leg": {
3561
+ "type": {
3562
+ "null": true
3563
+ },
3564
+ "readonly": true,
3565
+ "optional": false
3566
+ },
3567
+ "row": {
3568
+ "type": {
3569
+ "null": true
3570
+ },
3571
+ "readonly": true,
3572
+ "optional": false
3573
+ }
3574
+ }
3575
+ },
3576
+ "SettlementAssertionRequest": {
3577
+ "kind": "object",
3578
+ "properties": {
3579
+ "settlementAssertion": {
3580
+ "type": {
3581
+ "scalar": "string"
3582
+ },
3583
+ "readonly": true,
3584
+ "optional": false
3585
+ }
3586
+ }
3587
+ },
3588
+ "SettlementAssertionResponse": {
3589
+ "kind": "alias",
3590
+ "of": {
3591
+ "union": [
3592
+ {
3593
+ "ref": "SettlementAssertionSettled"
3594
+ },
3595
+ {
3596
+ "ref": "SettlementAssertionRefused"
3597
+ },
3598
+ {
3599
+ "ref": "ContributionRowRefused"
3600
+ },
3601
+ {
3602
+ "ref": "ConsumptionRowRefused"
3603
+ }
3604
+ ]
3605
+ }
3606
+ },
3607
+ "SettlementAssertionSettled": {
3608
+ "kind": "object",
3609
+ "properties": {
3610
+ "outcome": {
3611
+ "type": {
3612
+ "literal": "settled"
3613
+ },
3614
+ "readonly": true,
3615
+ "optional": false
3616
+ },
3617
+ "jti": {
3618
+ "type": {
3619
+ "scalar": "string"
3620
+ },
3621
+ "readonly": true,
3622
+ "optional": false
3623
+ }
3624
+ }
3625
+ },
3626
+ "SettlementPeriod": {
3627
+ "kind": "object",
3628
+ "properties": {
3629
+ "id": {
3630
+ "type": {
3631
+ "ref": "SettlementPeriodId"
3632
+ },
3633
+ "readonly": true,
3634
+ "optional": false
3635
+ },
3636
+ "starts_at": {
3637
+ "type": {
3638
+ "scalar": "number"
3639
+ },
3640
+ "readonly": true,
3641
+ "optional": false
3642
+ },
3643
+ "ends_at": {
3644
+ "type": {
3645
+ "scalar": "number"
3646
+ },
3647
+ "readonly": true,
3648
+ "optional": false
3649
+ }
3650
+ }
3651
+ },
3652
+ "SettlementPeriodId": {
3653
+ "kind": "alias",
3654
+ "of": {
3655
+ "scalar": "string"
3656
+ }
3657
+ },
3658
+ "SettlementPeriodRule": {
3659
+ "kind": "alias",
3660
+ "of": {
3661
+ "scalar": "string"
3662
+ }
3663
+ },
3664
+ "SettlementTotals": {
3665
+ "kind": "object",
3666
+ "properties": {
3667
+ "contribution_cents": {
3668
+ "type": {
3669
+ "ref": "Cents"
3670
+ },
3671
+ "readonly": true,
3672
+ "optional": false
3673
+ },
3674
+ "consumption_cents": {
3675
+ "type": {
3676
+ "ref": "Cents"
3677
+ },
3678
+ "readonly": true,
3679
+ "optional": false
3680
+ }
3681
+ }
3682
+ },
3683
+ "SignUpGrant": {
3684
+ "kind": "object",
3685
+ "properties": {
3686
+ "movementId": {
3687
+ "type": {
3688
+ "scalar": "string"
3689
+ },
3690
+ "readonly": true,
3691
+ "optional": false
3692
+ },
3693
+ "cents": {
3694
+ "type": {
3695
+ "ref": "Cents"
3696
+ },
3697
+ "readonly": true,
3698
+ "optional": false
3699
+ },
3700
+ "restriction": {
3701
+ "type": {
3702
+ "literal": "restricted"
3703
+ },
3704
+ "readonly": true,
3705
+ "optional": false
3706
+ },
3707
+ "expiresAt": {
3708
+ "type": {
3709
+ "ref": "Millis"
3710
+ },
3711
+ "readonly": true,
3712
+ "optional": false
3713
+ },
3714
+ "grantedAt": {
3715
+ "type": {
3716
+ "ref": "Millis"
3717
+ },
3718
+ "readonly": true,
3719
+ "optional": false
3720
+ }
3721
+ }
3722
+ },
3723
+ "SignUpGrantTerms": {
3724
+ "kind": "object",
3725
+ "properties": {
3726
+ "cents": {
3727
+ "type": {
3728
+ "ref": "Cents"
3729
+ },
3730
+ "readonly": true,
3731
+ "optional": false
3732
+ },
3733
+ "restrictionMonths": {
3734
+ "type": {
3735
+ "scalar": "number"
3736
+ },
3737
+ "readonly": true,
3738
+ "optional": false
3739
+ }
3740
+ }
3741
+ },
3742
+ "StandingAuthorisationAcknowledged": {
3743
+ "kind": "object",
3744
+ "properties": {
3745
+ "outcome": {
3746
+ "type": {
3747
+ "literal": "acknowledged"
3748
+ },
3749
+ "readonly": true,
3750
+ "optional": false
3751
+ },
3752
+ "acknowledgement": {
3753
+ "type": {
3754
+ "scalar": "string"
3755
+ },
3756
+ "readonly": true,
3757
+ "optional": false
3758
+ }
3759
+ }
3760
+ },
3761
+ "StandingAuthorisationClaims": {
3762
+ "kind": "object",
3763
+ "properties": {
3764
+ "iss": {
3765
+ "type": {
3766
+ "ref": "InstanceKeyId"
3767
+ },
3768
+ "readonly": true,
3769
+ "optional": false
3770
+ },
3771
+ "sub": {
3772
+ "type": {
3773
+ "ref": "InstanceKeyId"
3774
+ },
3775
+ "readonly": true,
3776
+ "optional": false
3777
+ },
3778
+ "aud": {
3779
+ "type": {
3780
+ "ref": "PercaysoCloudAudience"
3781
+ },
3782
+ "readonly": true,
3783
+ "optional": false
3784
+ },
3785
+ "cap_cents": {
3786
+ "type": {
3787
+ "ref": "Cents"
3788
+ },
3789
+ "readonly": true,
3790
+ "optional": false
3791
+ },
3792
+ "period": {
3793
+ "type": {
3794
+ "ref": "SettlementPeriodRule"
3795
+ },
3796
+ "readonly": true,
3797
+ "optional": false
3798
+ },
3799
+ "iat": {
3800
+ "type": {
3801
+ "scalar": "number"
3802
+ },
3803
+ "readonly": true,
3804
+ "optional": false
3805
+ },
3806
+ "exp": {
3807
+ "type": {
3808
+ "scalar": "number"
3809
+ },
3810
+ "readonly": true,
3811
+ "optional": false
3812
+ },
3813
+ "jti": {
3814
+ "type": {
3815
+ "scalar": "string"
3816
+ },
3817
+ "readonly": true,
3818
+ "optional": false
3819
+ }
3820
+ }
3821
+ },
3822
+ "StandingAuthorisationRefusal": {
3823
+ "kind": "alias",
3824
+ "of": {
3825
+ "union": [
3826
+ {
3827
+ "literal": "assurance_not_money_grade"
3828
+ },
3829
+ {
3830
+ "literal": "wallet_has_no_live_binding"
3831
+ },
3832
+ {
3833
+ "literal": "authorisation_malformed"
3834
+ },
3835
+ {
3836
+ "literal": "instance_key_malformed"
3837
+ },
3838
+ {
3839
+ "literal": "instance_key_not_the_kid"
3840
+ },
3841
+ {
3842
+ "literal": "authorisation_signature_invalid"
3843
+ },
3844
+ {
3845
+ "literal": "authorisation_not_signed_by_its_spender"
3846
+ },
3847
+ {
3848
+ "literal": "authorisation_audience_wrong"
3849
+ },
3850
+ {
3851
+ "literal": "authorisation_expired"
3852
+ },
3853
+ {
3854
+ "literal": "authorisation_issued_in_the_future"
3855
+ },
3856
+ {
3857
+ "literal": "authorisation_outlives_its_ceiling"
3858
+ },
3859
+ {
3860
+ "literal": "settlement_period_rule_not_recognised"
3861
+ },
3862
+ {
3863
+ "literal": "authorisation_jti_reused_for_a_different_authorisation"
3864
+ },
3865
+ {
3866
+ "literal": "authorisation_revoked"
3867
+ },
3868
+ {
3869
+ "literal": "cap_not_delegable"
3870
+ },
3871
+ {
3872
+ "literal": "instance_key_bound_to_another_wallet"
3873
+ }
3874
+ ]
3875
+ }
3876
+ },
3877
+ "StandingAuthorisationRefused": {
3878
+ "kind": "object",
3879
+ "properties": {
3880
+ "outcome": {
3881
+ "type": {
3882
+ "literal": "refused"
3883
+ },
3884
+ "readonly": true,
3885
+ "optional": false
3886
+ },
3887
+ "error": {
3888
+ "type": {
3889
+ "ref": "StandingAuthorisationRefusal"
3890
+ },
3891
+ "readonly": true,
3892
+ "optional": false
3893
+ }
3894
+ }
3895
+ },
3896
+ "StandingAuthorisationRequest": {
3897
+ "kind": "object",
3898
+ "properties": {
3899
+ "standingAuthorisation": {
3900
+ "type": {
3901
+ "scalar": "string"
3902
+ },
3903
+ "readonly": true,
3904
+ "optional": false
3905
+ },
3906
+ "instanceKey": {
3907
+ "type": {
3908
+ "scalar": "string"
3909
+ },
3910
+ "readonly": true,
3911
+ "optional": false
3912
+ }
3913
+ }
3914
+ },
3915
+ "StandingAuthorisationResponse": {
3916
+ "kind": "alias",
3917
+ "of": {
3918
+ "union": [
3919
+ {
3920
+ "ref": "StandingAuthorisationAcknowledged"
3921
+ },
3922
+ {
3923
+ "ref": "StandingAuthorisationRefused"
3924
+ }
3925
+ ]
3926
+ }
2904
3927
  },
2905
3928
  "StoreSignedStatement": {
2906
3929
  "kind": "object",
@@ -3116,5 +4139,945 @@ export const CONTRACT_SCHEMA = {
3116
4139
  }
3117
4140
  }
3118
4141
  }
4142
+ },
4143
+ "operator": {
4144
+ "routes": {
4145
+ "movements": {
4146
+ "method": "GET",
4147
+ "path": "/api/operator/movements",
4148
+ "scope": "list-movements-as-operator"
4149
+ },
4150
+ "purchases": {
4151
+ "method": "GET",
4152
+ "path": "/api/operator/purchases",
4153
+ "scope": "list-purchases-as-operator"
4154
+ },
4155
+ "quickenings": {
4156
+ "method": "GET",
4157
+ "path": "/api/operator/quickenings",
4158
+ "scope": "read-quickening-ladder-as-operator"
4159
+ }
4160
+ },
4161
+ "types": {
4162
+ "LiveQuickeningBand": {
4163
+ "kind": "object",
4164
+ "properties": {
4165
+ "band": {
4166
+ "type": {
4167
+ "scalar": "number"
4168
+ },
4169
+ "readonly": true,
4170
+ "optional": false
4171
+ },
4172
+ "publishedValuePence": {
4173
+ "type": {
4174
+ "scalar": "number"
4175
+ },
4176
+ "readonly": true,
4177
+ "optional": false
4178
+ }
4179
+ }
4180
+ },
4181
+ "MovementKind": {
4182
+ "kind": "alias",
4183
+ "of": {
4184
+ "union": [
4185
+ {
4186
+ "literal": "issuance"
4187
+ },
4188
+ {
4189
+ "literal": "purchase"
4190
+ },
4191
+ {
4192
+ "literal": "grant"
4193
+ },
4194
+ {
4195
+ "literal": "charge"
4196
+ },
4197
+ {
4198
+ "literal": "payout"
4199
+ },
4200
+ {
4201
+ "literal": "transfer"
4202
+ },
4203
+ {
4204
+ "literal": "burn"
4205
+ },
4206
+ {
4207
+ "literal": "forfeit"
4208
+ },
4209
+ {
4210
+ "literal": "commercial_payment"
4211
+ },
4212
+ {
4213
+ "literal": "quoted_sale"
4214
+ },
4215
+ {
4216
+ "literal": "buy_back"
4217
+ },
4218
+ {
4219
+ "literal": "quoted_sale_compensation"
4220
+ }
4221
+ ]
4222
+ }
4223
+ },
4224
+ "OperatorAccessRefusal": {
4225
+ "kind": "alias",
4226
+ "of": {
4227
+ "union": [
4228
+ {
4229
+ "literal": "assertion_scope_refused"
4230
+ },
4231
+ {
4232
+ "literal": "subject_not_a_natural_person"
4233
+ },
4234
+ {
4235
+ "literal": "not_an_operator"
4236
+ }
4237
+ ]
4238
+ }
4239
+ },
4240
+ "OperatorAuthenticationRefusal": {
4241
+ "kind": "alias",
4242
+ "of": {
4243
+ "union": [
4244
+ {
4245
+ "literal": "unauthenticated"
4246
+ },
4247
+ {
4248
+ "literal": "assertion_invalid"
4249
+ },
4250
+ {
4251
+ "literal": "assertion_expired"
4252
+ },
4253
+ {
4254
+ "literal": "assertion_issuer_refused"
4255
+ },
4256
+ {
4257
+ "literal": "assertion_key_refused"
4258
+ },
4259
+ {
4260
+ "literal": "assertion_algorithm_refused"
4261
+ },
4262
+ {
4263
+ "literal": "assertion_subject_refused"
4264
+ },
4265
+ {
4266
+ "literal": "assertion_replayed"
4267
+ }
4268
+ ]
4269
+ }
4270
+ },
4271
+ "OperatorMovementRow": {
4272
+ "kind": "object",
4273
+ "properties": {
4274
+ "movementId": {
4275
+ "type": {
4276
+ "scalar": "string"
4277
+ },
4278
+ "readonly": true,
4279
+ "optional": false
4280
+ },
4281
+ "occurredAt": {
4282
+ "type": {
4283
+ "scalar": "string"
4284
+ },
4285
+ "readonly": true,
4286
+ "optional": false
4287
+ },
4288
+ "kind": {
4289
+ "type": {
4290
+ "ref": "MovementKind"
4291
+ },
4292
+ "readonly": true,
4293
+ "optional": false
4294
+ },
4295
+ "fromWalletId": {
4296
+ "type": {
4297
+ "union": [
4298
+ {
4299
+ "scalar": "string"
4300
+ },
4301
+ {
4302
+ "null": true
4303
+ }
4304
+ ]
4305
+ },
4306
+ "readonly": true,
4307
+ "optional": false
4308
+ },
4309
+ "toWalletId": {
4310
+ "type": {
4311
+ "union": [
4312
+ {
4313
+ "scalar": "string"
4314
+ },
4315
+ {
4316
+ "null": true
4317
+ }
4318
+ ]
4319
+ },
4320
+ "readonly": true,
4321
+ "optional": false
4322
+ },
4323
+ "cents": {
4324
+ "type": {
4325
+ "ref": "Cents"
4326
+ },
4327
+ "readonly": true,
4328
+ "optional": false
4329
+ },
4330
+ "restriction": {
4331
+ "type": {
4332
+ "union": [
4333
+ {
4334
+ "literal": "restricted"
4335
+ },
4336
+ {
4337
+ "literal": "unrestricted"
4338
+ }
4339
+ ]
4340
+ },
4341
+ "readonly": true,
4342
+ "optional": false
4343
+ }
4344
+ }
4345
+ },
4346
+ "OperatorMovementsError": {
4347
+ "kind": "object",
4348
+ "properties": {
4349
+ "error": {
4350
+ "type": {
4351
+ "ref": "OperatorMovementsErrorCode"
4352
+ },
4353
+ "readonly": true,
4354
+ "optional": false
4355
+ }
4356
+ }
4357
+ },
4358
+ "OperatorMovementsErrorCode": {
4359
+ "kind": "alias",
4360
+ "of": {
4361
+ "union": [
4362
+ {
4363
+ "ref": "OperatorMovementsQueryRefusal"
4364
+ },
4365
+ {
4366
+ "ref": "OperatorAuthenticationRefusal"
4367
+ },
4368
+ {
4369
+ "ref": "OperatorAccessRefusal"
4370
+ },
4371
+ {
4372
+ "ref": "OperatorRateLimited"
4373
+ },
4374
+ {
4375
+ "ref": "OperatorReadUnavailable"
4376
+ },
4377
+ {
4378
+ "ref": "OperatorMovementsUnavailable"
4379
+ },
4380
+ {
4381
+ "ref": "OperatorReadFailed"
4382
+ }
4383
+ ]
4384
+ }
4385
+ },
4386
+ "OperatorMovementsPage": {
4387
+ "kind": "object",
4388
+ "properties": {
4389
+ "movements": {
4390
+ "type": {
4391
+ "array": {
4392
+ "ref": "OperatorMovementRow"
4393
+ },
4394
+ "readonly": true
4395
+ },
4396
+ "readonly": true,
4397
+ "optional": false
4398
+ },
4399
+ "nextCursor": {
4400
+ "type": {
4401
+ "union": [
4402
+ {
4403
+ "scalar": "string"
4404
+ },
4405
+ {
4406
+ "null": true
4407
+ }
4408
+ ]
4409
+ },
4410
+ "readonly": true,
4411
+ "optional": false
4412
+ },
4413
+ "anchor": {
4414
+ "type": {
4415
+ "union": [
4416
+ {
4417
+ "scalar": "string"
4418
+ },
4419
+ {
4420
+ "null": true
4421
+ }
4422
+ ]
4423
+ },
4424
+ "readonly": true,
4425
+ "optional": false
4426
+ },
4427
+ "total": {
4428
+ "type": {
4429
+ "scalar": "number"
4430
+ },
4431
+ "readonly": true,
4432
+ "optional": false
4433
+ },
4434
+ "pageCount": {
4435
+ "type": {
4436
+ "scalar": "number"
4437
+ },
4438
+ "readonly": true,
4439
+ "optional": false
4440
+ },
4441
+ "page": {
4442
+ "type": {
4443
+ "scalar": "number"
4444
+ },
4445
+ "readonly": true,
4446
+ "optional": false
4447
+ }
4448
+ }
4449
+ },
4450
+ "OperatorMovementsQuery": {
4451
+ "kind": "object",
4452
+ "properties": {
4453
+ "after": {
4454
+ "type": {
4455
+ "scalar": "string"
4456
+ },
4457
+ "readonly": true,
4458
+ "optional": true
4459
+ },
4460
+ "anchor": {
4461
+ "type": {
4462
+ "scalar": "string"
4463
+ },
4464
+ "readonly": true,
4465
+ "optional": true
4466
+ },
4467
+ "limit": {
4468
+ "type": {
4469
+ "scalar": "number"
4470
+ },
4471
+ "readonly": true,
4472
+ "optional": true
4473
+ },
4474
+ "page": {
4475
+ "type": {
4476
+ "scalar": "number"
4477
+ },
4478
+ "readonly": true,
4479
+ "optional": true
4480
+ },
4481
+ "walletId": {
4482
+ "type": {
4483
+ "scalar": "string"
4484
+ },
4485
+ "readonly": true,
4486
+ "optional": true
4487
+ },
4488
+ "from": {
4489
+ "type": {
4490
+ "scalar": "string"
4491
+ },
4492
+ "readonly": true,
4493
+ "optional": true
4494
+ },
4495
+ "to": {
4496
+ "type": {
4497
+ "scalar": "string"
4498
+ },
4499
+ "readonly": true,
4500
+ "optional": true
4501
+ },
4502
+ "kind": {
4503
+ "type": {
4504
+ "ref": "MovementKind"
4505
+ },
4506
+ "readonly": true,
4507
+ "optional": true
4508
+ }
4509
+ }
4510
+ },
4511
+ "OperatorMovementsQueryRefusal": {
4512
+ "kind": "alias",
4513
+ "of": {
4514
+ "union": [
4515
+ {
4516
+ "literal": "invalid_cursor"
4517
+ },
4518
+ {
4519
+ "literal": "invalid_anchor"
4520
+ },
4521
+ {
4522
+ "literal": "invalid_wallet_id"
4523
+ },
4524
+ {
4525
+ "literal": "invalid_from"
4526
+ },
4527
+ {
4528
+ "literal": "invalid_to"
4529
+ },
4530
+ {
4531
+ "literal": "invalid_kind"
4532
+ },
4533
+ {
4534
+ "literal": "status_not_filterable_on_movements"
4535
+ },
4536
+ {
4537
+ "literal": "repeated_walletId"
4538
+ },
4539
+ {
4540
+ "literal": "repeated_from"
4541
+ },
4542
+ {
4543
+ "literal": "repeated_to"
4544
+ },
4545
+ {
4546
+ "literal": "repeated_kind"
4547
+ }
4548
+ ]
4549
+ }
4550
+ },
4551
+ "OperatorMovementsResponse": {
4552
+ "kind": "alias",
4553
+ "of": {
4554
+ "union": [
4555
+ {
4556
+ "ref": "OperatorMovementsPage"
4557
+ },
4558
+ {
4559
+ "ref": "OperatorVerificationRefused"
4560
+ },
4561
+ {
4562
+ "ref": "OperatorMovementsError"
4563
+ }
4564
+ ]
4565
+ }
4566
+ },
4567
+ "OperatorMovementsUnavailable": {
4568
+ "kind": "alias",
4569
+ "of": {
4570
+ "literal": "operator_movements_reader_not_configured"
4571
+ }
4572
+ },
4573
+ "OperatorPurchaseRow": {
4574
+ "kind": "object",
4575
+ "properties": {
4576
+ "purchaseId": {
4577
+ "type": {
4578
+ "scalar": "string"
4579
+ },
4580
+ "readonly": true,
4581
+ "optional": false
4582
+ },
4583
+ "createdAt": {
4584
+ "type": {
4585
+ "scalar": "string"
4586
+ },
4587
+ "readonly": true,
4588
+ "optional": false
4589
+ },
4590
+ "walletId": {
4591
+ "type": {
4592
+ "scalar": "string"
4593
+ },
4594
+ "readonly": true,
4595
+ "optional": false
4596
+ },
4597
+ "cents": {
4598
+ "type": {
4599
+ "ref": "Cents"
4600
+ },
4601
+ "readonly": true,
4602
+ "optional": false
4603
+ },
4604
+ "status": {
4605
+ "type": {
4606
+ "ref": "PurchaseStatus"
4607
+ },
4608
+ "readonly": true,
4609
+ "optional": false
4610
+ },
4611
+ "failureReason": {
4612
+ "type": {
4613
+ "union": [
4614
+ {
4615
+ "ref": "PurchaseFailureReason"
4616
+ },
4617
+ {
4618
+ "null": true
4619
+ }
4620
+ ]
4621
+ },
4622
+ "readonly": true,
4623
+ "optional": false
4624
+ }
4625
+ }
4626
+ },
4627
+ "OperatorPurchasesError": {
4628
+ "kind": "object",
4629
+ "properties": {
4630
+ "error": {
4631
+ "type": {
4632
+ "ref": "OperatorPurchasesErrorCode"
4633
+ },
4634
+ "readonly": true,
4635
+ "optional": false
4636
+ }
4637
+ }
4638
+ },
4639
+ "OperatorPurchasesErrorCode": {
4640
+ "kind": "alias",
4641
+ "of": {
4642
+ "union": [
4643
+ {
4644
+ "ref": "OperatorPurchasesQueryRefusal"
4645
+ },
4646
+ {
4647
+ "ref": "OperatorAuthenticationRefusal"
4648
+ },
4649
+ {
4650
+ "ref": "OperatorAccessRefusal"
4651
+ },
4652
+ {
4653
+ "ref": "OperatorRateLimited"
4654
+ },
4655
+ {
4656
+ "ref": "OperatorReadUnavailable"
4657
+ },
4658
+ {
4659
+ "ref": "OperatorPurchasesUnavailable"
4660
+ },
4661
+ {
4662
+ "ref": "OperatorReadFailed"
4663
+ }
4664
+ ]
4665
+ }
4666
+ },
4667
+ "OperatorPurchasesPage": {
4668
+ "kind": "object",
4669
+ "properties": {
4670
+ "purchases": {
4671
+ "type": {
4672
+ "array": {
4673
+ "ref": "OperatorPurchaseRow"
4674
+ },
4675
+ "readonly": true
4676
+ },
4677
+ "readonly": true,
4678
+ "optional": false
4679
+ },
4680
+ "nextCursor": {
4681
+ "type": {
4682
+ "union": [
4683
+ {
4684
+ "scalar": "string"
4685
+ },
4686
+ {
4687
+ "null": true
4688
+ }
4689
+ ]
4690
+ },
4691
+ "readonly": true,
4692
+ "optional": false
4693
+ },
4694
+ "anchor": {
4695
+ "type": {
4696
+ "union": [
4697
+ {
4698
+ "scalar": "string"
4699
+ },
4700
+ {
4701
+ "null": true
4702
+ }
4703
+ ]
4704
+ },
4705
+ "readonly": true,
4706
+ "optional": false
4707
+ },
4708
+ "total": {
4709
+ "type": {
4710
+ "scalar": "number"
4711
+ },
4712
+ "readonly": true,
4713
+ "optional": false
4714
+ },
4715
+ "pageCount": {
4716
+ "type": {
4717
+ "scalar": "number"
4718
+ },
4719
+ "readonly": true,
4720
+ "optional": false
4721
+ },
4722
+ "page": {
4723
+ "type": {
4724
+ "scalar": "number"
4725
+ },
4726
+ "readonly": true,
4727
+ "optional": false
4728
+ }
4729
+ }
4730
+ },
4731
+ "OperatorPurchasesQuery": {
4732
+ "kind": "object",
4733
+ "properties": {
4734
+ "after": {
4735
+ "type": {
4736
+ "scalar": "string"
4737
+ },
4738
+ "readonly": true,
4739
+ "optional": true
4740
+ },
4741
+ "anchor": {
4742
+ "type": {
4743
+ "scalar": "string"
4744
+ },
4745
+ "readonly": true,
4746
+ "optional": true
4747
+ },
4748
+ "limit": {
4749
+ "type": {
4750
+ "scalar": "number"
4751
+ },
4752
+ "readonly": true,
4753
+ "optional": true
4754
+ },
4755
+ "page": {
4756
+ "type": {
4757
+ "scalar": "number"
4758
+ },
4759
+ "readonly": true,
4760
+ "optional": true
4761
+ },
4762
+ "walletId": {
4763
+ "type": {
4764
+ "scalar": "string"
4765
+ },
4766
+ "readonly": true,
4767
+ "optional": true
4768
+ },
4769
+ "from": {
4770
+ "type": {
4771
+ "scalar": "string"
4772
+ },
4773
+ "readonly": true,
4774
+ "optional": true
4775
+ },
4776
+ "to": {
4777
+ "type": {
4778
+ "scalar": "string"
4779
+ },
4780
+ "readonly": true,
4781
+ "optional": true
4782
+ },
4783
+ "status": {
4784
+ "type": {
4785
+ "ref": "PurchaseStatus"
4786
+ },
4787
+ "readonly": true,
4788
+ "optional": true
4789
+ },
4790
+ "failureReason": {
4791
+ "type": {
4792
+ "ref": "PurchaseFailureReason"
4793
+ },
4794
+ "readonly": true,
4795
+ "optional": true
4796
+ }
4797
+ }
4798
+ },
4799
+ "OperatorPurchasesQueryRefusal": {
4800
+ "kind": "alias",
4801
+ "of": {
4802
+ "union": [
4803
+ {
4804
+ "literal": "invalid_cursor"
4805
+ },
4806
+ {
4807
+ "literal": "invalid_anchor"
4808
+ },
4809
+ {
4810
+ "literal": "invalid_wallet_id"
4811
+ },
4812
+ {
4813
+ "literal": "invalid_from"
4814
+ },
4815
+ {
4816
+ "literal": "invalid_to"
4817
+ },
4818
+ {
4819
+ "literal": "invalid_status"
4820
+ },
4821
+ {
4822
+ "literal": "invalid_failure_reason"
4823
+ },
4824
+ {
4825
+ "literal": "repeated_walletId"
4826
+ },
4827
+ {
4828
+ "literal": "repeated_from"
4829
+ },
4830
+ {
4831
+ "literal": "repeated_to"
4832
+ },
4833
+ {
4834
+ "literal": "repeated_status"
4835
+ },
4836
+ {
4837
+ "literal": "repeated_failureReason"
4838
+ }
4839
+ ]
4840
+ }
4841
+ },
4842
+ "OperatorPurchasesResponse": {
4843
+ "kind": "alias",
4844
+ "of": {
4845
+ "union": [
4846
+ {
4847
+ "ref": "OperatorPurchasesPage"
4848
+ },
4849
+ {
4850
+ "ref": "OperatorVerificationRefused"
4851
+ },
4852
+ {
4853
+ "ref": "OperatorPurchasesError"
4854
+ }
4855
+ ]
4856
+ }
4857
+ },
4858
+ "OperatorPurchasesUnavailable": {
4859
+ "kind": "alias",
4860
+ "of": {
4861
+ "literal": "operator_purchases_reader_not_configured"
4862
+ }
4863
+ },
4864
+ "OperatorRateLimited": {
4865
+ "kind": "alias",
4866
+ "of": {
4867
+ "literal": "request_rate_limited"
4868
+ }
4869
+ },
4870
+ "OperatorReadFailed": {
4871
+ "kind": "alias",
4872
+ "of": {
4873
+ "literal": "internal_error"
4874
+ }
4875
+ },
4876
+ "OperatorReadRoute": {
4877
+ "kind": "object",
4878
+ "properties": {
4879
+ "method": {
4880
+ "type": {
4881
+ "literal": "GET"
4882
+ },
4883
+ "readonly": true,
4884
+ "optional": false
4885
+ },
4886
+ "path": {
4887
+ "type": {
4888
+ "scalar": "string"
4889
+ },
4890
+ "readonly": true,
4891
+ "optional": false
4892
+ },
4893
+ "scope": {
4894
+ "type": {
4895
+ "ref": "OperatorReadScope"
4896
+ },
4897
+ "readonly": true,
4898
+ "optional": false
4899
+ }
4900
+ }
4901
+ },
4902
+ "OperatorReadScope": {
4903
+ "kind": "alias",
4904
+ "of": {
4905
+ "union": [
4906
+ {
4907
+ "literal": "list-movements-as-operator"
4908
+ },
4909
+ {
4910
+ "literal": "list-purchases-as-operator"
4911
+ },
4912
+ {
4913
+ "literal": "read-quickening-ladder-as-operator"
4914
+ }
4915
+ ]
4916
+ }
4917
+ },
4918
+ "OperatorReadUnavailable": {
4919
+ "kind": "alias",
4920
+ "of": {
4921
+ "union": [
4922
+ {
4923
+ "literal": "verifier_not_configured"
4924
+ },
4925
+ {
4926
+ "literal": "issuer_registry_not_configured"
4927
+ },
4928
+ {
4929
+ "literal": "operator_read_audit_unavailable"
4930
+ }
4931
+ ]
4932
+ }
4933
+ },
4934
+ "OperatorVerificationRefused": {
4935
+ "kind": "object",
4936
+ "properties": {
4937
+ "outcome": {
4938
+ "type": {
4939
+ "literal": "refused"
4940
+ },
4941
+ "readonly": true,
4942
+ "optional": false
4943
+ },
4944
+ "error": {
4945
+ "type": {
4946
+ "literal": "verification_refused"
4947
+ },
4948
+ "readonly": true,
4949
+ "optional": false
4950
+ }
4951
+ }
4952
+ },
4953
+ "QuickeningLadder": {
4954
+ "kind": "object",
4955
+ "properties": {
4956
+ "bands": {
4957
+ "type": {
4958
+ "array": {
4959
+ "ref": "QuickeningLadderBand"
4960
+ },
4961
+ "readonly": true
4962
+ },
4963
+ "readonly": true,
4964
+ "optional": false
4965
+ },
4966
+ "live": {
4967
+ "type": {
4968
+ "union": [
4969
+ {
4970
+ "ref": "LiveQuickeningBand"
4971
+ },
4972
+ {
4973
+ "null": true
4974
+ }
4975
+ ]
4976
+ },
4977
+ "readonly": true,
4978
+ "optional": false
4979
+ },
4980
+ "activeCitizens": {
4981
+ "type": {
4982
+ "scalar": "number"
4983
+ },
4984
+ "readonly": true,
4985
+ "optional": false
4986
+ }
4987
+ }
4988
+ },
4989
+ "QuickeningLadderBand": {
4990
+ "kind": "object",
4991
+ "properties": {
4992
+ "band": {
4993
+ "type": {
4994
+ "scalar": "number"
4995
+ },
4996
+ "readonly": true,
4997
+ "optional": false
4998
+ },
4999
+ "fromActiveCitizens": {
5000
+ "type": {
5001
+ "scalar": "number"
5002
+ },
5003
+ "readonly": true,
5004
+ "optional": false
5005
+ },
5006
+ "publishedValuePence": {
5007
+ "type": {
5008
+ "scalar": "number"
5009
+ },
5010
+ "readonly": true,
5011
+ "optional": false
5012
+ }
5013
+ }
5014
+ },
5015
+ "QuickeningLadderError": {
5016
+ "kind": "object",
5017
+ "properties": {
5018
+ "error": {
5019
+ "type": {
5020
+ "ref": "QuickeningLadderErrorCode"
5021
+ },
5022
+ "readonly": true,
5023
+ "optional": false
5024
+ }
5025
+ }
5026
+ },
5027
+ "QuickeningLadderErrorCode": {
5028
+ "kind": "alias",
5029
+ "of": {
5030
+ "union": [
5031
+ {
5032
+ "ref": "OperatorAuthenticationRefusal"
5033
+ },
5034
+ {
5035
+ "ref": "OperatorAccessRefusal"
5036
+ },
5037
+ {
5038
+ "ref": "OperatorRateLimited"
5039
+ },
5040
+ {
5041
+ "ref": "OperatorReadUnavailable"
5042
+ },
5043
+ {
5044
+ "ref": "QuickeningLadderUnavailable"
5045
+ },
5046
+ {
5047
+ "ref": "OperatorReadFailed"
5048
+ }
5049
+ ]
5050
+ }
5051
+ },
5052
+ "QuickeningLadderResponse": {
5053
+ "kind": "alias",
5054
+ "of": {
5055
+ "union": [
5056
+ {
5057
+ "ref": "QuickeningLadder"
5058
+ },
5059
+ {
5060
+ "ref": "OperatorVerificationRefused"
5061
+ },
5062
+ {
5063
+ "ref": "QuickeningLadderError"
5064
+ }
5065
+ ]
5066
+ }
5067
+ },
5068
+ "QuickeningLadderUnavailable": {
5069
+ "kind": "alias",
5070
+ "of": {
5071
+ "union": [
5072
+ {
5073
+ "literal": "quickening_ladder_reader_not_configured"
5074
+ },
5075
+ {
5076
+ "literal": "quickening_ladder_not_configured"
5077
+ }
5078
+ ]
5079
+ }
5080
+ }
5081
+ }
3119
5082
  }
3120
5083
  };