@firela/api-types 0.0.0-canary.b3b7767b → 0.0.0-canary.b4fc3fae
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.d.mts +6087 -2802
- package/dist/index.d.ts +6087 -2802
- package/dist/index.js +191 -130
- package/dist/index.mjs +191 -130
- package/package.json +2 -3
- package/src/generated/schemas.gen.ts +7311 -3166
- package/src/generated/services.gen.ts +2022 -1052
- package/src/generated/types.gen.ts +9710 -3251
|
@@ -17,22 +17,30 @@ import type {
|
|
|
17
17
|
AccountControllerCloseResponse,
|
|
18
18
|
AccountControllerReopenData,
|
|
19
19
|
AccountControllerReopenResponse,
|
|
20
|
+
AccountControllerAddOpeningBalanceData,
|
|
21
|
+
AccountControllerAddOpeningBalanceResponse,
|
|
22
|
+
AccountStandardsControllerGetTemplatesData,
|
|
23
|
+
AccountStandardsControllerGetTemplatesResponse,
|
|
24
|
+
AccountStandardsControllerGetTemplateMetadataData,
|
|
25
|
+
AccountStandardsControllerGetTemplateMetadataResponse,
|
|
26
|
+
AccountStandardsControllerGetRegionsData,
|
|
27
|
+
AccountStandardsControllerGetRegionsResponse,
|
|
20
28
|
TransactionControllerCreateData,
|
|
21
29
|
TransactionControllerCreateResponse,
|
|
22
30
|
TransactionControllerListData,
|
|
23
31
|
TransactionControllerListResponse,
|
|
24
|
-
|
|
25
|
-
|
|
32
|
+
TransactionControllerCreateBatchData,
|
|
33
|
+
TransactionControllerCreateBatchResponse,
|
|
34
|
+
TransactionControllerCorrectData,
|
|
35
|
+
TransactionControllerCorrectResponse,
|
|
36
|
+
TransactionControllerSuggestTagsData,
|
|
37
|
+
TransactionControllerSuggestTagsResponse,
|
|
26
38
|
TransactionControllerGetDetailData,
|
|
27
39
|
TransactionControllerGetDetailResponse,
|
|
28
40
|
TransactionControllerUpdateData,
|
|
29
41
|
TransactionControllerUpdateResponse,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
AccountStandardsControllerGetTemplatesData,
|
|
33
|
-
AccountStandardsControllerGetTemplatesResponse,
|
|
34
|
-
AccountStandardsControllerGetRegionsData,
|
|
35
|
-
AccountStandardsControllerGetRegionsResponse,
|
|
42
|
+
TransactionControllerDeleteData,
|
|
43
|
+
TransactionControllerDeleteResponse,
|
|
36
44
|
BalanceControllerGetBalanceData,
|
|
37
45
|
BalanceControllerGetBalanceResponse,
|
|
38
46
|
BalanceControllerGetMultiCurrencyBalanceData,
|
|
@@ -43,14 +51,14 @@ import type {
|
|
|
43
51
|
ReviewControllerGetStatsResponse,
|
|
44
52
|
ReviewControllerFindOneData,
|
|
45
53
|
ReviewControllerFindOneResponse,
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
ReviewControllerResolveData,
|
|
55
|
+
ReviewControllerResolveResponse,
|
|
56
|
+
ReviewControllerUndoData,
|
|
57
|
+
ReviewControllerUndoResponse,
|
|
58
|
+
ReviewControllerBatchResolveData,
|
|
59
|
+
ReviewControllerBatchResolveResponse,
|
|
60
|
+
PayeeControllerCreateData,
|
|
61
|
+
PayeeControllerCreateResponse,
|
|
54
62
|
PayeeControllerFindAllData,
|
|
55
63
|
PayeeControllerFindAllResponse,
|
|
56
64
|
PayeeControllerAutocompleteData,
|
|
@@ -59,50 +67,92 @@ import type {
|
|
|
59
67
|
PayeeControllerGetTopPayeesResponse,
|
|
60
68
|
PayeeControllerFindOneData,
|
|
61
69
|
PayeeControllerFindOneResponse,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
70
|
+
PayeeControllerUpdateData,
|
|
71
|
+
PayeeControllerUpdateResponse,
|
|
72
|
+
PayeeControllerDeleteData,
|
|
73
|
+
PayeeControllerDeleteResponse,
|
|
74
|
+
PayeeProfileAdminControllerCreateData,
|
|
75
|
+
PayeeProfileAdminControllerCreateResponse,
|
|
68
76
|
PayeeProfileAdminControllerFindAllData,
|
|
69
77
|
PayeeProfileAdminControllerFindAllResponse,
|
|
70
78
|
PayeeProfileAdminControllerFindOneData,
|
|
71
79
|
PayeeProfileAdminControllerFindOneResponse,
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
80
|
+
PayeeProfileAdminControllerUpdateData,
|
|
81
|
+
PayeeProfileAdminControllerUpdateResponse,
|
|
82
|
+
PayeeProfileAdminControllerDeleteData,
|
|
83
|
+
PayeeProfileAdminControllerDeleteResponse,
|
|
84
|
+
PayeeProfileAdminControllerVerifyData,
|
|
85
|
+
PayeeProfileAdminControllerVerifyResponse,
|
|
86
|
+
PayeeProfileAdminControllerUnverifyData,
|
|
87
|
+
PayeeProfileAdminControllerUnverifyResponse,
|
|
88
|
+
CommodityControllerCreateData,
|
|
89
|
+
CommodityControllerCreateResponse,
|
|
82
90
|
CommodityControllerFindAllData,
|
|
83
91
|
CommodityControllerFindAllResponse,
|
|
84
92
|
CommodityControllerFindOneData,
|
|
85
93
|
CommodityControllerFindOneResponse,
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
CommodityControllerUpdateData,
|
|
95
|
+
CommodityControllerUpdateResponse,
|
|
96
|
+
CommodityControllerDeleteData,
|
|
97
|
+
CommodityControllerDeleteResponse,
|
|
98
|
+
CommodityControllerGetOrCreateData,
|
|
99
|
+
CommodityControllerGetOrCreateResponse,
|
|
100
|
+
CommodityControllerBulkCreateData,
|
|
101
|
+
CommodityControllerBulkCreateResponse,
|
|
102
|
+
ReportingControllerGetPortfolioTrendsData,
|
|
103
|
+
ReportingControllerGetPortfolioTrendsResponse,
|
|
104
|
+
ReportingControllerGetCashFlowTrendsData,
|
|
105
|
+
ReportingControllerGetCashFlowTrendsResponse,
|
|
106
|
+
ReportingControllerGenerateSnapshotData,
|
|
107
|
+
ReportingControllerGenerateSnapshotResponse,
|
|
108
|
+
ReportingControllerBackfillSnapshotsData,
|
|
109
|
+
ReportingControllerBackfillSnapshotsResponse,
|
|
110
|
+
PriceControllerCreateData,
|
|
111
|
+
PriceControllerCreateResponse,
|
|
112
|
+
PriceControllerFindAllData,
|
|
113
|
+
PriceControllerFindAllResponse,
|
|
114
|
+
PriceControllerFindOneData,
|
|
115
|
+
PriceControllerFindOneResponse,
|
|
116
|
+
PriceControllerUpdateData,
|
|
117
|
+
PriceControllerUpdateResponse,
|
|
118
|
+
PriceControllerDeleteData,
|
|
119
|
+
PriceControllerDeleteResponse,
|
|
120
|
+
PriceControllerBulkCreateData,
|
|
121
|
+
PriceControllerBulkCreateResponse,
|
|
122
|
+
UserControllerDeleteOwnUserData,
|
|
123
|
+
UserControllerDeleteOwnUserResponse,
|
|
124
|
+
UserControllerGetUserData,
|
|
125
|
+
UserControllerGetUserResponse,
|
|
126
|
+
UserControllerSignupUserData,
|
|
127
|
+
UserControllerSignupUserResponse,
|
|
128
|
+
UserControllerDeleteUserData,
|
|
129
|
+
UserControllerDeleteUserResponse,
|
|
130
|
+
UserControllerGetUserInfoData,
|
|
131
|
+
UserControllerGetUserInfoResponse,
|
|
132
|
+
UserControllerUpdateUserSettingData,
|
|
133
|
+
UserControllerUpdateUserSettingResponse,
|
|
134
|
+
UserControllerGetAllUserSettingsByPageData,
|
|
135
|
+
UserControllerGetAllUserSettingsByPageResponse,
|
|
136
|
+
UserControllerGetAssetLiabilitySummaryResponse,
|
|
137
|
+
PropertyControllerGetAllResponse,
|
|
138
|
+
PropertyControllerGetByKeyData,
|
|
139
|
+
PropertyControllerGetByKeyResponse,
|
|
140
|
+
PropertyControllerUpdateData,
|
|
141
|
+
PropertyControllerUpdateResponse,
|
|
142
|
+
PropertyControllerDeleteData,
|
|
143
|
+
PropertyControllerDeleteResponse,
|
|
144
|
+
RecurringRuleControllerCreateData,
|
|
145
|
+
RecurringRuleControllerCreateResponse,
|
|
96
146
|
RecurringRuleControllerFindAllData,
|
|
97
147
|
RecurringRuleControllerFindAllResponse,
|
|
98
|
-
|
|
99
|
-
|
|
148
|
+
RecurringRuleControllerCreateFromTransactionData,
|
|
149
|
+
RecurringRuleControllerCreateFromTransactionResponse,
|
|
100
150
|
RecurringRuleControllerFindOneData,
|
|
101
151
|
RecurringRuleControllerFindOneResponse,
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
152
|
+
RecurringRuleControllerUpdateData,
|
|
153
|
+
RecurringRuleControllerUpdateResponse,
|
|
154
|
+
RecurringRuleControllerDeleteData,
|
|
155
|
+
RecurringRuleControllerDeleteResponse,
|
|
106
156
|
RecurringRuleControllerGetWithStatsData,
|
|
107
157
|
RecurringRuleControllerGetWithStatsResponse,
|
|
108
158
|
ExpectedTransactionControllerFindAllData,
|
|
@@ -111,152 +161,145 @@ import type {
|
|
|
111
161
|
ExpectedTransactionControllerFindOverdueResponse,
|
|
112
162
|
ExpectedTransactionControllerFindOneData,
|
|
113
163
|
ExpectedTransactionControllerFindOneResponse,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
164
|
+
ExpectedTransactionControllerSkipData,
|
|
165
|
+
ExpectedTransactionControllerSkipResponse,
|
|
166
|
+
ExpectedTransactionControllerUndoSkipData,
|
|
167
|
+
ExpectedTransactionControllerUndoSkipResponse,
|
|
168
|
+
ExpectedTransactionControllerConfirmMatchData,
|
|
169
|
+
ExpectedTransactionControllerConfirmMatchResponse,
|
|
170
|
+
ExpectedTransactionControllerUnmatchData,
|
|
171
|
+
ExpectedTransactionControllerUnmatchResponse,
|
|
172
|
+
ExpectedTransactionControllerEnterNowData,
|
|
173
|
+
ExpectedTransactionControllerEnterNowResponse,
|
|
124
174
|
ForecastControllerGetForecastData,
|
|
125
175
|
ForecastControllerGetForecastResponse,
|
|
126
|
-
|
|
127
|
-
|
|
176
|
+
TransactionRuleControllerCreateData,
|
|
177
|
+
TransactionRuleControllerCreateResponse,
|
|
128
178
|
TransactionRuleControllerListData,
|
|
129
179
|
TransactionRuleControllerListResponse,
|
|
130
180
|
TransactionRuleControllerValidateData,
|
|
131
181
|
TransactionRuleControllerValidateResponse,
|
|
132
|
-
|
|
133
|
-
|
|
182
|
+
TransactionRuleControllerBulkCreateData,
|
|
183
|
+
TransactionRuleControllerBulkCreateResponse,
|
|
134
184
|
TransactionRuleControllerExportData,
|
|
135
185
|
TransactionRuleControllerExportResponse,
|
|
136
186
|
TransactionRuleControllerGetStatisticsData,
|
|
137
187
|
TransactionRuleControllerGetStatisticsResponse,
|
|
138
188
|
TransactionRuleControllerGetDetailData,
|
|
139
189
|
TransactionRuleControllerGetDetailResponse,
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
190
|
+
TransactionRuleControllerUpdateData,
|
|
191
|
+
TransactionRuleControllerUpdateResponse,
|
|
192
|
+
TransactionRuleControllerDeleteData,
|
|
193
|
+
TransactionRuleControllerDeleteResponse,
|
|
144
194
|
TransactionRuleControllerTestData,
|
|
145
195
|
TransactionRuleControllerTestResponse,
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
196
|
+
CategoryCatalogControllerListData,
|
|
197
|
+
CategoryCatalogControllerListResponse,
|
|
198
|
+
EventControllerCreateData,
|
|
199
|
+
EventControllerCreateResponse,
|
|
200
|
+
EventControllerFindAllData,
|
|
201
|
+
EventControllerFindAllResponse,
|
|
202
|
+
EventControllerFindOneData,
|
|
203
|
+
EventControllerFindOneResponse,
|
|
204
|
+
EventControllerUpdateData,
|
|
205
|
+
EventControllerUpdateResponse,
|
|
206
|
+
EventControllerDeleteData,
|
|
207
|
+
EventControllerDeleteResponse,
|
|
208
|
+
EventControllerGetSliceData,
|
|
209
|
+
EventControllerGetSliceResponse,
|
|
210
|
+
OnboardingControllerBootstrapData,
|
|
211
|
+
OnboardingControllerBootstrapResponse,
|
|
212
|
+
ReconciliationControllerComputeData,
|
|
213
|
+
ReconciliationControllerComputeResponse,
|
|
214
|
+
ReconciliationControllerAssertData,
|
|
215
|
+
ReconciliationControllerAssertResponse,
|
|
216
|
+
ReconciliationControllerPadData,
|
|
217
|
+
ReconciliationControllerPadResponse,
|
|
218
|
+
ReconciliationControllerHistoryData,
|
|
219
|
+
ReconciliationControllerHistoryResponse,
|
|
220
|
+
ExportControllerExportBeancountResponse,
|
|
170
221
|
FileImportControllerImportFileData,
|
|
171
222
|
FileImportControllerImportFileResponse,
|
|
172
223
|
FileImportControllerIdentifyFileData,
|
|
173
224
|
FileImportControllerIdentifyFileResponse,
|
|
225
|
+
FileImportControllerImportBeancountData,
|
|
226
|
+
FileImportControllerImportBeancountResponse,
|
|
174
227
|
ImporterConfigControllerGetConfigData,
|
|
175
228
|
ImporterConfigControllerGetConfigResponse,
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
229
|
+
ImporterConfigControllerUpdateConfigData,
|
|
230
|
+
ImporterConfigControllerUpdateConfigResponse,
|
|
231
|
+
ImporterConfigControllerResetConfigData,
|
|
232
|
+
ImporterConfigControllerResetConfigResponse,
|
|
180
233
|
ProviderSyncControllerSyncData,
|
|
181
234
|
ProviderSyncControllerSyncResponse,
|
|
182
235
|
ProviderSyncControllerGetSupportedProvidersData,
|
|
183
236
|
ProviderSyncControllerGetSupportedProvidersResponse,
|
|
184
237
|
ProviderSyncControllerIsProviderSupportedData,
|
|
185
238
|
ProviderSyncControllerIsProviderSupportedResponse,
|
|
239
|
+
ExternalAccountLinkControllerCreateData,
|
|
240
|
+
ExternalAccountLinkControllerCreateResponse,
|
|
241
|
+
ExternalAccountLinkControllerFindAllData,
|
|
242
|
+
ExternalAccountLinkControllerFindAllResponse,
|
|
243
|
+
ExternalAccountLinkControllerFindOneData,
|
|
244
|
+
ExternalAccountLinkControllerFindOneResponse,
|
|
245
|
+
ExternalAccountLinkControllerRemoveData,
|
|
246
|
+
ExternalAccountLinkControllerRemoveResponse,
|
|
186
247
|
TelemetryControllerReportTelemetryData,
|
|
187
248
|
TelemetryControllerReportTelemetryResponse,
|
|
249
|
+
TelemetryControllerReportCoverageMissData,
|
|
250
|
+
TelemetryControllerReportCoverageMissResponse,
|
|
251
|
+
TelemetryControllerGetCoverageMetricsData,
|
|
252
|
+
TelemetryControllerGetCoverageMetricsResponse,
|
|
188
253
|
NlpControllerProcessNaturalLanguageData,
|
|
189
254
|
NlpControllerProcessNaturalLanguageResponse,
|
|
190
255
|
NlpControllerClearSessionData,
|
|
191
256
|
NlpControllerClearSessionResponse,
|
|
192
257
|
NlpControllerGetSessionData,
|
|
193
258
|
NlpControllerGetSessionResponse,
|
|
194
|
-
PlatformControllerFindAllData,
|
|
195
259
|
PlatformControllerFindAllResponse,
|
|
196
|
-
|
|
197
|
-
|
|
260
|
+
PlatformControllerCreateData,
|
|
261
|
+
PlatformControllerCreateResponse,
|
|
198
262
|
PlatformControllerGetPlatformListData,
|
|
199
263
|
PlatformControllerGetPlatformListResponse,
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
SymbolControllerGatherSymbolForDateData,
|
|
209
|
-
SymbolControllerGatherSymbolForDateResponse,
|
|
210
|
-
SymbolControllerData,
|
|
211
|
-
SymbolControllerResponse,
|
|
212
|
-
CacheControllerFlushCacheData,
|
|
213
|
-
CacheControllerFlushCacheResponse,
|
|
264
|
+
PlatformControllerMatchPlatformsData,
|
|
265
|
+
PlatformControllerMatchPlatformsResponse,
|
|
266
|
+
PlatformControllerGetPlatformStandardsData,
|
|
267
|
+
PlatformControllerGetPlatformStandardsResponse,
|
|
268
|
+
PlatformControllerUpdateData,
|
|
269
|
+
PlatformControllerUpdateResponse,
|
|
270
|
+
PlatformControllerDeleteData,
|
|
271
|
+
PlatformControllerDeleteResponse,
|
|
214
272
|
DashboardControllerGetNetWorthData,
|
|
215
273
|
DashboardControllerGetNetWorthResponse,
|
|
216
274
|
DashboardControllerGetAccountsData,
|
|
217
275
|
DashboardControllerGetAccountsResponse,
|
|
218
276
|
DashboardControllerGetCashFlowData,
|
|
219
277
|
DashboardControllerGetCashFlowResponse,
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
ReportingControllerBackfillSnapshotsResponse,
|
|
226
|
-
ApiKeysControllerData,
|
|
227
|
-
ApiKeysControllerResponse,
|
|
278
|
+
DashboardControllerGetExpensesData,
|
|
279
|
+
DashboardControllerGetExpensesResponse,
|
|
280
|
+
HoldingPnlControllerGetHoldingPnlData,
|
|
281
|
+
HoldingPnlControllerGetHoldingPnlResponse,
|
|
282
|
+
ApiKeysControllerCreateApiKeyResponse,
|
|
228
283
|
AuthControllerAccessTokenLoginData,
|
|
229
284
|
AuthControllerAccessTokenLoginResponse,
|
|
285
|
+
ParserContributionControllerCreateData,
|
|
286
|
+
ParserContributionControllerCreateResponse,
|
|
287
|
+
CacheControllerFlushCacheResponse,
|
|
230
288
|
ExchangeRateControllerGetExchangeRateData,
|
|
231
289
|
ExchangeRateControllerGetExchangeRateResponse,
|
|
232
|
-
HealthControllerGetHealthData,
|
|
233
290
|
HealthControllerGetHealthResponse,
|
|
234
|
-
HealthControllerCheckDatabaseData,
|
|
235
291
|
HealthControllerCheckDatabaseResponse,
|
|
236
|
-
|
|
292
|
+
HealthControllerCheckOpenBbResponse,
|
|
237
293
|
HealthControllerCheckRedisResponse,
|
|
238
|
-
HealthControllerGetCircuitBreakersHealthData,
|
|
239
294
|
HealthControllerGetCircuitBreakersHealthResponse,
|
|
240
295
|
HealthControllerResetCircuitBreakerData,
|
|
241
296
|
HealthControllerResetCircuitBreakerResponse,
|
|
242
|
-
HealthControllerGetMetricsData,
|
|
243
297
|
HealthControllerGetMetricsResponse,
|
|
244
|
-
HealthControllerGetHealthOfDataEnhancerData,
|
|
245
|
-
HealthControllerGetHealthOfDataEnhancerResponse,
|
|
246
|
-
HealthControllerCheckDataProvidersData,
|
|
247
|
-
HealthControllerCheckDataProvidersResponse,
|
|
248
|
-
HealthControllerGetHealthOfDataProviderData,
|
|
249
|
-
HealthControllerGetHealthOfDataProviderResponse,
|
|
250
|
-
InfoControllerGetInfoData,
|
|
251
298
|
InfoControllerGetInfoResponse,
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
MarketDataControllerGetMarketDataBySymbolData,
|
|
257
|
-
MarketDataControllerGetMarketDataBySymbolResponse,
|
|
258
|
-
MarketDataControllerData,
|
|
259
|
-
MarketDataControllerResponse
|
|
299
|
+
SymbolControllerSearchData,
|
|
300
|
+
SymbolControllerSearchResponse,
|
|
301
|
+
SymbolControllerGetQuoteData,
|
|
302
|
+
SymbolControllerGetQuoteResponse
|
|
260
303
|
} from './types.gen';
|
|
261
304
|
|
|
262
305
|
export class BeanAccountsService {
|
|
@@ -294,7 +337,7 @@ export class BeanAccountsService {
|
|
|
294
337
|
* @param data.type Filter by account type
|
|
295
338
|
* @param data.status Filter by status
|
|
296
339
|
* @param data.isCustom Filter by custom (user-created) accounts only
|
|
297
|
-
* @param data.search Search term for path
|
|
340
|
+
* @param data.search Search term for account path
|
|
298
341
|
* @param data.limit Maximum number of results
|
|
299
342
|
* @param data.offset Number of results to skip
|
|
300
343
|
* @returns AccountListResponseDto Accounts retrieved successfully
|
|
@@ -375,7 +418,7 @@ export class BeanAccountsService {
|
|
|
375
418
|
|
|
376
419
|
/**
|
|
377
420
|
* Delete account
|
|
378
|
-
* Deletes an account (only if no transactions)
|
|
421
|
+
* Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
|
|
379
422
|
* @param data The data for the request.
|
|
380
423
|
* @param data.id Account UUID
|
|
381
424
|
* @param data.region Region code for tenant context
|
|
@@ -394,7 +437,7 @@ export class BeanAccountsService {
|
|
|
394
437
|
},
|
|
395
438
|
errors: {
|
|
396
439
|
404: 'Account not found',
|
|
397
|
-
409: 'Account has transactions and cannot be deleted'
|
|
440
|
+
409: 'Account has active transactions and cannot be deleted'
|
|
398
441
|
}
|
|
399
442
|
});
|
|
400
443
|
}
|
|
@@ -456,6 +499,107 @@ export class BeanAccountsService {
|
|
|
456
499
|
}
|
|
457
500
|
});
|
|
458
501
|
}
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* Post an opening-balance transaction
|
|
505
|
+
* 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.
|
|
506
|
+
* @param data The data for the request.
|
|
507
|
+
* @param data.id Account UUID
|
|
508
|
+
* @param data.region Region code for tenant context
|
|
509
|
+
* @param data.requestBody
|
|
510
|
+
* @returns OpeningBalanceResultDto Opening-balance transaction created
|
|
511
|
+
* @throws ApiError
|
|
512
|
+
*/
|
|
513
|
+
public static accountControllerAddOpeningBalance(
|
|
514
|
+
data: AccountControllerAddOpeningBalanceData
|
|
515
|
+
): CancelablePromise<AccountControllerAddOpeningBalanceResponse> {
|
|
516
|
+
return __request(OpenAPI, {
|
|
517
|
+
method: 'POST',
|
|
518
|
+
url: '/api/v1/{region}/bean/accounts/{id}/opening-balance',
|
|
519
|
+
path: {
|
|
520
|
+
id: data.id,
|
|
521
|
+
region: data.region
|
|
522
|
+
},
|
|
523
|
+
body: data.requestBody,
|
|
524
|
+
mediaType: 'application/json',
|
|
525
|
+
errors: {
|
|
526
|
+
404: 'Account not found',
|
|
527
|
+
409: 'An opening balance already exists for this account'
|
|
528
|
+
}
|
|
529
|
+
});
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
export class BeanAccountStandardsService {
|
|
534
|
+
/**
|
|
535
|
+
* Get account templates
|
|
536
|
+
* Returns predefined account templates for a region. Supports filtering by account type and search term.
|
|
537
|
+
* @param data The data for the request.
|
|
538
|
+
* @param data.region Region code (cn, us, de)
|
|
539
|
+
* @param data.type Filter by account type
|
|
540
|
+
* @param data.search Search term for path, description, aliases, or localized display name
|
|
541
|
+
* @returns AccountStandardListResponseDto Account templates retrieved successfully
|
|
542
|
+
* @throws ApiError
|
|
543
|
+
*/
|
|
544
|
+
public static accountStandardsControllerGetTemplates(
|
|
545
|
+
data: AccountStandardsControllerGetTemplatesData
|
|
546
|
+
): CancelablePromise<AccountStandardsControllerGetTemplatesResponse> {
|
|
547
|
+
return __request(OpenAPI, {
|
|
548
|
+
method: 'GET',
|
|
549
|
+
url: '/api/v1/{region}/bean/account-standards',
|
|
550
|
+
path: {
|
|
551
|
+
region: data.region
|
|
552
|
+
},
|
|
553
|
+
query: {
|
|
554
|
+
type: data.type,
|
|
555
|
+
search: data.search
|
|
556
|
+
}
|
|
557
|
+
});
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* Get template metadata for an account path
|
|
562
|
+
* Returns root type for a template path.
|
|
563
|
+
* @param data The data for the request.
|
|
564
|
+
* @param data.region Region code for tenant context
|
|
565
|
+
* @param data.path Account path to check
|
|
566
|
+
* @returns TemplateMetadataResponseDto Template metadata retrieved successfully
|
|
567
|
+
* @throws ApiError
|
|
568
|
+
*/
|
|
569
|
+
public static accountStandardsControllerGetTemplateMetadata(
|
|
570
|
+
data: AccountStandardsControllerGetTemplateMetadataData
|
|
571
|
+
): CancelablePromise<AccountStandardsControllerGetTemplateMetadataResponse> {
|
|
572
|
+
return __request(OpenAPI, {
|
|
573
|
+
method: 'GET',
|
|
574
|
+
url: '/api/v1/{region}/bean/account-standards/template-metadata',
|
|
575
|
+
path: {
|
|
576
|
+
region: data.region
|
|
577
|
+
},
|
|
578
|
+
query: {
|
|
579
|
+
path: data.path
|
|
580
|
+
}
|
|
581
|
+
});
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
/**
|
|
585
|
+
* Get available regions with hierarchy
|
|
586
|
+
* Returns supported regions with inheritance metadata
|
|
587
|
+
* @param data The data for the request.
|
|
588
|
+
* @param data.region Region code for tenant context
|
|
589
|
+
* @returns RegionsMetadataResponseDto Regions metadata retrieved successfully
|
|
590
|
+
* @throws ApiError
|
|
591
|
+
*/
|
|
592
|
+
public static accountStandardsControllerGetRegions(
|
|
593
|
+
data: AccountStandardsControllerGetRegionsData
|
|
594
|
+
): CancelablePromise<AccountStandardsControllerGetRegionsResponse> {
|
|
595
|
+
return __request(OpenAPI, {
|
|
596
|
+
method: 'GET',
|
|
597
|
+
url: '/api/v1/{region}/bean/account-standards/regions',
|
|
598
|
+
path: {
|
|
599
|
+
region: data.region
|
|
600
|
+
}
|
|
601
|
+
});
|
|
602
|
+
}
|
|
459
603
|
}
|
|
460
604
|
|
|
461
605
|
export class BeanTransactionsService {
|
|
@@ -498,9 +642,11 @@ export class BeanTransactionsService {
|
|
|
498
642
|
* @param data.offset Number of items to skip (default: 0)
|
|
499
643
|
* @param data.dateFrom Filter by start date (inclusive), format: YYYY-MM-DD
|
|
500
644
|
* @param data.dateTo Filter by end date (inclusive), format: YYYY-MM-DD
|
|
501
|
-
* @param data.status Filter by transaction status
|
|
645
|
+
* @param data.status Filter by transaction status: single value, comma-separated multi-value (e.g. VOIDED,SUPERSEDED), or ALL to include audit rows. Defaults to ACTIVE-only (ADR-0128; previously unfiltered — breaking change).
|
|
502
646
|
* @param data.search Search in narration and payee fields (max 200 chars)
|
|
503
647
|
* @param data.accountId Filter by account ID (transactions with postings to this account)
|
|
648
|
+
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
|
|
649
|
+
* @param data.flow Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
|
|
504
650
|
* @returns TransactionListResponseDto Transaction list
|
|
505
651
|
* @throws ApiError
|
|
506
652
|
*/
|
|
@@ -520,28 +666,103 @@ export class BeanTransactionsService {
|
|
|
520
666
|
dateTo: data.dateTo,
|
|
521
667
|
status: data.status,
|
|
522
668
|
search: data.search,
|
|
523
|
-
accountId: data.accountId
|
|
669
|
+
accountId: data.accountId,
|
|
670
|
+
category: data.category,
|
|
671
|
+
flow: data.flow
|
|
524
672
|
},
|
|
525
673
|
errors: {
|
|
674
|
+
400: 'Validation failed',
|
|
526
675
|
401: 'Authentication required'
|
|
527
676
|
}
|
|
528
677
|
});
|
|
529
678
|
}
|
|
530
679
|
|
|
531
680
|
/**
|
|
681
|
+
* @deprecated
|
|
682
|
+
* Batch create transactions (DEPRECATED)
|
|
683
|
+
* DEPRECATED: Use POST /:region/bean/import/provider/:name/sync instead. This endpoint skips dedup, rule matching, and review branching.
|
|
532
684
|
* @param data The data for the request.
|
|
533
685
|
* @param data.region Region code for tenant context
|
|
534
|
-
* @
|
|
686
|
+
* @param data.requestBody
|
|
687
|
+
* @returns BatchTransactionResponseDto Transactions processed
|
|
535
688
|
* @throws ApiError
|
|
536
689
|
*/
|
|
537
|
-
public static
|
|
538
|
-
data:
|
|
539
|
-
): CancelablePromise<
|
|
690
|
+
public static transactionControllerCreateBatch(
|
|
691
|
+
data: TransactionControllerCreateBatchData
|
|
692
|
+
): CancelablePromise<TransactionControllerCreateBatchResponse> {
|
|
540
693
|
return __request(OpenAPI, {
|
|
541
694
|
method: 'POST',
|
|
542
695
|
url: '/api/v1/{region}/bean/transactions/batch',
|
|
543
696
|
path: {
|
|
544
697
|
region: data.region
|
|
698
|
+
},
|
|
699
|
+
body: data.requestBody,
|
|
700
|
+
mediaType: 'application/json',
|
|
701
|
+
errors: {
|
|
702
|
+
400: 'Invalid input',
|
|
703
|
+
401: 'Authentication required'
|
|
704
|
+
}
|
|
705
|
+
});
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
/**
|
|
709
|
+
* Correct (supersede) a transaction
|
|
710
|
+
* Atomically voids the original (SUPERSEDED) and creates a replacement through the full validation pipeline.
|
|
711
|
+
* @param data The data for the request.
|
|
712
|
+
* @param data.id Original transaction ID to correct
|
|
713
|
+
* @param data.region Region code for tenant context
|
|
714
|
+
* @param data.requestBody
|
|
715
|
+
* @returns TransactionDetailDto Corrected transaction created
|
|
716
|
+
* @throws ApiError
|
|
717
|
+
*/
|
|
718
|
+
public static transactionControllerCorrect(
|
|
719
|
+
data: TransactionControllerCorrectData
|
|
720
|
+
): CancelablePromise<TransactionControllerCorrectResponse> {
|
|
721
|
+
return __request(OpenAPI, {
|
|
722
|
+
method: 'POST',
|
|
723
|
+
url: '/api/v1/{region}/bean/transactions/{id}/correct',
|
|
724
|
+
path: {
|
|
725
|
+
id: data.id,
|
|
726
|
+
region: data.region
|
|
727
|
+
},
|
|
728
|
+
body: data.requestBody,
|
|
729
|
+
mediaType: 'application/json',
|
|
730
|
+
errors: {
|
|
731
|
+
404: 'Original transaction not found',
|
|
732
|
+
409: 'Original no longer ACTIVE (concurrent modification)',
|
|
733
|
+
422: 'Pipeline validation failed (does not balance, invalid accounts)'
|
|
734
|
+
}
|
|
735
|
+
});
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
/**
|
|
739
|
+
* Suggest transaction tags
|
|
740
|
+
* Returns distinct tags from the user ACTIVE transactions, sorted by usage, for autocomplete. Optional q performs a case-insensitive prefix match.
|
|
741
|
+
* @param data The data for the request.
|
|
742
|
+
* @param data.region Region code for tenant context
|
|
743
|
+
* @param data.q Prefix match, case-insensitive (max 50 chars)
|
|
744
|
+
* @param data.sort usage (default) or name
|
|
745
|
+
* @param data.limit Max suggestions (1-100, default 10)
|
|
746
|
+
* @returns TagSuggestionsResponseDto Tag suggestions
|
|
747
|
+
* @throws ApiError
|
|
748
|
+
*/
|
|
749
|
+
public static transactionControllerSuggestTags(
|
|
750
|
+
data: TransactionControllerSuggestTagsData
|
|
751
|
+
): CancelablePromise<TransactionControllerSuggestTagsResponse> {
|
|
752
|
+
return __request(OpenAPI, {
|
|
753
|
+
method: 'GET',
|
|
754
|
+
url: '/api/v1/{region}/bean/transactions/tags',
|
|
755
|
+
path: {
|
|
756
|
+
region: data.region
|
|
757
|
+
},
|
|
758
|
+
query: {
|
|
759
|
+
q: data.q,
|
|
760
|
+
sort: data.sort,
|
|
761
|
+
limit: data.limit
|
|
762
|
+
},
|
|
763
|
+
errors: {
|
|
764
|
+
400: 'Validation failed',
|
|
765
|
+
401: 'Authentication required'
|
|
545
766
|
}
|
|
546
767
|
});
|
|
547
768
|
}
|
|
@@ -603,67 +824,28 @@ export class BeanTransactionsService {
|
|
|
603
824
|
}
|
|
604
825
|
|
|
605
826
|
/**
|
|
827
|
+
* Void transaction
|
|
828
|
+
* Soft-deletes a transaction by marking it as VOIDED
|
|
606
829
|
* @param data The data for the request.
|
|
830
|
+
* @param data.id Transaction ID
|
|
607
831
|
* @param data.region Region code for tenant context
|
|
608
|
-
* @returns void
|
|
832
|
+
* @returns void Transaction voided successfully
|
|
609
833
|
* @throws ApiError
|
|
610
834
|
*/
|
|
611
|
-
public static
|
|
612
|
-
data:
|
|
613
|
-
): CancelablePromise<
|
|
835
|
+
public static transactionControllerDelete(
|
|
836
|
+
data: TransactionControllerDeleteData
|
|
837
|
+
): CancelablePromise<TransactionControllerDeleteResponse> {
|
|
614
838
|
return __request(OpenAPI, {
|
|
615
839
|
method: 'DELETE',
|
|
616
840
|
url: '/api/v1/{region}/bean/transactions/{id}',
|
|
617
841
|
path: {
|
|
618
|
-
|
|
619
|
-
}
|
|
620
|
-
});
|
|
621
|
-
}
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
export class BeanAccountStandardsService {
|
|
625
|
-
/**
|
|
626
|
-
* Get account templates
|
|
627
|
-
* Returns predefined account templates for a region. Supports filtering by account type and search term.
|
|
628
|
-
* @param data The data for the request.
|
|
629
|
-
* @param data.region Region code (cn, us, de)
|
|
630
|
-
* @param data.type Filter by account type
|
|
631
|
-
* @param data.search Search term for path or description
|
|
632
|
-
* @returns AccountStandardListResponseDto Account templates retrieved successfully
|
|
633
|
-
* @throws ApiError
|
|
634
|
-
*/
|
|
635
|
-
public static accountStandardsControllerGetTemplates(
|
|
636
|
-
data: AccountStandardsControllerGetTemplatesData
|
|
637
|
-
): CancelablePromise<AccountStandardsControllerGetTemplatesResponse> {
|
|
638
|
-
return __request(OpenAPI, {
|
|
639
|
-
method: 'GET',
|
|
640
|
-
url: '/api/v1/{region}/bean/account-standards',
|
|
641
|
-
path: {
|
|
842
|
+
id: data.id,
|
|
642
843
|
region: data.region
|
|
643
844
|
},
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
});
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
/**
|
|
652
|
-
* Get available regions with hierarchy
|
|
653
|
-
* Returns supported regions with inheritance metadata
|
|
654
|
-
* @param data The data for the request.
|
|
655
|
-
* @param data.region Region code (cn, us, de)
|
|
656
|
-
* @returns RegionsMetadataResponseDto Regions metadata retrieved successfully
|
|
657
|
-
* @throws ApiError
|
|
658
|
-
*/
|
|
659
|
-
public static accountStandardsControllerGetRegions(
|
|
660
|
-
data: AccountStandardsControllerGetRegionsData
|
|
661
|
-
): CancelablePromise<AccountStandardsControllerGetRegionsResponse> {
|
|
662
|
-
return __request(OpenAPI, {
|
|
663
|
-
method: 'GET',
|
|
664
|
-
url: '/api/v1/{region}/bean/account-standards/regions',
|
|
665
|
-
path: {
|
|
666
|
-
region: data.region
|
|
845
|
+
errors: {
|
|
846
|
+
400: 'Transaction already voided',
|
|
847
|
+
401: 'Authentication required',
|
|
848
|
+
404: 'Transaction not found'
|
|
667
849
|
}
|
|
668
850
|
});
|
|
669
851
|
}
|
|
@@ -674,8 +856,8 @@ export class BeanBalancesService {
|
|
|
674
856
|
* Query account balance
|
|
675
857
|
* Calculate account balance at a specific date for a single currency
|
|
676
858
|
* @param data The data for the request.
|
|
677
|
-
* @param data.account Account name (e.g., "Assets:
|
|
678
|
-
* @param data.region Region code
|
|
859
|
+
* @param data.account Account name (e.g., "Assets:Checking")
|
|
860
|
+
* @param data.region Region code for tenant context
|
|
679
861
|
* @param data.date Date to calculate balance at (ISO 8601 format)
|
|
680
862
|
* @param data.currency Currency to query (e.g., "USD", "CNY")
|
|
681
863
|
* @returns BalanceResponseDto Balance calculated successfully
|
|
@@ -706,7 +888,7 @@ export class BeanBalancesService {
|
|
|
706
888
|
* Query multi-currency account balance
|
|
707
889
|
* Calculate account balances for all currencies at a specific date
|
|
708
890
|
* @param data The data for the request.
|
|
709
|
-
* @param data.region Region code
|
|
891
|
+
* @param data.region Region code for tenant context
|
|
710
892
|
* @returns MultiCurrencyBalanceResponseDto Balances calculated successfully
|
|
711
893
|
* @throws ApiError
|
|
712
894
|
*/
|
|
@@ -731,7 +913,7 @@ export class BeanReviewsService {
|
|
|
731
913
|
/**
|
|
732
914
|
* List pending reviews
|
|
733
915
|
* @param data The data for the request.
|
|
734
|
-
* @param data.region Region code
|
|
916
|
+
* @param data.region Region code for tenant context
|
|
735
917
|
* @param data.type Filter by review type
|
|
736
918
|
* @param data.confidenceLevel Filter by confidence level
|
|
737
919
|
* @param data.sortBy Sort order
|
|
@@ -762,7 +944,7 @@ export class BeanReviewsService {
|
|
|
762
944
|
/**
|
|
763
945
|
* Get review statistics
|
|
764
946
|
* @param data The data for the request.
|
|
765
|
-
* @param data.region Region code
|
|
947
|
+
* @param data.region Region code for tenant context
|
|
766
948
|
* @returns ReviewStatsDto
|
|
767
949
|
* @throws ApiError
|
|
768
950
|
*/
|
|
@@ -782,7 +964,7 @@ export class BeanReviewsService {
|
|
|
782
964
|
* Get review by ID
|
|
783
965
|
* @param data The data for the request.
|
|
784
966
|
* @param data.id Review ID
|
|
785
|
-
* @param data.region Region code
|
|
967
|
+
* @param data.region Region code for tenant context
|
|
786
968
|
* @returns ReviewDetailDto
|
|
787
969
|
* @throws ApiError
|
|
788
970
|
*/
|
|
@@ -800,75 +982,93 @@ export class BeanReviewsService {
|
|
|
800
982
|
}
|
|
801
983
|
|
|
802
984
|
/**
|
|
985
|
+
* Resolve a review item
|
|
803
986
|
* @param data The data for the request.
|
|
804
|
-
* @param data.
|
|
805
|
-
* @
|
|
806
|
-
* @
|
|
987
|
+
* @param data.id Review ID
|
|
988
|
+
* @param data.region Region code for tenant context
|
|
989
|
+
* @param data.requestBody
|
|
990
|
+
* @returns ResolveResultDto
|
|
991
|
+
* @throws ApiError
|
|
807
992
|
*/
|
|
808
|
-
public static
|
|
809
|
-
data:
|
|
810
|
-
): CancelablePromise<
|
|
993
|
+
public static reviewControllerResolve(
|
|
994
|
+
data: ReviewControllerResolveData
|
|
995
|
+
): CancelablePromise<ReviewControllerResolveResponse> {
|
|
811
996
|
return __request(OpenAPI, {
|
|
812
997
|
method: 'POST',
|
|
813
998
|
url: '/api/v1/{region}/bean/reviews/{id}/resolve',
|
|
814
999
|
path: {
|
|
1000
|
+
id: data.id,
|
|
815
1001
|
region: data.region
|
|
816
|
-
}
|
|
1002
|
+
},
|
|
1003
|
+
body: data.requestBody,
|
|
1004
|
+
mediaType: 'application/json'
|
|
817
1005
|
});
|
|
818
1006
|
}
|
|
819
1007
|
|
|
820
1008
|
/**
|
|
1009
|
+
* Undo a resolution (within 24h)
|
|
821
1010
|
* @param data The data for the request.
|
|
822
|
-
* @param data.
|
|
823
|
-
* @
|
|
1011
|
+
* @param data.id Review ID
|
|
1012
|
+
* @param data.region Region code for tenant context
|
|
1013
|
+
* @returns UndoResultDto
|
|
824
1014
|
* @throws ApiError
|
|
825
1015
|
*/
|
|
826
|
-
public static
|
|
827
|
-
data:
|
|
828
|
-
): CancelablePromise<
|
|
1016
|
+
public static reviewControllerUndo(
|
|
1017
|
+
data: ReviewControllerUndoData
|
|
1018
|
+
): CancelablePromise<ReviewControllerUndoResponse> {
|
|
829
1019
|
return __request(OpenAPI, {
|
|
830
1020
|
method: 'POST',
|
|
831
1021
|
url: '/api/v1/{region}/bean/reviews/{id}/undo',
|
|
832
1022
|
path: {
|
|
1023
|
+
id: data.id,
|
|
833
1024
|
region: data.region
|
|
834
1025
|
}
|
|
835
1026
|
});
|
|
836
1027
|
}
|
|
837
1028
|
|
|
838
1029
|
/**
|
|
1030
|
+
* Batch resolve multiple reviews
|
|
839
1031
|
* @param data The data for the request.
|
|
840
|
-
* @param data.region Region code
|
|
841
|
-
* @
|
|
1032
|
+
* @param data.region Region code for tenant context
|
|
1033
|
+
* @param data.requestBody Batch resolution request containing review IDs and action
|
|
1034
|
+
* @returns BatchResolveResultDto
|
|
842
1035
|
* @throws ApiError
|
|
843
1036
|
*/
|
|
844
|
-
public static
|
|
845
|
-
data:
|
|
846
|
-
): CancelablePromise<
|
|
1037
|
+
public static reviewControllerBatchResolve(
|
|
1038
|
+
data: ReviewControllerBatchResolveData
|
|
1039
|
+
): CancelablePromise<ReviewControllerBatchResolveResponse> {
|
|
847
1040
|
return __request(OpenAPI, {
|
|
848
1041
|
method: 'POST',
|
|
849
1042
|
url: '/api/v1/{region}/bean/reviews/batch-resolve',
|
|
850
1043
|
path: {
|
|
851
1044
|
region: data.region
|
|
852
|
-
}
|
|
1045
|
+
},
|
|
1046
|
+
body: data.requestBody,
|
|
1047
|
+
mediaType: 'application/json'
|
|
853
1048
|
});
|
|
854
1049
|
}
|
|
855
1050
|
}
|
|
856
1051
|
|
|
857
1052
|
export class BeanPayeesService {
|
|
858
1053
|
/**
|
|
1054
|
+
* Create a new payee
|
|
1055
|
+
* Creates a new payee mapping for the authenticated user. The payee name must be unique within the user's account.
|
|
859
1056
|
* @param data The data for the request.
|
|
860
|
-
* @param data.
|
|
861
|
-
* @returns
|
|
1057
|
+
* @param data.requestBody
|
|
1058
|
+
* @returns PayeeResponseDto Payee created successfully
|
|
862
1059
|
* @throws ApiError
|
|
863
1060
|
*/
|
|
864
|
-
public static
|
|
865
|
-
data:
|
|
866
|
-
): CancelablePromise<
|
|
1061
|
+
public static payeeControllerCreate(
|
|
1062
|
+
data: PayeeControllerCreateData
|
|
1063
|
+
): CancelablePromise<PayeeControllerCreateResponse> {
|
|
867
1064
|
return __request(OpenAPI, {
|
|
868
1065
|
method: 'POST',
|
|
869
1066
|
url: '/api/v1/bean/payees',
|
|
870
|
-
|
|
871
|
-
|
|
1067
|
+
body: data.requestBody,
|
|
1068
|
+
mediaType: 'application/json',
|
|
1069
|
+
errors: {
|
|
1070
|
+
400: 'Invalid input data',
|
|
1071
|
+
409: 'Payee already exists'
|
|
872
1072
|
}
|
|
873
1073
|
});
|
|
874
1074
|
}
|
|
@@ -877,7 +1077,6 @@ export class BeanPayeesService {
|
|
|
877
1077
|
* List user payees
|
|
878
1078
|
* Returns all payee mappings for the authenticated user with optional filtering
|
|
879
1079
|
* @param data The data for the request.
|
|
880
|
-
* @param data.region Region code (cn, us, de)
|
|
881
1080
|
* @param data.search Search term for payee name (partial match, case-insensitive). Useful for autocomplete.
|
|
882
1081
|
* @param data.payee Filter by exact payee name match
|
|
883
1082
|
* @param data.category Filter by custom category
|
|
@@ -887,14 +1086,11 @@ export class BeanPayeesService {
|
|
|
887
1086
|
* @throws ApiError
|
|
888
1087
|
*/
|
|
889
1088
|
public static payeeControllerFindAll(
|
|
890
|
-
data: PayeeControllerFindAllData
|
|
1089
|
+
data: PayeeControllerFindAllData = {}
|
|
891
1090
|
): CancelablePromise<PayeeControllerFindAllResponse> {
|
|
892
1091
|
return __request(OpenAPI, {
|
|
893
1092
|
method: 'GET',
|
|
894
1093
|
url: '/api/v1/bean/payees',
|
|
895
|
-
path: {
|
|
896
|
-
region: data.region
|
|
897
|
-
},
|
|
898
1094
|
query: {
|
|
899
1095
|
search: data.search,
|
|
900
1096
|
payee: data.payee,
|
|
@@ -910,7 +1106,6 @@ export class BeanPayeesService {
|
|
|
910
1106
|
* Returns active payee names matching the query, sorted by recent usage. Used for transaction input autocomplete.
|
|
911
1107
|
* @param data The data for the request.
|
|
912
1108
|
* @param data.q Search query for payee name (partial match, case-insensitive)
|
|
913
|
-
* @param data.region Region code (cn, us, de)
|
|
914
1109
|
* @param data.limit Maximum number of suggestions
|
|
915
1110
|
* @returns PayeeAutocompleteResponseDto Autocomplete suggestions retrieved successfully
|
|
916
1111
|
* @throws ApiError
|
|
@@ -921,9 +1116,6 @@ export class BeanPayeesService {
|
|
|
921
1116
|
return __request(OpenAPI, {
|
|
922
1117
|
method: 'GET',
|
|
923
1118
|
url: '/api/v1/bean/payees/autocomplete',
|
|
924
|
-
path: {
|
|
925
|
-
region: data.region
|
|
926
|
-
},
|
|
927
1119
|
query: {
|
|
928
1120
|
q: data.q,
|
|
929
1121
|
limit: data.limit
|
|
@@ -935,20 +1127,16 @@ export class BeanPayeesService {
|
|
|
935
1127
|
* Get top payees by usage
|
|
936
1128
|
* Returns the most frequently used payees, sorted by use count. Used for statistics and analytics.
|
|
937
1129
|
* @param data The data for the request.
|
|
938
|
-
* @param data.region Region code (cn, us, de)
|
|
939
1130
|
* @param data.limit Maximum number of results
|
|
940
1131
|
* @returns PayeeStatsResponseDto Top payees retrieved successfully
|
|
941
1132
|
* @throws ApiError
|
|
942
1133
|
*/
|
|
943
1134
|
public static payeeControllerGetTopPayees(
|
|
944
|
-
data: PayeeControllerGetTopPayeesData
|
|
1135
|
+
data: PayeeControllerGetTopPayeesData = {}
|
|
945
1136
|
): CancelablePromise<PayeeControllerGetTopPayeesResponse> {
|
|
946
1137
|
return __request(OpenAPI, {
|
|
947
1138
|
method: 'GET',
|
|
948
1139
|
url: '/api/v1/bean/payees/top',
|
|
949
|
-
path: {
|
|
950
|
-
region: data.region
|
|
951
|
-
},
|
|
952
1140
|
query: {
|
|
953
1141
|
limit: data.limit
|
|
954
1142
|
}
|
|
@@ -960,7 +1148,6 @@ export class BeanPayeesService {
|
|
|
960
1148
|
* Returns a specific payee mapping by its UUID
|
|
961
1149
|
* @param data The data for the request.
|
|
962
1150
|
* @param data.id Payee UUID
|
|
963
|
-
* @param data.region Region code (cn, us, de)
|
|
964
1151
|
* @returns PayeeResponseDto Payee retrieved successfully
|
|
965
1152
|
* @throws ApiError
|
|
966
1153
|
*/
|
|
@@ -971,8 +1158,7 @@ export class BeanPayeesService {
|
|
|
971
1158
|
method: 'GET',
|
|
972
1159
|
url: '/api/v1/bean/payees/{id}',
|
|
973
1160
|
path: {
|
|
974
|
-
id: data.id
|
|
975
|
-
region: data.region
|
|
1161
|
+
id: data.id
|
|
976
1162
|
},
|
|
977
1163
|
errors: {
|
|
978
1164
|
403: 'Payee belongs to another user',
|
|
@@ -982,37 +1168,51 @@ export class BeanPayeesService {
|
|
|
982
1168
|
}
|
|
983
1169
|
|
|
984
1170
|
/**
|
|
1171
|
+
* Update payee
|
|
1172
|
+
* Updates a payee mapping. The payee name cannot be changed after creation.
|
|
985
1173
|
* @param data The data for the request.
|
|
986
|
-
* @param data.
|
|
987
|
-
* @
|
|
1174
|
+
* @param data.id Payee UUID
|
|
1175
|
+
* @param data.requestBody
|
|
1176
|
+
* @returns PayeeResponseDto Payee updated successfully
|
|
988
1177
|
* @throws ApiError
|
|
989
1178
|
*/
|
|
990
|
-
public static
|
|
991
|
-
data:
|
|
992
|
-
): CancelablePromise<
|
|
1179
|
+
public static payeeControllerUpdate(
|
|
1180
|
+
data: PayeeControllerUpdateData
|
|
1181
|
+
): CancelablePromise<PayeeControllerUpdateResponse> {
|
|
993
1182
|
return __request(OpenAPI, {
|
|
994
1183
|
method: 'PUT',
|
|
995
1184
|
url: '/api/v1/bean/payees/{id}',
|
|
996
1185
|
path: {
|
|
997
|
-
|
|
1186
|
+
id: data.id
|
|
1187
|
+
},
|
|
1188
|
+
body: data.requestBody,
|
|
1189
|
+
mediaType: 'application/json',
|
|
1190
|
+
errors: {
|
|
1191
|
+
400: 'Invalid input data',
|
|
1192
|
+
404: 'Payee not found'
|
|
998
1193
|
}
|
|
999
1194
|
});
|
|
1000
1195
|
}
|
|
1001
1196
|
|
|
1002
1197
|
/**
|
|
1198
|
+
* Delete payee
|
|
1199
|
+
* Soft deletes a payee by marking it as inactive. Inactive payees will not appear in autocomplete suggestions.
|
|
1003
1200
|
* @param data The data for the request.
|
|
1004
|
-
* @param data.
|
|
1005
|
-
* @returns void
|
|
1201
|
+
* @param data.id Payee UUID
|
|
1202
|
+
* @returns void Payee deleted successfully
|
|
1006
1203
|
* @throws ApiError
|
|
1007
1204
|
*/
|
|
1008
|
-
public static
|
|
1009
|
-
data:
|
|
1010
|
-
): CancelablePromise<
|
|
1205
|
+
public static payeeControllerDelete(
|
|
1206
|
+
data: PayeeControllerDeleteData
|
|
1207
|
+
): CancelablePromise<PayeeControllerDeleteResponse> {
|
|
1011
1208
|
return __request(OpenAPI, {
|
|
1012
1209
|
method: 'DELETE',
|
|
1013
1210
|
url: '/api/v1/bean/payees/{id}',
|
|
1014
1211
|
path: {
|
|
1015
|
-
|
|
1212
|
+
id: data.id
|
|
1213
|
+
},
|
|
1214
|
+
errors: {
|
|
1215
|
+
404: 'Payee not found'
|
|
1016
1216
|
}
|
|
1017
1217
|
});
|
|
1018
1218
|
}
|
|
@@ -1020,19 +1220,25 @@ export class BeanPayeesService {
|
|
|
1020
1220
|
|
|
1021
1221
|
export class AdminPayeeProfilesService {
|
|
1022
1222
|
/**
|
|
1223
|
+
* Create payee profile (Admin only)
|
|
1224
|
+
* Creates a new global payee profile. The canonical name must be unique (case-insensitive).
|
|
1023
1225
|
* @param data The data for the request.
|
|
1024
|
-
* @param data.
|
|
1025
|
-
* @returns
|
|
1226
|
+
* @param data.requestBody
|
|
1227
|
+
* @returns PayeeProfileResponseDto Payee profile created successfully
|
|
1026
1228
|
* @throws ApiError
|
|
1027
1229
|
*/
|
|
1028
|
-
public static
|
|
1029
|
-
data:
|
|
1030
|
-
): CancelablePromise<
|
|
1230
|
+
public static payeeProfileAdminControllerCreate(
|
|
1231
|
+
data: PayeeProfileAdminControllerCreateData
|
|
1232
|
+
): CancelablePromise<PayeeProfileAdminControllerCreateResponse> {
|
|
1031
1233
|
return __request(OpenAPI, {
|
|
1032
1234
|
method: 'POST',
|
|
1033
1235
|
url: '/api/v1/admin/payee-profiles',
|
|
1034
|
-
|
|
1035
|
-
|
|
1236
|
+
body: data.requestBody,
|
|
1237
|
+
mediaType: 'application/json',
|
|
1238
|
+
errors: {
|
|
1239
|
+
400: 'Validation failed',
|
|
1240
|
+
403: 'Admin access required',
|
|
1241
|
+
409: 'Payee profile already exists'
|
|
1036
1242
|
}
|
|
1037
1243
|
});
|
|
1038
1244
|
}
|
|
@@ -1041,7 +1247,6 @@ export class AdminPayeeProfilesService {
|
|
|
1041
1247
|
* List payee profiles (Admin only)
|
|
1042
1248
|
* Returns all payee profiles with optional filtering by category, country, verification status, etc.
|
|
1043
1249
|
* @param data The data for the request.
|
|
1044
|
-
* @param data.region Region code (cn, us, de)
|
|
1045
1250
|
* @param data.search Search term for canonical name and aliases (case-insensitive)
|
|
1046
1251
|
* @param data.category Filter by category
|
|
1047
1252
|
* @param data.country Filter by country (ISO 3166-1 alpha-2)
|
|
@@ -1052,14 +1257,11 @@ export class AdminPayeeProfilesService {
|
|
|
1052
1257
|
* @throws ApiError
|
|
1053
1258
|
*/
|
|
1054
1259
|
public static payeeProfileAdminControllerFindAll(
|
|
1055
|
-
data: PayeeProfileAdminControllerFindAllData
|
|
1260
|
+
data: PayeeProfileAdminControllerFindAllData = {}
|
|
1056
1261
|
): CancelablePromise<PayeeProfileAdminControllerFindAllResponse> {
|
|
1057
1262
|
return __request(OpenAPI, {
|
|
1058
1263
|
method: 'GET',
|
|
1059
1264
|
url: '/api/v1/admin/payee-profiles',
|
|
1060
|
-
path: {
|
|
1061
|
-
region: data.region
|
|
1062
|
-
},
|
|
1063
1265
|
query: {
|
|
1064
1266
|
search: data.search,
|
|
1065
1267
|
category: data.category,
|
|
@@ -1079,7 +1281,6 @@ export class AdminPayeeProfilesService {
|
|
|
1079
1281
|
* Returns a single payee profile by its ID.
|
|
1080
1282
|
* @param data The data for the request.
|
|
1081
1283
|
* @param data.id Payee profile ID (UUID)
|
|
1082
|
-
* @param data.region Region code (cn, us, de)
|
|
1083
1284
|
* @returns PayeeProfileResponseDto Payee profile retrieved successfully
|
|
1084
1285
|
* @throws ApiError
|
|
1085
1286
|
*/
|
|
@@ -1090,8 +1291,7 @@ export class AdminPayeeProfilesService {
|
|
|
1090
1291
|
method: 'GET',
|
|
1091
1292
|
url: '/api/v1/admin/payee-profiles/{id}',
|
|
1092
1293
|
path: {
|
|
1093
|
-
id: data.id
|
|
1094
|
-
region: data.region
|
|
1294
|
+
id: data.id
|
|
1095
1295
|
},
|
|
1096
1296
|
errors: {
|
|
1097
1297
|
403: 'Admin access required',
|
|
@@ -1101,73 +1301,101 @@ export class AdminPayeeProfilesService {
|
|
|
1101
1301
|
}
|
|
1102
1302
|
|
|
1103
1303
|
/**
|
|
1304
|
+
* Update payee profile (Admin only)
|
|
1305
|
+
* Updates an existing payee profile. The canonical name cannot be changed.
|
|
1104
1306
|
* @param data The data for the request.
|
|
1105
|
-
* @param data.
|
|
1106
|
-
* @
|
|
1307
|
+
* @param data.id Payee profile ID (UUID)
|
|
1308
|
+
* @param data.requestBody
|
|
1309
|
+
* @returns PayeeProfileResponseDto Payee profile updated successfully
|
|
1107
1310
|
* @throws ApiError
|
|
1108
1311
|
*/
|
|
1109
|
-
public static
|
|
1110
|
-
data:
|
|
1111
|
-
): CancelablePromise<
|
|
1312
|
+
public static payeeProfileAdminControllerUpdate(
|
|
1313
|
+
data: PayeeProfileAdminControllerUpdateData
|
|
1314
|
+
): CancelablePromise<PayeeProfileAdminControllerUpdateResponse> {
|
|
1112
1315
|
return __request(OpenAPI, {
|
|
1113
1316
|
method: 'PUT',
|
|
1114
1317
|
url: '/api/v1/admin/payee-profiles/{id}',
|
|
1115
1318
|
path: {
|
|
1116
|
-
|
|
1319
|
+
id: data.id
|
|
1320
|
+
},
|
|
1321
|
+
body: data.requestBody,
|
|
1322
|
+
mediaType: 'application/json',
|
|
1323
|
+
errors: {
|
|
1324
|
+
403: 'Admin access required',
|
|
1325
|
+
404: 'Payee profile not found'
|
|
1117
1326
|
}
|
|
1118
1327
|
});
|
|
1119
1328
|
}
|
|
1120
1329
|
|
|
1121
1330
|
/**
|
|
1331
|
+
* Soft delete payee profile (Admin only)
|
|
1332
|
+
* Marks a payee profile as inactive (soft delete). The profile cannot be deleted if it is referenced by user payees.
|
|
1122
1333
|
* @param data The data for the request.
|
|
1123
|
-
* @param data.
|
|
1124
|
-
* @returns void
|
|
1334
|
+
* @param data.id Payee profile ID (UUID)
|
|
1335
|
+
* @returns void Payee profile deleted successfully
|
|
1125
1336
|
* @throws ApiError
|
|
1126
1337
|
*/
|
|
1127
|
-
public static
|
|
1128
|
-
data:
|
|
1129
|
-
): CancelablePromise<
|
|
1338
|
+
public static payeeProfileAdminControllerDelete(
|
|
1339
|
+
data: PayeeProfileAdminControllerDeleteData
|
|
1340
|
+
): CancelablePromise<PayeeProfileAdminControllerDeleteResponse> {
|
|
1130
1341
|
return __request(OpenAPI, {
|
|
1131
1342
|
method: 'DELETE',
|
|
1132
1343
|
url: '/api/v1/admin/payee-profiles/{id}',
|
|
1133
1344
|
path: {
|
|
1134
|
-
|
|
1345
|
+
id: data.id
|
|
1346
|
+
},
|
|
1347
|
+
errors: {
|
|
1348
|
+
403: 'Admin access required',
|
|
1349
|
+
404: 'Payee profile not found',
|
|
1350
|
+
409: 'Payee profile is in use and cannot be deleted'
|
|
1135
1351
|
}
|
|
1136
1352
|
});
|
|
1137
1353
|
}
|
|
1138
1354
|
|
|
1139
1355
|
/**
|
|
1356
|
+
* Verify payee profile (Admin only)
|
|
1357
|
+
* Marks a payee profile as verified by setting verifiedAt to current timestamp.
|
|
1140
1358
|
* @param data The data for the request.
|
|
1141
|
-
* @param data.
|
|
1142
|
-
* @returns
|
|
1359
|
+
* @param data.id Payee profile ID (UUID)
|
|
1360
|
+
* @returns PayeeProfileResponseDto Payee profile verified successfully
|
|
1143
1361
|
* @throws ApiError
|
|
1144
1362
|
*/
|
|
1145
|
-
public static
|
|
1146
|
-
data:
|
|
1147
|
-
): CancelablePromise<
|
|
1363
|
+
public static payeeProfileAdminControllerVerify(
|
|
1364
|
+
data: PayeeProfileAdminControllerVerifyData
|
|
1365
|
+
): CancelablePromise<PayeeProfileAdminControllerVerifyResponse> {
|
|
1148
1366
|
return __request(OpenAPI, {
|
|
1149
1367
|
method: 'POST',
|
|
1150
1368
|
url: '/api/v1/admin/payee-profiles/{id}/verify',
|
|
1151
1369
|
path: {
|
|
1152
|
-
|
|
1370
|
+
id: data.id
|
|
1371
|
+
},
|
|
1372
|
+
errors: {
|
|
1373
|
+
403: 'Admin access required',
|
|
1374
|
+
404: 'Payee profile not found'
|
|
1153
1375
|
}
|
|
1154
1376
|
});
|
|
1155
1377
|
}
|
|
1156
1378
|
|
|
1157
1379
|
/**
|
|
1380
|
+
* Unverify payee profile (Admin only)
|
|
1381
|
+
* Removes verification status by setting verifiedAt to null.
|
|
1158
1382
|
* @param data The data for the request.
|
|
1159
|
-
* @param data.
|
|
1160
|
-
* @returns
|
|
1383
|
+
* @param data.id Payee profile ID (UUID)
|
|
1384
|
+
* @returns void Payee profile unverified successfully
|
|
1161
1385
|
* @throws ApiError
|
|
1162
1386
|
*/
|
|
1163
|
-
public static
|
|
1164
|
-
data:
|
|
1165
|
-
): CancelablePromise<
|
|
1387
|
+
public static payeeProfileAdminControllerUnverify(
|
|
1388
|
+
data: PayeeProfileAdminControllerUnverifyData
|
|
1389
|
+
): CancelablePromise<PayeeProfileAdminControllerUnverifyResponse> {
|
|
1166
1390
|
return __request(OpenAPI, {
|
|
1167
1391
|
method: 'DELETE',
|
|
1168
1392
|
url: '/api/v1/admin/payee-profiles/{id}/verify',
|
|
1169
1393
|
path: {
|
|
1170
|
-
|
|
1394
|
+
id: data.id
|
|
1395
|
+
},
|
|
1396
|
+
errors: {
|
|
1397
|
+
403: 'Admin access required',
|
|
1398
|
+
404: 'Payee profile not found'
|
|
1171
1399
|
}
|
|
1172
1400
|
});
|
|
1173
1401
|
}
|
|
@@ -1175,19 +1403,28 @@ export class AdminPayeeProfilesService {
|
|
|
1175
1403
|
|
|
1176
1404
|
export class BeanCommoditiesService {
|
|
1177
1405
|
/**
|
|
1406
|
+
* Create a new commodity
|
|
1407
|
+
* Creates a new commodity definition for the authenticated user
|
|
1178
1408
|
* @param data The data for the request.
|
|
1179
|
-
* @param data.region Region code
|
|
1180
|
-
* @
|
|
1409
|
+
* @param data.region Region code for tenant context
|
|
1410
|
+
* @param data.requestBody
|
|
1411
|
+
* @returns CommodityResponseDto Commodity created successfully
|
|
1181
1412
|
* @throws ApiError
|
|
1182
1413
|
*/
|
|
1183
|
-
public static
|
|
1184
|
-
data:
|
|
1185
|
-
): CancelablePromise<
|
|
1414
|
+
public static commodityControllerCreate(
|
|
1415
|
+
data: CommodityControllerCreateData
|
|
1416
|
+
): CancelablePromise<CommodityControllerCreateResponse> {
|
|
1186
1417
|
return __request(OpenAPI, {
|
|
1187
1418
|
method: 'POST',
|
|
1188
1419
|
url: '/api/v1/{region}/bean/commodities',
|
|
1189
1420
|
path: {
|
|
1190
1421
|
region: data.region
|
|
1422
|
+
},
|
|
1423
|
+
body: data.requestBody,
|
|
1424
|
+
mediaType: 'application/json',
|
|
1425
|
+
errors: {
|
|
1426
|
+
400: 'Invalid input data',
|
|
1427
|
+
409: 'Commodity already exists'
|
|
1191
1428
|
}
|
|
1192
1429
|
});
|
|
1193
1430
|
}
|
|
@@ -1196,7 +1433,7 @@ export class BeanCommoditiesService {
|
|
|
1196
1433
|
* List user commodities
|
|
1197
1434
|
* Returns all commodity definitions for the authenticated user with optional filtering
|
|
1198
1435
|
* @param data The data for the request.
|
|
1199
|
-
* @param data.region Region code
|
|
1436
|
+
* @param data.region Region code for tenant context
|
|
1200
1437
|
* @param data.search Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
|
|
1201
1438
|
* @param data.symbol Filter by exact symbol match
|
|
1202
1439
|
* @returns CommodityListResponseDto Commodities retrieved successfully
|
|
@@ -1223,7 +1460,7 @@ export class BeanCommoditiesService {
|
|
|
1223
1460
|
* Returns a specific commodity definition by its symbol
|
|
1224
1461
|
* @param data The data for the request.
|
|
1225
1462
|
* @param data.symbol Commodity symbol
|
|
1226
|
-
* @param data.region Region code
|
|
1463
|
+
* @param data.region Region code for tenant context
|
|
1227
1464
|
* @returns CommodityResponseDto Commodity retrieved successfully
|
|
1228
1465
|
* @throws ApiError
|
|
1229
1466
|
*/
|
|
@@ -1244,68 +1481,92 @@ export class BeanCommoditiesService {
|
|
|
1244
1481
|
}
|
|
1245
1482
|
|
|
1246
1483
|
/**
|
|
1484
|
+
* Update commodity
|
|
1485
|
+
* Updates an existing commodity definition. Symbol cannot be changed.
|
|
1247
1486
|
* @param data The data for the request.
|
|
1248
|
-
* @param data.
|
|
1249
|
-
* @
|
|
1487
|
+
* @param data.symbol Commodity symbol
|
|
1488
|
+
* @param data.region Region code for tenant context
|
|
1489
|
+
* @param data.requestBody
|
|
1490
|
+
* @returns CommodityResponseDto Commodity updated successfully
|
|
1250
1491
|
* @throws ApiError
|
|
1251
1492
|
*/
|
|
1252
|
-
public static
|
|
1253
|
-
data:
|
|
1254
|
-
): CancelablePromise<
|
|
1493
|
+
public static commodityControllerUpdate(
|
|
1494
|
+
data: CommodityControllerUpdateData
|
|
1495
|
+
): CancelablePromise<CommodityControllerUpdateResponse> {
|
|
1255
1496
|
return __request(OpenAPI, {
|
|
1256
1497
|
method: 'PUT',
|
|
1257
1498
|
url: '/api/v1/{region}/bean/commodities/{symbol}',
|
|
1258
1499
|
path: {
|
|
1500
|
+
symbol: data.symbol,
|
|
1259
1501
|
region: data.region
|
|
1502
|
+
},
|
|
1503
|
+
body: data.requestBody,
|
|
1504
|
+
mediaType: 'application/json',
|
|
1505
|
+
errors: {
|
|
1506
|
+
400: 'Invalid input data',
|
|
1507
|
+
404: 'Commodity not found'
|
|
1260
1508
|
}
|
|
1261
1509
|
});
|
|
1262
1510
|
}
|
|
1263
1511
|
|
|
1264
1512
|
/**
|
|
1513
|
+
* Delete commodity
|
|
1514
|
+
* Deletes a commodity definition
|
|
1265
1515
|
* @param data The data for the request.
|
|
1266
|
-
* @param data.
|
|
1267
|
-
* @
|
|
1516
|
+
* @param data.symbol Commodity symbol
|
|
1517
|
+
* @param data.region Region code for tenant context
|
|
1518
|
+
* @returns void Commodity deleted successfully
|
|
1268
1519
|
* @throws ApiError
|
|
1269
1520
|
*/
|
|
1270
|
-
public static
|
|
1271
|
-
data:
|
|
1272
|
-
): CancelablePromise<
|
|
1521
|
+
public static commodityControllerDelete(
|
|
1522
|
+
data: CommodityControllerDeleteData
|
|
1523
|
+
): CancelablePromise<CommodityControllerDeleteResponse> {
|
|
1273
1524
|
return __request(OpenAPI, {
|
|
1274
1525
|
method: 'DELETE',
|
|
1275
1526
|
url: '/api/v1/{region}/bean/commodities/{symbol}',
|
|
1276
1527
|
path: {
|
|
1528
|
+
symbol: data.symbol,
|
|
1277
1529
|
region: data.region
|
|
1530
|
+
},
|
|
1531
|
+
errors: {
|
|
1532
|
+
404: 'Commodity not found'
|
|
1278
1533
|
}
|
|
1279
1534
|
});
|
|
1280
1535
|
}
|
|
1281
1536
|
|
|
1282
1537
|
/**
|
|
1538
|
+
* Ensure commodity exists
|
|
1539
|
+
* Gets existing commodity or creates it with automatic initialization from OpenBB
|
|
1283
1540
|
* @param data The data for the request.
|
|
1284
|
-
* @param data.
|
|
1285
|
-
* @
|
|
1541
|
+
* @param data.symbol Commodity symbol
|
|
1542
|
+
* @param data.region Region code for tenant context
|
|
1543
|
+
* @returns CommodityResponseDto Commodity retrieved or created
|
|
1286
1544
|
* @throws ApiError
|
|
1287
1545
|
*/
|
|
1288
|
-
public static
|
|
1289
|
-
data:
|
|
1290
|
-
): CancelablePromise<
|
|
1546
|
+
public static commodityControllerGetOrCreate(
|
|
1547
|
+
data: CommodityControllerGetOrCreateData
|
|
1548
|
+
): CancelablePromise<CommodityControllerGetOrCreateResponse> {
|
|
1291
1549
|
return __request(OpenAPI, {
|
|
1292
1550
|
method: 'POST',
|
|
1293
1551
|
url: '/api/v1/{region}/bean/commodities/{symbol}/ensure',
|
|
1294
1552
|
path: {
|
|
1553
|
+
symbol: data.symbol,
|
|
1295
1554
|
region: data.region
|
|
1296
1555
|
}
|
|
1297
1556
|
});
|
|
1298
1557
|
}
|
|
1299
1558
|
|
|
1300
1559
|
/**
|
|
1560
|
+
* Bulk create commodities
|
|
1561
|
+
* Creates multiple commodities from a list of symbols, useful for initialization
|
|
1301
1562
|
* @param data The data for the request.
|
|
1302
|
-
* @param data.region Region code
|
|
1303
|
-
* @returns
|
|
1563
|
+
* @param data.region Region code for tenant context
|
|
1564
|
+
* @returns CommodityResponseDto Commodities created successfully
|
|
1304
1565
|
* @throws ApiError
|
|
1305
1566
|
*/
|
|
1306
|
-
public static
|
|
1307
|
-
data:
|
|
1308
|
-
): CancelablePromise<
|
|
1567
|
+
public static commodityControllerBulkCreate(
|
|
1568
|
+
data: CommodityControllerBulkCreateData
|
|
1569
|
+
): CancelablePromise<CommodityControllerBulkCreateResponse> {
|
|
1309
1570
|
return __request(OpenAPI, {
|
|
1310
1571
|
method: 'POST',
|
|
1311
1572
|
url: '/api/v1/{region}/bean/commodities/bulk',
|
|
@@ -1316,128 +1577,745 @@ export class BeanCommoditiesService {
|
|
|
1316
1577
|
}
|
|
1317
1578
|
}
|
|
1318
1579
|
|
|
1319
|
-
export class
|
|
1580
|
+
export class ReportingService {
|
|
1320
1581
|
/**
|
|
1582
|
+
* Get portfolio value trends
|
|
1583
|
+
*
|
|
1584
|
+
* Returns time series data of portfolio net worth.
|
|
1585
|
+
*
|
|
1586
|
+
* **Multi-currency Support:**
|
|
1587
|
+
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
1588
|
+
* - `byCurrency` - Separate time series grouped by currency
|
|
1589
|
+
* - `warnings` - Exchange rate warnings if conversion failed
|
|
1590
|
+
*
|
|
1591
|
+
* **Parameters:**
|
|
1592
|
+
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
1593
|
+
* - `granularity`: Data granularity (day, week, month)
|
|
1594
|
+
*
|
|
1321
1595
|
* @param data The data for the request.
|
|
1322
|
-
* @param data.region Region code
|
|
1323
|
-
* @
|
|
1596
|
+
* @param data.region Region code for tenant context
|
|
1597
|
+
* @param data.period Time period
|
|
1598
|
+
* @param data.granularity Data granularity
|
|
1599
|
+
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
1324
1600
|
* @throws ApiError
|
|
1325
1601
|
*/
|
|
1326
|
-
public static
|
|
1327
|
-
data:
|
|
1328
|
-
): CancelablePromise<
|
|
1602
|
+
public static reportingControllerGetPortfolioTrends(
|
|
1603
|
+
data: ReportingControllerGetPortfolioTrendsData
|
|
1604
|
+
): CancelablePromise<ReportingControllerGetPortfolioTrendsResponse> {
|
|
1329
1605
|
return __request(OpenAPI, {
|
|
1330
|
-
method: '
|
|
1331
|
-
url: '/api/v1/{region}/
|
|
1606
|
+
method: 'GET',
|
|
1607
|
+
url: '/api/v1/{region}/reporting/portfolio/trends',
|
|
1332
1608
|
path: {
|
|
1333
1609
|
region: data.region
|
|
1610
|
+
},
|
|
1611
|
+
query: {
|
|
1612
|
+
period: data.period,
|
|
1613
|
+
granularity: data.granularity
|
|
1614
|
+
},
|
|
1615
|
+
errors: {
|
|
1616
|
+
401: 'User not authenticated'
|
|
1334
1617
|
}
|
|
1335
1618
|
});
|
|
1336
1619
|
}
|
|
1337
1620
|
|
|
1338
1621
|
/**
|
|
1339
|
-
*
|
|
1340
|
-
*
|
|
1622
|
+
* Get cash-flow trends
|
|
1623
|
+
*
|
|
1624
|
+
* Monthly income / expense / netSavings over a fixed N-month window
|
|
1625
|
+
* (current month + N−1 prior). Missing months are zero-filled (flow metric).
|
|
1626
|
+
*
|
|
1627
|
+
* **Parameters:**
|
|
1628
|
+
* - `period`: 1m | 3m | 6m | 1y (default 6m)
|
|
1629
|
+
* - `granularity`: accepted for API symmetry; v1 returns month buckets
|
|
1630
|
+
*
|
|
1341
1631
|
* @param data The data for the request.
|
|
1342
|
-
* @param data.region Region code
|
|
1343
|
-
* @param data.
|
|
1344
|
-
* @param data.
|
|
1345
|
-
* @
|
|
1346
|
-
* @returns RecurringRuleResponseDto Rules retrieved successfully
|
|
1632
|
+
* @param data.region Region code for tenant context
|
|
1633
|
+
* @param data.period Time period
|
|
1634
|
+
* @param data.granularity Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
1635
|
+
* @returns CashFlowTrendsResponseDto Cash-flow trends retrieved successfully
|
|
1347
1636
|
* @throws ApiError
|
|
1348
1637
|
*/
|
|
1349
|
-
public static
|
|
1350
|
-
data:
|
|
1351
|
-
): CancelablePromise<
|
|
1638
|
+
public static reportingControllerGetCashFlowTrends(
|
|
1639
|
+
data: ReportingControllerGetCashFlowTrendsData
|
|
1640
|
+
): CancelablePromise<ReportingControllerGetCashFlowTrendsResponse> {
|
|
1352
1641
|
return __request(OpenAPI, {
|
|
1353
1642
|
method: 'GET',
|
|
1354
|
-
url: '/api/v1/{region}/
|
|
1643
|
+
url: '/api/v1/{region}/reporting/cash-flow/trends',
|
|
1355
1644
|
path: {
|
|
1356
1645
|
region: data.region
|
|
1357
1646
|
},
|
|
1358
1647
|
query: {
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1648
|
+
period: data.period,
|
|
1649
|
+
granularity: data.granularity
|
|
1650
|
+
},
|
|
1651
|
+
errors: {
|
|
1652
|
+
401: 'User not authenticated'
|
|
1362
1653
|
}
|
|
1363
1654
|
});
|
|
1364
1655
|
}
|
|
1365
1656
|
|
|
1366
1657
|
/**
|
|
1658
|
+
* Generate portfolio snapshot
|
|
1659
|
+
*
|
|
1660
|
+
* Manually generate a portfolio snapshot for a specific date.
|
|
1661
|
+
*
|
|
1662
|
+
* **Multi-currency Support:**
|
|
1663
|
+
* - Fetches balances grouped by currency
|
|
1664
|
+
* - Uses user's baseCurrency setting for conversion
|
|
1665
|
+
* - Stores exchange rates and warnings
|
|
1666
|
+
*
|
|
1667
|
+
* **Use Cases:**
|
|
1668
|
+
* - Testing snapshot generation
|
|
1669
|
+
* - Force regeneration after data correction
|
|
1670
|
+
* - Initial setup for new users
|
|
1671
|
+
*
|
|
1367
1672
|
* @param data The data for the request.
|
|
1368
|
-
* @param data.region Region code
|
|
1369
|
-
* @
|
|
1673
|
+
* @param data.region Region code for tenant context
|
|
1674
|
+
* @param data.requestBody Optional date (defaults to today)
|
|
1675
|
+
* @returns GenerateSnapshotResponse Snapshot generated successfully
|
|
1370
1676
|
* @throws ApiError
|
|
1371
1677
|
*/
|
|
1372
|
-
public static
|
|
1373
|
-
data:
|
|
1374
|
-
): CancelablePromise<
|
|
1678
|
+
public static reportingControllerGenerateSnapshot(
|
|
1679
|
+
data: ReportingControllerGenerateSnapshotData
|
|
1680
|
+
): CancelablePromise<ReportingControllerGenerateSnapshotResponse> {
|
|
1375
1681
|
return __request(OpenAPI, {
|
|
1376
1682
|
method: 'POST',
|
|
1377
|
-
url: '/api/v1/{region}/
|
|
1683
|
+
url: '/api/v1/{region}/reporting/snapshots/generate',
|
|
1378
1684
|
path: {
|
|
1379
1685
|
region: data.region
|
|
1686
|
+
},
|
|
1687
|
+
body: data.requestBody,
|
|
1688
|
+
mediaType: 'application/json',
|
|
1689
|
+
errors: {
|
|
1690
|
+
400: 'Invalid date format',
|
|
1691
|
+
401: 'User not authenticated'
|
|
1380
1692
|
}
|
|
1381
1693
|
});
|
|
1382
1694
|
}
|
|
1383
1695
|
|
|
1384
1696
|
/**
|
|
1385
|
-
*
|
|
1386
|
-
*
|
|
1697
|
+
* Backfill portfolio snapshots
|
|
1698
|
+
*
|
|
1699
|
+
* Generate snapshots for a date range (historical data backfill).
|
|
1700
|
+
*
|
|
1701
|
+
* **Multi-currency Support:**
|
|
1702
|
+
* - Each snapshot includes multi-currency data
|
|
1703
|
+
* - Uses exchange rates available at generation time
|
|
1704
|
+
* - Warnings stored for missing exchange rates
|
|
1705
|
+
*
|
|
1706
|
+
* **Best Practices:**
|
|
1707
|
+
* - Use for initial setup after account configuration
|
|
1708
|
+
* - Run during low-traffic periods for large date ranges
|
|
1709
|
+
* - Existing snapshots are skipped (not regenerated)
|
|
1710
|
+
*
|
|
1387
1711
|
* @param data The data for the request.
|
|
1388
|
-
* @param data.
|
|
1389
|
-
* @param data.
|
|
1390
|
-
* @returns
|
|
1712
|
+
* @param data.region Region code for tenant context
|
|
1713
|
+
* @param data.requestBody
|
|
1714
|
+
* @returns BackfillSnapshotsResponse Backfill completed successfully
|
|
1391
1715
|
* @throws ApiError
|
|
1392
1716
|
*/
|
|
1393
|
-
public static
|
|
1394
|
-
data:
|
|
1395
|
-
): CancelablePromise<
|
|
1717
|
+
public static reportingControllerBackfillSnapshots(
|
|
1718
|
+
data: ReportingControllerBackfillSnapshotsData
|
|
1719
|
+
): CancelablePromise<ReportingControllerBackfillSnapshotsResponse> {
|
|
1396
1720
|
return __request(OpenAPI, {
|
|
1397
|
-
method: '
|
|
1398
|
-
url: '/api/v1/{region}/
|
|
1721
|
+
method: 'POST',
|
|
1722
|
+
url: '/api/v1/{region}/reporting/snapshots/backfill',
|
|
1399
1723
|
path: {
|
|
1400
|
-
id: data.id,
|
|
1401
1724
|
region: data.region
|
|
1402
1725
|
},
|
|
1403
|
-
|
|
1726
|
+
body: data.requestBody,
|
|
1727
|
+
mediaType: 'application/json',
|
|
1728
|
+
errors: {
|
|
1729
|
+
400: 'Invalid date format or range',
|
|
1730
|
+
401: 'User not authenticated',
|
|
1731
|
+
409: 'Backfill already in progress for this user'
|
|
1732
|
+
}
|
|
1733
|
+
});
|
|
1734
|
+
}
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
export class BeanPricesService {
|
|
1738
|
+
/**
|
|
1739
|
+
* Create a new price
|
|
1740
|
+
* Creates a new price entry for the authenticated user
|
|
1741
|
+
* @param data The data for the request.
|
|
1742
|
+
* @param data.region Region code for tenant context
|
|
1743
|
+
* @param data.requestBody
|
|
1744
|
+
* @returns PriceResponseDto Price created successfully
|
|
1745
|
+
* @throws ApiError
|
|
1746
|
+
*/
|
|
1747
|
+
public static priceControllerCreate(
|
|
1748
|
+
data: PriceControllerCreateData
|
|
1749
|
+
): CancelablePromise<PriceControllerCreateResponse> {
|
|
1750
|
+
return __request(OpenAPI, {
|
|
1751
|
+
method: 'POST',
|
|
1752
|
+
url: '/api/v1/{region}/bean/prices',
|
|
1753
|
+
path: {
|
|
1754
|
+
region: data.region
|
|
1755
|
+
},
|
|
1756
|
+
body: data.requestBody,
|
|
1757
|
+
mediaType: 'application/json',
|
|
1758
|
+
errors: {
|
|
1759
|
+
404: 'Currency or quoteCurrency commodity not found',
|
|
1760
|
+
409: 'Price already exists for this currency pair and date'
|
|
1761
|
+
}
|
|
1762
|
+
});
|
|
1763
|
+
}
|
|
1764
|
+
|
|
1765
|
+
/**
|
|
1766
|
+
* List user prices
|
|
1767
|
+
* Returns all price entries for the authenticated user with optional filtering
|
|
1768
|
+
* @param data The data for the request.
|
|
1769
|
+
* @param data.region Region code for tenant context
|
|
1770
|
+
* @param data.currency Filter by currency (e.g., BTC, AAPL, USD)
|
|
1771
|
+
* @param data.quoteCurrency Filter by quote currency (pricing currency, e.g., USD, CNY)
|
|
1772
|
+
* @param data.dateFrom Filter prices from this date (ISO 8601 format)
|
|
1773
|
+
* @param data.dateTo Filter prices to this date (ISO 8601 format)
|
|
1774
|
+
* @param data.search Search term for currency or quoteCurrency (case-insensitive partial match)
|
|
1775
|
+
* @param data.page Page number for pagination (default: 1)
|
|
1776
|
+
* @param data.limit Number of items per page (default: 20, max: 100)
|
|
1777
|
+
* @returns PriceListResponseDto Prices retrieved successfully
|
|
1778
|
+
* @throws ApiError
|
|
1779
|
+
*/
|
|
1780
|
+
public static priceControllerFindAll(
|
|
1781
|
+
data: PriceControllerFindAllData
|
|
1782
|
+
): CancelablePromise<PriceControllerFindAllResponse> {
|
|
1783
|
+
return __request(OpenAPI, {
|
|
1784
|
+
method: 'GET',
|
|
1785
|
+
url: '/api/v1/{region}/bean/prices',
|
|
1786
|
+
path: {
|
|
1787
|
+
region: data.region
|
|
1788
|
+
},
|
|
1789
|
+
query: {
|
|
1790
|
+
currency: data.currency,
|
|
1791
|
+
quoteCurrency: data.quoteCurrency,
|
|
1792
|
+
dateFrom: data.dateFrom,
|
|
1793
|
+
dateTo: data.dateTo,
|
|
1794
|
+
search: data.search,
|
|
1795
|
+
page: data.page,
|
|
1796
|
+
limit: data.limit
|
|
1797
|
+
}
|
|
1798
|
+
});
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1801
|
+
/**
|
|
1802
|
+
* Get price by ID
|
|
1803
|
+
* Returns a single price entry by its ID
|
|
1804
|
+
* @param data The data for the request.
|
|
1805
|
+
* @param data.id Price ID
|
|
1806
|
+
* @param data.region Region code for tenant context
|
|
1807
|
+
* @returns PriceResponseDto Price retrieved successfully
|
|
1808
|
+
* @throws ApiError
|
|
1809
|
+
*/
|
|
1810
|
+
public static priceControllerFindOne(
|
|
1811
|
+
data: PriceControllerFindOneData
|
|
1812
|
+
): CancelablePromise<PriceControllerFindOneResponse> {
|
|
1813
|
+
return __request(OpenAPI, {
|
|
1814
|
+
method: 'GET',
|
|
1815
|
+
url: '/api/v1/{region}/bean/prices/{id}',
|
|
1816
|
+
path: {
|
|
1817
|
+
id: data.id,
|
|
1818
|
+
region: data.region
|
|
1819
|
+
},
|
|
1820
|
+
errors: {
|
|
1821
|
+
404: 'Price not found'
|
|
1822
|
+
}
|
|
1823
|
+
});
|
|
1824
|
+
}
|
|
1825
|
+
|
|
1826
|
+
/**
|
|
1827
|
+
* Update a price
|
|
1828
|
+
* Updates an existing price entry
|
|
1829
|
+
* @param data The data for the request.
|
|
1830
|
+
* @param data.id Price ID
|
|
1831
|
+
* @param data.region Region code for tenant context
|
|
1832
|
+
* @param data.requestBody
|
|
1833
|
+
* @returns PriceResponseDto Price updated successfully
|
|
1834
|
+
* @throws ApiError
|
|
1835
|
+
*/
|
|
1836
|
+
public static priceControllerUpdate(
|
|
1837
|
+
data: PriceControllerUpdateData
|
|
1838
|
+
): CancelablePromise<PriceControllerUpdateResponse> {
|
|
1839
|
+
return __request(OpenAPI, {
|
|
1840
|
+
method: 'PUT',
|
|
1841
|
+
url: '/api/v1/{region}/bean/prices/{id}',
|
|
1842
|
+
path: {
|
|
1843
|
+
id: data.id,
|
|
1844
|
+
region: data.region
|
|
1845
|
+
},
|
|
1846
|
+
body: data.requestBody,
|
|
1847
|
+
mediaType: 'application/json',
|
|
1848
|
+
errors: {
|
|
1849
|
+
404: 'Price not found',
|
|
1850
|
+
409: 'Updated price conflicts with existing price'
|
|
1851
|
+
}
|
|
1852
|
+
});
|
|
1853
|
+
}
|
|
1854
|
+
|
|
1855
|
+
/**
|
|
1856
|
+
* Delete a price
|
|
1857
|
+
* Deletes a price entry (hard delete)
|
|
1858
|
+
* @param data The data for the request.
|
|
1859
|
+
* @param data.id Price ID
|
|
1860
|
+
* @param data.region Region code for tenant context
|
|
1861
|
+
* @returns void Price deleted successfully
|
|
1862
|
+
* @throws ApiError
|
|
1863
|
+
*/
|
|
1864
|
+
public static priceControllerDelete(
|
|
1865
|
+
data: PriceControllerDeleteData
|
|
1866
|
+
): CancelablePromise<PriceControllerDeleteResponse> {
|
|
1867
|
+
return __request(OpenAPI, {
|
|
1868
|
+
method: 'DELETE',
|
|
1869
|
+
url: '/api/v1/{region}/bean/prices/{id}',
|
|
1870
|
+
path: {
|
|
1871
|
+
id: data.id,
|
|
1872
|
+
region: data.region
|
|
1873
|
+
},
|
|
1874
|
+
errors: {
|
|
1875
|
+
404: 'Price not found'
|
|
1876
|
+
}
|
|
1877
|
+
});
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
/**
|
|
1881
|
+
* Bulk create prices
|
|
1882
|
+
* Creates multiple price entries at once (skips duplicates)
|
|
1883
|
+
* @param data The data for the request.
|
|
1884
|
+
* @param data.region Region code for tenant context
|
|
1885
|
+
* @param data.requestBody
|
|
1886
|
+
* @returns PriceResponseDto Prices created successfully
|
|
1887
|
+
* @throws ApiError
|
|
1888
|
+
*/
|
|
1889
|
+
public static priceControllerBulkCreate(
|
|
1890
|
+
data: PriceControllerBulkCreateData
|
|
1891
|
+
): CancelablePromise<PriceControllerBulkCreateResponse> {
|
|
1892
|
+
return __request(OpenAPI, {
|
|
1893
|
+
method: 'POST',
|
|
1894
|
+
url: '/api/v1/{region}/bean/prices/bulk',
|
|
1895
|
+
path: {
|
|
1896
|
+
region: data.region
|
|
1897
|
+
},
|
|
1898
|
+
body: data.requestBody,
|
|
1899
|
+
mediaType: 'application/json'
|
|
1900
|
+
});
|
|
1901
|
+
}
|
|
1902
|
+
}
|
|
1903
|
+
|
|
1904
|
+
export class UsersService {
|
|
1905
|
+
/**
|
|
1906
|
+
* Delete own user account
|
|
1907
|
+
* @param data The data for the request.
|
|
1908
|
+
* @param data.requestBody
|
|
1909
|
+
* @returns void User deleted successfully
|
|
1910
|
+
* @throws ApiError
|
|
1911
|
+
*/
|
|
1912
|
+
public static userControllerDeleteOwnUser(
|
|
1913
|
+
data: UserControllerDeleteOwnUserData
|
|
1914
|
+
): CancelablePromise<UserControllerDeleteOwnUserResponse> {
|
|
1915
|
+
return __request(OpenAPI, {
|
|
1916
|
+
method: 'DELETE',
|
|
1917
|
+
url: '/api/v1/users',
|
|
1918
|
+
body: data.requestBody,
|
|
1919
|
+
mediaType: 'application/json',
|
|
1920
|
+
errors: {
|
|
1921
|
+
403: 'Invalid access token'
|
|
1922
|
+
}
|
|
1923
|
+
});
|
|
1924
|
+
}
|
|
1925
|
+
|
|
1926
|
+
/**
|
|
1927
|
+
* Get current authenticated user
|
|
1928
|
+
* @param data The data for the request.
|
|
1929
|
+
* @param data.acceptLanguage
|
|
1930
|
+
* @returns UserResponseDto User retrieved successfully
|
|
1931
|
+
* @throws ApiError
|
|
1932
|
+
*/
|
|
1933
|
+
public static userControllerGetUser(
|
|
1934
|
+
data: UserControllerGetUserData
|
|
1935
|
+
): CancelablePromise<UserControllerGetUserResponse> {
|
|
1936
|
+
return __request(OpenAPI, {
|
|
1937
|
+
method: 'GET',
|
|
1938
|
+
url: '/api/v1/users',
|
|
1939
|
+
headers: {
|
|
1940
|
+
'accept-language': data.acceptLanguage
|
|
1941
|
+
}
|
|
1942
|
+
});
|
|
1943
|
+
}
|
|
1944
|
+
|
|
1945
|
+
/**
|
|
1946
|
+
* Sign up new user
|
|
1947
|
+
* Create a new account with auto-generated access token. Protected by Cloudflare Turnstile to prevent automated signup (when enabled).
|
|
1948
|
+
* @param data The data for the request.
|
|
1949
|
+
* @param data.requestBody
|
|
1950
|
+
* @returns SignupResponseDto User created successfully
|
|
1951
|
+
* @throws ApiError
|
|
1952
|
+
*/
|
|
1953
|
+
public static userControllerSignupUser(
|
|
1954
|
+
data: UserControllerSignupUserData
|
|
1955
|
+
): CancelablePromise<UserControllerSignupUserResponse> {
|
|
1956
|
+
return __request(OpenAPI, {
|
|
1957
|
+
method: 'POST',
|
|
1958
|
+
url: '/api/v1/users',
|
|
1959
|
+
body: data.requestBody,
|
|
1960
|
+
mediaType: 'application/json',
|
|
1961
|
+
errors: {
|
|
1962
|
+
400: 'Invalid Turnstile token (when Turnstile is enabled)',
|
|
1963
|
+
403: 'User signup is disabled'
|
|
1964
|
+
}
|
|
1965
|
+
});
|
|
1966
|
+
}
|
|
1967
|
+
|
|
1968
|
+
/**
|
|
1969
|
+
* Delete user by ID (admin only)
|
|
1970
|
+
* @param data The data for the request.
|
|
1971
|
+
* @param data.id User ID to delete
|
|
1972
|
+
* @returns void User deleted successfully
|
|
1973
|
+
* @throws ApiError
|
|
1974
|
+
*/
|
|
1975
|
+
public static userControllerDeleteUser(
|
|
1976
|
+
data: UserControllerDeleteUserData
|
|
1977
|
+
): CancelablePromise<UserControllerDeleteUserResponse> {
|
|
1978
|
+
return __request(OpenAPI, {
|
|
1979
|
+
method: 'DELETE',
|
|
1980
|
+
url: '/api/v1/users/{id}',
|
|
1981
|
+
path: {
|
|
1982
|
+
id: data.id
|
|
1983
|
+
},
|
|
1984
|
+
errors: {
|
|
1985
|
+
403: 'Cannot delete own account or insufficient permissions'
|
|
1986
|
+
}
|
|
1987
|
+
});
|
|
1988
|
+
}
|
|
1989
|
+
|
|
1990
|
+
/**
|
|
1991
|
+
* Get user info by user ID
|
|
1992
|
+
* @param data The data for the request.
|
|
1993
|
+
* @param data.id User ID
|
|
1994
|
+
* @returns unknown User info retrieved successfully
|
|
1995
|
+
* @throws ApiError
|
|
1996
|
+
*/
|
|
1997
|
+
public static userControllerGetUserInfo(
|
|
1998
|
+
data: UserControllerGetUserInfoData
|
|
1999
|
+
): CancelablePromise<UserControllerGetUserInfoResponse> {
|
|
2000
|
+
return __request(OpenAPI, {
|
|
2001
|
+
method: 'GET',
|
|
2002
|
+
url: '/api/v1/users/{id}/info',
|
|
2003
|
+
path: {
|
|
2004
|
+
id: data.id
|
|
2005
|
+
},
|
|
2006
|
+
errors: {
|
|
2007
|
+
403: 'Cannot access other user info without admin permission'
|
|
2008
|
+
}
|
|
2009
|
+
});
|
|
2010
|
+
}
|
|
2011
|
+
|
|
2012
|
+
/**
|
|
2013
|
+
* Update user settings
|
|
2014
|
+
* @param data The data for the request.
|
|
2015
|
+
* @param data.requestBody
|
|
2016
|
+
* @returns unknown Settings updated successfully
|
|
2017
|
+
* @throws ApiError
|
|
2018
|
+
*/
|
|
2019
|
+
public static userControllerUpdateUserSetting(
|
|
2020
|
+
data: UserControllerUpdateUserSettingData
|
|
2021
|
+
): CancelablePromise<UserControllerUpdateUserSettingResponse> {
|
|
2022
|
+
return __request(OpenAPI, {
|
|
2023
|
+
method: 'PUT',
|
|
2024
|
+
url: '/api/v1/users/setting',
|
|
2025
|
+
body: data.requestBody,
|
|
2026
|
+
mediaType: 'application/json',
|
|
2027
|
+
errors: {
|
|
2028
|
+
403: 'Insufficient permissions'
|
|
2029
|
+
}
|
|
2030
|
+
});
|
|
2031
|
+
}
|
|
2032
|
+
|
|
2033
|
+
/**
|
|
2034
|
+
* Get all user settings paginated (admin only)
|
|
2035
|
+
* @param data The data for the request.
|
|
2036
|
+
* @param data.pageNo Page number
|
|
2037
|
+
* @param data.pageSize Page size
|
|
2038
|
+
* @returns unknown Settings list retrieved successfully
|
|
2039
|
+
* @throws ApiError
|
|
2040
|
+
*/
|
|
2041
|
+
public static userControllerGetAllUserSettingsByPage(
|
|
2042
|
+
data: UserControllerGetAllUserSettingsByPageData
|
|
2043
|
+
): CancelablePromise<UserControllerGetAllUserSettingsByPageResponse> {
|
|
2044
|
+
return __request(OpenAPI, {
|
|
2045
|
+
method: 'GET',
|
|
2046
|
+
url: '/api/v1/users/settings-by-page',
|
|
2047
|
+
query: {
|
|
2048
|
+
pageNo: data.pageNo,
|
|
2049
|
+
pageSize: data.pageSize
|
|
2050
|
+
}
|
|
2051
|
+
});
|
|
2052
|
+
}
|
|
2053
|
+
|
|
2054
|
+
/**
|
|
2055
|
+
* Get asset and liability summary for current user
|
|
2056
|
+
* @returns unknown Summary retrieved successfully
|
|
2057
|
+
* @throws ApiError
|
|
2058
|
+
*/
|
|
2059
|
+
public static userControllerGetAssetLiabilitySummary(): CancelablePromise<UserControllerGetAssetLiabilitySummaryResponse> {
|
|
2060
|
+
return __request(OpenAPI, {
|
|
2061
|
+
method: 'GET',
|
|
2062
|
+
url: '/api/v1/users/asset-liability-summary'
|
|
2063
|
+
});
|
|
2064
|
+
}
|
|
2065
|
+
}
|
|
2066
|
+
|
|
2067
|
+
export class PropertiesService {
|
|
2068
|
+
/**
|
|
2069
|
+
* Get all system properties
|
|
2070
|
+
* @returns unknown Properties retrieved successfully
|
|
2071
|
+
* @throws ApiError
|
|
2072
|
+
*/
|
|
2073
|
+
public static propertyControllerGetAll(): CancelablePromise<PropertyControllerGetAllResponse> {
|
|
2074
|
+
return __request(OpenAPI, {
|
|
2075
|
+
method: 'GET',
|
|
2076
|
+
url: '/api/v1/admin/properties',
|
|
2077
|
+
errors: {
|
|
2078
|
+
401: 'Unauthorized',
|
|
2079
|
+
403: 'Forbidden - insufficient permissions'
|
|
2080
|
+
}
|
|
2081
|
+
});
|
|
2082
|
+
}
|
|
2083
|
+
|
|
2084
|
+
/**
|
|
2085
|
+
* Get property by key
|
|
2086
|
+
* @param data The data for the request.
|
|
2087
|
+
* @param data.key Property key
|
|
2088
|
+
* @returns unknown Property retrieved successfully
|
|
2089
|
+
* @throws ApiError
|
|
2090
|
+
*/
|
|
2091
|
+
public static propertyControllerGetByKey(
|
|
2092
|
+
data: PropertyControllerGetByKeyData
|
|
2093
|
+
): CancelablePromise<PropertyControllerGetByKeyResponse> {
|
|
2094
|
+
return __request(OpenAPI, {
|
|
2095
|
+
method: 'GET',
|
|
2096
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2097
|
+
path: {
|
|
2098
|
+
key: data.key
|
|
2099
|
+
},
|
|
2100
|
+
errors: {
|
|
2101
|
+
401: 'Unauthorized',
|
|
2102
|
+
403: 'Forbidden - insufficient permissions',
|
|
2103
|
+
404: 'Property not found'
|
|
2104
|
+
}
|
|
2105
|
+
});
|
|
2106
|
+
}
|
|
2107
|
+
|
|
2108
|
+
/**
|
|
2109
|
+
* Update a system property
|
|
2110
|
+
* @param data The data for the request.
|
|
2111
|
+
* @param data.key Property key
|
|
2112
|
+
* @param data.requestBody
|
|
2113
|
+
* @returns unknown Property updated successfully
|
|
2114
|
+
* @throws ApiError
|
|
2115
|
+
*/
|
|
2116
|
+
public static propertyControllerUpdate(
|
|
2117
|
+
data: PropertyControllerUpdateData
|
|
2118
|
+
): CancelablePromise<PropertyControllerUpdateResponse> {
|
|
2119
|
+
return __request(OpenAPI, {
|
|
2120
|
+
method: 'PUT',
|
|
2121
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2122
|
+
path: {
|
|
2123
|
+
key: data.key
|
|
2124
|
+
},
|
|
2125
|
+
body: data.requestBody,
|
|
2126
|
+
mediaType: 'application/json',
|
|
2127
|
+
errors: {
|
|
2128
|
+
401: 'Unauthorized',
|
|
2129
|
+
403: 'Forbidden - insufficient permissions'
|
|
2130
|
+
}
|
|
2131
|
+
});
|
|
2132
|
+
}
|
|
2133
|
+
|
|
2134
|
+
/**
|
|
2135
|
+
* Delete a system property
|
|
2136
|
+
* @param data The data for the request.
|
|
2137
|
+
* @param data.key Property key
|
|
2138
|
+
* @returns void Property deleted successfully
|
|
2139
|
+
* @throws ApiError
|
|
2140
|
+
*/
|
|
2141
|
+
public static propertyControllerDelete(
|
|
2142
|
+
data: PropertyControllerDeleteData
|
|
2143
|
+
): CancelablePromise<PropertyControllerDeleteResponse> {
|
|
2144
|
+
return __request(OpenAPI, {
|
|
2145
|
+
method: 'DELETE',
|
|
2146
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2147
|
+
path: {
|
|
2148
|
+
key: data.key
|
|
2149
|
+
},
|
|
2150
|
+
errors: {
|
|
2151
|
+
401: 'Unauthorized',
|
|
2152
|
+
403: 'Forbidden - insufficient permissions',
|
|
2153
|
+
404: 'Property not found'
|
|
2154
|
+
}
|
|
2155
|
+
});
|
|
2156
|
+
}
|
|
2157
|
+
}
|
|
2158
|
+
|
|
2159
|
+
export class RecurringRulesService {
|
|
2160
|
+
/**
|
|
2161
|
+
* Create a new recurring rule
|
|
2162
|
+
* Creates a new recurring transaction rule for the authenticated user
|
|
2163
|
+
* @param data The data for the request.
|
|
2164
|
+
* @param data.region Region code for tenant context
|
|
2165
|
+
* @param data.requestBody
|
|
2166
|
+
* @returns RecurringRuleResponseDto Rule created successfully
|
|
2167
|
+
* @throws ApiError
|
|
2168
|
+
*/
|
|
2169
|
+
public static recurringRuleControllerCreate(
|
|
2170
|
+
data: RecurringRuleControllerCreateData
|
|
2171
|
+
): CancelablePromise<RecurringRuleControllerCreateResponse> {
|
|
2172
|
+
return __request(OpenAPI, {
|
|
2173
|
+
method: 'POST',
|
|
2174
|
+
url: '/api/v1/{region}/bean/recurring-rules',
|
|
2175
|
+
path: {
|
|
2176
|
+
region: data.region
|
|
2177
|
+
},
|
|
2178
|
+
body: data.requestBody,
|
|
2179
|
+
mediaType: 'application/json',
|
|
2180
|
+
errors: {
|
|
2181
|
+
400: 'Invalid input data (e.g., autoCreate without accounts)',
|
|
2182
|
+
409: 'Rule with same name already exists'
|
|
2183
|
+
}
|
|
2184
|
+
});
|
|
2185
|
+
}
|
|
2186
|
+
|
|
2187
|
+
/**
|
|
2188
|
+
* List recurring rules
|
|
2189
|
+
* Returns all recurring rules for the authenticated user with optional filtering
|
|
2190
|
+
* @param data The data for the request.
|
|
2191
|
+
* @param data.region Region code for tenant context
|
|
2192
|
+
* @param data.isActive Filter by active status
|
|
2193
|
+
* @param data.frequency Filter by frequency (WEEKLY, MONTHLY, etc.)
|
|
2194
|
+
* @param data.hasAutoCreate Filter by autoCreate enabled
|
|
2195
|
+
* @returns RecurringRuleResponseDto Rules retrieved successfully
|
|
2196
|
+
* @throws ApiError
|
|
2197
|
+
*/
|
|
2198
|
+
public static recurringRuleControllerFindAll(
|
|
2199
|
+
data: RecurringRuleControllerFindAllData
|
|
2200
|
+
): CancelablePromise<RecurringRuleControllerFindAllResponse> {
|
|
2201
|
+
return __request(OpenAPI, {
|
|
2202
|
+
method: 'GET',
|
|
2203
|
+
url: '/api/v1/{region}/bean/recurring-rules',
|
|
2204
|
+
path: {
|
|
2205
|
+
region: data.region
|
|
2206
|
+
},
|
|
2207
|
+
query: {
|
|
2208
|
+
isActive: data.isActive,
|
|
2209
|
+
frequency: data.frequency,
|
|
2210
|
+
hasAutoCreate: data.hasAutoCreate
|
|
2211
|
+
}
|
|
2212
|
+
});
|
|
2213
|
+
}
|
|
2214
|
+
|
|
2215
|
+
/**
|
|
2216
|
+
* Create recurring rule from transaction
|
|
2217
|
+
* Auto-creates a recurring rule using transaction data. User only confirms frequency.
|
|
2218
|
+
* @param data The data for the request.
|
|
2219
|
+
* @param data.transactionId Source transaction ID
|
|
2220
|
+
* @param data.region Region code for tenant context
|
|
2221
|
+
* @param data.requestBody
|
|
2222
|
+
* @returns RecurringRuleResponseDto Rule created successfully
|
|
2223
|
+
* @throws ApiError
|
|
2224
|
+
*/
|
|
2225
|
+
public static recurringRuleControllerCreateFromTransaction(
|
|
2226
|
+
data: RecurringRuleControllerCreateFromTransactionData
|
|
2227
|
+
): CancelablePromise<RecurringRuleControllerCreateFromTransactionResponse> {
|
|
2228
|
+
return __request(OpenAPI, {
|
|
2229
|
+
method: 'POST',
|
|
2230
|
+
url: '/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}',
|
|
2231
|
+
path: {
|
|
2232
|
+
transactionId: data.transactionId,
|
|
2233
|
+
region: data.region
|
|
2234
|
+
},
|
|
2235
|
+
body: data.requestBody,
|
|
2236
|
+
mediaType: 'application/json',
|
|
2237
|
+
errors: {
|
|
2238
|
+
404: 'Transaction not found',
|
|
2239
|
+
409: 'Rule with same name already exists or transaction already linked'
|
|
2240
|
+
}
|
|
2241
|
+
});
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2244
|
+
/**
|
|
2245
|
+
* Get recurring rule by ID
|
|
2246
|
+
* Returns a specific recurring rule with its details
|
|
2247
|
+
* @param data The data for the request.
|
|
2248
|
+
* @param data.id Rule ID
|
|
2249
|
+
* @param data.region Region code for tenant context
|
|
2250
|
+
* @returns RecurringRuleResponseDto Rule retrieved successfully
|
|
2251
|
+
* @throws ApiError
|
|
2252
|
+
*/
|
|
2253
|
+
public static recurringRuleControllerFindOne(
|
|
2254
|
+
data: RecurringRuleControllerFindOneData
|
|
2255
|
+
): CancelablePromise<RecurringRuleControllerFindOneResponse> {
|
|
2256
|
+
return __request(OpenAPI, {
|
|
2257
|
+
method: 'GET',
|
|
2258
|
+
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
2259
|
+
path: {
|
|
2260
|
+
id: data.id,
|
|
2261
|
+
region: data.region
|
|
2262
|
+
},
|
|
2263
|
+
errors: {
|
|
1404
2264
|
404: 'Rule not found'
|
|
1405
2265
|
}
|
|
1406
2266
|
});
|
|
1407
2267
|
}
|
|
1408
2268
|
|
|
1409
2269
|
/**
|
|
2270
|
+
* Update recurring rule
|
|
2271
|
+
* Updates an existing recurring rule
|
|
1410
2272
|
* @param data The data for the request.
|
|
1411
|
-
* @param data.
|
|
1412
|
-
* @
|
|
2273
|
+
* @param data.id Rule ID
|
|
2274
|
+
* @param data.region Region code for tenant context
|
|
2275
|
+
* @param data.requestBody
|
|
2276
|
+
* @returns RecurringRuleResponseDto Rule updated successfully
|
|
1413
2277
|
* @throws ApiError
|
|
1414
2278
|
*/
|
|
1415
|
-
public static
|
|
1416
|
-
data:
|
|
1417
|
-
): CancelablePromise<
|
|
2279
|
+
public static recurringRuleControllerUpdate(
|
|
2280
|
+
data: RecurringRuleControllerUpdateData
|
|
2281
|
+
): CancelablePromise<RecurringRuleControllerUpdateResponse> {
|
|
1418
2282
|
return __request(OpenAPI, {
|
|
1419
2283
|
method: 'PATCH',
|
|
1420
2284
|
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
1421
2285
|
path: {
|
|
2286
|
+
id: data.id,
|
|
1422
2287
|
region: data.region
|
|
2288
|
+
},
|
|
2289
|
+
body: data.requestBody,
|
|
2290
|
+
mediaType: 'application/json',
|
|
2291
|
+
errors: {
|
|
2292
|
+
400: 'Invalid input data',
|
|
2293
|
+
404: 'Rule not found'
|
|
1423
2294
|
}
|
|
1424
2295
|
});
|
|
1425
2296
|
}
|
|
1426
2297
|
|
|
1427
2298
|
/**
|
|
2299
|
+
* Delete recurring rule
|
|
2300
|
+
* Soft deletes a recurring rule (sets isActive to false)
|
|
1428
2301
|
* @param data The data for the request.
|
|
1429
|
-
* @param data.
|
|
1430
|
-
* @
|
|
2302
|
+
* @param data.id Rule ID
|
|
2303
|
+
* @param data.region Region code for tenant context
|
|
2304
|
+
* @returns void Rule deleted successfully
|
|
1431
2305
|
* @throws ApiError
|
|
1432
2306
|
*/
|
|
1433
|
-
public static
|
|
1434
|
-
data:
|
|
1435
|
-
): CancelablePromise<
|
|
2307
|
+
public static recurringRuleControllerDelete(
|
|
2308
|
+
data: RecurringRuleControllerDeleteData
|
|
2309
|
+
): CancelablePromise<RecurringRuleControllerDeleteResponse> {
|
|
1436
2310
|
return __request(OpenAPI, {
|
|
1437
2311
|
method: 'DELETE',
|
|
1438
2312
|
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
1439
2313
|
path: {
|
|
2314
|
+
id: data.id,
|
|
1440
2315
|
region: data.region
|
|
2316
|
+
},
|
|
2317
|
+
errors: {
|
|
2318
|
+
404: 'Rule not found'
|
|
1441
2319
|
}
|
|
1442
2320
|
});
|
|
1443
2321
|
}
|
|
@@ -1447,7 +2325,7 @@ export class RecurringRulesService {
|
|
|
1447
2325
|
* Returns a rule with pending/overdue counts and next expected date
|
|
1448
2326
|
* @param data The data for the request.
|
|
1449
2327
|
* @param data.id Rule ID
|
|
1450
|
-
* @param data.region Region code
|
|
2328
|
+
* @param data.region Region code for tenant context
|
|
1451
2329
|
* @returns RecurringRuleWithStatsResponseDto Rule with stats retrieved successfully
|
|
1452
2330
|
* @throws ApiError
|
|
1453
2331
|
*/
|
|
@@ -1473,7 +2351,7 @@ export class ExpectedTransactionsService {
|
|
|
1473
2351
|
* List expected transactions
|
|
1474
2352
|
* Returns expected transactions for the authenticated user with optional filtering
|
|
1475
2353
|
* @param data The data for the request.
|
|
1476
|
-
* @param data.region Region code
|
|
2354
|
+
* @param data.region Region code for tenant context
|
|
1477
2355
|
* @param data.ruleId Filter by recurring rule ID
|
|
1478
2356
|
* @param data.status Filter by status (PENDING, COMPLETED, SKIPPED)
|
|
1479
2357
|
* @param data.fromDate Filter by date range start (YYYY-MM-DD)
|
|
@@ -1503,7 +2381,7 @@ export class ExpectedTransactionsService {
|
|
|
1503
2381
|
* List overdue expected transactions
|
|
1504
2382
|
* Returns all overdue expected transactions (PENDING past tolerance)
|
|
1505
2383
|
* @param data The data for the request.
|
|
1506
|
-
* @param data.region Region code
|
|
2384
|
+
* @param data.region Region code for tenant context
|
|
1507
2385
|
* @returns ExpectedTransactionListResponseDto Overdue transactions retrieved successfully
|
|
1508
2386
|
* @throws ApiError
|
|
1509
2387
|
*/
|
|
@@ -1524,7 +2402,7 @@ export class ExpectedTransactionsService {
|
|
|
1524
2402
|
* Returns a specific expected transaction with rule details
|
|
1525
2403
|
* @param data The data for the request.
|
|
1526
2404
|
* @param data.id Expected transaction ID
|
|
1527
|
-
* @param data.region Region code
|
|
2405
|
+
* @param data.region Region code for tenant context
|
|
1528
2406
|
* @returns ExpectedTransactionResponseDto Expected transaction retrieved successfully
|
|
1529
2407
|
* @throws ApiError
|
|
1530
2408
|
*/
|
|
@@ -1545,91 +2423,138 @@ export class ExpectedTransactionsService {
|
|
|
1545
2423
|
}
|
|
1546
2424
|
|
|
1547
2425
|
/**
|
|
2426
|
+
* Skip expected transaction
|
|
2427
|
+
* Marks an expected transaction as skipped (PENDING -> SKIPPED)
|
|
1548
2428
|
* @param data The data for the request.
|
|
1549
|
-
* @param data.
|
|
1550
|
-
* @
|
|
2429
|
+
* @param data.id Expected transaction ID
|
|
2430
|
+
* @param data.region Region code for tenant context
|
|
2431
|
+
* @returns ExpectedTransactionResponseDto Expected transaction skipped successfully
|
|
1551
2432
|
* @throws ApiError
|
|
1552
2433
|
*/
|
|
1553
|
-
public static
|
|
1554
|
-
data:
|
|
1555
|
-
): CancelablePromise<
|
|
2434
|
+
public static expectedTransactionControllerSkip(
|
|
2435
|
+
data: ExpectedTransactionControllerSkipData
|
|
2436
|
+
): CancelablePromise<ExpectedTransactionControllerSkipResponse> {
|
|
1556
2437
|
return __request(OpenAPI, {
|
|
1557
2438
|
method: 'POST',
|
|
1558
2439
|
url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
|
|
1559
2440
|
path: {
|
|
2441
|
+
id: data.id,
|
|
1560
2442
|
region: data.region
|
|
2443
|
+
},
|
|
2444
|
+
errors: {
|
|
2445
|
+
400: 'Cannot skip - not in PENDING status',
|
|
2446
|
+
404: 'Expected transaction not found'
|
|
1561
2447
|
}
|
|
1562
2448
|
});
|
|
1563
2449
|
}
|
|
1564
2450
|
|
|
1565
2451
|
/**
|
|
2452
|
+
* Undo skip
|
|
2453
|
+
* Reverses a skip operation (SKIPPED -> PENDING)
|
|
1566
2454
|
* @param data The data for the request.
|
|
1567
|
-
* @param data.
|
|
1568
|
-
* @
|
|
2455
|
+
* @param data.id Expected transaction ID
|
|
2456
|
+
* @param data.region Region code for tenant context
|
|
2457
|
+
* @returns void Skip undone successfully
|
|
1569
2458
|
* @throws ApiError
|
|
1570
2459
|
*/
|
|
1571
|
-
public static
|
|
1572
|
-
data:
|
|
1573
|
-
): CancelablePromise<
|
|
2460
|
+
public static expectedTransactionControllerUndoSkip(
|
|
2461
|
+
data: ExpectedTransactionControllerUndoSkipData
|
|
2462
|
+
): CancelablePromise<ExpectedTransactionControllerUndoSkipResponse> {
|
|
1574
2463
|
return __request(OpenAPI, {
|
|
1575
2464
|
method: 'DELETE',
|
|
1576
2465
|
url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
|
|
1577
2466
|
path: {
|
|
2467
|
+
id: data.id,
|
|
1578
2468
|
region: data.region
|
|
2469
|
+
},
|
|
2470
|
+
errors: {
|
|
2471
|
+
400: 'Cannot undo - not in SKIPPED status',
|
|
2472
|
+
404: 'Expected transaction not found'
|
|
1579
2473
|
}
|
|
1580
2474
|
});
|
|
1581
2475
|
}
|
|
1582
2476
|
|
|
1583
2477
|
/**
|
|
2478
|
+
* Confirm transaction match
|
|
2479
|
+
* Manually matches an expected transaction with an actual transaction
|
|
1584
2480
|
* @param data The data for the request.
|
|
1585
|
-
* @param data.
|
|
1586
|
-
* @
|
|
2481
|
+
* @param data.id Expected transaction ID
|
|
2482
|
+
* @param data.region Region code for tenant context
|
|
2483
|
+
* @param data.requestBody
|
|
2484
|
+
* @returns unknown Match confirmed successfully
|
|
1587
2485
|
* @throws ApiError
|
|
1588
2486
|
*/
|
|
1589
|
-
public static
|
|
1590
|
-
data:
|
|
1591
|
-
): CancelablePromise<
|
|
2487
|
+
public static expectedTransactionControllerConfirmMatch(
|
|
2488
|
+
data: ExpectedTransactionControllerConfirmMatchData
|
|
2489
|
+
): CancelablePromise<ExpectedTransactionControllerConfirmMatchResponse> {
|
|
1592
2490
|
return __request(OpenAPI, {
|
|
1593
2491
|
method: 'POST',
|
|
1594
2492
|
url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
|
|
1595
2493
|
path: {
|
|
2494
|
+
id: data.id,
|
|
1596
2495
|
region: data.region
|
|
2496
|
+
},
|
|
2497
|
+
body: data.requestBody,
|
|
2498
|
+
mediaType: 'application/json',
|
|
2499
|
+
errors: {
|
|
2500
|
+
400: 'Cannot match - not in PENDING status',
|
|
2501
|
+
404: 'Expected or actual transaction not found',
|
|
2502
|
+
409: 'Actual transaction already matched to another rule'
|
|
1597
2503
|
}
|
|
1598
2504
|
});
|
|
1599
2505
|
}
|
|
1600
2506
|
|
|
1601
2507
|
/**
|
|
2508
|
+
* Unmatch transaction
|
|
2509
|
+
* Removes the match between expected and actual transaction (COMPLETED -> PENDING)
|
|
1602
2510
|
* @param data The data for the request.
|
|
1603
|
-
* @param data.
|
|
1604
|
-
* @
|
|
2511
|
+
* @param data.id Expected transaction ID
|
|
2512
|
+
* @param data.region Region code for tenant context
|
|
2513
|
+
* @returns void Match removed successfully
|
|
1605
2514
|
* @throws ApiError
|
|
1606
2515
|
*/
|
|
1607
|
-
public static
|
|
1608
|
-
data:
|
|
1609
|
-
): CancelablePromise<
|
|
2516
|
+
public static expectedTransactionControllerUnmatch(
|
|
2517
|
+
data: ExpectedTransactionControllerUnmatchData
|
|
2518
|
+
): CancelablePromise<ExpectedTransactionControllerUnmatchResponse> {
|
|
1610
2519
|
return __request(OpenAPI, {
|
|
1611
2520
|
method: 'DELETE',
|
|
1612
2521
|
url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
|
|
1613
2522
|
path: {
|
|
2523
|
+
id: data.id,
|
|
1614
2524
|
region: data.region
|
|
2525
|
+
},
|
|
2526
|
+
errors: {
|
|
2527
|
+
400: 'Cannot unmatch - not in COMPLETED status',
|
|
2528
|
+
404: 'Expected transaction not found'
|
|
1615
2529
|
}
|
|
1616
2530
|
});
|
|
1617
2531
|
}
|
|
1618
2532
|
|
|
1619
2533
|
/**
|
|
2534
|
+
* Enter Now
|
|
2535
|
+
* Creates an actual transaction for an expected transaction (YNAB-style Enter Now)
|
|
1620
2536
|
* @param data The data for the request.
|
|
1621
|
-
* @param data.
|
|
1622
|
-
* @
|
|
2537
|
+
* @param data.id Expected transaction ID
|
|
2538
|
+
* @param data.region Region code for tenant context
|
|
2539
|
+
* @param data.requestBody
|
|
2540
|
+
* @returns unknown Transaction created successfully
|
|
1623
2541
|
* @throws ApiError
|
|
1624
2542
|
*/
|
|
1625
|
-
public static
|
|
1626
|
-
data:
|
|
1627
|
-
): CancelablePromise<
|
|
2543
|
+
public static expectedTransactionControllerEnterNow(
|
|
2544
|
+
data: ExpectedTransactionControllerEnterNowData
|
|
2545
|
+
): CancelablePromise<ExpectedTransactionControllerEnterNowResponse> {
|
|
1628
2546
|
return __request(OpenAPI, {
|
|
1629
2547
|
method: 'POST',
|
|
1630
2548
|
url: '/api/v1/{region}/bean/expected-transactions/{id}/enter',
|
|
1631
2549
|
path: {
|
|
2550
|
+
id: data.id,
|
|
1632
2551
|
region: data.region
|
|
2552
|
+
},
|
|
2553
|
+
body: data.requestBody,
|
|
2554
|
+
mediaType: 'application/json',
|
|
2555
|
+
errors: {
|
|
2556
|
+
400: 'Cannot enter - not in PENDING status or missing accounts',
|
|
2557
|
+
404: 'Expected transaction or accounts not found'
|
|
1633
2558
|
}
|
|
1634
2559
|
});
|
|
1635
2560
|
}
|
|
@@ -1640,7 +2565,7 @@ export class RecurringForecastService {
|
|
|
1640
2565
|
* Get cash flow forecast
|
|
1641
2566
|
* Returns predicted outflows for the next N months based on active recurring rules
|
|
1642
2567
|
* @param data The data for the request.
|
|
1643
|
-
* @param data.region Region code
|
|
2568
|
+
* @param data.region Region code for tenant context
|
|
1644
2569
|
* @param data.months Number of months to forecast (1-12, default 3)
|
|
1645
2570
|
* @returns ForecastResponseDto Forecast retrieved successfully
|
|
1646
2571
|
* @throws ApiError
|
|
@@ -1663,19 +2588,29 @@ export class RecurringForecastService {
|
|
|
1663
2588
|
|
|
1664
2589
|
export class BeanTransactionRulesService {
|
|
1665
2590
|
/**
|
|
2591
|
+
* Create a new transaction rule (or upsert if upsertByPayee=true)
|
|
2592
|
+
* Creates a new rule. If upsertByPayee=true, updates existing rule matching payeeKeywords[0] instead of creating duplicate.
|
|
1666
2593
|
* @param data The data for the request.
|
|
1667
|
-
* @param data.region Region code
|
|
1668
|
-
* @
|
|
2594
|
+
* @param data.region Region code for tenant context
|
|
2595
|
+
* @param data.requestBody
|
|
2596
|
+
* @returns TransactionRuleResponseDto Rule updated successfully (upsert mode)
|
|
1669
2597
|
* @throws ApiError
|
|
1670
2598
|
*/
|
|
1671
|
-
public static
|
|
1672
|
-
data:
|
|
1673
|
-
): CancelablePromise<
|
|
2599
|
+
public static transactionRuleControllerCreate(
|
|
2600
|
+
data: TransactionRuleControllerCreateData
|
|
2601
|
+
): CancelablePromise<TransactionRuleControllerCreateResponse> {
|
|
1674
2602
|
return __request(OpenAPI, {
|
|
1675
2603
|
method: 'POST',
|
|
1676
2604
|
url: '/api/v1/{region}/bean/transaction-rules',
|
|
1677
2605
|
path: {
|
|
1678
2606
|
region: data.region
|
|
2607
|
+
},
|
|
2608
|
+
body: data.requestBody,
|
|
2609
|
+
mediaType: 'application/json',
|
|
2610
|
+
errors: {
|
|
2611
|
+
400: 'Validation failed',
|
|
2612
|
+
401: 'Unauthorized',
|
|
2613
|
+
409: 'Resource conflict - another process is updating this rule'
|
|
1679
2614
|
}
|
|
1680
2615
|
});
|
|
1681
2616
|
}
|
|
@@ -1683,7 +2618,7 @@ export class BeanTransactionRulesService {
|
|
|
1683
2618
|
/**
|
|
1684
2619
|
* Get all transaction rules for user
|
|
1685
2620
|
* @param data The data for the request.
|
|
1686
|
-
* @param data.region Region code
|
|
2621
|
+
* @param data.region Region code for tenant context
|
|
1687
2622
|
* @param data.limit Max results per page (default: 20, max: 100)
|
|
1688
2623
|
* @param data.offset Pagination offset (default: 0)
|
|
1689
2624
|
* @param data.enabled Filter by enabled status
|
|
@@ -1717,7 +2652,7 @@ export class BeanTransactionRulesService {
|
|
|
1717
2652
|
/**
|
|
1718
2653
|
* Validate transaction rule configuration
|
|
1719
2654
|
* @param data The data for the request.
|
|
1720
|
-
* @param data.region Region code
|
|
2655
|
+
* @param data.region Region code for tenant context
|
|
1721
2656
|
* @param data.requestBody
|
|
1722
2657
|
* @returns ValidateRuleResponseDto Validation result
|
|
1723
2658
|
* @throws ApiError
|
|
@@ -1734,25 +2669,34 @@ export class BeanTransactionRulesService {
|
|
|
1734
2669
|
body: data.requestBody,
|
|
1735
2670
|
mediaType: 'application/json',
|
|
1736
2671
|
errors: {
|
|
2672
|
+
400: 'Validation failed',
|
|
1737
2673
|
401: 'Unauthorized'
|
|
1738
2674
|
}
|
|
1739
2675
|
});
|
|
1740
2676
|
}
|
|
1741
2677
|
|
|
1742
2678
|
/**
|
|
2679
|
+
* Bulk create transaction rules
|
|
1743
2680
|
* @param data The data for the request.
|
|
1744
|
-
* @param data.region Region code
|
|
1745
|
-
* @
|
|
2681
|
+
* @param data.region Region code for tenant context
|
|
2682
|
+
* @param data.requestBody
|
|
2683
|
+
* @returns BulkCreateRulesResponseDto Bulk create completed
|
|
1746
2684
|
* @throws ApiError
|
|
1747
2685
|
*/
|
|
1748
|
-
public static
|
|
1749
|
-
data:
|
|
1750
|
-
): CancelablePromise<
|
|
2686
|
+
public static transactionRuleControllerBulkCreate(
|
|
2687
|
+
data: TransactionRuleControllerBulkCreateData
|
|
2688
|
+
): CancelablePromise<TransactionRuleControllerBulkCreateResponse> {
|
|
1751
2689
|
return __request(OpenAPI, {
|
|
1752
2690
|
method: 'POST',
|
|
1753
2691
|
url: '/api/v1/{region}/bean/transaction-rules/bulk',
|
|
1754
2692
|
path: {
|
|
1755
2693
|
region: data.region
|
|
2694
|
+
},
|
|
2695
|
+
body: data.requestBody,
|
|
2696
|
+
mediaType: 'application/json',
|
|
2697
|
+
errors: {
|
|
2698
|
+
400: 'Invalid bulk create data',
|
|
2699
|
+
401: 'Unauthorized'
|
|
1756
2700
|
}
|
|
1757
2701
|
});
|
|
1758
2702
|
}
|
|
@@ -1761,7 +2705,7 @@ export class BeanTransactionRulesService {
|
|
|
1761
2705
|
* Export transaction rules
|
|
1762
2706
|
* @param data The data for the request.
|
|
1763
2707
|
* @param data.format Export format (currently only JSON supported)
|
|
1764
|
-
* @param data.region Region code
|
|
2708
|
+
* @param data.region Region code for tenant context
|
|
1765
2709
|
* @returns ExportRulesResponseDto Exported rules
|
|
1766
2710
|
* @throws ApiError
|
|
1767
2711
|
*/
|
|
@@ -1786,7 +2730,7 @@ export class BeanTransactionRulesService {
|
|
|
1786
2730
|
* Get transaction rule statistics
|
|
1787
2731
|
* @param data The data for the request.
|
|
1788
2732
|
* @param data.period Statistics time period
|
|
1789
|
-
* @param data.region Region code
|
|
2733
|
+
* @param data.region Region code for tenant context
|
|
1790
2734
|
* @returns RuleStatisticsResponseDto Rule statistics
|
|
1791
2735
|
* @throws ApiError
|
|
1792
2736
|
*/
|
|
@@ -1810,7 +2754,7 @@ export class BeanTransactionRulesService {
|
|
|
1810
2754
|
* Get transaction rule detail
|
|
1811
2755
|
* @param data The data for the request.
|
|
1812
2756
|
* @param data.ruleId Rule ID
|
|
1813
|
-
* @param data.region Region code
|
|
2757
|
+
* @param data.region Region code for tenant context
|
|
1814
2758
|
* @returns TransactionRuleResponseDto Rule details
|
|
1815
2759
|
* @throws ApiError
|
|
1816
2760
|
*/
|
|
@@ -1833,37 +2777,59 @@ export class BeanTransactionRulesService {
|
|
|
1833
2777
|
}
|
|
1834
2778
|
|
|
1835
2779
|
/**
|
|
2780
|
+
* Update a transaction rule
|
|
1836
2781
|
* @param data The data for the request.
|
|
1837
|
-
* @param data.
|
|
1838
|
-
* @
|
|
2782
|
+
* @param data.ruleId Rule ID to update
|
|
2783
|
+
* @param data.region Region code for tenant context
|
|
2784
|
+
* @param data.requestBody
|
|
2785
|
+
* @returns TransactionRuleResponseDto Rule updated successfully
|
|
1839
2786
|
* @throws ApiError
|
|
1840
2787
|
*/
|
|
1841
|
-
public static
|
|
1842
|
-
data:
|
|
1843
|
-
): CancelablePromise<
|
|
2788
|
+
public static transactionRuleControllerUpdate(
|
|
2789
|
+
data: TransactionRuleControllerUpdateData
|
|
2790
|
+
): CancelablePromise<TransactionRuleControllerUpdateResponse> {
|
|
1844
2791
|
return __request(OpenAPI, {
|
|
1845
2792
|
method: 'PUT',
|
|
1846
2793
|
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
|
|
1847
2794
|
path: {
|
|
2795
|
+
ruleId: data.ruleId,
|
|
1848
2796
|
region: data.region
|
|
2797
|
+
},
|
|
2798
|
+
body: data.requestBody,
|
|
2799
|
+
mediaType: 'application/json',
|
|
2800
|
+
errors: {
|
|
2801
|
+
400: 'Validation failed',
|
|
2802
|
+
401: 'Unauthorized',
|
|
2803
|
+
403: 'Forbidden - not owner of rule',
|
|
2804
|
+
404: 'Rule not found',
|
|
2805
|
+
409: 'Resource conflict - rule is being modified by another process'
|
|
1849
2806
|
}
|
|
1850
2807
|
});
|
|
1851
2808
|
}
|
|
1852
2809
|
|
|
1853
2810
|
/**
|
|
2811
|
+
* Delete a transaction rule
|
|
1854
2812
|
* @param data The data for the request.
|
|
1855
|
-
* @param data.
|
|
1856
|
-
* @
|
|
2813
|
+
* @param data.ruleId Rule ID to delete
|
|
2814
|
+
* @param data.region Region code for tenant context
|
|
2815
|
+
* @returns void Rule deleted successfully
|
|
1857
2816
|
* @throws ApiError
|
|
1858
2817
|
*/
|
|
1859
|
-
public static
|
|
1860
|
-
data:
|
|
1861
|
-
): CancelablePromise<
|
|
2818
|
+
public static transactionRuleControllerDelete(
|
|
2819
|
+
data: TransactionRuleControllerDeleteData
|
|
2820
|
+
): CancelablePromise<TransactionRuleControllerDeleteResponse> {
|
|
1862
2821
|
return __request(OpenAPI, {
|
|
1863
2822
|
method: 'DELETE',
|
|
1864
2823
|
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
|
|
1865
2824
|
path: {
|
|
2825
|
+
ruleId: data.ruleId,
|
|
1866
2826
|
region: data.region
|
|
2827
|
+
},
|
|
2828
|
+
errors: {
|
|
2829
|
+
401: 'Unauthorized',
|
|
2830
|
+
403: 'Forbidden - not owner of rule',
|
|
2831
|
+
404: 'Rule not found',
|
|
2832
|
+
409: 'Resource conflict - rule is being modified by another process'
|
|
1867
2833
|
}
|
|
1868
2834
|
});
|
|
1869
2835
|
}
|
|
@@ -1872,7 +2838,7 @@ export class BeanTransactionRulesService {
|
|
|
1872
2838
|
* Test rule matching
|
|
1873
2839
|
* @param data The data for the request.
|
|
1874
2840
|
* @param data.ruleId Rule ID to test
|
|
1875
|
-
* @param data.region Region code
|
|
2841
|
+
* @param data.region Region code for tenant context
|
|
1876
2842
|
* @param data.requestBody
|
|
1877
2843
|
* @returns TestRuleResponseDto Test result
|
|
1878
2844
|
* @throws ApiError
|
|
@@ -1898,293 +2864,363 @@ export class BeanTransactionRulesService {
|
|
|
1898
2864
|
}
|
|
1899
2865
|
}
|
|
1900
2866
|
|
|
1901
|
-
export class
|
|
2867
|
+
export class BeanCategoryCatalogService {
|
|
1902
2868
|
/**
|
|
1903
|
-
*
|
|
2869
|
+
* List category catalog for a region
|
|
2870
|
+
* Returns the region-scoped category slugs (expense/income/investment/banking/transfer/payment) for the NLP result picker. CN-exclusive payment instruments (huabei/baitiao) appear only under /cn.
|
|
1904
2871
|
* @param data The data for the request.
|
|
1905
|
-
* @param data.region Region code
|
|
1906
|
-
* @param data.
|
|
1907
|
-
* @
|
|
2872
|
+
* @param data.region Region code for tenant context
|
|
2873
|
+
* @param data.scenario Filter by scenario
|
|
2874
|
+
* @param data.routeBearing Filter by routeBearing (entity-router route() consumes it)
|
|
2875
|
+
* @returns CategoryCatalogListResponseDto Category catalog retrieved successfully
|
|
1908
2876
|
* @throws ApiError
|
|
1909
2877
|
*/
|
|
1910
|
-
public static
|
|
1911
|
-
data:
|
|
1912
|
-
): CancelablePromise<
|
|
2878
|
+
public static categoryCatalogControllerList(
|
|
2879
|
+
data: CategoryCatalogControllerListData
|
|
2880
|
+
): CancelablePromise<CategoryCatalogControllerListResponse> {
|
|
1913
2881
|
return __request(OpenAPI, {
|
|
1914
|
-
method: '
|
|
1915
|
-
url: '/api/v1/
|
|
2882
|
+
method: 'GET',
|
|
2883
|
+
url: '/api/v1/{region}/bean/categories',
|
|
1916
2884
|
path: {
|
|
1917
2885
|
region: data.region
|
|
1918
2886
|
},
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
403: 'Invalid access token'
|
|
2887
|
+
query: {
|
|
2888
|
+
scenario: data.scenario,
|
|
2889
|
+
routeBearing: data.routeBearing
|
|
1923
2890
|
}
|
|
1924
2891
|
});
|
|
1925
2892
|
}
|
|
2893
|
+
}
|
|
1926
2894
|
|
|
2895
|
+
export class LifeEventsService {
|
|
1927
2896
|
/**
|
|
1928
|
-
*
|
|
2897
|
+
* Create a new life event
|
|
2898
|
+
* Creates a new life event entry for the authenticated user. Returns ETag header carrying the row updatedAt.
|
|
1929
2899
|
* @param data The data for the request.
|
|
1930
|
-
* @param data.
|
|
1931
|
-
* @param data.
|
|
1932
|
-
* @returns
|
|
2900
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
2901
|
+
* @param data.requestBody
|
|
2902
|
+
* @returns EventResponseDto Life event created successfully
|
|
1933
2903
|
* @throws ApiError
|
|
1934
2904
|
*/
|
|
1935
|
-
public static
|
|
1936
|
-
data:
|
|
1937
|
-
): CancelablePromise<
|
|
2905
|
+
public static eventControllerCreate(
|
|
2906
|
+
data: EventControllerCreateData
|
|
2907
|
+
): CancelablePromise<EventControllerCreateResponse> {
|
|
1938
2908
|
return __request(OpenAPI, {
|
|
1939
|
-
method: '
|
|
1940
|
-
url: '/api/v1/
|
|
2909
|
+
method: 'POST',
|
|
2910
|
+
url: '/api/v1/{region}/bean/events',
|
|
1941
2911
|
path: {
|
|
1942
2912
|
region: data.region
|
|
1943
2913
|
},
|
|
1944
|
-
|
|
1945
|
-
|
|
2914
|
+
body: data.requestBody,
|
|
2915
|
+
mediaType: 'application/json',
|
|
2916
|
+
errors: {
|
|
2917
|
+
409: 'Life event already exists for this (userId, type, date) combination'
|
|
1946
2918
|
}
|
|
1947
2919
|
});
|
|
1948
2920
|
}
|
|
1949
2921
|
|
|
1950
2922
|
/**
|
|
1951
|
-
*
|
|
1952
|
-
*
|
|
2923
|
+
* List user life events
|
|
2924
|
+
* Returns life events for the authenticated user with optional filtering by type, description search, and date range.
|
|
1953
2925
|
* @param data The data for the request.
|
|
1954
|
-
* @param data.region Region code (
|
|
1955
|
-
* @param data.
|
|
1956
|
-
* @
|
|
2926
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
2927
|
+
* @param data.type Filter by life event type (exact match)
|
|
2928
|
+
* @param data.q Search term for description (case-insensitive partial match)
|
|
2929
|
+
* @param data.from Filter life events from this date (ISO 8601 format)
|
|
2930
|
+
* @param data.to Filter life events to this date (ISO 8601 format)
|
|
2931
|
+
* @param data.page Page number for pagination (default: 1)
|
|
2932
|
+
* @param data.limit Number of items per page (default: 20, max: 100)
|
|
2933
|
+
* @returns EventListResponseDto Life events retrieved successfully
|
|
1957
2934
|
* @throws ApiError
|
|
1958
2935
|
*/
|
|
1959
|
-
public static
|
|
1960
|
-
data:
|
|
1961
|
-
): CancelablePromise<
|
|
2936
|
+
public static eventControllerFindAll(
|
|
2937
|
+
data: EventControllerFindAllData
|
|
2938
|
+
): CancelablePromise<EventControllerFindAllResponse> {
|
|
1962
2939
|
return __request(OpenAPI, {
|
|
1963
|
-
method: '
|
|
1964
|
-
url: '/api/v1/
|
|
2940
|
+
method: 'GET',
|
|
2941
|
+
url: '/api/v1/{region}/bean/events',
|
|
1965
2942
|
path: {
|
|
1966
2943
|
region: data.region
|
|
1967
2944
|
},
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
2945
|
+
query: {
|
|
2946
|
+
type: data.type,
|
|
2947
|
+
q: data.q,
|
|
2948
|
+
from: data.from,
|
|
2949
|
+
to: data.to,
|
|
2950
|
+
page: data.page,
|
|
2951
|
+
limit: data.limit
|
|
1973
2952
|
}
|
|
1974
2953
|
});
|
|
1975
2954
|
}
|
|
1976
2955
|
|
|
1977
2956
|
/**
|
|
1978
|
-
*
|
|
2957
|
+
* Get life event by ID
|
|
2958
|
+
* Returns a single life event by its ID. Returns ETag header.
|
|
1979
2959
|
* @param data The data for the request.
|
|
1980
|
-
* @param data.id
|
|
1981
|
-
* @param data.region Region code (
|
|
1982
|
-
* @returns
|
|
2960
|
+
* @param data.id Life event ID
|
|
2961
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
2962
|
+
* @returns EventResponseDto Life event retrieved successfully
|
|
1983
2963
|
* @throws ApiError
|
|
1984
2964
|
*/
|
|
1985
|
-
public static
|
|
1986
|
-
data:
|
|
1987
|
-
): CancelablePromise<
|
|
2965
|
+
public static eventControllerFindOne(
|
|
2966
|
+
data: EventControllerFindOneData
|
|
2967
|
+
): CancelablePromise<EventControllerFindOneResponse> {
|
|
1988
2968
|
return __request(OpenAPI, {
|
|
1989
|
-
method: '
|
|
1990
|
-
url: '/api/v1/
|
|
2969
|
+
method: 'GET',
|
|
2970
|
+
url: '/api/v1/{region}/bean/events/{id}',
|
|
1991
2971
|
path: {
|
|
1992
2972
|
id: data.id,
|
|
1993
2973
|
region: data.region
|
|
1994
2974
|
},
|
|
1995
2975
|
errors: {
|
|
1996
|
-
|
|
2976
|
+
404: 'Life event not found'
|
|
1997
2977
|
}
|
|
1998
2978
|
});
|
|
1999
2979
|
}
|
|
2000
2980
|
|
|
2001
2981
|
/**
|
|
2002
|
-
*
|
|
2982
|
+
* Update a life event
|
|
2983
|
+
* Updates an existing life event. If If-Match header is provided, performs optimistic concurrency check; mismatched updatedAt returns 412.
|
|
2003
2984
|
* @param data The data for the request.
|
|
2004
|
-
* @param data.id
|
|
2005
|
-
* @param data.region Region code (
|
|
2006
|
-
* @
|
|
2985
|
+
* @param data.id Life event ID
|
|
2986
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
2987
|
+
* @param data.requestBody
|
|
2988
|
+
* @returns EventResponseDto Life event updated successfully
|
|
2007
2989
|
* @throws ApiError
|
|
2008
2990
|
*/
|
|
2009
|
-
public static
|
|
2010
|
-
data:
|
|
2011
|
-
): CancelablePromise<
|
|
2991
|
+
public static eventControllerUpdate(
|
|
2992
|
+
data: EventControllerUpdateData
|
|
2993
|
+
): CancelablePromise<EventControllerUpdateResponse> {
|
|
2012
2994
|
return __request(OpenAPI, {
|
|
2013
|
-
method: '
|
|
2014
|
-
url: '/api/v1/
|
|
2995
|
+
method: 'PUT',
|
|
2996
|
+
url: '/api/v1/{region}/bean/events/{id}',
|
|
2015
2997
|
path: {
|
|
2016
2998
|
id: data.id,
|
|
2017
2999
|
region: data.region
|
|
2018
3000
|
},
|
|
3001
|
+
body: data.requestBody,
|
|
3002
|
+
mediaType: 'application/json',
|
|
2019
3003
|
errors: {
|
|
2020
|
-
|
|
3004
|
+
400: 'If-Match header is not a valid ISO 8601 date',
|
|
3005
|
+
404: 'Life event not found',
|
|
3006
|
+
409: 'Updated event conflicts with an existing (userId, type, date) combination',
|
|
3007
|
+
412: 'If-Match precondition failed (updatedAt mismatch)'
|
|
2021
3008
|
}
|
|
2022
3009
|
});
|
|
2023
3010
|
}
|
|
2024
3011
|
|
|
2025
3012
|
/**
|
|
2026
|
-
*
|
|
3013
|
+
* Delete a life event
|
|
3014
|
+
* Deletes a life event entry (hard delete). Returns 204.
|
|
2027
3015
|
* @param data The data for the request.
|
|
2028
|
-
* @param data.
|
|
2029
|
-
* @param data.
|
|
2030
|
-
* @returns
|
|
3016
|
+
* @param data.id Life event ID
|
|
3017
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
3018
|
+
* @returns void Life event deleted successfully
|
|
2031
3019
|
* @throws ApiError
|
|
2032
3020
|
*/
|
|
2033
|
-
public static
|
|
2034
|
-
data:
|
|
2035
|
-
): CancelablePromise<
|
|
3021
|
+
public static eventControllerDelete(
|
|
3022
|
+
data: EventControllerDeleteData
|
|
3023
|
+
): CancelablePromise<EventControllerDeleteResponse> {
|
|
2036
3024
|
return __request(OpenAPI, {
|
|
2037
|
-
method: '
|
|
2038
|
-
url: '/api/v1/
|
|
3025
|
+
method: 'DELETE',
|
|
3026
|
+
url: '/api/v1/{region}/bean/events/{id}',
|
|
2039
3027
|
path: {
|
|
3028
|
+
id: data.id,
|
|
2040
3029
|
region: data.region
|
|
2041
3030
|
},
|
|
2042
|
-
body: data.requestBody,
|
|
2043
|
-
mediaType: 'application/json',
|
|
2044
3031
|
errors: {
|
|
2045
|
-
|
|
3032
|
+
404: 'Life event not found'
|
|
2046
3033
|
}
|
|
2047
3034
|
});
|
|
2048
3035
|
}
|
|
2049
3036
|
|
|
2050
3037
|
/**
|
|
2051
|
-
*
|
|
3038
|
+
* Slice time-series by a life event (Phase 79)
|
|
3039
|
+
* Returns aggregated time-series for postings matching accountPattern within the half-open date range of the given life event.
|
|
2052
3040
|
* @param data The data for the request.
|
|
2053
|
-
* @param data.
|
|
2054
|
-
* @param data.
|
|
2055
|
-
* @param data.
|
|
2056
|
-
* @
|
|
3041
|
+
* @param data.id Life event ID
|
|
3042
|
+
* @param data.accountPattern
|
|
3043
|
+
* @param data.granularity
|
|
3044
|
+
* @param data.region Region code for tenant context (decorative for life events)
|
|
3045
|
+
* @returns unknown Time-series sliced by the life event range
|
|
2057
3046
|
* @throws ApiError
|
|
2058
3047
|
*/
|
|
2059
|
-
public static
|
|
2060
|
-
data:
|
|
2061
|
-
): CancelablePromise<
|
|
3048
|
+
public static eventControllerGetSlice(
|
|
3049
|
+
data: EventControllerGetSliceData
|
|
3050
|
+
): CancelablePromise<EventControllerGetSliceResponse> {
|
|
2062
3051
|
return __request(OpenAPI, {
|
|
2063
3052
|
method: 'GET',
|
|
2064
|
-
url: '/api/v1/
|
|
3053
|
+
url: '/api/v1/{region}/bean/events/{id}/slice',
|
|
2065
3054
|
path: {
|
|
3055
|
+
id: data.id,
|
|
2066
3056
|
region: data.region
|
|
2067
3057
|
},
|
|
2068
3058
|
query: {
|
|
2069
|
-
|
|
2070
|
-
|
|
3059
|
+
accountPattern: data.accountPattern,
|
|
3060
|
+
granularity: data.granularity
|
|
3061
|
+
},
|
|
3062
|
+
errors: {
|
|
3063
|
+
400: 'accountPattern query param is empty',
|
|
3064
|
+
404: 'Life event not found'
|
|
2071
3065
|
}
|
|
2072
3066
|
});
|
|
2073
3067
|
}
|
|
3068
|
+
}
|
|
2074
3069
|
|
|
3070
|
+
export class OnboardingService {
|
|
2075
3071
|
/**
|
|
2076
|
-
*
|
|
3072
|
+
* Bootstrap core accounts + register asset accounts with opening balances (ADR-0113)
|
|
2077
3073
|
* @param data The data for the request.
|
|
2078
|
-
* @param data.region Region code
|
|
2079
|
-
* @
|
|
3074
|
+
* @param data.region Region code for tenant context
|
|
3075
|
+
* @param data.requestBody
|
|
3076
|
+
* @returns unknown Onboarding bootstrap result.
|
|
2080
3077
|
* @throws ApiError
|
|
2081
3078
|
*/
|
|
2082
|
-
public static
|
|
2083
|
-
data:
|
|
2084
|
-
): CancelablePromise<
|
|
3079
|
+
public static onboardingControllerBootstrap(
|
|
3080
|
+
data: OnboardingControllerBootstrapData
|
|
3081
|
+
): CancelablePromise<OnboardingControllerBootstrapResponse> {
|
|
2085
3082
|
return __request(OpenAPI, {
|
|
2086
|
-
method: '
|
|
2087
|
-
url: '/api/v1/
|
|
3083
|
+
method: 'POST',
|
|
3084
|
+
url: '/api/v1/{region}/bean/onboarding',
|
|
2088
3085
|
path: {
|
|
2089
3086
|
region: data.region
|
|
3087
|
+
},
|
|
3088
|
+
body: data.requestBody,
|
|
3089
|
+
mediaType: 'application/json',
|
|
3090
|
+
errors: {
|
|
3091
|
+
422: 'Invalid region/account path/duplicate paths.'
|
|
2090
3092
|
}
|
|
2091
3093
|
});
|
|
2092
3094
|
}
|
|
2093
3095
|
}
|
|
2094
3096
|
|
|
2095
|
-
export class
|
|
3097
|
+
export class BalanceReconciliationService {
|
|
2096
3098
|
/**
|
|
2097
|
-
*
|
|
3099
|
+
* Preview reconciliation (book vs actual)
|
|
3100
|
+
* Computes book balance, diff, Beancount-inferred tolerance, and suggested action without persisting.
|
|
2098
3101
|
* @param data The data for the request.
|
|
2099
|
-
* @param data.region Region code (
|
|
2100
|
-
* @
|
|
3102
|
+
* @param data.region Region code for tenant context (decorative for reconciliation)
|
|
3103
|
+
* @param data.requestBody
|
|
3104
|
+
* @returns ReconciliationComputeResultDto Reconciliation preview
|
|
2101
3105
|
* @throws ApiError
|
|
2102
3106
|
*/
|
|
2103
|
-
public static
|
|
2104
|
-
data:
|
|
2105
|
-
): CancelablePromise<
|
|
3107
|
+
public static reconciliationControllerCompute(
|
|
3108
|
+
data: ReconciliationControllerComputeData
|
|
3109
|
+
): CancelablePromise<ReconciliationControllerComputeResponse> {
|
|
2106
3110
|
return __request(OpenAPI, {
|
|
2107
|
-
method: '
|
|
2108
|
-
url: '/api/v1/
|
|
3111
|
+
method: 'POST',
|
|
3112
|
+
url: '/api/v1/{region}/bean/reconciliations',
|
|
2109
3113
|
path: {
|
|
2110
3114
|
region: data.region
|
|
2111
3115
|
},
|
|
3116
|
+
body: data.requestBody,
|
|
3117
|
+
mediaType: 'application/json',
|
|
2112
3118
|
errors: {
|
|
2113
|
-
|
|
2114
|
-
403: 'Forbidden - insufficient permissions'
|
|
3119
|
+
404: 'Account not found'
|
|
2115
3120
|
}
|
|
2116
3121
|
});
|
|
2117
3122
|
}
|
|
2118
3123
|
|
|
2119
3124
|
/**
|
|
2120
|
-
*
|
|
3125
|
+
* Record a balance assertion
|
|
3126
|
+
* Persists the reconciliation as a BeanBalance assertion (amount = actual, diffAmount = book − actual). Re-reconciling the same day/currency upserts.
|
|
2121
3127
|
* @param data The data for the request.
|
|
2122
|
-
* @param data.
|
|
2123
|
-
* @param data.
|
|
2124
|
-
* @returns
|
|
3128
|
+
* @param data.region Region code for tenant context (decorative for reconciliation)
|
|
3129
|
+
* @param data.requestBody
|
|
3130
|
+
* @returns ReconciliationRecordDto Balance assertion recorded
|
|
2125
3131
|
* @throws ApiError
|
|
2126
3132
|
*/
|
|
2127
|
-
public static
|
|
2128
|
-
data:
|
|
2129
|
-
): CancelablePromise<
|
|
3133
|
+
public static reconciliationControllerAssert(
|
|
3134
|
+
data: ReconciliationControllerAssertData
|
|
3135
|
+
): CancelablePromise<ReconciliationControllerAssertResponse> {
|
|
2130
3136
|
return __request(OpenAPI, {
|
|
2131
|
-
method: '
|
|
2132
|
-
url: '/api/v1/
|
|
3137
|
+
method: 'POST',
|
|
3138
|
+
url: '/api/v1/{region}/bean/reconciliations/assert',
|
|
2133
3139
|
path: {
|
|
2134
|
-
key: data.key,
|
|
2135
3140
|
region: data.region
|
|
2136
3141
|
},
|
|
3142
|
+
body: data.requestBody,
|
|
3143
|
+
mediaType: 'application/json',
|
|
2137
3144
|
errors: {
|
|
2138
|
-
|
|
2139
|
-
403: 'Forbidden - insufficient permissions',
|
|
2140
|
-
404: 'Property not found'
|
|
3145
|
+
404: 'Account not found'
|
|
2141
3146
|
}
|
|
2142
3147
|
});
|
|
2143
3148
|
}
|
|
2144
3149
|
|
|
2145
3150
|
/**
|
|
3151
|
+
* Generate a pad adjusting entry
|
|
3152
|
+
* When book is outside tolerance, synthesizes a Beancount pad transaction (flag P) booking the diff from source_account and persists it. Source defaults to Equity:Opening-Balances.
|
|
2146
3153
|
* @param data The data for the request.
|
|
2147
|
-
* @param data.region Region code (
|
|
2148
|
-
* @
|
|
3154
|
+
* @param data.region Region code for tenant context (decorative for reconciliation)
|
|
3155
|
+
* @param data.requestBody
|
|
3156
|
+
* @returns PadResultDto Pad adjusting entry generated
|
|
2149
3157
|
* @throws ApiError
|
|
2150
3158
|
*/
|
|
2151
|
-
public static
|
|
2152
|
-
data:
|
|
2153
|
-
): CancelablePromise<
|
|
3159
|
+
public static reconciliationControllerPad(
|
|
3160
|
+
data: ReconciliationControllerPadData
|
|
3161
|
+
): CancelablePromise<ReconciliationControllerPadResponse> {
|
|
2154
3162
|
return __request(OpenAPI, {
|
|
2155
|
-
method: '
|
|
2156
|
-
url: '/api/v1/
|
|
3163
|
+
method: 'POST',
|
|
3164
|
+
url: '/api/v1/{region}/bean/reconciliations/pad',
|
|
2157
3165
|
path: {
|
|
2158
3166
|
region: data.region
|
|
3167
|
+
},
|
|
3168
|
+
body: data.requestBody,
|
|
3169
|
+
mediaType: 'application/json',
|
|
3170
|
+
errors: {
|
|
3171
|
+
400: 'Book already within tolerance — no pad needed',
|
|
3172
|
+
404: 'Account not found'
|
|
2159
3173
|
}
|
|
2160
3174
|
});
|
|
2161
3175
|
}
|
|
2162
3176
|
|
|
2163
3177
|
/**
|
|
3178
|
+
* List reconciliation history for an account
|
|
3179
|
+
* Returns recorded balance assertions (most recent first). The latest drives the account-detail "Last <date>" badge.
|
|
2164
3180
|
* @param data The data for the request.
|
|
2165
|
-
* @param data.
|
|
2166
|
-
* @
|
|
3181
|
+
* @param data.accountId BeanAccount id
|
|
3182
|
+
* @param data.region Region code for tenant context (decorative for reconciliation)
|
|
3183
|
+
* @returns ReconciliationRecordDto Reconciliation history
|
|
2167
3184
|
* @throws ApiError
|
|
2168
3185
|
*/
|
|
2169
|
-
public static
|
|
2170
|
-
data:
|
|
2171
|
-
): CancelablePromise<
|
|
3186
|
+
public static reconciliationControllerHistory(
|
|
3187
|
+
data: ReconciliationControllerHistoryData
|
|
3188
|
+
): CancelablePromise<ReconciliationControllerHistoryResponse> {
|
|
2172
3189
|
return __request(OpenAPI, {
|
|
2173
|
-
method: '
|
|
2174
|
-
url: '/api/v1/
|
|
3190
|
+
method: 'GET',
|
|
3191
|
+
url: '/api/v1/{region}/bean/accounts/{accountId}/reconciliations',
|
|
2175
3192
|
path: {
|
|
3193
|
+
accountId: data.accountId,
|
|
2176
3194
|
region: data.region
|
|
3195
|
+
},
|
|
3196
|
+
errors: {
|
|
3197
|
+
404: 'Account not found'
|
|
2177
3198
|
}
|
|
2178
3199
|
});
|
|
2179
3200
|
}
|
|
2180
3201
|
}
|
|
2181
3202
|
|
|
3203
|
+
export class BeanExportService {
|
|
3204
|
+
/**
|
|
3205
|
+
* Export Beancount ledger as ZIP
|
|
3206
|
+
* Export all user Beancount data as a ZIP file containing ledger.beancount and yearly files in community format.
|
|
3207
|
+
* @returns binary ZIP archive (application/zip) streamed as an attachment
|
|
3208
|
+
* @throws ApiError
|
|
3209
|
+
*/
|
|
3210
|
+
public static exportControllerExportBeancount(): CancelablePromise<ExportControllerExportBeancountResponse> {
|
|
3211
|
+
return __request(OpenAPI, {
|
|
3212
|
+
method: 'GET',
|
|
3213
|
+
url: '/api/v1/{region}/bean/export/beancount'
|
|
3214
|
+
});
|
|
3215
|
+
}
|
|
3216
|
+
}
|
|
3217
|
+
|
|
2182
3218
|
export class BeanImportService {
|
|
2183
3219
|
/**
|
|
2184
3220
|
* Import a bill file
|
|
2185
3221
|
* Upload and process a bill file (CSV, PDF, OFX, etc.). The system automatically identifies the file type, extracts transactions, validates them, and stores only validated transactions to the database. Maximum file size: 50MB. Only 1 import per user at a time (concurrent imports rejected with 429).
|
|
2186
3222
|
* @param data The data for the request.
|
|
2187
|
-
* @param data.region Region code
|
|
3223
|
+
* @param data.region Region code for tenant context
|
|
2188
3224
|
* @param data.formData Bill file to import
|
|
2189
3225
|
* @returns ImportResultDto File imported successfully
|
|
2190
3226
|
* @throws ApiError
|
|
@@ -2213,7 +3249,7 @@ export class BeanImportService {
|
|
|
2213
3249
|
* Identify file type
|
|
2214
3250
|
* Upload a file to check if it can be processed by any registered importer. Does not perform actual import - useful for pre-validation. Uses user-specific importer configuration.
|
|
2215
3251
|
* @param data The data for the request.
|
|
2216
|
-
* @param data.region Region code
|
|
3252
|
+
* @param data.region Region code for tenant context
|
|
2217
3253
|
* @param data.formData File to identify
|
|
2218
3254
|
* @returns IdentifyResultDto File identification result
|
|
2219
3255
|
* @throws ApiError
|
|
@@ -2235,12 +3271,38 @@ export class BeanImportService {
|
|
|
2235
3271
|
});
|
|
2236
3272
|
}
|
|
2237
3273
|
|
|
3274
|
+
/**
|
|
3275
|
+
* Import a Beancount file in community format
|
|
3276
|
+
* Upload a .beancount file to import. The system parses community-format paths, converts to internal format using category metadata, auto-creates accounts, and imports transactions with deduplication. Maximum file size: 50MB. Only 1 import per user at a time.
|
|
3277
|
+
* @param data The data for the request.
|
|
3278
|
+
* @param data.region Region code for tenant context
|
|
3279
|
+
* @param data.formData Beancount file to import
|
|
3280
|
+
* @returns unknown Beancount file imported successfully
|
|
3281
|
+
* @throws ApiError
|
|
3282
|
+
*/
|
|
3283
|
+
public static fileImportControllerImportBeancount(
|
|
3284
|
+
data: FileImportControllerImportBeancountData
|
|
3285
|
+
): CancelablePromise<FileImportControllerImportBeancountResponse> {
|
|
3286
|
+
return __request(OpenAPI, {
|
|
3287
|
+
method: 'POST',
|
|
3288
|
+
url: '/api/v1/{region}/bean/import/beancount',
|
|
3289
|
+
path: {
|
|
3290
|
+
region: data.region
|
|
3291
|
+
},
|
|
3292
|
+
formData: data.formData,
|
|
3293
|
+
mediaType: 'multipart/form-data',
|
|
3294
|
+
errors: {
|
|
3295
|
+
400: 'Bad request - invalid file or no file uploaded'
|
|
3296
|
+
}
|
|
3297
|
+
});
|
|
3298
|
+
}
|
|
3299
|
+
|
|
2238
3300
|
/**
|
|
2239
3301
|
* Get importer configuration
|
|
2240
3302
|
* Returns the current configuration for the specified importer. Creates default configuration if none exists.
|
|
2241
3303
|
* @param data The data for the request.
|
|
2242
|
-
* @param data.importerId Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk
|
|
2243
|
-
* @param data.region Region code
|
|
3304
|
+
* @param data.importerId Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
|
|
3305
|
+
* @param data.region Region code for tenant context
|
|
2244
3306
|
* @returns ImporterConfigDto Configuration retrieved successfully
|
|
2245
3307
|
* @throws ApiError
|
|
2246
3308
|
*/
|
|
@@ -2262,37 +3324,55 @@ export class BeanImportService {
|
|
|
2262
3324
|
}
|
|
2263
3325
|
|
|
2264
3326
|
/**
|
|
3327
|
+
* Update importer configuration
|
|
3328
|
+
* Updates the configuration for the specified importer. Partial updates are supported.
|
|
2265
3329
|
* @param data The data for the request.
|
|
2266
|
-
* @param data.
|
|
2267
|
-
* @
|
|
3330
|
+
* @param data.importerId Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
|
|
3331
|
+
* @param data.region Region code for tenant context
|
|
3332
|
+
* @param data.requestBody Partial configuration update. Only provided fields will be updated.
|
|
3333
|
+
* @returns ImporterConfigDto Configuration updated successfully
|
|
2268
3334
|
* @throws ApiError
|
|
2269
3335
|
*/
|
|
2270
|
-
public static
|
|
2271
|
-
data:
|
|
2272
|
-
): CancelablePromise<
|
|
3336
|
+
public static importerConfigControllerUpdateConfig(
|
|
3337
|
+
data: ImporterConfigControllerUpdateConfigData
|
|
3338
|
+
): CancelablePromise<ImporterConfigControllerUpdateConfigResponse> {
|
|
2273
3339
|
return __request(OpenAPI, {
|
|
2274
3340
|
method: 'PUT',
|
|
2275
3341
|
url: '/api/v1/{region}/bean/import/config/{importerId}',
|
|
2276
3342
|
path: {
|
|
3343
|
+
importerId: data.importerId,
|
|
2277
3344
|
region: data.region
|
|
3345
|
+
},
|
|
3346
|
+
body: data.requestBody,
|
|
3347
|
+
mediaType: 'application/json',
|
|
3348
|
+
errors: {
|
|
3349
|
+
400: 'Invalid input - Validation failed',
|
|
3350
|
+
404: 'Configuration not found'
|
|
2278
3351
|
}
|
|
2279
3352
|
});
|
|
2280
3353
|
}
|
|
2281
3354
|
|
|
2282
3355
|
/**
|
|
3356
|
+
* Reset configuration to default
|
|
3357
|
+
* Resets the configuration for the specified importer to default values. This operation overwrites all existing configuration.
|
|
2283
3358
|
* @param data The data for the request.
|
|
2284
|
-
* @param data.
|
|
2285
|
-
* @
|
|
3359
|
+
* @param data.importerId Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
|
|
3360
|
+
* @param data.region Region code for tenant context
|
|
3361
|
+
* @returns ImporterConfigDto Configuration reset successfully
|
|
2286
3362
|
* @throws ApiError
|
|
2287
3363
|
*/
|
|
2288
|
-
public static
|
|
2289
|
-
data:
|
|
2290
|
-
): CancelablePromise<
|
|
3364
|
+
public static importerConfigControllerResetConfig(
|
|
3365
|
+
data: ImporterConfigControllerResetConfigData
|
|
3366
|
+
): CancelablePromise<ImporterConfigControllerResetConfigResponse> {
|
|
2291
3367
|
return __request(OpenAPI, {
|
|
2292
3368
|
method: 'POST',
|
|
2293
3369
|
url: '/api/v1/{region}/bean/import/config/{importerId}/reset',
|
|
2294
3370
|
path: {
|
|
3371
|
+
importerId: data.importerId,
|
|
2295
3372
|
region: data.region
|
|
3373
|
+
},
|
|
3374
|
+
errors: {
|
|
3375
|
+
400: 'Invalid input - Unsupported importer'
|
|
2296
3376
|
}
|
|
2297
3377
|
});
|
|
2298
3378
|
}
|
|
@@ -2324,7 +3404,7 @@ export class ProviderSyncService {
|
|
|
2324
3404
|
*
|
|
2325
3405
|
* @param data The data for the request.
|
|
2326
3406
|
* @param data.providerName Provider name
|
|
2327
|
-
* @param data.region Region code
|
|
3407
|
+
* @param data.region Region code for tenant context
|
|
2328
3408
|
* @param data.requestBody
|
|
2329
3409
|
* @returns ProviderSyncResponseDto Sync completed successfully
|
|
2330
3410
|
* @throws ApiError
|
|
@@ -2353,7 +3433,7 @@ export class ProviderSyncService {
|
|
|
2353
3433
|
* Get supported providers
|
|
2354
3434
|
* Returns a list of all providers supported by the sync endpoint.
|
|
2355
3435
|
* @param data The data for the request.
|
|
2356
|
-
* @param data.region Region code
|
|
3436
|
+
* @param data.region Region code for tenant context
|
|
2357
3437
|
* @returns SupportedProvidersResponseDto List of supported providers
|
|
2358
3438
|
* @throws ApiError
|
|
2359
3439
|
*/
|
|
@@ -2377,7 +3457,7 @@ export class ProviderSyncService {
|
|
|
2377
3457
|
* Returns whether a specific provider is supported.
|
|
2378
3458
|
* @param data The data for the request.
|
|
2379
3459
|
* @param data.providerName Provider name to check
|
|
2380
|
-
* @param data.region Region code
|
|
3460
|
+
* @param data.region Region code for tenant context
|
|
2381
3461
|
* @returns unknown Provider support status
|
|
2382
3462
|
* @throws ApiError
|
|
2383
3463
|
*/
|
|
@@ -2398,11 +3478,106 @@ export class ProviderSyncService {
|
|
|
2398
3478
|
}
|
|
2399
3479
|
}
|
|
2400
3480
|
|
|
3481
|
+
export class ExternalAccountLinksService {
|
|
3482
|
+
/**
|
|
3483
|
+
* Create an external account → BeanAccount mapping (ADR-0113)
|
|
3484
|
+
* @param data The data for the request.
|
|
3485
|
+
* @param data.region Region code for tenant context
|
|
3486
|
+
* @param data.requestBody
|
|
3487
|
+
* @returns ExternalAccountLinkResponseDto Link created.
|
|
3488
|
+
* @throws ApiError
|
|
3489
|
+
*/
|
|
3490
|
+
public static externalAccountLinkControllerCreate(
|
|
3491
|
+
data: ExternalAccountLinkControllerCreateData
|
|
3492
|
+
): CancelablePromise<ExternalAccountLinkControllerCreateResponse> {
|
|
3493
|
+
return __request(OpenAPI, {
|
|
3494
|
+
method: 'POST',
|
|
3495
|
+
url: '/api/v1/{region}/bean/external-account-links',
|
|
3496
|
+
path: {
|
|
3497
|
+
region: data.region
|
|
3498
|
+
},
|
|
3499
|
+
body: data.requestBody,
|
|
3500
|
+
mediaType: 'application/json',
|
|
3501
|
+
errors: {
|
|
3502
|
+
422: 'beanAccountId not owned, or an active link already exists.'
|
|
3503
|
+
}
|
|
3504
|
+
});
|
|
3505
|
+
}
|
|
3506
|
+
|
|
3507
|
+
/**
|
|
3508
|
+
* List the user's active external account links
|
|
3509
|
+
* @param data The data for the request.
|
|
3510
|
+
* @param data.provider
|
|
3511
|
+
* @param data.region Region code for tenant context
|
|
3512
|
+
* @returns ExternalAccountLinkListResponseDto Links retrieved.
|
|
3513
|
+
* @throws ApiError
|
|
3514
|
+
*/
|
|
3515
|
+
public static externalAccountLinkControllerFindAll(
|
|
3516
|
+
data: ExternalAccountLinkControllerFindAllData
|
|
3517
|
+
): CancelablePromise<ExternalAccountLinkControllerFindAllResponse> {
|
|
3518
|
+
return __request(OpenAPI, {
|
|
3519
|
+
method: 'GET',
|
|
3520
|
+
url: '/api/v1/{region}/bean/external-account-links',
|
|
3521
|
+
path: {
|
|
3522
|
+
region: data.region
|
|
3523
|
+
},
|
|
3524
|
+
query: {
|
|
3525
|
+
provider: data.provider
|
|
3526
|
+
}
|
|
3527
|
+
});
|
|
3528
|
+
}
|
|
3529
|
+
|
|
3530
|
+
/**
|
|
3531
|
+
* Get a single external account link
|
|
3532
|
+
* @param data The data for the request.
|
|
3533
|
+
* @param data.id
|
|
3534
|
+
* @param data.region Region code for tenant context
|
|
3535
|
+
* @returns ExternalAccountLinkResponseDto Link retrieved.
|
|
3536
|
+
* @throws ApiError
|
|
3537
|
+
*/
|
|
3538
|
+
public static externalAccountLinkControllerFindOne(
|
|
3539
|
+
data: ExternalAccountLinkControllerFindOneData
|
|
3540
|
+
): CancelablePromise<ExternalAccountLinkControllerFindOneResponse> {
|
|
3541
|
+
return __request(OpenAPI, {
|
|
3542
|
+
method: 'GET',
|
|
3543
|
+
url: '/api/v1/{region}/bean/external-account-links/{id}',
|
|
3544
|
+
path: {
|
|
3545
|
+
id: data.id,
|
|
3546
|
+
region: data.region
|
|
3547
|
+
},
|
|
3548
|
+
errors: {
|
|
3549
|
+
422: 'Link not found or not owned by the user.'
|
|
3550
|
+
}
|
|
3551
|
+
});
|
|
3552
|
+
}
|
|
3553
|
+
|
|
3554
|
+
/**
|
|
3555
|
+
* Soft-delete (disconnect) an external account link
|
|
3556
|
+
* @param data The data for the request.
|
|
3557
|
+
* @param data.id
|
|
3558
|
+
* @param data.region Region code for tenant context
|
|
3559
|
+
* @returns void Link soft-deleted; historical transactions are unaffected.
|
|
3560
|
+
* @throws ApiError
|
|
3561
|
+
*/
|
|
3562
|
+
public static externalAccountLinkControllerRemove(
|
|
3563
|
+
data: ExternalAccountLinkControllerRemoveData
|
|
3564
|
+
): CancelablePromise<ExternalAccountLinkControllerRemoveResponse> {
|
|
3565
|
+
return __request(OpenAPI, {
|
|
3566
|
+
method: 'DELETE',
|
|
3567
|
+
url: '/api/v1/{region}/bean/external-account-links/{id}',
|
|
3568
|
+
path: {
|
|
3569
|
+
id: data.id,
|
|
3570
|
+
region: data.region
|
|
3571
|
+
}
|
|
3572
|
+
});
|
|
3573
|
+
}
|
|
3574
|
+
}
|
|
3575
|
+
|
|
2401
3576
|
export class ImportTelemetryService {
|
|
2402
3577
|
/**
|
|
2403
3578
|
* Receive anonymous parser failure telemetry
|
|
2404
3579
|
* @param data The data for the request.
|
|
2405
|
-
* @param data.region Region code
|
|
3580
|
+
* @param data.region Region code for tenant context
|
|
2406
3581
|
* @param data.requestBody
|
|
2407
3582
|
* @returns unknown Telemetry report received
|
|
2408
3583
|
* @throws ApiError
|
|
@@ -2423,6 +3598,54 @@ export class ImportTelemetryService {
|
|
|
2423
3598
|
}
|
|
2424
3599
|
});
|
|
2425
3600
|
}
|
|
3601
|
+
|
|
3602
|
+
/**
|
|
3603
|
+
* Receive anonymous zero-hit coverage miss report
|
|
3604
|
+
* @param data The data for the request.
|
|
3605
|
+
* @param data.region Region code for tenant context
|
|
3606
|
+
* @param data.requestBody
|
|
3607
|
+
* @returns unknown Coverage miss report received
|
|
3608
|
+
* @throws ApiError
|
|
3609
|
+
*/
|
|
3610
|
+
public static telemetryControllerReportCoverageMiss(
|
|
3611
|
+
data: TelemetryControllerReportCoverageMissData
|
|
3612
|
+
): CancelablePromise<TelemetryControllerReportCoverageMissResponse> {
|
|
3613
|
+
return __request(OpenAPI, {
|
|
3614
|
+
method: 'POST',
|
|
3615
|
+
url: '/api/v1/{region}/bean/import/parser-coverage-miss',
|
|
3616
|
+
path: {
|
|
3617
|
+
region: data.region
|
|
3618
|
+
},
|
|
3619
|
+
body: data.requestBody,
|
|
3620
|
+
mediaType: 'application/json',
|
|
3621
|
+
errors: {
|
|
3622
|
+
401: 'Unauthorized'
|
|
3623
|
+
}
|
|
3624
|
+
});
|
|
3625
|
+
}
|
|
3626
|
+
|
|
3627
|
+
/**
|
|
3628
|
+
* Coverage metrics (uncovered format aggregation)
|
|
3629
|
+
* @param data The data for the request.
|
|
3630
|
+
* @param data.region Region code for tenant context
|
|
3631
|
+
* @param data.topN Top-N uncovered formats (default 10)
|
|
3632
|
+
* @returns unknown Coverage metrics
|
|
3633
|
+
* @throws ApiError
|
|
3634
|
+
*/
|
|
3635
|
+
public static telemetryControllerGetCoverageMetrics(
|
|
3636
|
+
data: TelemetryControllerGetCoverageMetricsData
|
|
3637
|
+
): CancelablePromise<TelemetryControllerGetCoverageMetricsResponse> {
|
|
3638
|
+
return __request(OpenAPI, {
|
|
3639
|
+
method: 'GET',
|
|
3640
|
+
url: '/api/v1/{region}/bean/import/parser-coverage-metrics',
|
|
3641
|
+
path: {
|
|
3642
|
+
region: data.region
|
|
3643
|
+
},
|
|
3644
|
+
query: {
|
|
3645
|
+
topN: data.topN
|
|
3646
|
+
}
|
|
3647
|
+
});
|
|
3648
|
+
}
|
|
2426
3649
|
}
|
|
2427
3650
|
|
|
2428
3651
|
export class BeanNlpService {
|
|
@@ -2430,7 +3653,7 @@ export class BeanNlpService {
|
|
|
2430
3653
|
* Process natural language input
|
|
2431
3654
|
* Parse natural language text (Chinese/English) describing a transaction. Supports multi-turn dialogue for collecting missing information. When confidence < 0.75, returns "confirm" action requiring user verification. User can reply with confirmation words (确认/yes/ok) or provide corrections. Examples: "yesterday Starbucks spent 35 yuan", "today lunch 28 yuan", "spent $50 at Walmart"
|
|
2432
3655
|
* @param data The data for the request.
|
|
2433
|
-
* @param data.region Region code
|
|
3656
|
+
* @param data.region Region code for tenant context
|
|
2434
3657
|
* @param data.requestBody Natural language transaction input with optional session ID
|
|
2435
3658
|
* @returns NlpResponseDto NLP processing result - either created transaction or asking for more info
|
|
2436
3659
|
* @throws ApiError
|
|
@@ -2457,7 +3680,7 @@ export class BeanNlpService {
|
|
|
2457
3680
|
* Clear dialogue session
|
|
2458
3681
|
* Clear the current NLP dialogue session. Use this to cancel an ongoing multi-turn dialogue.
|
|
2459
3682
|
* @param data The data for the request.
|
|
2460
|
-
* @param data.region Region code
|
|
3683
|
+
* @param data.region Region code for tenant context
|
|
2461
3684
|
* @param data.sessionId Specific session ID to clear (defaults to user session)
|
|
2462
3685
|
* @returns void Session cleared successfully
|
|
2463
3686
|
* @throws ApiError
|
|
@@ -2484,7 +3707,7 @@ export class BeanNlpService {
|
|
|
2484
3707
|
* Get current session state
|
|
2485
3708
|
* Get the current NLP dialogue session state. Useful for debugging and displaying session context in UI.
|
|
2486
3709
|
* @param data The data for the request.
|
|
2487
|
-
* @param data.region Region code
|
|
3710
|
+
* @param data.region Region code for tenant context
|
|
2488
3711
|
* @param data.sessionId Specific session ID to get (defaults to user session)
|
|
2489
3712
|
* @returns unknown Current session state (or null if no active session)
|
|
2490
3713
|
* @throws ApiError
|
|
@@ -2511,37 +3734,33 @@ export class BeanNlpService {
|
|
|
2511
3734
|
export class BeanPlatformsService {
|
|
2512
3735
|
/**
|
|
2513
3736
|
* Get all platforms with statistics
|
|
2514
|
-
* @param data The data for the request.
|
|
2515
|
-
* @param data.region Region code (cn, us, de)
|
|
2516
3737
|
* @returns unknown List of platforms with binding and account counts
|
|
2517
3738
|
* @throws ApiError
|
|
2518
3739
|
*/
|
|
2519
|
-
public static platformControllerFindAll(
|
|
2520
|
-
data: PlatformControllerFindAllData
|
|
2521
|
-
): CancelablePromise<PlatformControllerFindAllResponse> {
|
|
3740
|
+
public static platformControllerFindAll(): CancelablePromise<PlatformControllerFindAllResponse> {
|
|
2522
3741
|
return __request(OpenAPI, {
|
|
2523
3742
|
method: 'GET',
|
|
2524
|
-
url: '/api/v1/bean/platforms'
|
|
2525
|
-
path: {
|
|
2526
|
-
region: data.region
|
|
2527
|
-
}
|
|
3743
|
+
url: '/api/v1/bean/platforms'
|
|
2528
3744
|
});
|
|
2529
3745
|
}
|
|
2530
3746
|
|
|
2531
3747
|
/**
|
|
3748
|
+
* Create a new platform
|
|
2532
3749
|
* @param data The data for the request.
|
|
2533
|
-
* @param data.
|
|
2534
|
-
* @returns unknown
|
|
3750
|
+
* @param data.requestBody
|
|
3751
|
+
* @returns unknown Platform created successfully
|
|
2535
3752
|
* @throws ApiError
|
|
2536
3753
|
*/
|
|
2537
|
-
public static
|
|
2538
|
-
data:
|
|
2539
|
-
): CancelablePromise<
|
|
3754
|
+
public static platformControllerCreate(
|
|
3755
|
+
data: PlatformControllerCreateData
|
|
3756
|
+
): CancelablePromise<PlatformControllerCreateResponse> {
|
|
2540
3757
|
return __request(OpenAPI, {
|
|
2541
3758
|
method: 'POST',
|
|
2542
3759
|
url: '/api/v1/bean/platforms',
|
|
2543
|
-
|
|
2544
|
-
|
|
3760
|
+
body: data.requestBody,
|
|
3761
|
+
mediaType: 'application/json',
|
|
3762
|
+
errors: {
|
|
3763
|
+
409: 'Platform already exists'
|
|
2545
3764
|
}
|
|
2546
3765
|
});
|
|
2547
3766
|
}
|
|
@@ -2549,191 +3768,111 @@ export class BeanPlatformsService {
|
|
|
2549
3768
|
/**
|
|
2550
3769
|
* Get platform list for current user
|
|
2551
3770
|
* @param data The data for the request.
|
|
2552
|
-
* @param data.region Region code (cn
|
|
2553
|
-
* @returns
|
|
3771
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-type-bucket ordering (local-region platforms first). Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3772
|
+
* @returns PlatformListItemDto List of platforms with user binding status
|
|
2554
3773
|
* @throws ApiError
|
|
2555
3774
|
*/
|
|
2556
3775
|
public static platformControllerGetPlatformList(
|
|
2557
|
-
data: PlatformControllerGetPlatformListData
|
|
3776
|
+
data: PlatformControllerGetPlatformListData = {}
|
|
2558
3777
|
): CancelablePromise<PlatformControllerGetPlatformListResponse> {
|
|
2559
3778
|
return __request(OpenAPI, {
|
|
2560
3779
|
method: 'GET',
|
|
2561
3780
|
url: '/api/v1/bean/platforms/list',
|
|
2562
|
-
|
|
2563
|
-
region: data.region
|
|
2564
|
-
}
|
|
2565
|
-
});
|
|
2566
|
-
}
|
|
2567
|
-
|
|
2568
|
-
/**
|
|
2569
|
-
* @param data The data for the request.
|
|
2570
|
-
* @param data.region Region code (cn, us, de)
|
|
2571
|
-
* @returns unknown
|
|
2572
|
-
* @throws ApiError
|
|
2573
|
-
*/
|
|
2574
|
-
public static platformController1(
|
|
2575
|
-
data: PlatformController1Data
|
|
2576
|
-
): CancelablePromise<PlatformController1Response> {
|
|
2577
|
-
return __request(OpenAPI, {
|
|
2578
|
-
method: 'PUT',
|
|
2579
|
-
url: '/api/v1/bean/platforms/{id}',
|
|
2580
|
-
path: {
|
|
3781
|
+
query: {
|
|
2581
3782
|
region: data.region
|
|
2582
3783
|
}
|
|
2583
3784
|
});
|
|
2584
3785
|
}
|
|
2585
3786
|
|
|
2586
3787
|
/**
|
|
3788
|
+
* Match platforms by name or alias
|
|
2587
3789
|
* @param data The data for the request.
|
|
2588
|
-
* @param data.
|
|
2589
|
-
* @
|
|
3790
|
+
* @param data.q Search query — Chinese name, English name, or abbreviation
|
|
3791
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-tier ordering (local-region platforms first); also the intended categoryOverrides key. Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3792
|
+
* @returns PlatformMatchResponseDto Matching platforms with overall match type and truncation flag
|
|
2590
3793
|
* @throws ApiError
|
|
2591
3794
|
*/
|
|
2592
|
-
public static
|
|
2593
|
-
data:
|
|
2594
|
-
): CancelablePromise<
|
|
3795
|
+
public static platformControllerMatchPlatforms(
|
|
3796
|
+
data: PlatformControllerMatchPlatformsData
|
|
3797
|
+
): CancelablePromise<PlatformControllerMatchPlatformsResponse> {
|
|
2595
3798
|
return __request(OpenAPI, {
|
|
2596
|
-
method: '
|
|
2597
|
-
url: '/api/v1/bean/platforms/
|
|
2598
|
-
|
|
3799
|
+
method: 'GET',
|
|
3800
|
+
url: '/api/v1/bean/platforms/match',
|
|
3801
|
+
query: {
|
|
3802
|
+
q: data.q,
|
|
2599
3803
|
region: data.region
|
|
2600
3804
|
}
|
|
2601
3805
|
});
|
|
2602
3806
|
}
|
|
2603
|
-
}
|
|
2604
3807
|
|
|
2605
|
-
export class SymbolsService {
|
|
2606
3808
|
/**
|
|
2607
|
-
*
|
|
2608
|
-
* Search symbols by query with optional filters for asset class, area, and indices
|
|
3809
|
+
* Get the region and candidate account standards for a platform
|
|
2609
3810
|
* @param data The data for the request.
|
|
2610
|
-
* @param data.
|
|
2611
|
-
* @param data.
|
|
2612
|
-
* @param data.
|
|
2613
|
-
* @
|
|
2614
|
-
* @param data.area Geographic area filter (e.g., CN, US)
|
|
2615
|
-
* @param data.query Search query string
|
|
2616
|
-
* @returns unknown Symbols found successfully
|
|
3811
|
+
* @param data.id Platform ID (from a match result)
|
|
3812
|
+
* @param data.region Region code (ISO 3166-1 alpha-2, case-insensitive). Required for global platforms (countryCode null) — resolved as their template region; ignored when the platform has its own countryCode.
|
|
3813
|
+
* @param data.type Filter templates by account type (path first segment)
|
|
3814
|
+
* @returns PlatformStandardsResponseDto Resolved region plus the merged account-standard catalog of that region (groupable by productCategory client-side)
|
|
2617
3815
|
* @throws ApiError
|
|
2618
3816
|
*/
|
|
2619
|
-
public static
|
|
2620
|
-
data:
|
|
2621
|
-
): CancelablePromise<
|
|
3817
|
+
public static platformControllerGetPlatformStandards(
|
|
3818
|
+
data: PlatformControllerGetPlatformStandardsData
|
|
3819
|
+
): CancelablePromise<PlatformControllerGetPlatformStandardsResponse> {
|
|
2622
3820
|
return __request(OpenAPI, {
|
|
2623
3821
|
method: 'GET',
|
|
2624
|
-
url: '/api/v1/
|
|
3822
|
+
url: '/api/v1/bean/platforms/{id}/standards',
|
|
2625
3823
|
path: {
|
|
2626
|
-
|
|
3824
|
+
id: data.id
|
|
2627
3825
|
},
|
|
2628
3826
|
query: {
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
assetClass: data.assetClass,
|
|
2632
|
-
area: data.area,
|
|
2633
|
-
query: data.query
|
|
2634
|
-
},
|
|
2635
|
-
errors: {
|
|
2636
|
-
400: 'Invalid query parameters'
|
|
3827
|
+
region: data.region,
|
|
3828
|
+
type: data.type
|
|
2637
3829
|
}
|
|
2638
3830
|
});
|
|
2639
3831
|
}
|
|
2640
3832
|
|
|
2641
3833
|
/**
|
|
2642
|
-
*
|
|
2643
|
-
* Retrieve detailed symbol information including optional historical data
|
|
3834
|
+
* Update a platform
|
|
2644
3835
|
* @param data The data for the request.
|
|
2645
|
-
* @param data.
|
|
2646
|
-
* @param data.
|
|
2647
|
-
* @
|
|
2648
|
-
* @param data.includeHistoricalData Include historical price data (0 or 1)
|
|
2649
|
-
* @returns unknown Symbol data retrieved successfully
|
|
3836
|
+
* @param data.id Platform ID
|
|
3837
|
+
* @param data.requestBody
|
|
3838
|
+
* @returns unknown Platform updated successfully
|
|
2650
3839
|
* @throws ApiError
|
|
2651
3840
|
*/
|
|
2652
|
-
public static
|
|
2653
|
-
data:
|
|
2654
|
-
): CancelablePromise<
|
|
3841
|
+
public static platformControllerUpdate(
|
|
3842
|
+
data: PlatformControllerUpdateData
|
|
3843
|
+
): CancelablePromise<PlatformControllerUpdateResponse> {
|
|
2655
3844
|
return __request(OpenAPI, {
|
|
2656
|
-
method: '
|
|
2657
|
-
url: '/api/v1/
|
|
3845
|
+
method: 'PUT',
|
|
3846
|
+
url: '/api/v1/bean/platforms/{id}',
|
|
2658
3847
|
path: {
|
|
2659
|
-
|
|
2660
|
-
symbol: data.symbol,
|
|
2661
|
-
region: data.region
|
|
2662
|
-
},
|
|
2663
|
-
query: {
|
|
2664
|
-
includeHistoricalData: data.includeHistoricalData
|
|
3848
|
+
id: data.id
|
|
2665
3849
|
},
|
|
3850
|
+
body: data.requestBody,
|
|
3851
|
+
mediaType: 'application/json',
|
|
2666
3852
|
errors: {
|
|
2667
|
-
|
|
2668
|
-
404: 'Symbol not found'
|
|
3853
|
+
404: 'Platform not found'
|
|
2669
3854
|
}
|
|
2670
3855
|
});
|
|
2671
3856
|
}
|
|
2672
3857
|
|
|
2673
3858
|
/**
|
|
2674
|
-
*
|
|
2675
|
-
* Retrieve historical symbol data for a specific date
|
|
3859
|
+
* Delete a platform
|
|
2676
3860
|
* @param data The data for the request.
|
|
2677
|
-
* @param data.
|
|
2678
|
-
* @
|
|
2679
|
-
* @param data.symbol Symbol identifier (e.g., ticker code)
|
|
2680
|
-
* @param data.region Region code (cn, us, de)
|
|
2681
|
-
* @returns unknown Historical data retrieved successfully
|
|
3861
|
+
* @param data.id Platform ID
|
|
3862
|
+
* @returns void Platform deleted successfully
|
|
2682
3863
|
* @throws ApiError
|
|
2683
3864
|
*/
|
|
2684
|
-
public static
|
|
2685
|
-
data:
|
|
2686
|
-
): CancelablePromise<
|
|
3865
|
+
public static platformControllerDelete(
|
|
3866
|
+
data: PlatformControllerDeleteData
|
|
3867
|
+
): CancelablePromise<PlatformControllerDeleteResponse> {
|
|
2687
3868
|
return __request(OpenAPI, {
|
|
2688
|
-
method: '
|
|
2689
|
-
url: '/api/v1/
|
|
3869
|
+
method: 'DELETE',
|
|
3870
|
+
url: '/api/v1/bean/platforms/{id}',
|
|
2690
3871
|
path: {
|
|
2691
|
-
|
|
2692
|
-
dateString: data.dateString,
|
|
2693
|
-
symbol: data.symbol,
|
|
2694
|
-
region: data.region
|
|
3872
|
+
id: data.id
|
|
2695
3873
|
},
|
|
2696
3874
|
errors: {
|
|
2697
|
-
|
|
2698
|
-
404: 'Symbol data not found for specified date'
|
|
2699
|
-
}
|
|
2700
|
-
});
|
|
2701
|
-
}
|
|
2702
|
-
|
|
2703
|
-
/**
|
|
2704
|
-
* @param data The data for the request.
|
|
2705
|
-
* @param data.region Region code (cn, us, de)
|
|
2706
|
-
* @returns unknown
|
|
2707
|
-
* @throws ApiError
|
|
2708
|
-
*/
|
|
2709
|
-
public static symbolController(
|
|
2710
|
-
data: SymbolControllerData
|
|
2711
|
-
): CancelablePromise<SymbolControllerResponse> {
|
|
2712
|
-
return __request(OpenAPI, {
|
|
2713
|
-
method: 'PUT',
|
|
2714
|
-
url: '/api/v1/market/symbols/yahoo/batch-update',
|
|
2715
|
-
path: {
|
|
2716
|
-
region: data.region
|
|
2717
|
-
}
|
|
2718
|
-
});
|
|
2719
|
-
}
|
|
2720
|
-
}
|
|
2721
|
-
|
|
2722
|
-
export class DefaultService {
|
|
2723
|
-
/**
|
|
2724
|
-
* @param data The data for the request.
|
|
2725
|
-
* @param data.region Region code (cn, us, de)
|
|
2726
|
-
* @returns unknown
|
|
2727
|
-
* @throws ApiError
|
|
2728
|
-
*/
|
|
2729
|
-
public static cacheControllerFlushCache(
|
|
2730
|
-
data: CacheControllerFlushCacheData
|
|
2731
|
-
): CancelablePromise<CacheControllerFlushCacheResponse> {
|
|
2732
|
-
return __request(OpenAPI, {
|
|
2733
|
-
method: 'POST',
|
|
2734
|
-
url: '/api/v1/cache/flush',
|
|
2735
|
-
path: {
|
|
2736
|
-
region: data.region
|
|
3875
|
+
404: 'Platform not found'
|
|
2737
3876
|
}
|
|
2738
3877
|
});
|
|
2739
3878
|
}
|
|
@@ -2744,7 +3883,7 @@ export class DashboardService {
|
|
|
2744
3883
|
* Get net worth overview
|
|
2745
3884
|
* Returns total net worth with breakdown of assets and liabilities
|
|
2746
3885
|
* @param data The data for the request.
|
|
2747
|
-
* @param data.region Region code
|
|
3886
|
+
* @param data.region Region code for tenant context
|
|
2748
3887
|
* @param data.date Date for balance calculation (ISO 8601 format)
|
|
2749
3888
|
* @returns NetWorthResponseDto Net worth retrieved successfully
|
|
2750
3889
|
* @throws ApiError
|
|
@@ -2771,9 +3910,10 @@ export class DashboardService {
|
|
|
2771
3910
|
* Get accounts grouped by platform
|
|
2772
3911
|
* Returns accounts with balances grouped by financial platform
|
|
2773
3912
|
* @param data The data for the request.
|
|
2774
|
-
* @param data.region Region code
|
|
3913
|
+
* @param data.region Region code for tenant context
|
|
2775
3914
|
* @param data.groupBy Grouping strategy
|
|
2776
3915
|
* @param data.date Date for balance calculation (ISO 8601 format)
|
|
3916
|
+
* @param data.accountId Scope to a single account (only valid with groupBy=holdingAssetClass, ADR-0105 §6)
|
|
2777
3917
|
* @returns unknown Accounts retrieved successfully. Response type depends on groupBy parameter.
|
|
2778
3918
|
* @throws ApiError
|
|
2779
3919
|
*/
|
|
@@ -2788,7 +3928,8 @@ export class DashboardService {
|
|
|
2788
3928
|
},
|
|
2789
3929
|
query: {
|
|
2790
3930
|
groupBy: data.groupBy,
|
|
2791
|
-
date: data.date
|
|
3931
|
+
date: data.date,
|
|
3932
|
+
accountId: data.accountId
|
|
2792
3933
|
},
|
|
2793
3934
|
errors: {
|
|
2794
3935
|
401: 'User not authenticated'
|
|
@@ -2801,146 +3942,91 @@ export class DashboardService {
|
|
|
2801
3942
|
* Returns income, expenses, and savings for a monthly period
|
|
2802
3943
|
* @param data The data for the request.
|
|
2803
3944
|
* @param data.period Period in YYYY-MM format
|
|
2804
|
-
* @param data.region Region code
|
|
2805
|
-
* @returns CashFlowResponseDto Cash flow retrieved successfully
|
|
2806
|
-
* @throws ApiError
|
|
2807
|
-
*/
|
|
2808
|
-
public static dashboardControllerGetCashFlow(
|
|
2809
|
-
data: DashboardControllerGetCashFlowData
|
|
2810
|
-
): CancelablePromise<DashboardControllerGetCashFlowResponse> {
|
|
2811
|
-
return __request(OpenAPI, {
|
|
2812
|
-
method: 'GET',
|
|
2813
|
-
url: '/api/v1/{region}/dashboard/cash-flow',
|
|
2814
|
-
path: {
|
|
2815
|
-
region: data.region
|
|
2816
|
-
},
|
|
2817
|
-
query: {
|
|
2818
|
-
period: data.period
|
|
2819
|
-
},
|
|
2820
|
-
errors: {
|
|
2821
|
-
400: 'Invalid period format',
|
|
2822
|
-
401: 'User not authenticated'
|
|
2823
|
-
}
|
|
2824
|
-
});
|
|
2825
|
-
}
|
|
2826
|
-
}
|
|
2827
|
-
|
|
2828
|
-
export class ReportingService {
|
|
2829
|
-
/**
|
|
2830
|
-
* Get portfolio value trends
|
|
2831
|
-
*
|
|
2832
|
-
* Returns time series data of portfolio net worth.
|
|
2833
|
-
*
|
|
2834
|
-
* **Multi-currency Support:**
|
|
2835
|
-
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
2836
|
-
* - `byCurrency` - Separate time series grouped by currency
|
|
2837
|
-
* - `warnings` - Exchange rate warnings if conversion failed
|
|
2838
|
-
*
|
|
2839
|
-
* **Parameters:**
|
|
2840
|
-
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
2841
|
-
* - `granularity`: Data granularity (day, week, month)
|
|
2842
|
-
*
|
|
2843
|
-
* @param data The data for the request.
|
|
2844
|
-
* @param data.region Region code (cn, us, de)
|
|
2845
|
-
* @param data.period Time period
|
|
2846
|
-
* @param data.granularity Data granularity
|
|
2847
|
-
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
3945
|
+
* @param data.region Region code for tenant context
|
|
3946
|
+
* @returns CashFlowResponseDto Cash flow retrieved successfully
|
|
2848
3947
|
* @throws ApiError
|
|
2849
3948
|
*/
|
|
2850
|
-
public static
|
|
2851
|
-
data:
|
|
2852
|
-
): CancelablePromise<
|
|
3949
|
+
public static dashboardControllerGetCashFlow(
|
|
3950
|
+
data: DashboardControllerGetCashFlowData
|
|
3951
|
+
): CancelablePromise<DashboardControllerGetCashFlowResponse> {
|
|
2853
3952
|
return __request(OpenAPI, {
|
|
2854
3953
|
method: 'GET',
|
|
2855
|
-
url: '/api/v1/{region}/
|
|
3954
|
+
url: '/api/v1/{region}/dashboard/cash-flow',
|
|
2856
3955
|
path: {
|
|
2857
3956
|
region: data.region
|
|
2858
3957
|
},
|
|
2859
3958
|
query: {
|
|
2860
|
-
period: data.period
|
|
2861
|
-
granularity: data.granularity
|
|
3959
|
+
period: data.period
|
|
2862
3960
|
},
|
|
2863
3961
|
errors: {
|
|
3962
|
+
400: 'Invalid period format',
|
|
2864
3963
|
401: 'User not authenticated'
|
|
2865
3964
|
}
|
|
2866
3965
|
});
|
|
2867
3966
|
}
|
|
2868
3967
|
|
|
2869
3968
|
/**
|
|
2870
|
-
*
|
|
2871
|
-
*
|
|
2872
|
-
* Manually generate a portfolio snapshot for a specific date.
|
|
2873
|
-
*
|
|
2874
|
-
* **Multi-currency Support:**
|
|
2875
|
-
* - Fetches balances grouped by currency
|
|
2876
|
-
* - Uses user's baseCurrency setting for conversion
|
|
2877
|
-
* - Stores exchange rates and warnings
|
|
2878
|
-
*
|
|
2879
|
-
* **Use Cases:**
|
|
2880
|
-
* - Testing snapshot generation
|
|
2881
|
-
* - Force regeneration after data correction
|
|
2882
|
-
* - Initial setup for new users
|
|
2883
|
-
*
|
|
3969
|
+
* Get expenses/income grouped by functional category
|
|
3970
|
+
* Returns amounts pre-aggregated by functional category (account-path Group segment) with server-side multi-currency conversion. flow=expense (default) aggregates ^Expenses: accounts; flow=income aggregates ^Income: accounts (issue #518)
|
|
2884
3971
|
* @param data The data for the request.
|
|
2885
|
-
* @param data.region Region code
|
|
2886
|
-
* @param data.
|
|
2887
|
-
* @
|
|
3972
|
+
* @param data.region Region code for tenant context
|
|
3973
|
+
* @param data.groupBy Grouping strategy
|
|
3974
|
+
* @param data.period Time window (1m = current calendar month)
|
|
3975
|
+
* @param data.flow Account root to aggregate (expense → ^Expenses:, income → ^Income:)
|
|
3976
|
+
* @returns ExpensesByCategoryResponseDto Expenses retrieved successfully
|
|
2888
3977
|
* @throws ApiError
|
|
2889
3978
|
*/
|
|
2890
|
-
public static
|
|
2891
|
-
data:
|
|
2892
|
-
): CancelablePromise<
|
|
3979
|
+
public static dashboardControllerGetExpenses(
|
|
3980
|
+
data: DashboardControllerGetExpensesData
|
|
3981
|
+
): CancelablePromise<DashboardControllerGetExpensesResponse> {
|
|
2893
3982
|
return __request(OpenAPI, {
|
|
2894
|
-
method: '
|
|
2895
|
-
url: '/api/v1/{region}/
|
|
3983
|
+
method: 'GET',
|
|
3984
|
+
url: '/api/v1/{region}/dashboard/expenses',
|
|
2896
3985
|
path: {
|
|
2897
3986
|
region: data.region
|
|
2898
3987
|
},
|
|
2899
|
-
|
|
2900
|
-
|
|
3988
|
+
query: {
|
|
3989
|
+
groupBy: data.groupBy,
|
|
3990
|
+
period: data.period,
|
|
3991
|
+
flow: data.flow
|
|
3992
|
+
},
|
|
2901
3993
|
errors: {
|
|
2902
|
-
400: 'Invalid
|
|
3994
|
+
400: 'Invalid groupBy or period',
|
|
2903
3995
|
401: 'User not authenticated'
|
|
2904
3996
|
}
|
|
2905
3997
|
});
|
|
2906
3998
|
}
|
|
3999
|
+
}
|
|
2907
4000
|
|
|
4001
|
+
export class InvestmentService {
|
|
2908
4002
|
/**
|
|
2909
|
-
*
|
|
2910
|
-
*
|
|
2911
|
-
* Generate snapshots for a date range (historical data backfill).
|
|
2912
|
-
*
|
|
2913
|
-
* **Multi-currency Support:**
|
|
2914
|
-
* - Each snapshot includes multi-currency data
|
|
2915
|
-
* - Uses exchange rates available at generation time
|
|
2916
|
-
* - Warnings stored for missing exchange rates
|
|
2917
|
-
*
|
|
2918
|
-
* **Best Practices:**
|
|
2919
|
-
* - Use for initial setup after account configuration
|
|
2920
|
-
* - Run during low-traffic periods for large date ranges
|
|
2921
|
-
* - Existing snapshots are skipped (not regenerated)
|
|
2922
|
-
*
|
|
4003
|
+
* Get per-holding unrealized + realized P&L
|
|
4004
|
+
* Average-cost unrealized P&L per account × commodity, plus cumulative realized P&L on sold lots (method = FIFO | average, default average).
|
|
2923
4005
|
* @param data The data for the request.
|
|
2924
|
-
* @param data.region Region code
|
|
2925
|
-
* @param data.
|
|
2926
|
-
* @
|
|
4006
|
+
* @param data.region Region code for tenant context
|
|
4007
|
+
* @param data.asOf As-of date (ISO 8601), defaults to today
|
|
4008
|
+
* @param data.accountId Scope to a single account
|
|
4009
|
+
* @param data.method Realized-P&L lot-matching method (default average). Does not affect the average-cost unrealized basis.
|
|
4010
|
+
* @returns HoldingPnlResponseDto Holding P&L retrieved successfully
|
|
2927
4011
|
* @throws ApiError
|
|
2928
4012
|
*/
|
|
2929
|
-
public static
|
|
2930
|
-
data:
|
|
2931
|
-
): CancelablePromise<
|
|
4013
|
+
public static holdingPnlControllerGetHoldingPnl(
|
|
4014
|
+
data: HoldingPnlControllerGetHoldingPnlData
|
|
4015
|
+
): CancelablePromise<HoldingPnlControllerGetHoldingPnlResponse> {
|
|
2932
4016
|
return __request(OpenAPI, {
|
|
2933
|
-
method: '
|
|
2934
|
-
url: '/api/v1/{region}/
|
|
4017
|
+
method: 'GET',
|
|
4018
|
+
url: '/api/v1/{region}/investment/holdings/pnl',
|
|
2935
4019
|
path: {
|
|
2936
4020
|
region: data.region
|
|
2937
4021
|
},
|
|
2938
|
-
|
|
2939
|
-
|
|
4022
|
+
query: {
|
|
4023
|
+
asOf: data.asOf,
|
|
4024
|
+
accountId: data.accountId,
|
|
4025
|
+
method: data.method
|
|
4026
|
+
},
|
|
2940
4027
|
errors: {
|
|
2941
|
-
400: 'Invalid date format or
|
|
2942
|
-
401: 'User not authenticated'
|
|
2943
|
-
409: 'Backfill already in progress for this user'
|
|
4028
|
+
400: 'Invalid asOf format/value/future date, invalid accountId format, or unsupported method',
|
|
4029
|
+
401: 'User not authenticated'
|
|
2944
4030
|
}
|
|
2945
4031
|
});
|
|
2946
4032
|
}
|
|
@@ -2948,19 +4034,17 @@ export class ReportingService {
|
|
|
2948
4034
|
|
|
2949
4035
|
export class ApiKeysService {
|
|
2950
4036
|
/**
|
|
2951
|
-
*
|
|
2952
|
-
*
|
|
2953
|
-
* @returns unknown
|
|
4037
|
+
* Create API key
|
|
4038
|
+
* Generates a new API key for the authenticated user
|
|
4039
|
+
* @returns unknown API key created successfully
|
|
2954
4040
|
* @throws ApiError
|
|
2955
4041
|
*/
|
|
2956
|
-
public static
|
|
2957
|
-
data: ApiKeysControllerData
|
|
2958
|
-
): CancelablePromise<ApiKeysControllerResponse> {
|
|
4042
|
+
public static apiKeysControllerCreateApiKey(): CancelablePromise<ApiKeysControllerCreateApiKeyResponse> {
|
|
2959
4043
|
return __request(OpenAPI, {
|
|
2960
4044
|
method: 'POST',
|
|
2961
4045
|
url: '/api/v1/auth/api-keys',
|
|
2962
|
-
|
|
2963
|
-
|
|
4046
|
+
errors: {
|
|
4047
|
+
403: 'Insufficient permissions to create API key'
|
|
2964
4048
|
}
|
|
2965
4049
|
});
|
|
2966
4050
|
}
|
|
@@ -2970,9 +4054,8 @@ export class AuthService {
|
|
|
2970
4054
|
/**
|
|
2971
4055
|
* Anonymous login with access token
|
|
2972
4056
|
* @param data The data for the request.
|
|
2973
|
-
* @param data.region Region code (cn, us, de)
|
|
2974
4057
|
* @param data.requestBody
|
|
2975
|
-
* @returns
|
|
4058
|
+
* @returns AnonymousLoginResponseDto Login successful
|
|
2976
4059
|
* @throws ApiError
|
|
2977
4060
|
*/
|
|
2978
4061
|
public static authControllerAccessTokenLogin(
|
|
@@ -2981,13 +4064,60 @@ export class AuthService {
|
|
|
2981
4064
|
return __request(OpenAPI, {
|
|
2982
4065
|
method: 'POST',
|
|
2983
4066
|
url: '/api/v1/auth/sessions/anonymous',
|
|
4067
|
+
body: data.requestBody,
|
|
4068
|
+
mediaType: 'application/json',
|
|
4069
|
+
errors: {
|
|
4070
|
+
401: 'Invalid access token'
|
|
4071
|
+
}
|
|
4072
|
+
});
|
|
4073
|
+
}
|
|
4074
|
+
}
|
|
4075
|
+
|
|
4076
|
+
export class CommunityService {
|
|
4077
|
+
/**
|
|
4078
|
+
* Relay a sanitized parser-contribution payload
|
|
4079
|
+
* A server-side bot re-sanitizes the payload and opens an issue on the target repository; the issue URL is returned. The payload is never persisted or logged (forward-and-drop).
|
|
4080
|
+
* @param data The data for the request.
|
|
4081
|
+
* @param data.region Region code for tenant context (routing only; the institution region rides in the payload meta)
|
|
4082
|
+
* @param data.requestBody
|
|
4083
|
+
* @returns ParserContributionRelayResponseDto Issue created by the bot
|
|
4084
|
+
* @throws ApiError
|
|
4085
|
+
*/
|
|
4086
|
+
public static parserContributionControllerCreate(
|
|
4087
|
+
data: ParserContributionControllerCreateData
|
|
4088
|
+
): CancelablePromise<ParserContributionControllerCreateResponse> {
|
|
4089
|
+
return __request(OpenAPI, {
|
|
4090
|
+
method: 'POST',
|
|
4091
|
+
url: '/api/v1/{region}/community/parser-contributions',
|
|
2984
4092
|
path: {
|
|
2985
4093
|
region: data.region
|
|
2986
4094
|
},
|
|
2987
4095
|
body: data.requestBody,
|
|
2988
4096
|
mediaType: 'application/json',
|
|
2989
4097
|
errors: {
|
|
2990
|
-
401: '
|
|
4098
|
+
401: 'Unauthorized',
|
|
4099
|
+
422: 'Validation failed (institution slug, empty samples, row/cell size limits)',
|
|
4100
|
+
429: 'Rate limited (5 submissions per user per hour)',
|
|
4101
|
+
501: 'Relay not configured on this deployment — clients fall back to the clipboard flow',
|
|
4102
|
+
502: 'GitHub bot failure (upstream), safe to retry'
|
|
4103
|
+
}
|
|
4104
|
+
});
|
|
4105
|
+
}
|
|
4106
|
+
}
|
|
4107
|
+
|
|
4108
|
+
export class AdminCacheService {
|
|
4109
|
+
/**
|
|
4110
|
+
* Flush entire cache (L1 + L2)
|
|
4111
|
+
* Clears ALL cache entries across ALL namespaces and users. Use only for emergency cache corruption recovery, maintenance-window refresh, or development resets.
|
|
4112
|
+
* @returns unknown Cache flushed successfully
|
|
4113
|
+
* @throws ApiError
|
|
4114
|
+
*/
|
|
4115
|
+
public static cacheControllerFlushCache(): CancelablePromise<CacheControllerFlushCacheResponse> {
|
|
4116
|
+
return __request(OpenAPI, {
|
|
4117
|
+
method: 'POST',
|
|
4118
|
+
url: '/api/v1/cache/flush',
|
|
4119
|
+
errors: {
|
|
4120
|
+
403: 'Admin access required'
|
|
2991
4121
|
}
|
|
2992
4122
|
});
|
|
2993
4123
|
}
|
|
@@ -3000,7 +4130,6 @@ export class ExchangeRateService {
|
|
|
3000
4130
|
* @param data The data for the request.
|
|
3001
4131
|
* @param data.symbol Currency pair symbol (e.g., USDCNY, EURUSD)
|
|
3002
4132
|
* @param data.dateString Date in ISO format (YYYY-MM-DD)
|
|
3003
|
-
* @param data.region Region code (cn, us, de)
|
|
3004
4133
|
* @returns unknown Exchange rate retrieved successfully
|
|
3005
4134
|
* @throws ApiError
|
|
3006
4135
|
*/
|
|
@@ -3012,8 +4141,7 @@ export class ExchangeRateService {
|
|
|
3012
4141
|
url: '/api/v1/market/exchange-rates/{symbol}/{dateString}',
|
|
3013
4142
|
path: {
|
|
3014
4143
|
symbol: data.symbol,
|
|
3015
|
-
dateString: data.dateString
|
|
3016
|
-
region: data.region
|
|
4144
|
+
dateString: data.dateString
|
|
3017
4145
|
},
|
|
3018
4146
|
errors: {
|
|
3019
4147
|
404: 'Exchange rate not found for the specified currency pair and date'
|
|
@@ -3025,20 +4153,13 @@ export class ExchangeRateService {
|
|
|
3025
4153
|
export class HealthService {
|
|
3026
4154
|
/**
|
|
3027
4155
|
* Basic health check for K8s/load balancer probes
|
|
3028
|
-
* @param data The data for the request.
|
|
3029
|
-
* @param data.region Region code (cn, us, de)
|
|
3030
4156
|
* @returns unknown Service is healthy
|
|
3031
4157
|
* @throws ApiError
|
|
3032
4158
|
*/
|
|
3033
|
-
public static healthControllerGetHealth(
|
|
3034
|
-
data: HealthControllerGetHealthData
|
|
3035
|
-
): CancelablePromise<HealthControllerGetHealthResponse> {
|
|
4159
|
+
public static healthControllerGetHealth(): CancelablePromise<HealthControllerGetHealthResponse> {
|
|
3036
4160
|
return __request(OpenAPI, {
|
|
3037
4161
|
method: 'GET',
|
|
3038
4162
|
url: '/api/v1/health',
|
|
3039
|
-
path: {
|
|
3040
|
-
region: data.region
|
|
3041
|
-
},
|
|
3042
4163
|
errors: {
|
|
3043
4164
|
503: 'Service unavailable'
|
|
3044
4165
|
}
|
|
@@ -3047,42 +4168,43 @@ export class HealthService {
|
|
|
3047
4168
|
|
|
3048
4169
|
/**
|
|
3049
4170
|
* Check database connection health
|
|
3050
|
-
* @param data The data for the request.
|
|
3051
|
-
* @param data.region Region code (cn, us, de)
|
|
3052
4171
|
* @returns unknown Database is healthy
|
|
3053
4172
|
* @throws ApiError
|
|
3054
4173
|
*/
|
|
3055
|
-
public static healthControllerCheckDatabase(
|
|
3056
|
-
data: HealthControllerCheckDatabaseData
|
|
3057
|
-
): CancelablePromise<HealthControllerCheckDatabaseResponse> {
|
|
4174
|
+
public static healthControllerCheckDatabase(): CancelablePromise<HealthControllerCheckDatabaseResponse> {
|
|
3058
4175
|
return __request(OpenAPI, {
|
|
3059
4176
|
method: 'GET',
|
|
3060
4177
|
url: '/api/v1/health/database',
|
|
3061
|
-
path: {
|
|
3062
|
-
region: data.region
|
|
3063
|
-
},
|
|
3064
4178
|
errors: {
|
|
3065
4179
|
503: 'Database unavailable'
|
|
3066
4180
|
}
|
|
3067
4181
|
});
|
|
3068
4182
|
}
|
|
3069
4183
|
|
|
4184
|
+
/**
|
|
4185
|
+
* Check OpenBB schema status
|
|
4186
|
+
* @returns unknown OpenBB status
|
|
4187
|
+
* @throws ApiError
|
|
4188
|
+
*/
|
|
4189
|
+
public static healthControllerCheckOpenBb(): CancelablePromise<HealthControllerCheckOpenBbResponse> {
|
|
4190
|
+
return __request(OpenAPI, {
|
|
4191
|
+
method: 'GET',
|
|
4192
|
+
url: '/api/v1/health/openbb',
|
|
4193
|
+
errors: {
|
|
4194
|
+
503: 'OpenBB unavailable'
|
|
4195
|
+
}
|
|
4196
|
+
});
|
|
4197
|
+
}
|
|
4198
|
+
|
|
3070
4199
|
/**
|
|
3071
4200
|
* Check Redis connection health
|
|
3072
|
-
* @param data The data for the request.
|
|
3073
|
-
* @param data.region Region code (cn, us, de)
|
|
3074
4201
|
* @returns unknown Redis is healthy
|
|
3075
4202
|
* @throws ApiError
|
|
3076
4203
|
*/
|
|
3077
|
-
public static healthControllerCheckRedis(
|
|
3078
|
-
data: HealthControllerCheckRedisData
|
|
3079
|
-
): CancelablePromise<HealthControllerCheckRedisResponse> {
|
|
4204
|
+
public static healthControllerCheckRedis(): CancelablePromise<HealthControllerCheckRedisResponse> {
|
|
3080
4205
|
return __request(OpenAPI, {
|
|
3081
4206
|
method: 'GET',
|
|
3082
4207
|
url: '/api/v1/health/redis',
|
|
3083
|
-
path: {
|
|
3084
|
-
region: data.region
|
|
3085
|
-
},
|
|
3086
4208
|
errors: {
|
|
3087
4209
|
503: 'Redis unavailable'
|
|
3088
4210
|
}
|
|
@@ -3091,20 +4213,13 @@ export class HealthService {
|
|
|
3091
4213
|
|
|
3092
4214
|
/**
|
|
3093
4215
|
* Get status of all circuit breakers
|
|
3094
|
-
* @param data The data for the request.
|
|
3095
|
-
* @param data.region Region code (cn, us, de)
|
|
3096
4216
|
* @returns unknown Circuit breaker status
|
|
3097
4217
|
* @throws ApiError
|
|
3098
4218
|
*/
|
|
3099
|
-
public static healthControllerGetCircuitBreakersHealth(
|
|
3100
|
-
data: HealthControllerGetCircuitBreakersHealthData
|
|
3101
|
-
): CancelablePromise<HealthControllerGetCircuitBreakersHealthResponse> {
|
|
4219
|
+
public static healthControllerGetCircuitBreakersHealth(): CancelablePromise<HealthControllerGetCircuitBreakersHealthResponse> {
|
|
3102
4220
|
return __request(OpenAPI, {
|
|
3103
4221
|
method: 'GET',
|
|
3104
4222
|
url: '/api/v1/health/circuit-breakers',
|
|
3105
|
-
path: {
|
|
3106
|
-
region: data.region
|
|
3107
|
-
},
|
|
3108
4223
|
errors: {
|
|
3109
4224
|
401: 'Unauthorized',
|
|
3110
4225
|
500: 'Internal error'
|
|
@@ -3116,7 +4231,6 @@ export class HealthService {
|
|
|
3116
4231
|
* Reset a circuit breaker to CLOSED state
|
|
3117
4232
|
* @param data The data for the request.
|
|
3118
4233
|
* @param data.name Circuit breaker name to reset
|
|
3119
|
-
* @param data.region Region code (cn, us, de)
|
|
3120
4234
|
* @returns unknown Circuit breaker reset successfully
|
|
3121
4235
|
* @throws ApiError
|
|
3122
4236
|
*/
|
|
@@ -3127,8 +4241,7 @@ export class HealthService {
|
|
|
3127
4241
|
method: 'POST',
|
|
3128
4242
|
url: '/api/v1/health/circuit-breakers/{name}/reset',
|
|
3129
4243
|
path: {
|
|
3130
|
-
name: data.name
|
|
3131
|
-
region: data.region
|
|
4244
|
+
name: data.name
|
|
3132
4245
|
},
|
|
3133
4246
|
errors: {
|
|
3134
4247
|
401: 'Unauthorized',
|
|
@@ -3139,222 +4252,79 @@ export class HealthService {
|
|
|
3139
4252
|
|
|
3140
4253
|
/**
|
|
3141
4254
|
* Get health check metrics and statistics
|
|
3142
|
-
* @param data The data for the request.
|
|
3143
|
-
* @param data.region Region code (cn, us, de)
|
|
3144
4255
|
* @returns unknown Health metrics
|
|
3145
4256
|
* @throws ApiError
|
|
3146
4257
|
*/
|
|
3147
|
-
public static healthControllerGetMetrics(
|
|
3148
|
-
data: HealthControllerGetMetricsData
|
|
3149
|
-
): CancelablePromise<HealthControllerGetMetricsResponse> {
|
|
4258
|
+
public static healthControllerGetMetrics(): CancelablePromise<HealthControllerGetMetricsResponse> {
|
|
3150
4259
|
return __request(OpenAPI, {
|
|
3151
4260
|
method: 'GET',
|
|
3152
4261
|
url: '/api/v1/health/metrics',
|
|
3153
|
-
path: {
|
|
3154
|
-
region: data.region
|
|
3155
|
-
},
|
|
3156
4262
|
errors: {
|
|
3157
4263
|
401: 'Unauthorized'
|
|
3158
4264
|
}
|
|
3159
4265
|
});
|
|
3160
4266
|
}
|
|
3161
|
-
|
|
3162
|
-
/**
|
|
3163
|
-
* Check health of a specific data enhancer
|
|
3164
|
-
* @param data The data for the request.
|
|
3165
|
-
* @param data.name Data enhancer name
|
|
3166
|
-
* @param data.region Region code (cn, us, de)
|
|
3167
|
-
* @returns unknown Data enhancer is healthy
|
|
3168
|
-
* @throws ApiError
|
|
3169
|
-
*/
|
|
3170
|
-
public static healthControllerGetHealthOfDataEnhancer(
|
|
3171
|
-
data: HealthControllerGetHealthOfDataEnhancerData
|
|
3172
|
-
): CancelablePromise<HealthControllerGetHealthOfDataEnhancerResponse> {
|
|
3173
|
-
return __request(OpenAPI, {
|
|
3174
|
-
method: 'GET',
|
|
3175
|
-
url: '/api/v1/health/data-enhancer/{name}',
|
|
3176
|
-
path: {
|
|
3177
|
-
name: data.name,
|
|
3178
|
-
region: data.region
|
|
3179
|
-
},
|
|
3180
|
-
errors: {
|
|
3181
|
-
401: 'Unauthorized',
|
|
3182
|
-
503: 'Data enhancer unavailable'
|
|
3183
|
-
}
|
|
3184
|
-
});
|
|
3185
|
-
}
|
|
3186
|
-
|
|
3187
|
-
/**
|
|
3188
|
-
* Check health of all data providers
|
|
3189
|
-
* @param data The data for the request.
|
|
3190
|
-
* @param data.region Region code (cn, us, de)
|
|
3191
|
-
* @returns unknown Data providers health status
|
|
3192
|
-
* @throws ApiError
|
|
3193
|
-
*/
|
|
3194
|
-
public static healthControllerCheckDataProviders(
|
|
3195
|
-
data: HealthControllerCheckDataProvidersData
|
|
3196
|
-
): CancelablePromise<HealthControllerCheckDataProvidersResponse> {
|
|
3197
|
-
return __request(OpenAPI, {
|
|
3198
|
-
method: 'GET',
|
|
3199
|
-
url: '/api/v1/health/data-providers',
|
|
3200
|
-
path: {
|
|
3201
|
-
region: data.region
|
|
3202
|
-
},
|
|
3203
|
-
errors: {
|
|
3204
|
-
401: 'Unauthorized',
|
|
3205
|
-
503: 'Data providers check failed'
|
|
3206
|
-
}
|
|
3207
|
-
});
|
|
3208
|
-
}
|
|
3209
|
-
|
|
3210
|
-
/**
|
|
3211
|
-
* Check health of a specific data provider
|
|
3212
|
-
* @param data The data for the request.
|
|
3213
|
-
* @param data.dataSource Data source identifier
|
|
3214
|
-
* @param data.region Region code (cn, us, de)
|
|
3215
|
-
* @returns unknown Data provider is healthy
|
|
3216
|
-
* @throws ApiError
|
|
3217
|
-
*/
|
|
3218
|
-
public static healthControllerGetHealthOfDataProvider(
|
|
3219
|
-
data: HealthControllerGetHealthOfDataProviderData
|
|
3220
|
-
): CancelablePromise<HealthControllerGetHealthOfDataProviderResponse> {
|
|
3221
|
-
return __request(OpenAPI, {
|
|
3222
|
-
method: 'GET',
|
|
3223
|
-
url: '/api/v1/health/data-provider/{dataSource}',
|
|
3224
|
-
path: {
|
|
3225
|
-
dataSource: data.dataSource,
|
|
3226
|
-
region: data.region
|
|
3227
|
-
},
|
|
3228
|
-
errors: {
|
|
3229
|
-
400: 'Invalid data source',
|
|
3230
|
-
401: 'Unauthorized',
|
|
3231
|
-
503: 'Data provider unavailable'
|
|
3232
|
-
}
|
|
3233
|
-
});
|
|
3234
|
-
}
|
|
3235
4267
|
}
|
|
3236
4268
|
|
|
3237
4269
|
export class InfoService {
|
|
3238
4270
|
/**
|
|
3239
4271
|
* Get system information
|
|
3240
|
-
* @param data The data for the request.
|
|
3241
|
-
* @param data.region Region code (cn, us, de)
|
|
3242
4272
|
* @returns unknown System information retrieved successfully
|
|
3243
4273
|
* @throws ApiError
|
|
3244
4274
|
*/
|
|
3245
|
-
public static infoControllerGetInfo(
|
|
3246
|
-
data: InfoControllerGetInfoData
|
|
3247
|
-
): CancelablePromise<InfoControllerGetInfoResponse> {
|
|
4275
|
+
public static infoControllerGetInfo(): CancelablePromise<InfoControllerGetInfoResponse> {
|
|
3248
4276
|
return __request(OpenAPI, {
|
|
3249
4277
|
method: 'GET',
|
|
3250
|
-
url: '/api/v1/system/info'
|
|
3251
|
-
path: {
|
|
3252
|
-
region: data.region
|
|
3253
|
-
}
|
|
4278
|
+
url: '/api/v1/system/info'
|
|
3254
4279
|
});
|
|
3255
4280
|
}
|
|
3256
4281
|
}
|
|
3257
4282
|
|
|
3258
|
-
export class
|
|
3259
|
-
/**
|
|
3260
|
-
* Get asset logo by data source and symbol
|
|
3261
|
-
* @param data The data for the request.
|
|
3262
|
-
* @param data.dataSource Data source identifier (e.g., YAHOO, COINGECKO)
|
|
3263
|
-
* @param data.symbol Asset symbol (e.g., AAPL, BTC)
|
|
3264
|
-
* @param data.region Region code (cn, us, de)
|
|
3265
|
-
* @returns unknown Logo image stream (favicon)
|
|
3266
|
-
* @throws ApiError
|
|
3267
|
-
*/
|
|
3268
|
-
public static logoControllerGetLogoByDataSourceAndSymbol(
|
|
3269
|
-
data: LogoControllerGetLogoByDataSourceAndSymbolData
|
|
3270
|
-
): CancelablePromise<LogoControllerGetLogoByDataSourceAndSymbolResponse> {
|
|
3271
|
-
return __request(OpenAPI, {
|
|
3272
|
-
method: 'GET',
|
|
3273
|
-
url: '/api/v1/market/logos/{dataSource}/{symbol}',
|
|
3274
|
-
path: {
|
|
3275
|
-
dataSource: data.dataSource,
|
|
3276
|
-
symbol: data.symbol,
|
|
3277
|
-
region: data.region
|
|
3278
|
-
},
|
|
3279
|
-
errors: {
|
|
3280
|
-
401: 'Unauthorized',
|
|
3281
|
-
404: 'Logo not found for the specified asset',
|
|
3282
|
-
503: 'Service unavailable'
|
|
3283
|
-
}
|
|
3284
|
-
});
|
|
3285
|
-
}
|
|
3286
|
-
|
|
4283
|
+
export class MarketDataService {
|
|
3287
4284
|
/**
|
|
3288
|
-
*
|
|
4285
|
+
* Search market symbols by name or code
|
|
4286
|
+
* Ranked search over the openbb catalog. Empty `q` returns [].
|
|
3289
4287
|
* @param data The data for the request.
|
|
3290
|
-
* @param data.
|
|
3291
|
-
* @param data.
|
|
3292
|
-
* @
|
|
4288
|
+
* @param data.q Search term — matched against symbol and instrument name. Empty string returns [].
|
|
4289
|
+
* @param data.limit Maximum number of results (clamped 1..50)
|
|
4290
|
+
* @param data.exchange Filter by exchange code (e.g. US, HK, SS, SZ)
|
|
4291
|
+
* @param data.assetType Filter by OpenBB asset_type (e.g. stock, etf)
|
|
4292
|
+
* @returns SymbolSearchResultDto Ranked search results
|
|
3293
4293
|
* @throws ApiError
|
|
3294
4294
|
*/
|
|
3295
|
-
public static
|
|
3296
|
-
data:
|
|
3297
|
-
): CancelablePromise<
|
|
4295
|
+
public static symbolControllerSearch(
|
|
4296
|
+
data: SymbolControllerSearchData
|
|
4297
|
+
): CancelablePromise<SymbolControllerSearchResponse> {
|
|
3298
4298
|
return __request(OpenAPI, {
|
|
3299
4299
|
method: 'GET',
|
|
3300
|
-
url: '/api/v1/market/
|
|
3301
|
-
path: {
|
|
3302
|
-
region: data.region
|
|
3303
|
-
},
|
|
4300
|
+
url: '/api/v1/market/symbols/search',
|
|
3304
4301
|
query: {
|
|
3305
|
-
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
503: 'Service unavailable'
|
|
4302
|
+
q: data.q,
|
|
4303
|
+
limit: data.limit,
|
|
4304
|
+
exchange: data.exchange,
|
|
4305
|
+
assetType: data.assetType
|
|
3310
4306
|
}
|
|
3311
4307
|
});
|
|
3312
4308
|
}
|
|
3313
|
-
}
|
|
3314
4309
|
|
|
3315
|
-
export class MarketDataService {
|
|
3316
4310
|
/**
|
|
3317
|
-
* Get market
|
|
3318
|
-
* Retrieves market data and asset profile for a given symbol and data source
|
|
4311
|
+
* Get a market symbol quote
|
|
3319
4312
|
* @param data The data for the request.
|
|
3320
|
-
* @param data.
|
|
3321
|
-
* @
|
|
3322
|
-
* @param data.region Region code (cn, us, de)
|
|
3323
|
-
* @returns unknown Market data retrieved successfully
|
|
4313
|
+
* @param data.symbol
|
|
4314
|
+
* @returns SymbolQuoteDto Symbol quote
|
|
3324
4315
|
* @throws ApiError
|
|
3325
4316
|
*/
|
|
3326
|
-
public static
|
|
3327
|
-
data:
|
|
3328
|
-
): CancelablePromise<
|
|
4317
|
+
public static symbolControllerGetQuote(
|
|
4318
|
+
data: SymbolControllerGetQuoteData
|
|
4319
|
+
): CancelablePromise<SymbolControllerGetQuoteResponse> {
|
|
3329
4320
|
return __request(OpenAPI, {
|
|
3330
4321
|
method: 'GET',
|
|
3331
|
-
url: '/api/v1/market
|
|
4322
|
+
url: '/api/v1/market/symbols/{symbol}/quote',
|
|
3332
4323
|
path: {
|
|
3333
|
-
|
|
3334
|
-
symbol: data.symbol,
|
|
3335
|
-
region: data.region
|
|
4324
|
+
symbol: data.symbol
|
|
3336
4325
|
},
|
|
3337
4326
|
errors: {
|
|
3338
|
-
|
|
3339
|
-
404: 'Market data not found'
|
|
3340
|
-
}
|
|
3341
|
-
});
|
|
3342
|
-
}
|
|
3343
|
-
|
|
3344
|
-
/**
|
|
3345
|
-
* @param data The data for the request.
|
|
3346
|
-
* @param data.region Region code (cn, us, de)
|
|
3347
|
-
* @returns unknown
|
|
3348
|
-
* @throws ApiError
|
|
3349
|
-
*/
|
|
3350
|
-
public static marketDataController(
|
|
3351
|
-
data: MarketDataControllerData
|
|
3352
|
-
): CancelablePromise<MarketDataControllerResponse> {
|
|
3353
|
-
return __request(OpenAPI, {
|
|
3354
|
-
method: 'POST',
|
|
3355
|
-
url: '/api/v1/market-data/{dataSource}/{symbol}',
|
|
3356
|
-
path: {
|
|
3357
|
-
region: data.region
|
|
4327
|
+
404: 'Symbol not found in the openbb catalog'
|
|
3358
4328
|
}
|
|
3359
4329
|
});
|
|
3360
4330
|
}
|