@stridge/openapi 0.5.0 → 0.5.1

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.
package/dist/types.d.ts CHANGED
@@ -19,7 +19,7 @@ export interface paths {
19
19
  put?: never;
20
20
  /**
21
21
  * Create a UDA address
22
- * @description Allocate a new Universal Deposit Address for your tenant. If a UDA for the `(tenant, owner)` pair already exists, the existing record is returned with `200` instead of an error. `accepted_assets` is a list of asset symbols (e.g. `["USDC", "USDT"]`); if empty, the UDA accepts every asset configured on every UDA-supported chain.
22
+ * @description Allocate a new Universal Deposit Address for your tenant. The call is idempotent on the owner and the destination together: if a UDA with the same `owner` and the same destination already exists, the existing record is returned with `200` instead of a duplicate. The destination is the treasury for a treasury-backed UDA, or the `(network_id, address, asset)` triple for an inline one; a treasury-backed UDA and an inline UDA are never collapsed into one, even when they point at the same wallet. The same owner with a different destination gets a new UDA. `accepted_assets` is a list of asset symbols (e.g. `["USDC", "USDT"]`); if empty, the UDA accepts every asset configured on every UDA-supported chain.
23
23
  */
24
24
  post: operations["create-uda-address"];
25
25
  delete?: never;
@@ -606,7 +606,7 @@ export interface components {
606
606
  * @description The signed body of every webhook delivery. Fields appear in this order.
607
607
  * @example {
608
608
  * "id": "7401d9c7-e29d-4374-8952-af40f05168b7",
609
- * "version": "1",
609
+ * "version": "v1",
610
610
  * "type": "uda.settlement.completed",
611
611
  * "time": "2026-10-24T11:59:25Z",
612
612
  * "livemode": false,
@@ -614,8 +614,8 @@ export interface components {
614
614
  * "reset_epoch": 2,
615
615
  * "payload": {
616
616
  * "id": "stl_71829304a5b6c7d8",
617
- * "uda_id": "uda_2f8c1a9d4e5f6071",
618
- * "status": "completed"
617
+ * "uda_address_id": "uda_2f8c1a9d4e5f6071",
618
+ * "state": "completed"
619
619
  * }
620
620
  * }
621
621
  */
@@ -626,8 +626,8 @@ export interface components {
626
626
  */
627
627
  id: string;
628
628
  /**
629
- * @description The envelope format version.
630
- * @example 1
629
+ * @description The event format version: `v1` for most events; payout, transfer and treasury events send `1.0.0`.
630
+ * @example v1
631
631
  */
632
632
  version: string;
633
633
  /**
@@ -698,52 +698,81 @@ export interface components {
698
698
  /** @example 0 */
699
699
  offset?: number;
700
700
  };
701
- /** @description Where settlements for this UDA should be delivered. */
701
+ /** @description Where settlements for this UDA should be delivered, in exactly one of two forms: `treasury` (the name of one of your treasuries, so a rotation of the treasury moves the UDA with it), or inline `network_id` + `address` (+ `asset_symbol`), fixed at create time. Sending both forms is rejected with `400`. */
702
702
  DestinationInput: {
703
703
  /**
704
- * @description Destination wallet address.
704
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
705
+ * @example main
706
+ */
707
+ treasury?: string;
708
+ /**
709
+ * @description Destination wallet address (inline form).
705
710
  * @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345
706
711
  */
707
- address: string;
712
+ address?: string;
708
713
  /**
709
- * @description Destination SLIP-44 network id.
714
+ * @description Destination SLIP-44 network id (inline form).
710
715
  * @example 60
711
716
  */
712
- network_id: string;
717
+ network_id?: string;
713
718
  /**
714
- * @description Destination asset symbol.
719
+ * @description Destination asset symbol (inline form).
715
720
  * @example USDC
716
721
  */
717
722
  asset_symbol?: string;
718
723
  };
719
- /** @description Conditions a deposit must meet for this routing rule to apply. */
724
+ /** @description Conditions a deposit must meet for this routing rule to apply. At least one of the two fields is required: both pin one asset on one network, `source_network_id` alone matches any asset on that network, and `source_asset_symbol` alone matches that asset on any network. Two rules on one UDA may not share the same match. */
720
725
  RoutingRuleMatchInput: {
721
- /** @example 60 */
722
- source_network_id: string;
723
- /** @example USDT */
726
+ /**
727
+ * @description Source SLIP-44 network id.
728
+ * @example 60
729
+ */
730
+ source_network_id?: string;
731
+ /**
732
+ * @description Source asset symbol; must be one of the UDA's `accepted_assets` when that list is set.
733
+ * @example USDT
734
+ */
724
735
  source_asset_symbol?: string;
725
736
  };
737
+ /** @description Where a matching deposit settles, in the same two forms as the UDA's `destination`: a `treasury` name, or inline `network_id` + `address` (+ `asset_symbol`). Sending both forms is rejected with `400`. */
726
738
  RoutingRuleDestinationInput: {
739
+ /**
740
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
741
+ * @example main
742
+ */
743
+ treasury?: string;
727
744
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
728
- address: string;
745
+ address?: string;
729
746
  /** @example 60 */
730
- network_id: string;
747
+ network_id?: string;
731
748
  /** @example USDC */
732
749
  asset_symbol?: string;
733
750
  };
734
751
  RoutingRuleInput: {
735
- /** @description Conditions a deposit must meet for this routing rule to apply. */
752
+ /** @description Conditions a deposit must meet for this routing rule to apply. At least one of the two fields is required: both pin one asset on one network, `source_network_id` alone matches any asset on that network, and `source_asset_symbol` alone matches that asset on any network. Two rules on one UDA may not share the same match. */
736
753
  match: {
737
- /** @example 60 */
738
- source_network_id: string;
739
- /** @example USDT */
754
+ /**
755
+ * @description Source SLIP-44 network id.
756
+ * @example 60
757
+ */
758
+ source_network_id?: string;
759
+ /**
760
+ * @description Source asset symbol; must be one of the UDA's `accepted_assets` when that list is set.
761
+ * @example USDT
762
+ */
740
763
  source_asset_symbol?: string;
741
764
  };
765
+ /** @description Where a matching deposit settles, in the same two forms as the UDA's `destination`: a `treasury` name, or inline `network_id` + `address` (+ `asset_symbol`). Sending both forms is rejected with `400`. */
742
766
  destination: {
767
+ /**
768
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
769
+ * @example main
770
+ */
771
+ treasury?: string;
743
772
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
744
- address: string;
773
+ address?: string;
745
774
  /** @example 60 */
746
- network_id: string;
775
+ network_id?: string;
747
776
  /** @example USDC */
748
777
  asset_symbol?: string;
749
778
  };
@@ -768,20 +797,25 @@ export interface components {
768
797
  * @example 0x9f8e7d6c5b4a39281706f5e4d3c2b1a098765432
769
798
  */
770
799
  owner: string;
771
- /** @description Where settlements for this UDA should be delivered. */
800
+ /** @description Where settlements for this UDA should be delivered, in exactly one of two forms: `treasury` (the name of one of your treasuries, so a rotation of the treasury moves the UDA with it), or inline `network_id` + `address` (+ `asset_symbol`), fixed at create time. Sending both forms is rejected with `400`. */
772
801
  destination: {
773
802
  /**
774
- * @description Destination wallet address.
803
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
804
+ * @example main
805
+ */
806
+ treasury?: string;
807
+ /**
808
+ * @description Destination wallet address (inline form).
775
809
  * @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345
776
810
  */
777
- address: string;
811
+ address?: string;
778
812
  /**
779
- * @description Destination SLIP-44 network id.
813
+ * @description Destination SLIP-44 network id (inline form).
780
814
  * @example 60
781
815
  */
782
- network_id: string;
816
+ network_id?: string;
783
817
  /**
784
- * @description Destination asset symbol.
818
+ * @description Destination asset symbol (inline form).
785
819
  * @example USDC
786
820
  */
787
821
  asset_symbol?: string;
@@ -794,20 +828,32 @@ export interface components {
794
828
  * ]
795
829
  */
796
830
  accepted_assets?: string[];
797
- /** @description Optional; max 3. Specificity-wins precedence: a rule pinning both `source_network_id` and `source_asset_symbol` beats a network-only rule. When nothing matches, settlements use the default destination. */
831
+ /** @description Optional; max 5. Specificity wins, whatever the order: a rule pinning both `source_network_id` and `source_asset_symbol` beats a network-only rule, and either beats an asset-only rule. When no rule matches, the UDA's routing policy is consulted, and when that does not match either, settlements use the default destination. */
798
832
  routing_rules?: {
799
- /** @description Conditions a deposit must meet for this routing rule to apply. */
833
+ /** @description Conditions a deposit must meet for this routing rule to apply. At least one of the two fields is required: both pin one asset on one network, `source_network_id` alone matches any asset on that network, and `source_asset_symbol` alone matches that asset on any network. Two rules on one UDA may not share the same match. */
800
834
  match: {
801
- /** @example 60 */
802
- source_network_id: string;
803
- /** @example USDT */
835
+ /**
836
+ * @description Source SLIP-44 network id.
837
+ * @example 60
838
+ */
839
+ source_network_id?: string;
840
+ /**
841
+ * @description Source asset symbol; must be one of the UDA's `accepted_assets` when that list is set.
842
+ * @example USDT
843
+ */
804
844
  source_asset_symbol?: string;
805
845
  };
846
+ /** @description Where a matching deposit settles, in the same two forms as the UDA's `destination`: a `treasury` name, or inline `network_id` + `address` (+ `asset_symbol`). Sending both forms is rejected with `400`. */
806
847
  destination: {
848
+ /**
849
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
850
+ * @example main
851
+ */
852
+ treasury?: string;
807
853
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
808
- address: string;
854
+ address?: string;
809
855
  /** @example 60 */
810
- network_id: string;
856
+ network_id?: string;
811
857
  /** @example USDC */
812
858
  asset_symbol?: string;
813
859
  };
@@ -872,6 +918,11 @@ export interface components {
872
918
  };
873
919
  /** @description Resolved destination (symbol plus the resolved contract address). */
874
920
  Destination: {
921
+ /**
922
+ * @description The treasury name; present only for a treasury-backed destination.
923
+ * @example main
924
+ */
925
+ treasury?: string;
875
926
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
876
927
  address?: string;
877
928
  /** @example 60 */
@@ -896,6 +947,11 @@ export interface components {
896
947
  source_token_address?: string;
897
948
  };
898
949
  RoutingRuleDestination: {
950
+ /**
951
+ * @description The treasury name; present only for a treasury-backed destination.
952
+ * @example main
953
+ */
954
+ treasury?: string;
899
955
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
900
956
  address?: string;
901
957
  /** @example 60 */
@@ -927,6 +983,11 @@ export interface components {
927
983
  source_token_address?: string;
928
984
  };
929
985
  destination?: {
986
+ /**
987
+ * @description The treasury name; present only for a treasury-backed destination.
988
+ * @example main
989
+ */
990
+ treasury?: string;
930
991
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
931
992
  address?: string;
932
993
  /** @example 60 */
@@ -965,6 +1026,11 @@ export interface components {
965
1026
  created_at?: string;
966
1027
  /** @description Resolved destination (symbol plus the resolved contract address). */
967
1028
  destination?: {
1029
+ /**
1030
+ * @description The treasury name; present only for a treasury-backed destination.
1031
+ * @example main
1032
+ */
1033
+ treasury?: string;
968
1034
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
969
1035
  address?: string;
970
1036
  /** @example 60 */
@@ -1029,6 +1095,11 @@ export interface components {
1029
1095
  source_token_address?: string;
1030
1096
  };
1031
1097
  destination?: {
1098
+ /**
1099
+ * @description The treasury name; present only for a treasury-backed destination.
1100
+ * @example main
1101
+ */
1102
+ treasury?: string;
1032
1103
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1033
1104
  address?: string;
1034
1105
  /** @example 60 */
@@ -1083,6 +1154,11 @@ export interface components {
1083
1154
  source_token_address?: string;
1084
1155
  };
1085
1156
  destination?: {
1157
+ /**
1158
+ * @description The treasury name; present only for a treasury-backed destination.
1159
+ * @example main
1160
+ */
1161
+ treasury?: string;
1086
1162
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1087
1163
  address?: string;
1088
1164
  /** @example 60 */
@@ -1143,6 +1219,11 @@ export interface components {
1143
1219
  source_token_address?: string;
1144
1220
  };
1145
1221
  destination?: {
1222
+ /**
1223
+ * @description The treasury name; present only for a treasury-backed destination.
1224
+ * @example main
1225
+ */
1226
+ treasury?: string;
1146
1227
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1147
1228
  address?: string;
1148
1229
  /** @example 60 */
@@ -1203,6 +1284,11 @@ export interface components {
1203
1284
  source_token_address?: string;
1204
1285
  };
1205
1286
  destination?: {
1287
+ /**
1288
+ * @description The treasury name; present only for a treasury-backed destination.
1289
+ * @example main
1290
+ */
1291
+ treasury?: string;
1206
1292
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1207
1293
  address?: string;
1208
1294
  /** @example 60 */
@@ -1274,6 +1360,11 @@ export interface components {
1274
1360
  created_at?: string;
1275
1361
  /** @description Resolved destination (symbol plus the resolved contract address). */
1276
1362
  destination?: {
1363
+ /**
1364
+ * @description The treasury name; present only for a treasury-backed destination.
1365
+ * @example main
1366
+ */
1367
+ treasury?: string;
1277
1368
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1278
1369
  address?: string;
1279
1370
  /** @example 60 */
@@ -1338,6 +1429,11 @@ export interface components {
1338
1429
  source_token_address?: string;
1339
1430
  };
1340
1431
  destination?: {
1432
+ /**
1433
+ * @description The treasury name; present only for a treasury-backed destination.
1434
+ * @example main
1435
+ */
1436
+ treasury?: string;
1341
1437
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
1342
1438
  address?: string;
1343
1439
  /** @example 60 */
@@ -1547,6 +1643,7 @@ export interface components {
1547
1643
  */
1548
1644
  settled_at?: string;
1549
1645
  };
1646
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
1550
1647
  SettlementFees: {
1551
1648
  /** @example 1500 */
1552
1649
  total?: string;
@@ -1579,10 +1676,11 @@ export interface components {
1579
1676
  /** @example uda_2f8c1a9d4e5f6071 */
1580
1677
  uda_id?: string;
1581
1678
  /**
1679
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
1582
1680
  * @example completed
1583
1681
  * @enum {string}
1584
1682
  */
1585
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
1683
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
1586
1684
  /**
1587
1685
  * Format: date-time
1588
1686
  * @example 2026-05-29T11:58:41Z
@@ -1594,7 +1692,7 @@ export interface components {
1594
1692
  */
1595
1693
  updated_at?: string;
1596
1694
  /**
1597
- * @description Failure reason when `status` is `failed`; empty otherwise.
1695
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
1598
1696
  * @example
1599
1697
  */
1600
1698
  error?: string;
@@ -1640,6 +1738,7 @@ export interface components {
1640
1738
  */
1641
1739
  settled_at?: string;
1642
1740
  };
1741
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
1643
1742
  fees?: {
1644
1743
  /** @example 1500 */
1645
1744
  total?: string;
@@ -1679,10 +1778,11 @@ export interface components {
1679
1778
  /** @example uda_2f8c1a9d4e5f6071 */
1680
1779
  uda_id?: string;
1681
1780
  /**
1781
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
1682
1782
  * @example completed
1683
1783
  * @enum {string}
1684
1784
  */
1685
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
1785
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
1686
1786
  /**
1687
1787
  * Format: date-time
1688
1788
  * @example 2026-05-29T11:58:41Z
@@ -1694,7 +1794,7 @@ export interface components {
1694
1794
  */
1695
1795
  updated_at?: string;
1696
1796
  /**
1697
- * @description Failure reason when `status` is `failed`; empty otherwise.
1797
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
1698
1798
  * @example
1699
1799
  */
1700
1800
  error?: string;
@@ -1740,6 +1840,7 @@ export interface components {
1740
1840
  */
1741
1841
  settled_at?: string;
1742
1842
  };
1843
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
1743
1844
  fees?: {
1744
1845
  /** @example 1500 */
1745
1846
  total?: string;
@@ -1798,10 +1899,11 @@ export interface components {
1798
1899
  /** @example uda_2f8c1a9d4e5f6071 */
1799
1900
  uda_id?: string;
1800
1901
  /**
1902
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
1801
1903
  * @example completed
1802
1904
  * @enum {string}
1803
1905
  */
1804
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
1906
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
1805
1907
  /**
1806
1908
  * Format: date-time
1807
1909
  * @example 2026-05-29T11:58:41Z
@@ -1813,7 +1915,7 @@ export interface components {
1813
1915
  */
1814
1916
  updated_at?: string;
1815
1917
  /**
1816
- * @description Failure reason when `status` is `failed`; empty otherwise.
1918
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
1817
1919
  * @example
1818
1920
  */
1819
1921
  error?: string;
@@ -1859,6 +1961,7 @@ export interface components {
1859
1961
  */
1860
1962
  settled_at?: string;
1861
1963
  };
1964
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
1862
1965
  fees?: {
1863
1966
  /** @example 1500 */
1864
1967
  total?: string;
@@ -4926,6 +5029,11 @@ export interface operations {
4926
5029
  created_at?: string;
4927
5030
  /** @description Resolved destination (symbol plus the resolved contract address). */
4928
5031
  destination?: {
5032
+ /**
5033
+ * @description The treasury name; present only for a treasury-backed destination.
5034
+ * @example main
5035
+ */
5036
+ treasury?: string;
4929
5037
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
4930
5038
  address?: string;
4931
5039
  /** @example 60 */
@@ -4990,6 +5098,11 @@ export interface operations {
4990
5098
  source_token_address?: string;
4991
5099
  };
4992
5100
  destination?: {
5101
+ /**
5102
+ * @description The treasury name; present only for a treasury-backed destination.
5103
+ * @example main
5104
+ */
5105
+ treasury?: string;
4993
5106
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
4994
5107
  address?: string;
4995
5108
  /** @example 60 */
@@ -5256,20 +5369,25 @@ export interface operations {
5256
5369
  * @example 0x9f8e7d6c5b4a39281706f5e4d3c2b1a098765432
5257
5370
  */
5258
5371
  owner: string;
5259
- /** @description Where settlements for this UDA should be delivered. */
5372
+ /** @description Where settlements for this UDA should be delivered, in exactly one of two forms: `treasury` (the name of one of your treasuries, so a rotation of the treasury moves the UDA with it), or inline `network_id` + `address` (+ `asset_symbol`), fixed at create time. Sending both forms is rejected with `400`. */
5260
5373
  destination: {
5261
5374
  /**
5262
- * @description Destination wallet address.
5375
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
5376
+ * @example main
5377
+ */
5378
+ treasury?: string;
5379
+ /**
5380
+ * @description Destination wallet address (inline form).
5263
5381
  * @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345
5264
5382
  */
5265
- address: string;
5383
+ address?: string;
5266
5384
  /**
5267
- * @description Destination SLIP-44 network id.
5385
+ * @description Destination SLIP-44 network id (inline form).
5268
5386
  * @example 60
5269
5387
  */
5270
- network_id: string;
5388
+ network_id?: string;
5271
5389
  /**
5272
- * @description Destination asset symbol.
5390
+ * @description Destination asset symbol (inline form).
5273
5391
  * @example USDC
5274
5392
  */
5275
5393
  asset_symbol?: string;
@@ -5282,20 +5400,32 @@ export interface operations {
5282
5400
  * ]
5283
5401
  */
5284
5402
  accepted_assets?: string[];
5285
- /** @description Optional; max 3. Specificity-wins precedence: a rule pinning both `source_network_id` and `source_asset_symbol` beats a network-only rule. When nothing matches, settlements use the default destination. */
5403
+ /** @description Optional; max 5. Specificity wins, whatever the order: a rule pinning both `source_network_id` and `source_asset_symbol` beats a network-only rule, and either beats an asset-only rule. When no rule matches, the UDA's routing policy is consulted, and when that does not match either, settlements use the default destination. */
5286
5404
  routing_rules?: {
5287
- /** @description Conditions a deposit must meet for this routing rule to apply. */
5405
+ /** @description Conditions a deposit must meet for this routing rule to apply. At least one of the two fields is required: both pin one asset on one network, `source_network_id` alone matches any asset on that network, and `source_asset_symbol` alone matches that asset on any network. Two rules on one UDA may not share the same match. */
5288
5406
  match: {
5289
- /** @example 60 */
5290
- source_network_id: string;
5291
- /** @example USDT */
5407
+ /**
5408
+ * @description Source SLIP-44 network id.
5409
+ * @example 60
5410
+ */
5411
+ source_network_id?: string;
5412
+ /**
5413
+ * @description Source asset symbol; must be one of the UDA's `accepted_assets` when that list is set.
5414
+ * @example USDT
5415
+ */
5292
5416
  source_asset_symbol?: string;
5293
5417
  };
5418
+ /** @description Where a matching deposit settles, in the same two forms as the UDA's `destination`: a `treasury` name, or inline `network_id` + `address` (+ `asset_symbol`). Sending both forms is rejected with `400`. */
5294
5419
  destination: {
5420
+ /**
5421
+ * @description Name of one of your treasuries. Leave the inline fields empty when set.
5422
+ * @example main
5423
+ */
5424
+ treasury?: string;
5295
5425
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
5296
- address: string;
5426
+ address?: string;
5297
5427
  /** @example 60 */
5298
- network_id: string;
5428
+ network_id?: string;
5299
5429
  /** @example USDC */
5300
5430
  asset_symbol?: string;
5301
5431
  };
@@ -5309,7 +5439,7 @@ export interface operations {
5309
5439
  };
5310
5440
  };
5311
5441
  responses: {
5312
- /** @description An existing UDA address for the `(tenant, owner)` pair was returned. */
5442
+ /** @description An existing UDA address with the same `owner` and destination was returned. */
5313
5443
  200: {
5314
5444
  headers: {
5315
5445
  [name: string]: unknown;
@@ -5337,6 +5467,11 @@ export interface operations {
5337
5467
  created_at?: string;
5338
5468
  /** @description Resolved destination (symbol plus the resolved contract address). */
5339
5469
  destination?: {
5470
+ /**
5471
+ * @description The treasury name; present only for a treasury-backed destination.
5472
+ * @example main
5473
+ */
5474
+ treasury?: string;
5340
5475
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
5341
5476
  address?: string;
5342
5477
  /** @example 60 */
@@ -5401,6 +5536,11 @@ export interface operations {
5401
5536
  source_token_address?: string;
5402
5537
  };
5403
5538
  destination?: {
5539
+ /**
5540
+ * @description The treasury name; present only for a treasury-backed destination.
5541
+ * @example main
5542
+ */
5543
+ treasury?: string;
5404
5544
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
5405
5545
  address?: string;
5406
5546
  /** @example 60 */
@@ -5453,6 +5593,11 @@ export interface operations {
5453
5593
  created_at?: string;
5454
5594
  /** @description Resolved destination (symbol plus the resolved contract address). */
5455
5595
  destination?: {
5596
+ /**
5597
+ * @description The treasury name; present only for a treasury-backed destination.
5598
+ * @example main
5599
+ */
5600
+ treasury?: string;
5456
5601
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
5457
5602
  address?: string;
5458
5603
  /** @example 60 */
@@ -5517,6 +5662,11 @@ export interface operations {
5517
5662
  source_token_address?: string;
5518
5663
  };
5519
5664
  destination?: {
5665
+ /**
5666
+ * @description The treasury name; present only for a treasury-backed destination.
5667
+ * @example main
5668
+ */
5669
+ treasury?: string;
5520
5670
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
5521
5671
  address?: string;
5522
5672
  /** @example 60 */
@@ -6121,10 +6271,11 @@ export interface operations {
6121
6271
  /** @example uda_2f8c1a9d4e5f6071 */
6122
6272
  uda_id?: string;
6123
6273
  /**
6274
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
6124
6275
  * @example completed
6125
6276
  * @enum {string}
6126
6277
  */
6127
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
6278
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
6128
6279
  /**
6129
6280
  * Format: date-time
6130
6281
  * @example 2026-05-29T11:58:41Z
@@ -6136,7 +6287,7 @@ export interface operations {
6136
6287
  */
6137
6288
  updated_at?: string;
6138
6289
  /**
6139
- * @description Failure reason when `status` is `failed`; empty otherwise.
6290
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
6140
6291
  * @example
6141
6292
  */
6142
6293
  error?: string;
@@ -6182,6 +6333,7 @@ export interface operations {
6182
6333
  */
6183
6334
  settled_at?: string;
6184
6335
  };
6336
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
6185
6337
  fees?: {
6186
6338
  /** @example 1500 */
6187
6339
  total?: string;
@@ -6455,10 +6607,11 @@ export interface operations {
6455
6607
  /** @example uda_2f8c1a9d4e5f6071 */
6456
6608
  uda_id?: string;
6457
6609
  /**
6610
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
6458
6611
  * @example completed
6459
6612
  * @enum {string}
6460
6613
  */
6461
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
6614
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
6462
6615
  /**
6463
6616
  * Format: date-time
6464
6617
  * @example 2026-05-29T11:58:41Z
@@ -6470,7 +6623,7 @@ export interface operations {
6470
6623
  */
6471
6624
  updated_at?: string;
6472
6625
  /**
6473
- * @description Failure reason when `status` is `failed`; empty otherwise.
6626
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
6474
6627
  * @example
6475
6628
  */
6476
6629
  error?: string;
@@ -6516,6 +6669,7 @@ export interface operations {
6516
6669
  */
6517
6670
  settled_at?: string;
6518
6671
  };
6672
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
6519
6673
  fees?: {
6520
6674
  /** @example 1500 */
6521
6675
  total?: string;
@@ -6790,10 +6944,11 @@ export interface operations {
6790
6944
  /** @example uda_2f8c1a9d4e5f6071 */
6791
6945
  uda_id?: string;
6792
6946
  /**
6947
+ * @description Where the settlement is in its lifecycle. `created`: the deposit was credited and a settlement opened. `refill_pending` / `refill_confirmed`: the deposit address is being funded with gas (TRON-origin deposits) before the funds move. `awaiting_credit`: parked until the workspace has gas credit to pay for it; it resumes on its own and uses no retry. `routing`: the funds are moving to the destination. `retrying`: an attempt failed and another is scheduled. `completed`: delivered. `failed`: retries ran out. `refunded`: Stridge returned the deposit instead of settling it, from `retrying`, `awaiting_credit` or `failed`. `completed` and `refunded` are final.
6793
6948
  * @example completed
6794
6949
  * @enum {string}
6795
6950
  */
6796
- status?: "created" | "routing" | "completed" | "failed" | "retrying";
6951
+ status?: "created" | "refill_pending" | "refill_confirmed" | "awaiting_credit" | "routing" | "retrying" | "completed" | "failed" | "refunded";
6797
6952
  /**
6798
6953
  * Format: date-time
6799
6954
  * @example 2026-05-29T11:58:41Z
@@ -6805,7 +6960,7 @@ export interface operations {
6805
6960
  */
6806
6961
  updated_at?: string;
6807
6962
  /**
6808
- * @description Failure reason when `status` is `failed`; empty otherwise.
6963
+ * @description Why the last attempt failed or was refused, typically present while `status` is `retrying`, `awaiting_credit` or `failed`. Cleared when the settlement is retried or resumes; omitted when empty.
6809
6964
  * @example
6810
6965
  */
6811
6966
  error?: string;
@@ -6851,6 +7006,7 @@ export interface operations {
6851
7006
  */
6852
7007
  settled_at?: string;
6853
7008
  };
7009
+ /** @description What was taken between the deposit and the settlement, as integer strings in the base units of the deposit's asset (not the destination asset). */
6854
7010
  fees?: {
6855
7011
  /** @example 1500 */
6856
7012
  total?: string;
@@ -11193,6 +11349,11 @@ export interface operations {
11193
11349
  source_token_address?: string;
11194
11350
  };
11195
11351
  destination?: {
11352
+ /**
11353
+ * @description The treasury name; present only for a treasury-backed destination.
11354
+ * @example main
11355
+ */
11356
+ treasury?: string;
11196
11357
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
11197
11358
  address?: string;
11198
11359
  /** @example 60 */
@@ -11497,6 +11658,11 @@ export interface operations {
11497
11658
  source_token_address?: string;
11498
11659
  };
11499
11660
  destination?: {
11661
+ /**
11662
+ * @description The treasury name; present only for a treasury-backed destination.
11663
+ * @example main
11664
+ */
11665
+ treasury?: string;
11500
11666
  /** @example 0x3a1f8b2c9d4e5f60718293a4b5c6d7e8f9012345 */
11501
11667
  address?: string;
11502
11668
  /** @example 60 */
@@ -15104,8 +15270,8 @@ export interface operations {
15104
15270
  */
15105
15271
  id: string;
15106
15272
  /**
15107
- * @description The envelope format version.
15108
- * @example 1
15273
+ * @description The event format version: `v1` for most events; payout, transfer and treasury events send `1.0.0`.
15274
+ * @example v1
15109
15275
  */
15110
15276
  version: string;
15111
15277
  /**