@firela/api-types 0.0.0-canary.b3b7767b → 0.0.0-canary.b3e2bcf7

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/index.js CHANGED
@@ -484,7 +484,7 @@ var BeanAccountsService = class {
484
484
  * @param data.type Filter by account type
485
485
  * @param data.status Filter by status
486
486
  * @param data.isCustom Filter by custom (user-created) accounts only
487
- * @param data.search Search term for path or i18nKey
487
+ * @param data.search Search term for account path
488
488
  * @param data.limit Maximum number of results
489
489
  * @param data.offset Number of results to skip
490
490
  * @returns AccountListResponseDto Accounts retrieved successfully
@@ -556,7 +556,7 @@ var BeanAccountsService = class {
556
556
  }
557
557
  /**
558
558
  * Delete account
559
- * Deletes an account (only if no transactions)
559
+ * Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
560
560
  * @param data The data for the request.
561
561
  * @param data.id Account UUID
562
562
  * @param data.region Region code for tenant context
@@ -573,7 +573,7 @@ var BeanAccountsService = class {
573
573
  },
574
574
  errors: {
575
575
  404: "Account not found",
576
- 409: "Account has transactions and cannot be deleted"
576
+ 409: "Account has active transactions and cannot be deleted"
577
577
  }
578
578
  });
579
579
  }
@@ -629,6 +629,32 @@ var BeanAccountsService = class {
629
629
  }
630
630
  });
631
631
  }
632
+ /**
633
+ * Post an opening-balance transaction
634
+ * Posts a double-entry opening-balance transaction against Equity:Opening-Balances for an existing Assets/Liabilities account. At most one active opening balance per account.
635
+ * @param data The data for the request.
636
+ * @param data.id Account UUID
637
+ * @param data.region Region code for tenant context
638
+ * @param data.requestBody
639
+ * @returns OpeningBalanceResultDto Opening-balance transaction created
640
+ * @throws ApiError
641
+ */
642
+ static accountControllerAddOpeningBalance(data) {
643
+ return request(OpenAPI, {
644
+ method: "POST",
645
+ url: "/api/v1/{region}/bean/accounts/{id}/opening-balance",
646
+ path: {
647
+ id: data.id,
648
+ region: data.region
649
+ },
650
+ body: data.requestBody,
651
+ mediaType: "application/json",
652
+ errors: {
653
+ 404: "Account not found",
654
+ 409: "An opening balance already exists for this account"
655
+ }
656
+ });
657
+ }
632
658
  };
633
659
  var BeanTransactionsService = class {
634
660
  /**
@@ -670,6 +696,7 @@ var BeanTransactionsService = class {
670
696
  * @param data.status Filter by transaction status
671
697
  * @param data.search Search in narration and payee fields (max 200 chars)
672
698
  * @param data.accountId Filter by account ID (transactions with postings to this account)
699
+ * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
673
700
  * @returns TransactionListResponseDto Transaction list
674
701
  * @throws ApiError
675
702
  */
@@ -687,25 +714,93 @@ var BeanTransactionsService = class {
687
714
  dateTo: data.dateTo,
688
715
  status: data.status,
689
716
  search: data.search,
690
- accountId: data.accountId
717
+ accountId: data.accountId,
718
+ category: data.category
691
719
  },
692
720
  errors: {
721
+ 400: "Validation failed",
693
722
  401: "Authentication required"
694
723
  }
695
724
  });
696
725
  }
697
726
  /**
727
+ * @deprecated
728
+ * Batch create transactions (DEPRECATED)
729
+ * DEPRECATED: Use POST /:region/bean/import/provider/:name/sync instead. This endpoint skips dedup, rule matching, and review branching.
698
730
  * @param data The data for the request.
699
731
  * @param data.region Region code for tenant context
700
- * @returns unknown
732
+ * @param data.requestBody
733
+ * @returns BatchTransactionResponseDto Transactions processed
701
734
  * @throws ApiError
702
735
  */
703
- static transactionController(data) {
736
+ static transactionControllerCreateBatch(data) {
704
737
  return request(OpenAPI, {
705
738
  method: "POST",
706
739
  url: "/api/v1/{region}/bean/transactions/batch",
707
740
  path: {
708
741
  region: data.region
742
+ },
743
+ body: data.requestBody,
744
+ mediaType: "application/json",
745
+ errors: {
746
+ 400: "Invalid input",
747
+ 401: "Authentication required"
748
+ }
749
+ });
750
+ }
751
+ /**
752
+ * Correct (supersede) a transaction
753
+ * Atomically voids the original (SUPERSEDED) and creates a replacement through the full validation pipeline.
754
+ * @param data The data for the request.
755
+ * @param data.id Original transaction ID to correct
756
+ * @param data.region Region code for tenant context
757
+ * @param data.requestBody
758
+ * @returns TransactionDetailDto Corrected transaction created
759
+ * @throws ApiError
760
+ */
761
+ static transactionControllerCorrect(data) {
762
+ return request(OpenAPI, {
763
+ method: "POST",
764
+ url: "/api/v1/{region}/bean/transactions/{id}/correct",
765
+ path: {
766
+ id: data.id,
767
+ region: data.region
768
+ },
769
+ body: data.requestBody,
770
+ mediaType: "application/json",
771
+ errors: {
772
+ 404: "Original transaction not found",
773
+ 409: "Original no longer ACTIVE (concurrent modification)",
774
+ 422: "Pipeline validation failed (does not balance, invalid accounts)"
775
+ }
776
+ });
777
+ }
778
+ /**
779
+ * Suggest transaction tags
780
+ * Returns distinct tags from the user ACTIVE transactions, sorted by usage, for autocomplete. Optional q performs a case-insensitive prefix match.
781
+ * @param data The data for the request.
782
+ * @param data.region Region code for tenant context
783
+ * @param data.q Prefix match, case-insensitive (max 50 chars)
784
+ * @param data.sort usage (default) or name
785
+ * @param data.limit Max suggestions (1-100, default 10)
786
+ * @returns TagSuggestionsResponseDto Tag suggestions
787
+ * @throws ApiError
788
+ */
789
+ static transactionControllerSuggestTags(data) {
790
+ return request(OpenAPI, {
791
+ method: "GET",
792
+ url: "/api/v1/{region}/bean/transactions/tags",
793
+ path: {
794
+ region: data.region
795
+ },
796
+ query: {
797
+ q: data.q,
798
+ sort: data.sort,
799
+ limit: data.limit
800
+ },
801
+ errors: {
802
+ 400: "Validation failed",
803
+ 401: "Authentication required"
709
804
  }
710
805
  });
711
806
  }
@@ -760,17 +855,26 @@ var BeanTransactionsService = class {
760
855
  });
761
856
  }
762
857
  /**
858
+ * Void transaction
859
+ * Soft-deletes a transaction by marking it as VOIDED
763
860
  * @param data The data for the request.
861
+ * @param data.id Transaction ID
764
862
  * @param data.region Region code for tenant context
765
- * @returns void
863
+ * @returns void Transaction voided successfully
766
864
  * @throws ApiError
767
865
  */
768
- static transactionController1(data) {
866
+ static transactionControllerDelete(data) {
769
867
  return request(OpenAPI, {
770
868
  method: "DELETE",
771
869
  url: "/api/v1/{region}/bean/transactions/{id}",
772
870
  path: {
871
+ id: data.id,
773
872
  region: data.region
873
+ },
874
+ errors: {
875
+ 400: "Transaction already voided",
876
+ 401: "Authentication required",
877
+ 404: "Transaction not found"
774
878
  }
775
879
  });
776
880
  }
@@ -780,8 +884,8 @@ var BeanBalancesService = class {
780
884
  * Query account balance
781
885
  * Calculate account balance at a specific date for a single currency
782
886
  * @param data The data for the request.
783
- * @param data.account Account name (e.g., "Assets:Bank:Checking")
784
- * @param data.region Region code (cn, us, de)
887
+ * @param data.account Account name (e.g., "Assets:Checking")
888
+ * @param data.region Region code for tenant context
785
889
  * @param data.date Date to calculate balance at (ISO 8601 format)
786
890
  * @param data.currency Currency to query (e.g., "USD", "CNY")
787
891
  * @returns BalanceResponseDto Balance calculated successfully
@@ -809,7 +913,7 @@ var BeanBalancesService = class {
809
913
  * Query multi-currency account balance
810
914
  * Calculate account balances for all currencies at a specific date
811
915
  * @param data The data for the request.
812
- * @param data.region Region code (cn, us, de)
916
+ * @param data.region Region code for tenant context
813
917
  * @returns MultiCurrencyBalanceResponseDto Balances calculated successfully
814
918
  * @throws ApiError
815
919
  */
@@ -829,17 +933,26 @@ var BeanBalancesService = class {
829
933
  };
830
934
  var BeanCommoditiesService = class {
831
935
  /**
936
+ * Create a new commodity
937
+ * Creates a new commodity definition for the authenticated user
832
938
  * @param data The data for the request.
833
- * @param data.region Region code (cn, us, de)
834
- * @returns unknown
939
+ * @param data.region Region code for tenant context
940
+ * @param data.requestBody
941
+ * @returns CommodityResponseDto Commodity created successfully
835
942
  * @throws ApiError
836
943
  */
837
- static commodityController(data) {
944
+ static commodityControllerCreate(data) {
838
945
  return request(OpenAPI, {
839
946
  method: "POST",
840
947
  url: "/api/v1/{region}/bean/commodities",
841
948
  path: {
842
949
  region: data.region
950
+ },
951
+ body: data.requestBody,
952
+ mediaType: "application/json",
953
+ errors: {
954
+ 400: "Invalid input data",
955
+ 409: "Commodity already exists"
843
956
  }
844
957
  });
845
958
  }
@@ -847,7 +960,7 @@ var BeanCommoditiesService = class {
847
960
  * List user commodities
848
961
  * Returns all commodity definitions for the authenticated user with optional filtering
849
962
  * @param data The data for the request.
850
- * @param data.region Region code (cn, us, de)
963
+ * @param data.region Region code for tenant context
851
964
  * @param data.search Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
852
965
  * @param data.symbol Filter by exact symbol match
853
966
  * @returns CommodityListResponseDto Commodities retrieved successfully
@@ -871,7 +984,7 @@ var BeanCommoditiesService = class {
871
984
  * Returns a specific commodity definition by its symbol
872
985
  * @param data The data for the request.
873
986
  * @param data.symbol Commodity symbol
874
- * @param data.region Region code (cn, us, de)
987
+ * @param data.region Region code for tenant context
875
988
  * @returns CommodityResponseDto Commodity retrieved successfully
876
989
  * @throws ApiError
877
990
  */
@@ -889,57 +1002,81 @@ var BeanCommoditiesService = class {
889
1002
  });
890
1003
  }
891
1004
  /**
1005
+ * Update commodity
1006
+ * Updates an existing commodity definition. Symbol cannot be changed.
892
1007
  * @param data The data for the request.
893
- * @param data.region Region code (cn, us, de)
894
- * @returns unknown
1008
+ * @param data.symbol Commodity symbol
1009
+ * @param data.region Region code for tenant context
1010
+ * @param data.requestBody
1011
+ * @returns CommodityResponseDto Commodity updated successfully
895
1012
  * @throws ApiError
896
1013
  */
897
- static commodityController1(data) {
1014
+ static commodityControllerUpdate(data) {
898
1015
  return request(OpenAPI, {
899
1016
  method: "PUT",
900
1017
  url: "/api/v1/{region}/bean/commodities/{symbol}",
901
1018
  path: {
1019
+ symbol: data.symbol,
902
1020
  region: data.region
1021
+ },
1022
+ body: data.requestBody,
1023
+ mediaType: "application/json",
1024
+ errors: {
1025
+ 400: "Invalid input data",
1026
+ 404: "Commodity not found"
903
1027
  }
904
1028
  });
905
1029
  }
906
1030
  /**
1031
+ * Delete commodity
1032
+ * Deletes a commodity definition
907
1033
  * @param data The data for the request.
908
- * @param data.region Region code (cn, us, de)
909
- * @returns void
1034
+ * @param data.symbol Commodity symbol
1035
+ * @param data.region Region code for tenant context
1036
+ * @returns void Commodity deleted successfully
910
1037
  * @throws ApiError
911
1038
  */
912
- static commodityController2(data) {
1039
+ static commodityControllerDelete(data) {
913
1040
  return request(OpenAPI, {
914
1041
  method: "DELETE",
915
1042
  url: "/api/v1/{region}/bean/commodities/{symbol}",
916
1043
  path: {
1044
+ symbol: data.symbol,
917
1045
  region: data.region
1046
+ },
1047
+ errors: {
1048
+ 404: "Commodity not found"
918
1049
  }
919
1050
  });
920
1051
  }
921
1052
  /**
1053
+ * Ensure commodity exists
1054
+ * Gets existing commodity or creates it with automatic initialization from OpenBB
922
1055
  * @param data The data for the request.
923
- * @param data.region Region code (cn, us, de)
924
- * @returns unknown
1056
+ * @param data.symbol Commodity symbol
1057
+ * @param data.region Region code for tenant context
1058
+ * @returns CommodityResponseDto Commodity retrieved or created
925
1059
  * @throws ApiError
926
1060
  */
927
- static commodityController3(data) {
1061
+ static commodityControllerGetOrCreate(data) {
928
1062
  return request(OpenAPI, {
929
1063
  method: "POST",
930
1064
  url: "/api/v1/{region}/bean/commodities/{symbol}/ensure",
931
1065
  path: {
1066
+ symbol: data.symbol,
932
1067
  region: data.region
933
1068
  }
934
1069
  });
935
1070
  }
936
1071
  /**
1072
+ * Bulk create commodities
1073
+ * Creates multiple commodities from a list of symbols, useful for initialization
937
1074
  * @param data The data for the request.
938
- * @param data.region Region code (cn, us, de)
939
- * @returns unknown
1075
+ * @param data.region Region code for tenant context
1076
+ * @returns CommodityResponseDto Commodities created successfully
940
1077
  * @throws ApiError
941
1078
  */
942
- static commodityController4(data) {
1079
+ static commodityControllerBulkCreate(data) {
943
1080
  return request(OpenAPI, {
944
1081
  method: "POST",
945
1082
  url: "/api/v1/{region}/bean/commodities/bulk",
@@ -975,7 +1112,7 @@ var ProviderSyncService = class {
975
1112
  *
976
1113
  * @param data The data for the request.
977
1114
  * @param data.providerName Provider name
978
- * @param data.region Region code
1115
+ * @param data.region Region code for tenant context
979
1116
  * @param data.requestBody
980
1117
  * @returns ProviderSyncResponseDto Sync completed successfully
981
1118
  * @throws ApiError
@@ -1001,7 +1138,7 @@ var ProviderSyncService = class {
1001
1138
  * Get supported providers
1002
1139
  * Returns a list of all providers supported by the sync endpoint.
1003
1140
  * @param data The data for the request.
1004
- * @param data.region Region code (cn, us, de)
1141
+ * @param data.region Region code for tenant context
1005
1142
  * @returns SupportedProvidersResponseDto List of supported providers
1006
1143
  * @throws ApiError
1007
1144
  */
@@ -1022,7 +1159,7 @@ var ProviderSyncService = class {
1022
1159
  * Returns whether a specific provider is supported.
1023
1160
  * @param data The data for the request.
1024
1161
  * @param data.providerName Provider name to check
1025
- * @param data.region Region code (cn, us, de)
1162
+ * @param data.region Region code for tenant context
1026
1163
  * @returns unknown Provider support status
1027
1164
  * @throws ApiError
1028
1165
  */
@@ -1043,18 +1180,13 @@ var ProviderSyncService = class {
1043
1180
  var HealthService = class {
1044
1181
  /**
1045
1182
  * Basic health check for K8s/load balancer probes
1046
- * @param data The data for the request.
1047
- * @param data.region Region code (cn, us, de)
1048
1183
  * @returns unknown Service is healthy
1049
1184
  * @throws ApiError
1050
1185
  */
1051
- static healthControllerGetHealth(data) {
1186
+ static healthControllerGetHealth() {
1052
1187
  return request(OpenAPI, {
1053
1188
  method: "GET",
1054
1189
  url: "/api/v1/health",
1055
- path: {
1056
- region: data.region
1057
- },
1058
1190
  errors: {
1059
1191
  503: "Service unavailable"
1060
1192
  }
@@ -1062,37 +1194,41 @@ var HealthService = class {
1062
1194
  }
1063
1195
  /**
1064
1196
  * Check database connection health
1065
- * @param data The data for the request.
1066
- * @param data.region Region code (cn, us, de)
1067
1197
  * @returns unknown Database is healthy
1068
1198
  * @throws ApiError
1069
1199
  */
1070
- static healthControllerCheckDatabase(data) {
1200
+ static healthControllerCheckDatabase() {
1071
1201
  return request(OpenAPI, {
1072
1202
  method: "GET",
1073
1203
  url: "/api/v1/health/database",
1074
- path: {
1075
- region: data.region
1076
- },
1077
1204
  errors: {
1078
1205
  503: "Database unavailable"
1079
1206
  }
1080
1207
  });
1081
1208
  }
1209
+ /**
1210
+ * Check OpenBB schema status
1211
+ * @returns unknown OpenBB status
1212
+ * @throws ApiError
1213
+ */
1214
+ static healthControllerCheckOpenBb() {
1215
+ return request(OpenAPI, {
1216
+ method: "GET",
1217
+ url: "/api/v1/health/openbb",
1218
+ errors: {
1219
+ 503: "OpenBB unavailable"
1220
+ }
1221
+ });
1222
+ }
1082
1223
  /**
1083
1224
  * Check Redis connection health
1084
- * @param data The data for the request.
1085
- * @param data.region Region code (cn, us, de)
1086
1225
  * @returns unknown Redis is healthy
1087
1226
  * @throws ApiError
1088
1227
  */
1089
- static healthControllerCheckRedis(data) {
1228
+ static healthControllerCheckRedis() {
1090
1229
  return request(OpenAPI, {
1091
1230
  method: "GET",
1092
1231
  url: "/api/v1/health/redis",
1093
- path: {
1094
- region: data.region
1095
- },
1096
1232
  errors: {
1097
1233
  503: "Redis unavailable"
1098
1234
  }
@@ -1100,18 +1236,13 @@ var HealthService = class {
1100
1236
  }
1101
1237
  /**
1102
1238
  * Get status of all circuit breakers
1103
- * @param data The data for the request.
1104
- * @param data.region Region code (cn, us, de)
1105
1239
  * @returns unknown Circuit breaker status
1106
1240
  * @throws ApiError
1107
1241
  */
1108
- static healthControllerGetCircuitBreakersHealth(data) {
1242
+ static healthControllerGetCircuitBreakersHealth() {
1109
1243
  return request(OpenAPI, {
1110
1244
  method: "GET",
1111
1245
  url: "/api/v1/health/circuit-breakers",
1112
- path: {
1113
- region: data.region
1114
- },
1115
1246
  errors: {
1116
1247
  401: "Unauthorized",
1117
1248
  500: "Internal error"
@@ -1122,7 +1253,6 @@ var HealthService = class {
1122
1253
  * Reset a circuit breaker to CLOSED state
1123
1254
  * @param data The data for the request.
1124
1255
  * @param data.name Circuit breaker name to reset
1125
- * @param data.region Region code (cn, us, de)
1126
1256
  * @returns unknown Circuit breaker reset successfully
1127
1257
  * @throws ApiError
1128
1258
  */
@@ -1131,8 +1261,7 @@ var HealthService = class {
1131
1261
  method: "POST",
1132
1262
  url: "/api/v1/health/circuit-breakers/{name}/reset",
1133
1263
  path: {
1134
- name: data.name,
1135
- region: data.region
1264
+ name: data.name
1136
1265
  },
1137
1266
  errors: {
1138
1267
  401: "Unauthorized",
@@ -1142,88 +1271,18 @@ var HealthService = class {
1142
1271
  }
1143
1272
  /**
1144
1273
  * Get health check metrics and statistics
1145
- * @param data The data for the request.
1146
- * @param data.region Region code (cn, us, de)
1147
1274
  * @returns unknown Health metrics
1148
1275
  * @throws ApiError
1149
1276
  */
1150
- static healthControllerGetMetrics(data) {
1277
+ static healthControllerGetMetrics() {
1151
1278
  return request(OpenAPI, {
1152
1279
  method: "GET",
1153
1280
  url: "/api/v1/health/metrics",
1154
- path: {
1155
- region: data.region
1156
- },
1157
1281
  errors: {
1158
1282
  401: "Unauthorized"
1159
1283
  }
1160
1284
  });
1161
1285
  }
1162
- /**
1163
- * Check health of a specific data enhancer
1164
- * @param data The data for the request.
1165
- * @param data.name Data enhancer name
1166
- * @param data.region Region code (cn, us, de)
1167
- * @returns unknown Data enhancer is healthy
1168
- * @throws ApiError
1169
- */
1170
- static healthControllerGetHealthOfDataEnhancer(data) {
1171
- return request(OpenAPI, {
1172
- method: "GET",
1173
- url: "/api/v1/health/data-enhancer/{name}",
1174
- path: {
1175
- name: data.name,
1176
- region: data.region
1177
- },
1178
- errors: {
1179
- 401: "Unauthorized",
1180
- 503: "Data enhancer unavailable"
1181
- }
1182
- });
1183
- }
1184
- /**
1185
- * Check health of all data providers
1186
- * @param data The data for the request.
1187
- * @param data.region Region code (cn, us, de)
1188
- * @returns unknown Data providers health status
1189
- * @throws ApiError
1190
- */
1191
- static healthControllerCheckDataProviders(data) {
1192
- return request(OpenAPI, {
1193
- method: "GET",
1194
- url: "/api/v1/health/data-providers",
1195
- path: {
1196
- region: data.region
1197
- },
1198
- errors: {
1199
- 401: "Unauthorized",
1200
- 503: "Data providers check failed"
1201
- }
1202
- });
1203
- }
1204
- /**
1205
- * Check health of a specific data provider
1206
- * @param data The data for the request.
1207
- * @param data.dataSource Data source identifier
1208
- * @param data.region Region code (cn, us, de)
1209
- * @returns unknown Data provider is healthy
1210
- * @throws ApiError
1211
- */
1212
- static healthControllerGetHealthOfDataProvider(data) {
1213
- return request(OpenAPI, {
1214
- method: "GET",
1215
- url: "/api/v1/health/data-provider/{dataSource}",
1216
- path: {
1217
- dataSource: data.dataSource,
1218
- region: data.region
1219
- },
1220
- errors: {
1221
- 400: "Invalid data source",
1222
- 401: "Unauthorized",
1223
- 503: "Data provider unavailable"
1224
- }
1225
- });
1226
- }
1227
1286
  };
1228
1287
  // Annotate the CommonJS export names for ESM import in node:
1229
1288
  0 && (module.exports = {