@firela/api-types 0.0.0-canary.209966

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.
@@ -0,0 +1,3330 @@
1
+ // This file is auto-generated by @hey-api/openapi-ts
2
+ import type { CancelablePromise } from './core/CancelablePromise';
3
+ import { OpenAPI } from './core/OpenAPI';
4
+ import { request as __request } from './core/request';
5
+ import type {
6
+ AccountControllerCreateData,
7
+ AccountControllerCreateResponse,
8
+ AccountControllerFindAllData,
9
+ AccountControllerFindAllResponse,
10
+ AccountControllerFindOneData,
11
+ AccountControllerFindOneResponse,
12
+ AccountControllerUpdateData,
13
+ AccountControllerUpdateResponse,
14
+ AccountControllerDeleteData,
15
+ AccountControllerDeleteResponse,
16
+ AccountControllerCloseData,
17
+ AccountControllerCloseResponse,
18
+ AccountControllerReopenData,
19
+ AccountControllerReopenResponse,
20
+ TransactionControllerCreateData,
21
+ TransactionControllerCreateResponse,
22
+ TransactionControllerListData,
23
+ TransactionControllerListResponse,
24
+ TransactionControllerData,
25
+ TransactionControllerResponse,
26
+ TransactionControllerGetDetailData,
27
+ TransactionControllerGetDetailResponse,
28
+ TransactionControllerUpdateData,
29
+ TransactionControllerUpdateResponse,
30
+ TransactionController1Data,
31
+ TransactionController1Response,
32
+ AccountStandardsControllerGetTemplatesData,
33
+ AccountStandardsControllerGetTemplatesResponse,
34
+ AccountStandardsControllerGetRegionsData,
35
+ AccountStandardsControllerGetRegionsResponse,
36
+ BalanceControllerGetBalanceData,
37
+ BalanceControllerGetBalanceResponse,
38
+ BalanceControllerGetMultiCurrencyBalanceData,
39
+ BalanceControllerGetMultiCurrencyBalanceResponse,
40
+ ReviewControllerFindAllData,
41
+ ReviewControllerFindAllResponse,
42
+ ReviewControllerGetStatsData,
43
+ ReviewControllerGetStatsResponse,
44
+ ReviewControllerFindOneData,
45
+ ReviewControllerFindOneResponse,
46
+ ReviewControllerData,
47
+ ReviewControllerResponse,
48
+ ReviewController1Data,
49
+ ReviewController1Response,
50
+ ReviewController2Data,
51
+ ReviewController2Response,
52
+ PayeeControllerData,
53
+ PayeeControllerResponse,
54
+ PayeeControllerFindAllData,
55
+ PayeeControllerFindAllResponse,
56
+ PayeeControllerAutocompleteData,
57
+ PayeeControllerAutocompleteResponse,
58
+ PayeeControllerGetTopPayeesData,
59
+ PayeeControllerGetTopPayeesResponse,
60
+ PayeeControllerFindOneData,
61
+ PayeeControllerFindOneResponse,
62
+ PayeeController1Data,
63
+ PayeeController1Response,
64
+ PayeeController2Data,
65
+ PayeeController2Response,
66
+ PayeeProfileAdminControllerData,
67
+ PayeeProfileAdminControllerResponse,
68
+ PayeeProfileAdminControllerFindAllData,
69
+ PayeeProfileAdminControllerFindAllResponse,
70
+ PayeeProfileAdminControllerFindOneData,
71
+ PayeeProfileAdminControllerFindOneResponse,
72
+ PayeeProfileAdminController1Data,
73
+ PayeeProfileAdminController1Response,
74
+ PayeeProfileAdminController2Data,
75
+ PayeeProfileAdminController2Response,
76
+ PayeeProfileAdminController3Data,
77
+ PayeeProfileAdminController3Response,
78
+ PayeeProfileAdminController4Data,
79
+ PayeeProfileAdminController4Response,
80
+ CommodityControllerData,
81
+ CommodityControllerResponse,
82
+ CommodityControllerFindAllData,
83
+ CommodityControllerFindAllResponse,
84
+ CommodityControllerFindOneData,
85
+ CommodityControllerFindOneResponse,
86
+ CommodityController1Data,
87
+ CommodityController1Response,
88
+ CommodityController2Data,
89
+ CommodityController2Response,
90
+ CommodityController3Data,
91
+ CommodityController3Response,
92
+ CommodityController4Data,
93
+ CommodityController4Response,
94
+ RecurringRuleControllerData,
95
+ RecurringRuleControllerResponse,
96
+ RecurringRuleControllerFindAllData,
97
+ RecurringRuleControllerFindAllResponse,
98
+ RecurringRuleController1Data,
99
+ RecurringRuleController1Response,
100
+ RecurringRuleControllerFindOneData,
101
+ RecurringRuleControllerFindOneResponse,
102
+ RecurringRuleController2Data,
103
+ RecurringRuleController2Response,
104
+ RecurringRuleController3Data,
105
+ RecurringRuleController3Response,
106
+ RecurringRuleControllerGetWithStatsData,
107
+ RecurringRuleControllerGetWithStatsResponse,
108
+ ExpectedTransactionControllerFindAllData,
109
+ ExpectedTransactionControllerFindAllResponse,
110
+ ExpectedTransactionControllerFindOverdueData,
111
+ ExpectedTransactionControllerFindOverdueResponse,
112
+ ExpectedTransactionControllerFindOneData,
113
+ ExpectedTransactionControllerFindOneResponse,
114
+ ExpectedTransactionControllerData,
115
+ ExpectedTransactionControllerResponse,
116
+ ExpectedTransactionController1Data,
117
+ ExpectedTransactionController1Response,
118
+ ExpectedTransactionController2Data,
119
+ ExpectedTransactionController2Response,
120
+ ExpectedTransactionController3Data,
121
+ ExpectedTransactionController3Response,
122
+ ExpectedTransactionController4Data,
123
+ ExpectedTransactionController4Response,
124
+ ForecastControllerGetForecastData,
125
+ ForecastControllerGetForecastResponse,
126
+ TransactionRuleControllerData,
127
+ TransactionRuleControllerResponse,
128
+ TransactionRuleControllerListData,
129
+ TransactionRuleControllerListResponse,
130
+ TransactionRuleControllerValidateData,
131
+ TransactionRuleControllerValidateResponse,
132
+ TransactionRuleController1Data,
133
+ TransactionRuleController1Response,
134
+ TransactionRuleControllerExportData,
135
+ TransactionRuleControllerExportResponse,
136
+ TransactionRuleControllerGetStatisticsData,
137
+ TransactionRuleControllerGetStatisticsResponse,
138
+ TransactionRuleControllerGetDetailData,
139
+ TransactionRuleControllerGetDetailResponse,
140
+ TransactionRuleController2Data,
141
+ TransactionRuleController2Response,
142
+ TransactionRuleController3Data,
143
+ TransactionRuleController3Response,
144
+ TransactionRuleControllerTestData,
145
+ TransactionRuleControllerTestResponse,
146
+ UserControllerDeleteOwnUserData,
147
+ UserControllerDeleteOwnUserResponse,
148
+ UserControllerGetUserData,
149
+ UserControllerGetUserResponse,
150
+ UserControllerSignupUserData,
151
+ UserControllerSignupUserResponse,
152
+ UserControllerDeleteUserData,
153
+ UserControllerDeleteUserResponse,
154
+ UserControllerGetUserInfoData,
155
+ UserControllerGetUserInfoResponse,
156
+ UserControllerUpdateUserSettingData,
157
+ UserControllerUpdateUserSettingResponse,
158
+ UserControllerGetAllUserSettingsByPageData,
159
+ UserControllerGetAllUserSettingsByPageResponse,
160
+ UserControllerGetAssetLiabilitySummaryData,
161
+ UserControllerGetAssetLiabilitySummaryResponse,
162
+ PropertyControllerGetAllData,
163
+ PropertyControllerGetAllResponse,
164
+ PropertyControllerGetByKeyData,
165
+ PropertyControllerGetByKeyResponse,
166
+ PropertyControllerData,
167
+ PropertyControllerResponse,
168
+ PropertyController1Data,
169
+ PropertyController1Response,
170
+ FileImportControllerImportFileData,
171
+ FileImportControllerImportFileResponse,
172
+ FileImportControllerIdentifyFileData,
173
+ FileImportControllerIdentifyFileResponse,
174
+ ImporterConfigControllerGetConfigData,
175
+ ImporterConfigControllerGetConfigResponse,
176
+ ImporterConfigControllerData,
177
+ ImporterConfigControllerResponse,
178
+ ImporterConfigController1Data,
179
+ ImporterConfigController1Response,
180
+ ProviderSyncControllerSyncData,
181
+ ProviderSyncControllerSyncResponse,
182
+ ProviderSyncControllerGetSupportedProvidersData,
183
+ ProviderSyncControllerGetSupportedProvidersResponse,
184
+ ProviderSyncControllerIsProviderSupportedData,
185
+ ProviderSyncControllerIsProviderSupportedResponse,
186
+ NlpControllerProcessNaturalLanguageData,
187
+ NlpControllerProcessNaturalLanguageResponse,
188
+ NlpControllerClearSessionData,
189
+ NlpControllerClearSessionResponse,
190
+ NlpControllerGetSessionData,
191
+ NlpControllerGetSessionResponse,
192
+ PlatformControllerFindAllData,
193
+ PlatformControllerFindAllResponse,
194
+ PlatformControllerData,
195
+ PlatformControllerResponse,
196
+ PlatformControllerGetPlatformListData,
197
+ PlatformControllerGetPlatformListResponse,
198
+ PlatformController1Data,
199
+ PlatformController1Response,
200
+ PlatformController2Data,
201
+ PlatformController2Response,
202
+ SymbolControllerLookupSymbolData,
203
+ SymbolControllerLookupSymbolResponse,
204
+ SymbolControllerGetSymbolDataData,
205
+ SymbolControllerGetSymbolDataResponse,
206
+ SymbolControllerGatherSymbolForDateData,
207
+ SymbolControllerGatherSymbolForDateResponse,
208
+ SymbolControllerData,
209
+ SymbolControllerResponse,
210
+ CacheControllerFlushCacheData,
211
+ CacheControllerFlushCacheResponse,
212
+ DashboardControllerGetNetWorthData,
213
+ DashboardControllerGetNetWorthResponse,
214
+ DashboardControllerGetAccountsData,
215
+ DashboardControllerGetAccountsResponse,
216
+ DashboardControllerGetCashFlowData,
217
+ DashboardControllerGetCashFlowResponse,
218
+ ReportingControllerGetPortfolioTrendsData,
219
+ ReportingControllerGetPortfolioTrendsResponse,
220
+ ReportingControllerGenerateSnapshotData,
221
+ ReportingControllerGenerateSnapshotResponse,
222
+ ReportingControllerBackfillSnapshotsData,
223
+ ReportingControllerBackfillSnapshotsResponse,
224
+ ApiKeysControllerData,
225
+ ApiKeysControllerResponse,
226
+ AuthControllerAccessTokenLoginData,
227
+ AuthControllerAccessTokenLoginResponse,
228
+ ExchangeRateControllerGetExchangeRateData,
229
+ ExchangeRateControllerGetExchangeRateResponse,
230
+ HealthControllerGetHealthData,
231
+ HealthControllerGetHealthResponse,
232
+ HealthControllerCheckDatabaseData,
233
+ HealthControllerCheckDatabaseResponse,
234
+ HealthControllerCheckRedisData,
235
+ HealthControllerCheckRedisResponse,
236
+ HealthControllerGetCircuitBreakersHealthData,
237
+ HealthControllerGetCircuitBreakersHealthResponse,
238
+ HealthControllerResetCircuitBreakerData,
239
+ HealthControllerResetCircuitBreakerResponse,
240
+ HealthControllerGetMetricsData,
241
+ HealthControllerGetMetricsResponse,
242
+ HealthControllerGetHealthOfDataEnhancerData,
243
+ HealthControllerGetHealthOfDataEnhancerResponse,
244
+ HealthControllerCheckDataProvidersData,
245
+ HealthControllerCheckDataProvidersResponse,
246
+ HealthControllerGetHealthOfDataProviderData,
247
+ HealthControllerGetHealthOfDataProviderResponse,
248
+ InfoControllerGetInfoData,
249
+ InfoControllerGetInfoResponse,
250
+ LogoControllerGetLogoByDataSourceAndSymbolData,
251
+ LogoControllerGetLogoByDataSourceAndSymbolResponse,
252
+ LogoControllerGetLogoByUrlData,
253
+ LogoControllerGetLogoByUrlResponse,
254
+ MarketDataControllerGetMarketDataBySymbolData,
255
+ MarketDataControllerGetMarketDataBySymbolResponse,
256
+ MarketDataControllerData,
257
+ MarketDataControllerResponse
258
+ } from './types.gen';
259
+
260
+ export class BeanAccountsService {
261
+ /**
262
+ * Create a new account
263
+ * Creates a new account (Beancount Open directive)
264
+ * @param data The data for the request.
265
+ * @param data.region Region code for tenant context
266
+ * @param data.requestBody
267
+ * @returns AccountResponseDto Account created successfully
268
+ * @throws ApiError
269
+ */
270
+ public static accountControllerCreate(
271
+ data: AccountControllerCreateData
272
+ ): CancelablePromise<AccountControllerCreateResponse> {
273
+ return __request(OpenAPI, {
274
+ method: 'POST',
275
+ url: '/api/v1/{region}/bean/accounts',
276
+ path: {
277
+ region: data.region
278
+ },
279
+ body: data.requestBody,
280
+ mediaType: 'application/json',
281
+ errors: {
282
+ 409: 'Account already exists'
283
+ }
284
+ });
285
+ }
286
+
287
+ /**
288
+ * List accounts
289
+ * Returns all accounts with optional filtering
290
+ * @param data The data for the request.
291
+ * @param data.region Region code for tenant context
292
+ * @param data.type Filter by account type
293
+ * @param data.status Filter by status
294
+ * @param data.isCustom Filter by custom (user-created) accounts only
295
+ * @param data.search Search term for path or i18nKey
296
+ * @param data.limit Maximum number of results
297
+ * @param data.offset Number of results to skip
298
+ * @returns AccountListResponseDto Accounts retrieved successfully
299
+ * @throws ApiError
300
+ */
301
+ public static accountControllerFindAll(
302
+ data: AccountControllerFindAllData
303
+ ): CancelablePromise<AccountControllerFindAllResponse> {
304
+ return __request(OpenAPI, {
305
+ method: 'GET',
306
+ url: '/api/v1/{region}/bean/accounts',
307
+ path: {
308
+ region: data.region
309
+ },
310
+ query: {
311
+ type: data.type,
312
+ status: data.status,
313
+ isCustom: data.isCustom,
314
+ search: data.search,
315
+ limit: data.limit,
316
+ offset: data.offset
317
+ }
318
+ });
319
+ }
320
+
321
+ /**
322
+ * Get account by ID
323
+ * Returns a specific account
324
+ * @param data The data for the request.
325
+ * @param data.id Account UUID
326
+ * @param data.region Region code for tenant context
327
+ * @returns AccountResponseDto Account retrieved successfully
328
+ * @throws ApiError
329
+ */
330
+ public static accountControllerFindOne(
331
+ data: AccountControllerFindOneData
332
+ ): CancelablePromise<AccountControllerFindOneResponse> {
333
+ return __request(OpenAPI, {
334
+ method: 'GET',
335
+ url: '/api/v1/{region}/bean/accounts/{id}',
336
+ path: {
337
+ id: data.id,
338
+ region: data.region
339
+ },
340
+ errors: {
341
+ 404: 'Account not found'
342
+ }
343
+ });
344
+ }
345
+
346
+ /**
347
+ * Update account
348
+ * Updates account metadata (path cannot be changed)
349
+ * @param data The data for the request.
350
+ * @param data.id Account UUID
351
+ * @param data.region Region code for tenant context
352
+ * @param data.requestBody
353
+ * @returns AccountResponseDto Account updated successfully
354
+ * @throws ApiError
355
+ */
356
+ public static accountControllerUpdate(
357
+ data: AccountControllerUpdateData
358
+ ): CancelablePromise<AccountControllerUpdateResponse> {
359
+ return __request(OpenAPI, {
360
+ method: 'PUT',
361
+ url: '/api/v1/{region}/bean/accounts/{id}',
362
+ path: {
363
+ id: data.id,
364
+ region: data.region
365
+ },
366
+ body: data.requestBody,
367
+ mediaType: 'application/json',
368
+ errors: {
369
+ 404: 'Account not found'
370
+ }
371
+ });
372
+ }
373
+
374
+ /**
375
+ * Delete account
376
+ * Deletes an account (only if no transactions)
377
+ * @param data The data for the request.
378
+ * @param data.id Account UUID
379
+ * @param data.region Region code for tenant context
380
+ * @returns void Account deleted successfully
381
+ * @throws ApiError
382
+ */
383
+ public static accountControllerDelete(
384
+ data: AccountControllerDeleteData
385
+ ): CancelablePromise<AccountControllerDeleteResponse> {
386
+ return __request(OpenAPI, {
387
+ method: 'DELETE',
388
+ url: '/api/v1/{region}/bean/accounts/{id}',
389
+ path: {
390
+ id: data.id,
391
+ region: data.region
392
+ },
393
+ errors: {
394
+ 404: 'Account not found',
395
+ 409: 'Account has transactions and cannot be deleted'
396
+ }
397
+ });
398
+ }
399
+
400
+ /**
401
+ * Close account
402
+ * Closes an account (Beancount Close directive)
403
+ * @param data The data for the request.
404
+ * @param data.id Account UUID
405
+ * @param data.region Region code for tenant context
406
+ * @param data.requestBody
407
+ * @returns AccountResponseDto Account closed successfully
408
+ * @throws ApiError
409
+ */
410
+ public static accountControllerClose(
411
+ data: AccountControllerCloseData
412
+ ): CancelablePromise<AccountControllerCloseResponse> {
413
+ return __request(OpenAPI, {
414
+ method: 'POST',
415
+ url: '/api/v1/{region}/bean/accounts/{id}/close',
416
+ path: {
417
+ id: data.id,
418
+ region: data.region
419
+ },
420
+ body: data.requestBody,
421
+ mediaType: 'application/json',
422
+ errors: {
423
+ 400: 'Account is already closed',
424
+ 404: 'Account not found'
425
+ }
426
+ });
427
+ }
428
+
429
+ /**
430
+ * Reopen account
431
+ * Reopens a previously closed account
432
+ * @param data The data for the request.
433
+ * @param data.id Account UUID
434
+ * @param data.region Region code for tenant context
435
+ * @param data.requestBody
436
+ * @returns AccountResponseDto Account reopened successfully
437
+ * @throws ApiError
438
+ */
439
+ public static accountControllerReopen(
440
+ data: AccountControllerReopenData
441
+ ): CancelablePromise<AccountControllerReopenResponse> {
442
+ return __request(OpenAPI, {
443
+ method: 'POST',
444
+ url: '/api/v1/{region}/bean/accounts/{id}/reopen',
445
+ path: {
446
+ id: data.id,
447
+ region: data.region
448
+ },
449
+ body: data.requestBody,
450
+ mediaType: 'application/json',
451
+ errors: {
452
+ 400: 'Account is not closed',
453
+ 404: 'Account not found'
454
+ }
455
+ });
456
+ }
457
+ }
458
+
459
+ export class BeanTransactionsService {
460
+ /**
461
+ * Create transaction
462
+ * Creates a new double-entry transaction. Missing accounts are auto-created by default.
463
+ * @param data The data for the request.
464
+ * @param data.region Region code for tenant context
465
+ * @param data.requestBody Transaction data with postings
466
+ * @returns TransactionResponseDto Transaction created successfully
467
+ * @throws ApiError
468
+ */
469
+ public static transactionControllerCreate(
470
+ data: TransactionControllerCreateData
471
+ ): CancelablePromise<TransactionControllerCreateResponse> {
472
+ return __request(OpenAPI, {
473
+ method: 'POST',
474
+ url: '/api/v1/{region}/bean/transactions',
475
+ path: {
476
+ region: data.region
477
+ },
478
+ body: data.requestBody,
479
+ mediaType: 'application/json',
480
+ errors: {
481
+ 400: 'Validation failed',
482
+ 401: 'Authentication required',
483
+ 422: 'Semantic validation failed (transaction does not balance, invalid accounts)',
484
+ 500: 'Unexpected server error'
485
+ }
486
+ });
487
+ }
488
+
489
+ /**
490
+ * List transactions
491
+ * Returns a paginated list of transactions with optional filters
492
+ * @param data The data for the request.
493
+ * @param data.region Region code for tenant context
494
+ * @param data.limit Number of items per page (1-100, default: 20)
495
+ * @param data.offset Number of items to skip (default: 0)
496
+ * @param data.dateFrom Filter by start date (inclusive), format: YYYY-MM-DD
497
+ * @param data.dateTo Filter by end date (inclusive), format: YYYY-MM-DD
498
+ * @param data.status Filter by transaction status
499
+ * @param data.search Search in narration and payee fields (max 200 chars)
500
+ * @param data.accountId Filter by account ID (transactions with postings to this account)
501
+ * @returns TransactionListResponseDto Transaction list
502
+ * @throws ApiError
503
+ */
504
+ public static transactionControllerList(
505
+ data: TransactionControllerListData
506
+ ): CancelablePromise<TransactionControllerListResponse> {
507
+ return __request(OpenAPI, {
508
+ method: 'GET',
509
+ url: '/api/v1/{region}/bean/transactions',
510
+ path: {
511
+ region: data.region
512
+ },
513
+ query: {
514
+ limit: data.limit,
515
+ offset: data.offset,
516
+ dateFrom: data.dateFrom,
517
+ dateTo: data.dateTo,
518
+ status: data.status,
519
+ search: data.search,
520
+ accountId: data.accountId
521
+ },
522
+ errors: {
523
+ 401: 'Authentication required'
524
+ }
525
+ });
526
+ }
527
+
528
+ /**
529
+ * @param data The data for the request.
530
+ * @param data.region Region code for tenant context
531
+ * @returns unknown
532
+ * @throws ApiError
533
+ */
534
+ public static transactionController(
535
+ data: TransactionControllerData
536
+ ): CancelablePromise<TransactionControllerResponse> {
537
+ return __request(OpenAPI, {
538
+ method: 'POST',
539
+ url: '/api/v1/{region}/bean/transactions/batch',
540
+ path: {
541
+ region: data.region
542
+ }
543
+ });
544
+ }
545
+
546
+ /**
547
+ * Get transaction detail
548
+ * Returns transaction details including all postings
549
+ * @param data The data for the request.
550
+ * @param data.id Transaction ID
551
+ * @param data.region Region code for tenant context
552
+ * @returns TransactionDetailDto Transaction detail
553
+ * @throws ApiError
554
+ */
555
+ public static transactionControllerGetDetail(
556
+ data: TransactionControllerGetDetailData
557
+ ): CancelablePromise<TransactionControllerGetDetailResponse> {
558
+ return __request(OpenAPI, {
559
+ method: 'GET',
560
+ url: '/api/v1/{region}/bean/transactions/{id}',
561
+ path: {
562
+ id: data.id,
563
+ region: data.region
564
+ },
565
+ errors: {
566
+ 401: 'Authentication required',
567
+ 404: 'Transaction not found'
568
+ }
569
+ });
570
+ }
571
+
572
+ /**
573
+ * Update transaction metadata
574
+ * Updates transaction metadata (flag, payee, narration, tags, links, meta). Postings cannot be modified.
575
+ * @param data The data for the request.
576
+ * @param data.id Transaction ID
577
+ * @param data.region Region code for tenant context
578
+ * @param data.requestBody Fields to update (all optional)
579
+ * @returns TransactionDetailDto Transaction updated successfully
580
+ * @throws ApiError
581
+ */
582
+ public static transactionControllerUpdate(
583
+ data: TransactionControllerUpdateData
584
+ ): CancelablePromise<TransactionControllerUpdateResponse> {
585
+ return __request(OpenAPI, {
586
+ method: 'PATCH',
587
+ url: '/api/v1/{region}/bean/transactions/{id}',
588
+ path: {
589
+ id: data.id,
590
+ region: data.region
591
+ },
592
+ body: data.requestBody,
593
+ mediaType: 'application/json',
594
+ errors: {
595
+ 400: 'Cannot update voided transaction',
596
+ 401: 'Authentication required',
597
+ 404: 'Transaction not found'
598
+ }
599
+ });
600
+ }
601
+
602
+ /**
603
+ * @param data The data for the request.
604
+ * @param data.region Region code for tenant context
605
+ * @returns void
606
+ * @throws ApiError
607
+ */
608
+ public static transactionController1(
609
+ data: TransactionController1Data
610
+ ): CancelablePromise<TransactionController1Response> {
611
+ return __request(OpenAPI, {
612
+ method: 'DELETE',
613
+ url: '/api/v1/{region}/bean/transactions/{id}',
614
+ path: {
615
+ region: data.region
616
+ }
617
+ });
618
+ }
619
+ }
620
+
621
+ export class BeanAccountStandardsService {
622
+ /**
623
+ * Get account templates
624
+ * Returns predefined account templates for a region. Supports filtering by account type and search term.
625
+ * @param data The data for the request.
626
+ * @param data.region Region code (cn, us, eu-core, de)
627
+ * @param data.type Filter by account type
628
+ * @param data.search Search term for path or description
629
+ * @returns AccountStandardListResponseDto Account templates retrieved successfully
630
+ * @throws ApiError
631
+ */
632
+ public static accountStandardsControllerGetTemplates(
633
+ data: AccountStandardsControllerGetTemplatesData
634
+ ): CancelablePromise<AccountStandardsControllerGetTemplatesResponse> {
635
+ return __request(OpenAPI, {
636
+ method: 'GET',
637
+ url: '/api/v1/{region}/bean/account-standards',
638
+ path: {
639
+ region: data.region
640
+ },
641
+ query: {
642
+ type: data.type,
643
+ search: data.search
644
+ }
645
+ });
646
+ }
647
+
648
+ /**
649
+ * Get available regions
650
+ * Returns list of supported region codes
651
+ * @param data The data for the request.
652
+ * @param data.region Region code (cn, us, eu-core, de)
653
+ * @returns unknown Regions retrieved successfully
654
+ * @throws ApiError
655
+ */
656
+ public static accountStandardsControllerGetRegions(
657
+ data: AccountStandardsControllerGetRegionsData
658
+ ): CancelablePromise<AccountStandardsControllerGetRegionsResponse> {
659
+ return __request(OpenAPI, {
660
+ method: 'GET',
661
+ url: '/api/v1/{region}/bean/account-standards/regions',
662
+ path: {
663
+ region: data.region
664
+ }
665
+ });
666
+ }
667
+ }
668
+
669
+ export class BeanBalancesService {
670
+ /**
671
+ * Query account balance
672
+ * Calculate account balance at a specific date for a single currency
673
+ * @param data The data for the request.
674
+ * @param data.account Account name (e.g., "Assets:Bank:Checking")
675
+ * @param data.region Region code (cn, us, eu-core, de)
676
+ * @param data.date Date to calculate balance at (ISO 8601 format)
677
+ * @param data.currency Currency to query (e.g., "USD", "CNY")
678
+ * @returns BalanceResponseDto Balance calculated successfully
679
+ * @throws ApiError
680
+ */
681
+ public static balanceControllerGetBalance(
682
+ data: BalanceControllerGetBalanceData
683
+ ): CancelablePromise<BalanceControllerGetBalanceResponse> {
684
+ return __request(OpenAPI, {
685
+ method: 'GET',
686
+ url: '/api/v1/{region}/bean/balances',
687
+ path: {
688
+ region: data.region
689
+ },
690
+ query: {
691
+ account: data.account,
692
+ date: data.date,
693
+ currency: data.currency
694
+ },
695
+ errors: {
696
+ 400: 'Invalid query parameters',
697
+ 401: 'User not authenticated'
698
+ }
699
+ });
700
+ }
701
+
702
+ /**
703
+ * Query multi-currency account balance
704
+ * Calculate account balances for all currencies at a specific date
705
+ * @param data The data for the request.
706
+ * @param data.region Region code (cn, us, eu-core, de)
707
+ * @returns MultiCurrencyBalanceResponseDto Balances calculated successfully
708
+ * @throws ApiError
709
+ */
710
+ public static balanceControllerGetMultiCurrencyBalance(
711
+ data: BalanceControllerGetMultiCurrencyBalanceData
712
+ ): CancelablePromise<BalanceControllerGetMultiCurrencyBalanceResponse> {
713
+ return __request(OpenAPI, {
714
+ method: 'GET',
715
+ url: '/api/v1/{region}/bean/balances/multi-currency',
716
+ path: {
717
+ region: data.region
718
+ },
719
+ errors: {
720
+ 400: 'Invalid query parameters',
721
+ 401: 'User not authenticated'
722
+ }
723
+ });
724
+ }
725
+ }
726
+
727
+ export class BeanReviewsService {
728
+ /**
729
+ * List pending reviews
730
+ * @param data The data for the request.
731
+ * @param data.region Region code (cn, us, eu-core, de)
732
+ * @param data.type Filter by review type
733
+ * @param data.confidenceLevel Filter by confidence level
734
+ * @param data.sortBy Sort order
735
+ * @param data.page Page number (default: 1)
736
+ * @param data.limit Items per page (1-100, default: 20)
737
+ * @returns ReviewListResponseDto
738
+ * @throws ApiError
739
+ */
740
+ public static reviewControllerFindAll(
741
+ data: ReviewControllerFindAllData
742
+ ): CancelablePromise<ReviewControllerFindAllResponse> {
743
+ return __request(OpenAPI, {
744
+ method: 'GET',
745
+ url: '/api/v1/{region}/bean/reviews',
746
+ path: {
747
+ region: data.region
748
+ },
749
+ query: {
750
+ type: data.type,
751
+ confidenceLevel: data.confidenceLevel,
752
+ sortBy: data.sortBy,
753
+ page: data.page,
754
+ limit: data.limit
755
+ }
756
+ });
757
+ }
758
+
759
+ /**
760
+ * Get review statistics
761
+ * @param data The data for the request.
762
+ * @param data.region Region code (cn, us, eu-core, de)
763
+ * @returns ReviewStatsDto
764
+ * @throws ApiError
765
+ */
766
+ public static reviewControllerGetStats(
767
+ data: ReviewControllerGetStatsData
768
+ ): CancelablePromise<ReviewControllerGetStatsResponse> {
769
+ return __request(OpenAPI, {
770
+ method: 'GET',
771
+ url: '/api/v1/{region}/bean/reviews/stats',
772
+ path: {
773
+ region: data.region
774
+ }
775
+ });
776
+ }
777
+
778
+ /**
779
+ * Get review by ID
780
+ * @param data The data for the request.
781
+ * @param data.id Review ID
782
+ * @param data.region Region code (cn, us, eu-core, de)
783
+ * @returns ReviewDetailDto
784
+ * @throws ApiError
785
+ */
786
+ public static reviewControllerFindOne(
787
+ data: ReviewControllerFindOneData
788
+ ): CancelablePromise<ReviewControllerFindOneResponse> {
789
+ return __request(OpenAPI, {
790
+ method: 'GET',
791
+ url: '/api/v1/{region}/bean/reviews/{id}',
792
+ path: {
793
+ id: data.id,
794
+ region: data.region
795
+ }
796
+ });
797
+ }
798
+
799
+ /**
800
+ * @param data The data for the request.
801
+ * @param data.region Region code (cn, us, eu-core, de)
802
+ * @returns unknown
803
+ * @throws ApiError
804
+ */
805
+ public static reviewController(
806
+ data: ReviewControllerData
807
+ ): CancelablePromise<ReviewControllerResponse> {
808
+ return __request(OpenAPI, {
809
+ method: 'POST',
810
+ url: '/api/v1/{region}/bean/reviews/{id}/resolve',
811
+ path: {
812
+ region: data.region
813
+ }
814
+ });
815
+ }
816
+
817
+ /**
818
+ * @param data The data for the request.
819
+ * @param data.region Region code (cn, us, eu-core, de)
820
+ * @returns unknown
821
+ * @throws ApiError
822
+ */
823
+ public static reviewController1(
824
+ data: ReviewController1Data
825
+ ): CancelablePromise<ReviewController1Response> {
826
+ return __request(OpenAPI, {
827
+ method: 'POST',
828
+ url: '/api/v1/{region}/bean/reviews/{id}/undo',
829
+ path: {
830
+ region: data.region
831
+ }
832
+ });
833
+ }
834
+
835
+ /**
836
+ * @param data The data for the request.
837
+ * @param data.region Region code (cn, us, eu-core, de)
838
+ * @returns unknown
839
+ * @throws ApiError
840
+ */
841
+ public static reviewController2(
842
+ data: ReviewController2Data
843
+ ): CancelablePromise<ReviewController2Response> {
844
+ return __request(OpenAPI, {
845
+ method: 'POST',
846
+ url: '/api/v1/{region}/bean/reviews/batch-resolve',
847
+ path: {
848
+ region: data.region
849
+ }
850
+ });
851
+ }
852
+ }
853
+
854
+ export class BeanPayeesService {
855
+ /**
856
+ * @param data The data for the request.
857
+ * @param data.region Region code (cn, us, eu-core, de)
858
+ * @returns unknown
859
+ * @throws ApiError
860
+ */
861
+ public static payeeController(
862
+ data: PayeeControllerData
863
+ ): CancelablePromise<PayeeControllerResponse> {
864
+ return __request(OpenAPI, {
865
+ method: 'POST',
866
+ url: '/api/v1/bean/payees',
867
+ path: {
868
+ region: data.region
869
+ }
870
+ });
871
+ }
872
+
873
+ /**
874
+ * List user payees
875
+ * Returns all payee mappings for the authenticated user with optional filtering
876
+ * @param data The data for the request.
877
+ * @param data.region Region code (cn, us, eu-core, de)
878
+ * @param data.search Search term for payee name (partial match, case-insensitive). Useful for autocomplete.
879
+ * @param data.payee Filter by exact payee name match
880
+ * @param data.category Filter by custom category
881
+ * @param data.tag Filter by custom tag (returns payees that have this tag)
882
+ * @param data.isActive Filter by active status. Defaults to true (show only active payees).
883
+ * @returns PayeeListResponseDto Payees retrieved successfully
884
+ * @throws ApiError
885
+ */
886
+ public static payeeControllerFindAll(
887
+ data: PayeeControllerFindAllData
888
+ ): CancelablePromise<PayeeControllerFindAllResponse> {
889
+ return __request(OpenAPI, {
890
+ method: 'GET',
891
+ url: '/api/v1/bean/payees',
892
+ path: {
893
+ region: data.region
894
+ },
895
+ query: {
896
+ search: data.search,
897
+ payee: data.payee,
898
+ category: data.category,
899
+ tag: data.tag,
900
+ isActive: data.isActive
901
+ }
902
+ });
903
+ }
904
+
905
+ /**
906
+ * Get payee autocomplete suggestions
907
+ * Returns active payee names matching the query, sorted by recent usage. Used for transaction input autocomplete.
908
+ * @param data The data for the request.
909
+ * @param data.q Search query for payee name (partial match, case-insensitive)
910
+ * @param data.region Region code (cn, us, eu-core, de)
911
+ * @param data.limit Maximum number of suggestions
912
+ * @returns PayeeAutocompleteResponseDto Autocomplete suggestions retrieved successfully
913
+ * @throws ApiError
914
+ */
915
+ public static payeeControllerAutocomplete(
916
+ data: PayeeControllerAutocompleteData
917
+ ): CancelablePromise<PayeeControllerAutocompleteResponse> {
918
+ return __request(OpenAPI, {
919
+ method: 'GET',
920
+ url: '/api/v1/bean/payees/autocomplete',
921
+ path: {
922
+ region: data.region
923
+ },
924
+ query: {
925
+ q: data.q,
926
+ limit: data.limit
927
+ }
928
+ });
929
+ }
930
+
931
+ /**
932
+ * Get top payees by usage
933
+ * Returns the most frequently used payees, sorted by use count. Used for statistics and analytics.
934
+ * @param data The data for the request.
935
+ * @param data.region Region code (cn, us, eu-core, de)
936
+ * @param data.limit Maximum number of results
937
+ * @returns PayeeStatsResponseDto Top payees retrieved successfully
938
+ * @throws ApiError
939
+ */
940
+ public static payeeControllerGetTopPayees(
941
+ data: PayeeControllerGetTopPayeesData
942
+ ): CancelablePromise<PayeeControllerGetTopPayeesResponse> {
943
+ return __request(OpenAPI, {
944
+ method: 'GET',
945
+ url: '/api/v1/bean/payees/top',
946
+ path: {
947
+ region: data.region
948
+ },
949
+ query: {
950
+ limit: data.limit
951
+ }
952
+ });
953
+ }
954
+
955
+ /**
956
+ * Get payee by ID
957
+ * Returns a specific payee mapping by its UUID
958
+ * @param data The data for the request.
959
+ * @param data.id Payee UUID
960
+ * @param data.region Region code (cn, us, eu-core, de)
961
+ * @returns PayeeResponseDto Payee retrieved successfully
962
+ * @throws ApiError
963
+ */
964
+ public static payeeControllerFindOne(
965
+ data: PayeeControllerFindOneData
966
+ ): CancelablePromise<PayeeControllerFindOneResponse> {
967
+ return __request(OpenAPI, {
968
+ method: 'GET',
969
+ url: '/api/v1/bean/payees/{id}',
970
+ path: {
971
+ id: data.id,
972
+ region: data.region
973
+ },
974
+ errors: {
975
+ 403: 'Payee belongs to another user',
976
+ 404: 'Payee not found'
977
+ }
978
+ });
979
+ }
980
+
981
+ /**
982
+ * @param data The data for the request.
983
+ * @param data.region Region code (cn, us, eu-core, de)
984
+ * @returns unknown
985
+ * @throws ApiError
986
+ */
987
+ public static payeeController1(
988
+ data: PayeeController1Data
989
+ ): CancelablePromise<PayeeController1Response> {
990
+ return __request(OpenAPI, {
991
+ method: 'PUT',
992
+ url: '/api/v1/bean/payees/{id}',
993
+ path: {
994
+ region: data.region
995
+ }
996
+ });
997
+ }
998
+
999
+ /**
1000
+ * @param data The data for the request.
1001
+ * @param data.region Region code (cn, us, eu-core, de)
1002
+ * @returns void
1003
+ * @throws ApiError
1004
+ */
1005
+ public static payeeController2(
1006
+ data: PayeeController2Data
1007
+ ): CancelablePromise<PayeeController2Response> {
1008
+ return __request(OpenAPI, {
1009
+ method: 'DELETE',
1010
+ url: '/api/v1/bean/payees/{id}',
1011
+ path: {
1012
+ region: data.region
1013
+ }
1014
+ });
1015
+ }
1016
+ }
1017
+
1018
+ export class AdminPayeeProfilesService {
1019
+ /**
1020
+ * @param data The data for the request.
1021
+ * @param data.region Region code (cn, us, eu-core, de)
1022
+ * @returns unknown
1023
+ * @throws ApiError
1024
+ */
1025
+ public static payeeProfileAdminController(
1026
+ data: PayeeProfileAdminControllerData
1027
+ ): CancelablePromise<PayeeProfileAdminControllerResponse> {
1028
+ return __request(OpenAPI, {
1029
+ method: 'POST',
1030
+ url: '/api/v1/admin/payee-profiles',
1031
+ path: {
1032
+ region: data.region
1033
+ }
1034
+ });
1035
+ }
1036
+
1037
+ /**
1038
+ * List payee profiles (Admin only)
1039
+ * Returns all payee profiles with optional filtering by category, country, verification status, etc.
1040
+ * @param data The data for the request.
1041
+ * @param data.region Region code (cn, us, eu-core, de)
1042
+ * @param data.search Search term for canonical name and aliases (case-insensitive)
1043
+ * @param data.category Filter by category
1044
+ * @param data.country Filter by country (ISO 3166-1 alpha-2)
1045
+ * @param data.isActive Filter by active status (default: true - show only active)
1046
+ * @param data.verified Filter by verification status. true = verified only, false = unverified only
1047
+ * @param data.dataSource Filter by data source
1048
+ * @returns PayeeProfileListResponseDto Payee profiles retrieved successfully
1049
+ * @throws ApiError
1050
+ */
1051
+ public static payeeProfileAdminControllerFindAll(
1052
+ data: PayeeProfileAdminControllerFindAllData
1053
+ ): CancelablePromise<PayeeProfileAdminControllerFindAllResponse> {
1054
+ return __request(OpenAPI, {
1055
+ method: 'GET',
1056
+ url: '/api/v1/admin/payee-profiles',
1057
+ path: {
1058
+ region: data.region
1059
+ },
1060
+ query: {
1061
+ search: data.search,
1062
+ category: data.category,
1063
+ country: data.country,
1064
+ isActive: data.isActive,
1065
+ verified: data.verified,
1066
+ dataSource: data.dataSource
1067
+ },
1068
+ errors: {
1069
+ 403: 'Admin access required'
1070
+ }
1071
+ });
1072
+ }
1073
+
1074
+ /**
1075
+ * Get payee profile by ID (Admin only)
1076
+ * Returns a single payee profile by its ID.
1077
+ * @param data The data for the request.
1078
+ * @param data.id Payee profile ID (UUID)
1079
+ * @param data.region Region code (cn, us, eu-core, de)
1080
+ * @returns PayeeProfileResponseDto Payee profile retrieved successfully
1081
+ * @throws ApiError
1082
+ */
1083
+ public static payeeProfileAdminControllerFindOne(
1084
+ data: PayeeProfileAdminControllerFindOneData
1085
+ ): CancelablePromise<PayeeProfileAdminControllerFindOneResponse> {
1086
+ return __request(OpenAPI, {
1087
+ method: 'GET',
1088
+ url: '/api/v1/admin/payee-profiles/{id}',
1089
+ path: {
1090
+ id: data.id,
1091
+ region: data.region
1092
+ },
1093
+ errors: {
1094
+ 403: 'Admin access required',
1095
+ 404: 'Payee profile not found'
1096
+ }
1097
+ });
1098
+ }
1099
+
1100
+ /**
1101
+ * @param data The data for the request.
1102
+ * @param data.region Region code (cn, us, eu-core, de)
1103
+ * @returns unknown
1104
+ * @throws ApiError
1105
+ */
1106
+ public static payeeProfileAdminController1(
1107
+ data: PayeeProfileAdminController1Data
1108
+ ): CancelablePromise<PayeeProfileAdminController1Response> {
1109
+ return __request(OpenAPI, {
1110
+ method: 'PUT',
1111
+ url: '/api/v1/admin/payee-profiles/{id}',
1112
+ path: {
1113
+ region: data.region
1114
+ }
1115
+ });
1116
+ }
1117
+
1118
+ /**
1119
+ * @param data The data for the request.
1120
+ * @param data.region Region code (cn, us, eu-core, de)
1121
+ * @returns void
1122
+ * @throws ApiError
1123
+ */
1124
+ public static payeeProfileAdminController2(
1125
+ data: PayeeProfileAdminController2Data
1126
+ ): CancelablePromise<PayeeProfileAdminController2Response> {
1127
+ return __request(OpenAPI, {
1128
+ method: 'DELETE',
1129
+ url: '/api/v1/admin/payee-profiles/{id}',
1130
+ path: {
1131
+ region: data.region
1132
+ }
1133
+ });
1134
+ }
1135
+
1136
+ /**
1137
+ * @param data The data for the request.
1138
+ * @param data.region Region code (cn, us, eu-core, de)
1139
+ * @returns unknown
1140
+ * @throws ApiError
1141
+ */
1142
+ public static payeeProfileAdminController3(
1143
+ data: PayeeProfileAdminController3Data
1144
+ ): CancelablePromise<PayeeProfileAdminController3Response> {
1145
+ return __request(OpenAPI, {
1146
+ method: 'POST',
1147
+ url: '/api/v1/admin/payee-profiles/{id}/verify',
1148
+ path: {
1149
+ region: data.region
1150
+ }
1151
+ });
1152
+ }
1153
+
1154
+ /**
1155
+ * @param data The data for the request.
1156
+ * @param data.region Region code (cn, us, eu-core, de)
1157
+ * @returns unknown
1158
+ * @throws ApiError
1159
+ */
1160
+ public static payeeProfileAdminController4(
1161
+ data: PayeeProfileAdminController4Data
1162
+ ): CancelablePromise<PayeeProfileAdminController4Response> {
1163
+ return __request(OpenAPI, {
1164
+ method: 'DELETE',
1165
+ url: '/api/v1/admin/payee-profiles/{id}/verify',
1166
+ path: {
1167
+ region: data.region
1168
+ }
1169
+ });
1170
+ }
1171
+ }
1172
+
1173
+ export class BeanCommoditiesService {
1174
+ /**
1175
+ * @param data The data for the request.
1176
+ * @param data.region Region code (cn, us, eu-core, de)
1177
+ * @returns unknown
1178
+ * @throws ApiError
1179
+ */
1180
+ public static commodityController(
1181
+ data: CommodityControllerData
1182
+ ): CancelablePromise<CommodityControllerResponse> {
1183
+ return __request(OpenAPI, {
1184
+ method: 'POST',
1185
+ url: '/api/v1/{region}/bean/commodities',
1186
+ path: {
1187
+ region: data.region
1188
+ }
1189
+ });
1190
+ }
1191
+
1192
+ /**
1193
+ * List user commodities
1194
+ * Returns all commodity definitions for the authenticated user with optional filtering
1195
+ * @param data The data for the request.
1196
+ * @param data.region Region code (cn, us, eu-core, de)
1197
+ * @param data.search Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
1198
+ * @param data.symbol Filter by exact symbol match
1199
+ * @returns CommodityListResponseDto Commodities retrieved successfully
1200
+ * @throws ApiError
1201
+ */
1202
+ public static commodityControllerFindAll(
1203
+ data: CommodityControllerFindAllData
1204
+ ): CancelablePromise<CommodityControllerFindAllResponse> {
1205
+ return __request(OpenAPI, {
1206
+ method: 'GET',
1207
+ url: '/api/v1/{region}/bean/commodities',
1208
+ path: {
1209
+ region: data.region
1210
+ },
1211
+ query: {
1212
+ search: data.search,
1213
+ symbol: data.symbol
1214
+ }
1215
+ });
1216
+ }
1217
+
1218
+ /**
1219
+ * Get commodity by symbol
1220
+ * Returns a specific commodity definition by its symbol
1221
+ * @param data The data for the request.
1222
+ * @param data.symbol Commodity symbol
1223
+ * @param data.region Region code (cn, us, eu-core, de)
1224
+ * @returns CommodityResponseDto Commodity retrieved successfully
1225
+ * @throws ApiError
1226
+ */
1227
+ public static commodityControllerFindOne(
1228
+ data: CommodityControllerFindOneData
1229
+ ): CancelablePromise<CommodityControllerFindOneResponse> {
1230
+ return __request(OpenAPI, {
1231
+ method: 'GET',
1232
+ url: '/api/v1/{region}/bean/commodities/{symbol}',
1233
+ path: {
1234
+ symbol: data.symbol,
1235
+ region: data.region
1236
+ },
1237
+ errors: {
1238
+ 404: 'Commodity not found'
1239
+ }
1240
+ });
1241
+ }
1242
+
1243
+ /**
1244
+ * @param data The data for the request.
1245
+ * @param data.region Region code (cn, us, eu-core, de)
1246
+ * @returns unknown
1247
+ * @throws ApiError
1248
+ */
1249
+ public static commodityController1(
1250
+ data: CommodityController1Data
1251
+ ): CancelablePromise<CommodityController1Response> {
1252
+ return __request(OpenAPI, {
1253
+ method: 'PUT',
1254
+ url: '/api/v1/{region}/bean/commodities/{symbol}',
1255
+ path: {
1256
+ region: data.region
1257
+ }
1258
+ });
1259
+ }
1260
+
1261
+ /**
1262
+ * @param data The data for the request.
1263
+ * @param data.region Region code (cn, us, eu-core, de)
1264
+ * @returns void
1265
+ * @throws ApiError
1266
+ */
1267
+ public static commodityController2(
1268
+ data: CommodityController2Data
1269
+ ): CancelablePromise<CommodityController2Response> {
1270
+ return __request(OpenAPI, {
1271
+ method: 'DELETE',
1272
+ url: '/api/v1/{region}/bean/commodities/{symbol}',
1273
+ path: {
1274
+ region: data.region
1275
+ }
1276
+ });
1277
+ }
1278
+
1279
+ /**
1280
+ * @param data The data for the request.
1281
+ * @param data.region Region code (cn, us, eu-core, de)
1282
+ * @returns unknown
1283
+ * @throws ApiError
1284
+ */
1285
+ public static commodityController3(
1286
+ data: CommodityController3Data
1287
+ ): CancelablePromise<CommodityController3Response> {
1288
+ return __request(OpenAPI, {
1289
+ method: 'POST',
1290
+ url: '/api/v1/{region}/bean/commodities/{symbol}/ensure',
1291
+ path: {
1292
+ region: data.region
1293
+ }
1294
+ });
1295
+ }
1296
+
1297
+ /**
1298
+ * @param data The data for the request.
1299
+ * @param data.region Region code (cn, us, eu-core, de)
1300
+ * @returns unknown
1301
+ * @throws ApiError
1302
+ */
1303
+ public static commodityController4(
1304
+ data: CommodityController4Data
1305
+ ): CancelablePromise<CommodityController4Response> {
1306
+ return __request(OpenAPI, {
1307
+ method: 'POST',
1308
+ url: '/api/v1/{region}/bean/commodities/bulk',
1309
+ path: {
1310
+ region: data.region
1311
+ }
1312
+ });
1313
+ }
1314
+ }
1315
+
1316
+ export class RecurringRulesService {
1317
+ /**
1318
+ * @param data The data for the request.
1319
+ * @param data.region Region code (cn, us, eu-core, de)
1320
+ * @returns unknown
1321
+ * @throws ApiError
1322
+ */
1323
+ public static recurringRuleController(
1324
+ data: RecurringRuleControllerData
1325
+ ): CancelablePromise<RecurringRuleControllerResponse> {
1326
+ return __request(OpenAPI, {
1327
+ method: 'POST',
1328
+ url: '/api/v1/{region}/bean/recurring-rules',
1329
+ path: {
1330
+ region: data.region
1331
+ }
1332
+ });
1333
+ }
1334
+
1335
+ /**
1336
+ * List recurring rules
1337
+ * Returns all recurring rules for the authenticated user with optional filtering
1338
+ * @param data The data for the request.
1339
+ * @param data.region Region code (cn, us, eu-core, de)
1340
+ * @param data.isActive Filter by active status
1341
+ * @param data.frequency Filter by frequency (WEEKLY, MONTHLY, etc.)
1342
+ * @param data.hasAutoCreate Filter by autoCreate enabled
1343
+ * @returns RecurringRuleResponseDto Rules retrieved successfully
1344
+ * @throws ApiError
1345
+ */
1346
+ public static recurringRuleControllerFindAll(
1347
+ data: RecurringRuleControllerFindAllData
1348
+ ): CancelablePromise<RecurringRuleControllerFindAllResponse> {
1349
+ return __request(OpenAPI, {
1350
+ method: 'GET',
1351
+ url: '/api/v1/{region}/bean/recurring-rules',
1352
+ path: {
1353
+ region: data.region
1354
+ },
1355
+ query: {
1356
+ isActive: data.isActive,
1357
+ frequency: data.frequency,
1358
+ hasAutoCreate: data.hasAutoCreate
1359
+ }
1360
+ });
1361
+ }
1362
+
1363
+ /**
1364
+ * @param data The data for the request.
1365
+ * @param data.region Region code (cn, us, eu-core, de)
1366
+ * @returns unknown
1367
+ * @throws ApiError
1368
+ */
1369
+ public static recurringRuleController1(
1370
+ data: RecurringRuleController1Data
1371
+ ): CancelablePromise<RecurringRuleController1Response> {
1372
+ return __request(OpenAPI, {
1373
+ method: 'POST',
1374
+ url: '/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}',
1375
+ path: {
1376
+ region: data.region
1377
+ }
1378
+ });
1379
+ }
1380
+
1381
+ /**
1382
+ * Get recurring rule by ID
1383
+ * Returns a specific recurring rule with its details
1384
+ * @param data The data for the request.
1385
+ * @param data.id Rule ID
1386
+ * @param data.region Region code (cn, us, eu-core, de)
1387
+ * @returns RecurringRuleResponseDto Rule retrieved successfully
1388
+ * @throws ApiError
1389
+ */
1390
+ public static recurringRuleControllerFindOne(
1391
+ data: RecurringRuleControllerFindOneData
1392
+ ): CancelablePromise<RecurringRuleControllerFindOneResponse> {
1393
+ return __request(OpenAPI, {
1394
+ method: 'GET',
1395
+ url: '/api/v1/{region}/bean/recurring-rules/{id}',
1396
+ path: {
1397
+ id: data.id,
1398
+ region: data.region
1399
+ },
1400
+ errors: {
1401
+ 404: 'Rule not found'
1402
+ }
1403
+ });
1404
+ }
1405
+
1406
+ /**
1407
+ * @param data The data for the request.
1408
+ * @param data.region Region code (cn, us, eu-core, de)
1409
+ * @returns unknown
1410
+ * @throws ApiError
1411
+ */
1412
+ public static recurringRuleController2(
1413
+ data: RecurringRuleController2Data
1414
+ ): CancelablePromise<RecurringRuleController2Response> {
1415
+ return __request(OpenAPI, {
1416
+ method: 'PATCH',
1417
+ url: '/api/v1/{region}/bean/recurring-rules/{id}',
1418
+ path: {
1419
+ region: data.region
1420
+ }
1421
+ });
1422
+ }
1423
+
1424
+ /**
1425
+ * @param data The data for the request.
1426
+ * @param data.region Region code (cn, us, eu-core, de)
1427
+ * @returns void
1428
+ * @throws ApiError
1429
+ */
1430
+ public static recurringRuleController3(
1431
+ data: RecurringRuleController3Data
1432
+ ): CancelablePromise<RecurringRuleController3Response> {
1433
+ return __request(OpenAPI, {
1434
+ method: 'DELETE',
1435
+ url: '/api/v1/{region}/bean/recurring-rules/{id}',
1436
+ path: {
1437
+ region: data.region
1438
+ }
1439
+ });
1440
+ }
1441
+
1442
+ /**
1443
+ * Get rule with statistics
1444
+ * Returns a rule with pending/overdue counts and next expected date
1445
+ * @param data The data for the request.
1446
+ * @param data.id Rule ID
1447
+ * @param data.region Region code (cn, us, eu-core, de)
1448
+ * @returns RecurringRuleWithStatsResponseDto Rule with stats retrieved successfully
1449
+ * @throws ApiError
1450
+ */
1451
+ public static recurringRuleControllerGetWithStats(
1452
+ data: RecurringRuleControllerGetWithStatsData
1453
+ ): CancelablePromise<RecurringRuleControllerGetWithStatsResponse> {
1454
+ return __request(OpenAPI, {
1455
+ method: 'GET',
1456
+ url: '/api/v1/{region}/bean/recurring-rules/{id}/stats',
1457
+ path: {
1458
+ id: data.id,
1459
+ region: data.region
1460
+ },
1461
+ errors: {
1462
+ 404: 'Rule not found'
1463
+ }
1464
+ });
1465
+ }
1466
+ }
1467
+
1468
+ export class ExpectedTransactionsService {
1469
+ /**
1470
+ * List expected transactions
1471
+ * Returns expected transactions for the authenticated user with optional filtering
1472
+ * @param data The data for the request.
1473
+ * @param data.region Region code (cn, us, eu-core, de)
1474
+ * @param data.ruleId Filter by recurring rule ID
1475
+ * @param data.status Filter by status (PENDING, COMPLETED, SKIPPED)
1476
+ * @param data.fromDate Filter by date range start (YYYY-MM-DD)
1477
+ * @param data.toDate Filter by date range end (YYYY-MM-DD)
1478
+ * @returns ExpectedTransactionListResponseDto Expected transactions retrieved successfully
1479
+ * @throws ApiError
1480
+ */
1481
+ public static expectedTransactionControllerFindAll(
1482
+ data: ExpectedTransactionControllerFindAllData
1483
+ ): CancelablePromise<ExpectedTransactionControllerFindAllResponse> {
1484
+ return __request(OpenAPI, {
1485
+ method: 'GET',
1486
+ url: '/api/v1/{region}/bean/expected-transactions',
1487
+ path: {
1488
+ region: data.region
1489
+ },
1490
+ query: {
1491
+ ruleId: data.ruleId,
1492
+ status: data.status,
1493
+ fromDate: data.fromDate,
1494
+ toDate: data.toDate
1495
+ }
1496
+ });
1497
+ }
1498
+
1499
+ /**
1500
+ * List overdue expected transactions
1501
+ * Returns all overdue expected transactions (PENDING past tolerance)
1502
+ * @param data The data for the request.
1503
+ * @param data.region Region code (cn, us, eu-core, de)
1504
+ * @returns ExpectedTransactionListResponseDto Overdue transactions retrieved successfully
1505
+ * @throws ApiError
1506
+ */
1507
+ public static expectedTransactionControllerFindOverdue(
1508
+ data: ExpectedTransactionControllerFindOverdueData
1509
+ ): CancelablePromise<ExpectedTransactionControllerFindOverdueResponse> {
1510
+ return __request(OpenAPI, {
1511
+ method: 'GET',
1512
+ url: '/api/v1/{region}/bean/expected-transactions/overdue',
1513
+ path: {
1514
+ region: data.region
1515
+ }
1516
+ });
1517
+ }
1518
+
1519
+ /**
1520
+ * Get expected transaction by ID
1521
+ * Returns a specific expected transaction with rule details
1522
+ * @param data The data for the request.
1523
+ * @param data.id Expected transaction ID
1524
+ * @param data.region Region code (cn, us, eu-core, de)
1525
+ * @returns ExpectedTransactionResponseDto Expected transaction retrieved successfully
1526
+ * @throws ApiError
1527
+ */
1528
+ public static expectedTransactionControllerFindOne(
1529
+ data: ExpectedTransactionControllerFindOneData
1530
+ ): CancelablePromise<ExpectedTransactionControllerFindOneResponse> {
1531
+ return __request(OpenAPI, {
1532
+ method: 'GET',
1533
+ url: '/api/v1/{region}/bean/expected-transactions/{id}',
1534
+ path: {
1535
+ id: data.id,
1536
+ region: data.region
1537
+ },
1538
+ errors: {
1539
+ 404: 'Expected transaction not found'
1540
+ }
1541
+ });
1542
+ }
1543
+
1544
+ /**
1545
+ * @param data The data for the request.
1546
+ * @param data.region Region code (cn, us, eu-core, de)
1547
+ * @returns unknown
1548
+ * @throws ApiError
1549
+ */
1550
+ public static expectedTransactionController(
1551
+ data: ExpectedTransactionControllerData
1552
+ ): CancelablePromise<ExpectedTransactionControllerResponse> {
1553
+ return __request(OpenAPI, {
1554
+ method: 'POST',
1555
+ url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
1556
+ path: {
1557
+ region: data.region
1558
+ }
1559
+ });
1560
+ }
1561
+
1562
+ /**
1563
+ * @param data The data for the request.
1564
+ * @param data.region Region code (cn, us, eu-core, de)
1565
+ * @returns unknown
1566
+ * @throws ApiError
1567
+ */
1568
+ public static expectedTransactionController1(
1569
+ data: ExpectedTransactionController1Data
1570
+ ): CancelablePromise<ExpectedTransactionController1Response> {
1571
+ return __request(OpenAPI, {
1572
+ method: 'DELETE',
1573
+ url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
1574
+ path: {
1575
+ region: data.region
1576
+ }
1577
+ });
1578
+ }
1579
+
1580
+ /**
1581
+ * @param data The data for the request.
1582
+ * @param data.region Region code (cn, us, eu-core, de)
1583
+ * @returns unknown
1584
+ * @throws ApiError
1585
+ */
1586
+ public static expectedTransactionController2(
1587
+ data: ExpectedTransactionController2Data
1588
+ ): CancelablePromise<ExpectedTransactionController2Response> {
1589
+ return __request(OpenAPI, {
1590
+ method: 'POST',
1591
+ url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
1592
+ path: {
1593
+ region: data.region
1594
+ }
1595
+ });
1596
+ }
1597
+
1598
+ /**
1599
+ * @param data The data for the request.
1600
+ * @param data.region Region code (cn, us, eu-core, de)
1601
+ * @returns unknown
1602
+ * @throws ApiError
1603
+ */
1604
+ public static expectedTransactionController3(
1605
+ data: ExpectedTransactionController3Data
1606
+ ): CancelablePromise<ExpectedTransactionController3Response> {
1607
+ return __request(OpenAPI, {
1608
+ method: 'DELETE',
1609
+ url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
1610
+ path: {
1611
+ region: data.region
1612
+ }
1613
+ });
1614
+ }
1615
+
1616
+ /**
1617
+ * @param data The data for the request.
1618
+ * @param data.region Region code (cn, us, eu-core, de)
1619
+ * @returns unknown
1620
+ * @throws ApiError
1621
+ */
1622
+ public static expectedTransactionController4(
1623
+ data: ExpectedTransactionController4Data
1624
+ ): CancelablePromise<ExpectedTransactionController4Response> {
1625
+ return __request(OpenAPI, {
1626
+ method: 'POST',
1627
+ url: '/api/v1/{region}/bean/expected-transactions/{id}/enter',
1628
+ path: {
1629
+ region: data.region
1630
+ }
1631
+ });
1632
+ }
1633
+ }
1634
+
1635
+ export class RecurringForecastService {
1636
+ /**
1637
+ * Get cash flow forecast
1638
+ * Returns predicted outflows for the next N months based on active recurring rules
1639
+ * @param data The data for the request.
1640
+ * @param data.region Region code (cn, us, eu-core, de)
1641
+ * @param data.months Number of months to forecast (1-12, default 3)
1642
+ * @returns ForecastResponseDto Forecast retrieved successfully
1643
+ * @throws ApiError
1644
+ */
1645
+ public static forecastControllerGetForecast(
1646
+ data: ForecastControllerGetForecastData
1647
+ ): CancelablePromise<ForecastControllerGetForecastResponse> {
1648
+ return __request(OpenAPI, {
1649
+ method: 'GET',
1650
+ url: '/api/v1/{region}/bean/recurring/forecast',
1651
+ path: {
1652
+ region: data.region
1653
+ },
1654
+ query: {
1655
+ months: data.months
1656
+ }
1657
+ });
1658
+ }
1659
+ }
1660
+
1661
+ export class BeanTransactionRulesService {
1662
+ /**
1663
+ * @param data The data for the request.
1664
+ * @param data.region Region code (cn, us, eu-core, de)
1665
+ * @returns unknown
1666
+ * @throws ApiError
1667
+ */
1668
+ public static transactionRuleController(
1669
+ data: TransactionRuleControllerData
1670
+ ): CancelablePromise<TransactionRuleControllerResponse> {
1671
+ return __request(OpenAPI, {
1672
+ method: 'POST',
1673
+ url: '/api/v1/{region}/bean/transaction-rules',
1674
+ path: {
1675
+ region: data.region
1676
+ }
1677
+ });
1678
+ }
1679
+
1680
+ /**
1681
+ * Get all transaction rules for user
1682
+ * @param data The data for the request.
1683
+ * @param data.region Region code (cn, us, eu-core, de)
1684
+ * @param data.limit Max results per page (default: 20, max: 100)
1685
+ * @param data.offset Pagination offset (default: 0)
1686
+ * @param data.enabled Filter by enabled status
1687
+ * @param data.learningSource Filter by learning source. Omit this parameter or pass empty string to get manually created rules (learningSource is null in database).
1688
+ * @param data.autoApplyEnabled Filter by auto-apply status
1689
+ * @returns TransactionRuleListResponseDto List of rules
1690
+ * @throws ApiError
1691
+ */
1692
+ public static transactionRuleControllerList(
1693
+ data: TransactionRuleControllerListData
1694
+ ): CancelablePromise<TransactionRuleControllerListResponse> {
1695
+ return __request(OpenAPI, {
1696
+ method: 'GET',
1697
+ url: '/api/v1/{region}/bean/transaction-rules',
1698
+ path: {
1699
+ region: data.region
1700
+ },
1701
+ query: {
1702
+ limit: data.limit,
1703
+ offset: data.offset,
1704
+ enabled: data.enabled,
1705
+ learningSource: data.learningSource,
1706
+ autoApplyEnabled: data.autoApplyEnabled
1707
+ },
1708
+ errors: {
1709
+ 401: 'Unauthorized'
1710
+ }
1711
+ });
1712
+ }
1713
+
1714
+ /**
1715
+ * Validate transaction rule configuration
1716
+ * @param data The data for the request.
1717
+ * @param data.region Region code (cn, us, eu-core, de)
1718
+ * @param data.requestBody
1719
+ * @returns ValidateRuleResponseDto Validation result
1720
+ * @throws ApiError
1721
+ */
1722
+ public static transactionRuleControllerValidate(
1723
+ data: TransactionRuleControllerValidateData
1724
+ ): CancelablePromise<TransactionRuleControllerValidateResponse> {
1725
+ return __request(OpenAPI, {
1726
+ method: 'POST',
1727
+ url: '/api/v1/{region}/bean/transaction-rules/validate',
1728
+ path: {
1729
+ region: data.region
1730
+ },
1731
+ body: data.requestBody,
1732
+ mediaType: 'application/json',
1733
+ errors: {
1734
+ 401: 'Unauthorized'
1735
+ }
1736
+ });
1737
+ }
1738
+
1739
+ /**
1740
+ * @param data The data for the request.
1741
+ * @param data.region Region code (cn, us, eu-core, de)
1742
+ * @returns unknown
1743
+ * @throws ApiError
1744
+ */
1745
+ public static transactionRuleController1(
1746
+ data: TransactionRuleController1Data
1747
+ ): CancelablePromise<TransactionRuleController1Response> {
1748
+ return __request(OpenAPI, {
1749
+ method: 'POST',
1750
+ url: '/api/v1/{region}/bean/transaction-rules/bulk',
1751
+ path: {
1752
+ region: data.region
1753
+ }
1754
+ });
1755
+ }
1756
+
1757
+ /**
1758
+ * Export transaction rules
1759
+ * @param data The data for the request.
1760
+ * @param data.format Export format (currently only JSON supported)
1761
+ * @param data.region Region code (cn, us, eu-core, de)
1762
+ * @returns ExportRulesResponseDto Exported rules
1763
+ * @throws ApiError
1764
+ */
1765
+ public static transactionRuleControllerExport(
1766
+ data: TransactionRuleControllerExportData
1767
+ ): CancelablePromise<TransactionRuleControllerExportResponse> {
1768
+ return __request(OpenAPI, {
1769
+ method: 'GET',
1770
+ url: '/api/v1/{region}/bean/transaction-rules/export/{format}',
1771
+ path: {
1772
+ format: data.format,
1773
+ region: data.region
1774
+ },
1775
+ errors: {
1776
+ 400: 'Unsupported format',
1777
+ 401: 'Unauthorized'
1778
+ }
1779
+ });
1780
+ }
1781
+
1782
+ /**
1783
+ * Get transaction rule statistics
1784
+ * @param data The data for the request.
1785
+ * @param data.period Statistics time period
1786
+ * @param data.region Region code (cn, us, eu-core, de)
1787
+ * @returns RuleStatisticsResponseDto Rule statistics
1788
+ * @throws ApiError
1789
+ */
1790
+ public static transactionRuleControllerGetStatistics(
1791
+ data: TransactionRuleControllerGetStatisticsData
1792
+ ): CancelablePromise<TransactionRuleControllerGetStatisticsResponse> {
1793
+ return __request(OpenAPI, {
1794
+ method: 'GET',
1795
+ url: '/api/v1/{region}/bean/transaction-rules/statistics/{period}',
1796
+ path: {
1797
+ period: data.period,
1798
+ region: data.region
1799
+ },
1800
+ errors: {
1801
+ 401: 'Unauthorized'
1802
+ }
1803
+ });
1804
+ }
1805
+
1806
+ /**
1807
+ * Get transaction rule detail
1808
+ * @param data The data for the request.
1809
+ * @param data.ruleId Rule ID
1810
+ * @param data.region Region code (cn, us, eu-core, de)
1811
+ * @returns TransactionRuleResponseDto Rule details
1812
+ * @throws ApiError
1813
+ */
1814
+ public static transactionRuleControllerGetDetail(
1815
+ data: TransactionRuleControllerGetDetailData
1816
+ ): CancelablePromise<TransactionRuleControllerGetDetailResponse> {
1817
+ return __request(OpenAPI, {
1818
+ method: 'GET',
1819
+ url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
1820
+ path: {
1821
+ ruleId: data.ruleId,
1822
+ region: data.region
1823
+ },
1824
+ errors: {
1825
+ 401: 'Unauthorized',
1826
+ 403: 'Forbidden - not owner of rule',
1827
+ 404: 'Rule not found'
1828
+ }
1829
+ });
1830
+ }
1831
+
1832
+ /**
1833
+ * @param data The data for the request.
1834
+ * @param data.region Region code (cn, us, eu-core, de)
1835
+ * @returns unknown
1836
+ * @throws ApiError
1837
+ */
1838
+ public static transactionRuleController2(
1839
+ data: TransactionRuleController2Data
1840
+ ): CancelablePromise<TransactionRuleController2Response> {
1841
+ return __request(OpenAPI, {
1842
+ method: 'PUT',
1843
+ url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
1844
+ path: {
1845
+ region: data.region
1846
+ }
1847
+ });
1848
+ }
1849
+
1850
+ /**
1851
+ * @param data The data for the request.
1852
+ * @param data.region Region code (cn, us, eu-core, de)
1853
+ * @returns void
1854
+ * @throws ApiError
1855
+ */
1856
+ public static transactionRuleController3(
1857
+ data: TransactionRuleController3Data
1858
+ ): CancelablePromise<TransactionRuleController3Response> {
1859
+ return __request(OpenAPI, {
1860
+ method: 'DELETE',
1861
+ url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
1862
+ path: {
1863
+ region: data.region
1864
+ }
1865
+ });
1866
+ }
1867
+
1868
+ /**
1869
+ * Test rule matching
1870
+ * @param data The data for the request.
1871
+ * @param data.ruleId Rule ID to test
1872
+ * @param data.region Region code (cn, us, eu-core, de)
1873
+ * @param data.requestBody
1874
+ * @returns TestRuleResponseDto Test result
1875
+ * @throws ApiError
1876
+ */
1877
+ public static transactionRuleControllerTest(
1878
+ data: TransactionRuleControllerTestData
1879
+ ): CancelablePromise<TransactionRuleControllerTestResponse> {
1880
+ return __request(OpenAPI, {
1881
+ method: 'POST',
1882
+ url: '/api/v1/{region}/bean/transaction-rules/{ruleId}/test',
1883
+ path: {
1884
+ ruleId: data.ruleId,
1885
+ region: data.region
1886
+ },
1887
+ body: data.requestBody,
1888
+ mediaType: 'application/json',
1889
+ errors: {
1890
+ 401: 'Unauthorized',
1891
+ 403: 'Forbidden - not owner of rule',
1892
+ 404: 'Rule not found'
1893
+ }
1894
+ });
1895
+ }
1896
+ }
1897
+
1898
+ export class UsersService {
1899
+ /**
1900
+ * Delete own user account
1901
+ * @param data The data for the request.
1902
+ * @param data.region Region code (cn, us, eu-core, de)
1903
+ * @param data.requestBody
1904
+ * @returns void User deleted successfully
1905
+ * @throws ApiError
1906
+ */
1907
+ public static userControllerDeleteOwnUser(
1908
+ data: UserControllerDeleteOwnUserData
1909
+ ): CancelablePromise<UserControllerDeleteOwnUserResponse> {
1910
+ return __request(OpenAPI, {
1911
+ method: 'DELETE',
1912
+ url: '/api/v1/users',
1913
+ path: {
1914
+ region: data.region
1915
+ },
1916
+ body: data.requestBody,
1917
+ mediaType: 'application/json',
1918
+ errors: {
1919
+ 403: 'Invalid access token'
1920
+ }
1921
+ });
1922
+ }
1923
+
1924
+ /**
1925
+ * Get current authenticated user
1926
+ * @param data The data for the request.
1927
+ * @param data.acceptLanguage
1928
+ * @param data.region Region code (cn, us, eu-core, de)
1929
+ * @returns unknown User retrieved successfully
1930
+ * @throws ApiError
1931
+ */
1932
+ public static userControllerGetUser(
1933
+ data: UserControllerGetUserData
1934
+ ): CancelablePromise<UserControllerGetUserResponse> {
1935
+ return __request(OpenAPI, {
1936
+ method: 'GET',
1937
+ url: '/api/v1/users',
1938
+ path: {
1939
+ region: data.region
1940
+ },
1941
+ headers: {
1942
+ 'accept-language': data.acceptLanguage
1943
+ }
1944
+ });
1945
+ }
1946
+
1947
+ /**
1948
+ * Sign up new user
1949
+ * Create a new account with auto-generated access token. Protected by Cloudflare Turnstile to prevent automated signup (when enabled).
1950
+ * @param data The data for the request.
1951
+ * @param data.region Region code (cn, us, eu-core, de)
1952
+ * @param data.requestBody
1953
+ * @returns unknown User created successfully
1954
+ * @throws ApiError
1955
+ */
1956
+ public static userControllerSignupUser(
1957
+ data: UserControllerSignupUserData
1958
+ ): CancelablePromise<UserControllerSignupUserResponse> {
1959
+ return __request(OpenAPI, {
1960
+ method: 'POST',
1961
+ url: '/api/v1/users',
1962
+ path: {
1963
+ region: data.region
1964
+ },
1965
+ body: data.requestBody,
1966
+ mediaType: 'application/json',
1967
+ errors: {
1968
+ 400: 'Invalid Turnstile token (when Turnstile is enabled)',
1969
+ 403: 'User signup is disabled'
1970
+ }
1971
+ });
1972
+ }
1973
+
1974
+ /**
1975
+ * Delete user by ID (admin only)
1976
+ * @param data The data for the request.
1977
+ * @param data.id User ID to delete
1978
+ * @param data.region Region code (cn, us, eu-core, de)
1979
+ * @returns void User deleted successfully
1980
+ * @throws ApiError
1981
+ */
1982
+ public static userControllerDeleteUser(
1983
+ data: UserControllerDeleteUserData
1984
+ ): CancelablePromise<UserControllerDeleteUserResponse> {
1985
+ return __request(OpenAPI, {
1986
+ method: 'DELETE',
1987
+ url: '/api/v1/users/{id}',
1988
+ path: {
1989
+ id: data.id,
1990
+ region: data.region
1991
+ },
1992
+ errors: {
1993
+ 403: 'Cannot delete own account or insufficient permissions'
1994
+ }
1995
+ });
1996
+ }
1997
+
1998
+ /**
1999
+ * Get user info by user ID
2000
+ * @param data The data for the request.
2001
+ * @param data.id User ID
2002
+ * @param data.region Region code (cn, us, eu-core, de)
2003
+ * @returns unknown User info retrieved successfully
2004
+ * @throws ApiError
2005
+ */
2006
+ public static userControllerGetUserInfo(
2007
+ data: UserControllerGetUserInfoData
2008
+ ): CancelablePromise<UserControllerGetUserInfoResponse> {
2009
+ return __request(OpenAPI, {
2010
+ method: 'GET',
2011
+ url: '/api/v1/users/{id}/info',
2012
+ path: {
2013
+ id: data.id,
2014
+ region: data.region
2015
+ },
2016
+ errors: {
2017
+ 403: 'Cannot access other user info without admin permission'
2018
+ }
2019
+ });
2020
+ }
2021
+
2022
+ /**
2023
+ * Update user settings
2024
+ * @param data The data for the request.
2025
+ * @param data.region Region code (cn, us, eu-core, de)
2026
+ * @param data.requestBody
2027
+ * @returns unknown Settings updated successfully
2028
+ * @throws ApiError
2029
+ */
2030
+ public static userControllerUpdateUserSetting(
2031
+ data: UserControllerUpdateUserSettingData
2032
+ ): CancelablePromise<UserControllerUpdateUserSettingResponse> {
2033
+ return __request(OpenAPI, {
2034
+ method: 'PUT',
2035
+ url: '/api/v1/users/setting',
2036
+ path: {
2037
+ region: data.region
2038
+ },
2039
+ body: data.requestBody,
2040
+ mediaType: 'application/json',
2041
+ errors: {
2042
+ 403: 'Insufficient permissions'
2043
+ }
2044
+ });
2045
+ }
2046
+
2047
+ /**
2048
+ * Get all user settings paginated (admin only)
2049
+ * @param data The data for the request.
2050
+ * @param data.pageNo Page number
2051
+ * @param data.pageSize Page size
2052
+ * @param data.region Region code (cn, us, eu-core, de)
2053
+ * @returns unknown Settings list retrieved successfully
2054
+ * @throws ApiError
2055
+ */
2056
+ public static userControllerGetAllUserSettingsByPage(
2057
+ data: UserControllerGetAllUserSettingsByPageData
2058
+ ): CancelablePromise<UserControllerGetAllUserSettingsByPageResponse> {
2059
+ return __request(OpenAPI, {
2060
+ method: 'GET',
2061
+ url: '/api/v1/users/settings-by-page',
2062
+ path: {
2063
+ region: data.region
2064
+ },
2065
+ query: {
2066
+ pageNo: data.pageNo,
2067
+ pageSize: data.pageSize
2068
+ }
2069
+ });
2070
+ }
2071
+
2072
+ /**
2073
+ * Get asset and liability summary for current user
2074
+ * @param data The data for the request.
2075
+ * @param data.region Region code (cn, us, eu-core, de)
2076
+ * @returns unknown Summary retrieved successfully
2077
+ * @throws ApiError
2078
+ */
2079
+ public static userControllerGetAssetLiabilitySummary(
2080
+ data: UserControllerGetAssetLiabilitySummaryData
2081
+ ): CancelablePromise<UserControllerGetAssetLiabilitySummaryResponse> {
2082
+ return __request(OpenAPI, {
2083
+ method: 'GET',
2084
+ url: '/api/v1/users/asset-liability-summary',
2085
+ path: {
2086
+ region: data.region
2087
+ }
2088
+ });
2089
+ }
2090
+ }
2091
+
2092
+ export class PropertiesService {
2093
+ /**
2094
+ * Get all system properties
2095
+ * @param data The data for the request.
2096
+ * @param data.region Region code (cn, us, eu-core, de)
2097
+ * @returns unknown Properties retrieved successfully
2098
+ * @throws ApiError
2099
+ */
2100
+ public static propertyControllerGetAll(
2101
+ data: PropertyControllerGetAllData
2102
+ ): CancelablePromise<PropertyControllerGetAllResponse> {
2103
+ return __request(OpenAPI, {
2104
+ method: 'GET',
2105
+ url: '/api/v1/admin/properties',
2106
+ path: {
2107
+ region: data.region
2108
+ },
2109
+ errors: {
2110
+ 401: 'Unauthorized',
2111
+ 403: 'Forbidden - insufficient permissions'
2112
+ }
2113
+ });
2114
+ }
2115
+
2116
+ /**
2117
+ * Get property by key
2118
+ * @param data The data for the request.
2119
+ * @param data.key Property key
2120
+ * @param data.region Region code (cn, us, eu-core, de)
2121
+ * @returns unknown Property retrieved successfully
2122
+ * @throws ApiError
2123
+ */
2124
+ public static propertyControllerGetByKey(
2125
+ data: PropertyControllerGetByKeyData
2126
+ ): CancelablePromise<PropertyControllerGetByKeyResponse> {
2127
+ return __request(OpenAPI, {
2128
+ method: 'GET',
2129
+ url: '/api/v1/admin/properties/{key}',
2130
+ path: {
2131
+ key: data.key,
2132
+ region: data.region
2133
+ },
2134
+ errors: {
2135
+ 401: 'Unauthorized',
2136
+ 403: 'Forbidden - insufficient permissions',
2137
+ 404: 'Property not found'
2138
+ }
2139
+ });
2140
+ }
2141
+
2142
+ /**
2143
+ * @param data The data for the request.
2144
+ * @param data.region Region code (cn, us, eu-core, de)
2145
+ * @returns unknown
2146
+ * @throws ApiError
2147
+ */
2148
+ public static propertyController(
2149
+ data: PropertyControllerData
2150
+ ): CancelablePromise<PropertyControllerResponse> {
2151
+ return __request(OpenAPI, {
2152
+ method: 'PUT',
2153
+ url: '/api/v1/admin/properties/{key}',
2154
+ path: {
2155
+ region: data.region
2156
+ }
2157
+ });
2158
+ }
2159
+
2160
+ /**
2161
+ * @param data The data for the request.
2162
+ * @param data.region Region code (cn, us, eu-core, de)
2163
+ * @returns void
2164
+ * @throws ApiError
2165
+ */
2166
+ public static propertyController1(
2167
+ data: PropertyController1Data
2168
+ ): CancelablePromise<PropertyController1Response> {
2169
+ return __request(OpenAPI, {
2170
+ method: 'DELETE',
2171
+ url: '/api/v1/admin/properties/{key}',
2172
+ path: {
2173
+ region: data.region
2174
+ }
2175
+ });
2176
+ }
2177
+ }
2178
+
2179
+ export class BeanImportService {
2180
+ /**
2181
+ * Import a bill file
2182
+ * 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).
2183
+ * @param data The data for the request.
2184
+ * @param data.region Region code (cn, us, eu-core, de)
2185
+ * @param data.formData Bill file to import
2186
+ * @returns ImportResultDto File imported successfully
2187
+ * @throws ApiError
2188
+ */
2189
+ public static fileImportControllerImportFile(
2190
+ data: FileImportControllerImportFileData
2191
+ ): CancelablePromise<FileImportControllerImportFileResponse> {
2192
+ return __request(OpenAPI, {
2193
+ method: 'POST',
2194
+ url: '/api/v1/{region}/bean/import/file',
2195
+ path: {
2196
+ region: data.region
2197
+ },
2198
+ formData: data.formData,
2199
+ mediaType: 'multipart/form-data',
2200
+ errors: {
2201
+ 400: 'Bad request - file-format-unsupported or file-import-failed',
2202
+ 413: 'Payload too large - file exceeds 50MB limit',
2203
+ 429: 'Too many requests - user already has import in progress',
2204
+ 500: 'Internal server error - DATABASE_ERROR'
2205
+ }
2206
+ });
2207
+ }
2208
+
2209
+ /**
2210
+ * Identify file type
2211
+ * 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.
2212
+ * @param data The data for the request.
2213
+ * @param data.region Region code (cn, us, eu-core, de)
2214
+ * @param data.formData File to identify
2215
+ * @returns IdentifyResultDto File identification result
2216
+ * @throws ApiError
2217
+ */
2218
+ public static fileImportControllerIdentifyFile(
2219
+ data: FileImportControllerIdentifyFileData
2220
+ ): CancelablePromise<FileImportControllerIdentifyFileResponse> {
2221
+ return __request(OpenAPI, {
2222
+ method: 'POST',
2223
+ url: '/api/v1/{region}/bean/import/identify',
2224
+ path: {
2225
+ region: data.region
2226
+ },
2227
+ formData: data.formData,
2228
+ mediaType: 'multipart/form-data',
2229
+ errors: {
2230
+ 400: 'Bad request - No file uploaded'
2231
+ }
2232
+ });
2233
+ }
2234
+
2235
+ /**
2236
+ * Get importer configuration
2237
+ * Returns the current configuration for the specified importer. Creates default configuration if none exists.
2238
+ * @param data The data for the request.
2239
+ * @param data.importerId Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk
2240
+ * @param data.region Region code (cn, us, eu-core, de)
2241
+ * @returns ImporterConfigDto Configuration retrieved successfully
2242
+ * @throws ApiError
2243
+ */
2244
+ public static importerConfigControllerGetConfig(
2245
+ data: ImporterConfigControllerGetConfigData
2246
+ ): CancelablePromise<ImporterConfigControllerGetConfigResponse> {
2247
+ return __request(OpenAPI, {
2248
+ method: 'GET',
2249
+ url: '/api/v1/{region}/bean/import/config/{importerId}',
2250
+ path: {
2251
+ importerId: data.importerId,
2252
+ region: data.region
2253
+ },
2254
+ errors: {
2255
+ 400: 'Invalid input - Unsupported importer',
2256
+ 401: 'Unauthorized - Authentication required'
2257
+ }
2258
+ });
2259
+ }
2260
+
2261
+ /**
2262
+ * @param data The data for the request.
2263
+ * @param data.region Region code (cn, us, eu-core, de)
2264
+ * @returns unknown
2265
+ * @throws ApiError
2266
+ */
2267
+ public static importerConfigController(
2268
+ data: ImporterConfigControllerData
2269
+ ): CancelablePromise<ImporterConfigControllerResponse> {
2270
+ return __request(OpenAPI, {
2271
+ method: 'PUT',
2272
+ url: '/api/v1/{region}/bean/import/config/{importerId}',
2273
+ path: {
2274
+ region: data.region
2275
+ }
2276
+ });
2277
+ }
2278
+
2279
+ /**
2280
+ * @param data The data for the request.
2281
+ * @param data.region Region code (cn, us, eu-core, de)
2282
+ * @returns unknown
2283
+ * @throws ApiError
2284
+ */
2285
+ public static importerConfigController1(
2286
+ data: ImporterConfigController1Data
2287
+ ): CancelablePromise<ImporterConfigController1Response> {
2288
+ return __request(OpenAPI, {
2289
+ method: 'POST',
2290
+ url: '/api/v1/{region}/bean/import/config/{importerId}/reset',
2291
+ path: {
2292
+ region: data.region
2293
+ }
2294
+ });
2295
+ }
2296
+ }
2297
+
2298
+ export class ProviderSyncService {
2299
+ /**
2300
+ * Sync transactions from financial data provider
2301
+ *
2302
+ * Accepts raw transactions from external financial data providers, transforms them to Beancount format, and processes them through the ingestion pipeline.
2303
+ *
2304
+ * **Supported Providers:**
2305
+ * - **plaid**: Plaid API (US, Canada, Europe)
2306
+ * - **teller**: Teller API (US)
2307
+ * - **truelayer**: TrueLayer Open Banking (UK, Europe)
2308
+ * - **gocardless**: GoCardless Bank Account Data (Europe)
2309
+ * - **simplefin**: SimpleFIN (Self-hosted)
2310
+ * - **yodlee**: Yodlee (Global)
2311
+ * - **beancount-direct**: Beancount format transactions
2312
+ *
2313
+ * **Processing Flow:**
2314
+ * 1. Transform raw data via provider adapter
2315
+ * 2. Validate transaction format
2316
+ * 3. Deduplicate using originalId
2317
+ * 4. Classify using rule engine
2318
+ * 5. Route low-confidence to Review Center
2319
+ * 6. Persist validated transactions
2320
+ *
2321
+ * @param data The data for the request.
2322
+ * @param data.providerName Provider name
2323
+ * @param data.region Region code
2324
+ * @param data.requestBody
2325
+ * @returns ProviderSyncResponseDto Sync completed successfully
2326
+ * @throws ApiError
2327
+ */
2328
+ public static providerSyncControllerSync(
2329
+ data: ProviderSyncControllerSyncData
2330
+ ): CancelablePromise<ProviderSyncControllerSyncResponse> {
2331
+ return __request(OpenAPI, {
2332
+ method: 'POST',
2333
+ url: '/api/v1/{region}/bean/import/provider/{providerName}/sync',
2334
+ path: {
2335
+ providerName: data.providerName,
2336
+ region: data.region
2337
+ },
2338
+ body: data.requestBody,
2339
+ mediaType: 'application/json',
2340
+ errors: {
2341
+ 400: 'Invalid request data',
2342
+ 401: 'Missing or invalid authentication',
2343
+ 404: 'Provider not supported'
2344
+ }
2345
+ });
2346
+ }
2347
+
2348
+ /**
2349
+ * Get supported providers
2350
+ * Returns a list of all providers supported by the sync endpoint.
2351
+ * @param data The data for the request.
2352
+ * @param data.region Region code (cn, us, eu-core, de)
2353
+ * @returns SupportedProvidersResponseDto List of supported providers
2354
+ * @throws ApiError
2355
+ */
2356
+ public static providerSyncControllerGetSupportedProviders(
2357
+ data: ProviderSyncControllerGetSupportedProvidersData
2358
+ ): CancelablePromise<ProviderSyncControllerGetSupportedProvidersResponse> {
2359
+ return __request(OpenAPI, {
2360
+ method: 'GET',
2361
+ url: '/api/v1/{region}/bean/import/provider/supported',
2362
+ path: {
2363
+ region: data.region
2364
+ },
2365
+ errors: {
2366
+ 401: 'Missing or invalid authentication'
2367
+ }
2368
+ });
2369
+ }
2370
+
2371
+ /**
2372
+ * Check if provider is supported
2373
+ * Returns whether a specific provider is supported.
2374
+ * @param data The data for the request.
2375
+ * @param data.providerName Provider name to check
2376
+ * @param data.region Region code (cn, us, eu-core, de)
2377
+ * @returns unknown Provider support status
2378
+ * @throws ApiError
2379
+ */
2380
+ public static providerSyncControllerIsProviderSupported(
2381
+ data: ProviderSyncControllerIsProviderSupportedData
2382
+ ): CancelablePromise<ProviderSyncControllerIsProviderSupportedResponse> {
2383
+ return __request(OpenAPI, {
2384
+ method: 'GET',
2385
+ url: '/api/v1/{region}/bean/import/provider/{providerName}/supported',
2386
+ path: {
2387
+ providerName: data.providerName,
2388
+ region: data.region
2389
+ },
2390
+ errors: {
2391
+ 401: 'Missing or invalid authentication'
2392
+ }
2393
+ });
2394
+ }
2395
+ }
2396
+
2397
+ export class BeanNlpService {
2398
+ /**
2399
+ * Process natural language input
2400
+ * 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"
2401
+ * @param data The data for the request.
2402
+ * @param data.region Region code (cn, us, eu-core, de)
2403
+ * @param data.requestBody Natural language transaction input with optional session ID
2404
+ * @returns NlpResponseDto NLP processing result - either created transaction or asking for more info
2405
+ * @throws ApiError
2406
+ */
2407
+ public static nlpControllerProcessNaturalLanguage(
2408
+ data: NlpControllerProcessNaturalLanguageData
2409
+ ): CancelablePromise<NlpControllerProcessNaturalLanguageResponse> {
2410
+ return __request(OpenAPI, {
2411
+ method: 'POST',
2412
+ url: '/api/v1/{region}/bean/nlp/process',
2413
+ path: {
2414
+ region: data.region
2415
+ },
2416
+ body: data.requestBody,
2417
+ mediaType: 'application/json',
2418
+ errors: {
2419
+ 400: 'Invalid input',
2420
+ 401: 'Unauthorized'
2421
+ }
2422
+ });
2423
+ }
2424
+
2425
+ /**
2426
+ * Clear dialogue session
2427
+ * Clear the current NLP dialogue session. Use this to cancel an ongoing multi-turn dialogue.
2428
+ * @param data The data for the request.
2429
+ * @param data.region Region code (cn, us, eu-core, de)
2430
+ * @param data.sessionId Specific session ID to clear (defaults to user session)
2431
+ * @returns void Session cleared successfully
2432
+ * @throws ApiError
2433
+ */
2434
+ public static nlpControllerClearSession(
2435
+ data: NlpControllerClearSessionData
2436
+ ): CancelablePromise<NlpControllerClearSessionResponse> {
2437
+ return __request(OpenAPI, {
2438
+ method: 'DELETE',
2439
+ url: '/api/v1/{region}/bean/nlp/session',
2440
+ path: {
2441
+ region: data.region
2442
+ },
2443
+ query: {
2444
+ sessionId: data.sessionId
2445
+ },
2446
+ errors: {
2447
+ 401: 'Unauthorized'
2448
+ }
2449
+ });
2450
+ }
2451
+
2452
+ /**
2453
+ * Get current session state
2454
+ * Get the current NLP dialogue session state. Useful for debugging and displaying session context in UI.
2455
+ * @param data The data for the request.
2456
+ * @param data.region Region code (cn, us, eu-core, de)
2457
+ * @param data.sessionId Specific session ID to get (defaults to user session)
2458
+ * @returns unknown Current session state (or null if no active session)
2459
+ * @throws ApiError
2460
+ */
2461
+ public static nlpControllerGetSession(
2462
+ data: NlpControllerGetSessionData
2463
+ ): CancelablePromise<NlpControllerGetSessionResponse> {
2464
+ return __request(OpenAPI, {
2465
+ method: 'GET',
2466
+ url: '/api/v1/{region}/bean/nlp/session',
2467
+ path: {
2468
+ region: data.region
2469
+ },
2470
+ query: {
2471
+ sessionId: data.sessionId
2472
+ },
2473
+ errors: {
2474
+ 401: 'Unauthorized'
2475
+ }
2476
+ });
2477
+ }
2478
+ }
2479
+
2480
+ export class BeanPlatformsService {
2481
+ /**
2482
+ * Get all platforms with statistics
2483
+ * @param data The data for the request.
2484
+ * @param data.region Region code (cn, us, eu-core, de)
2485
+ * @returns unknown List of platforms with binding and account counts
2486
+ * @throws ApiError
2487
+ */
2488
+ public static platformControllerFindAll(
2489
+ data: PlatformControllerFindAllData
2490
+ ): CancelablePromise<PlatformControllerFindAllResponse> {
2491
+ return __request(OpenAPI, {
2492
+ method: 'GET',
2493
+ url: '/api/v1/bean/platforms',
2494
+ path: {
2495
+ region: data.region
2496
+ }
2497
+ });
2498
+ }
2499
+
2500
+ /**
2501
+ * @param data The data for the request.
2502
+ * @param data.region Region code (cn, us, eu-core, de)
2503
+ * @returns unknown
2504
+ * @throws ApiError
2505
+ */
2506
+ public static platformController(
2507
+ data: PlatformControllerData
2508
+ ): CancelablePromise<PlatformControllerResponse> {
2509
+ return __request(OpenAPI, {
2510
+ method: 'POST',
2511
+ url: '/api/v1/bean/platforms',
2512
+ path: {
2513
+ region: data.region
2514
+ }
2515
+ });
2516
+ }
2517
+
2518
+ /**
2519
+ * Get platform list for current user
2520
+ * @param data The data for the request.
2521
+ * @param data.region Region code (cn, us, eu-core, de)
2522
+ * @returns unknown List of platforms with user binding status
2523
+ * @throws ApiError
2524
+ */
2525
+ public static platformControllerGetPlatformList(
2526
+ data: PlatformControllerGetPlatformListData
2527
+ ): CancelablePromise<PlatformControllerGetPlatformListResponse> {
2528
+ return __request(OpenAPI, {
2529
+ method: 'GET',
2530
+ url: '/api/v1/bean/platforms/list',
2531
+ path: {
2532
+ region: data.region
2533
+ }
2534
+ });
2535
+ }
2536
+
2537
+ /**
2538
+ * @param data The data for the request.
2539
+ * @param data.region Region code (cn, us, eu-core, de)
2540
+ * @returns unknown
2541
+ * @throws ApiError
2542
+ */
2543
+ public static platformController1(
2544
+ data: PlatformController1Data
2545
+ ): CancelablePromise<PlatformController1Response> {
2546
+ return __request(OpenAPI, {
2547
+ method: 'PUT',
2548
+ url: '/api/v1/bean/platforms/{id}',
2549
+ path: {
2550
+ region: data.region
2551
+ }
2552
+ });
2553
+ }
2554
+
2555
+ /**
2556
+ * @param data The data for the request.
2557
+ * @param data.region Region code (cn, us, eu-core, de)
2558
+ * @returns void
2559
+ * @throws ApiError
2560
+ */
2561
+ public static platformController2(
2562
+ data: PlatformController2Data
2563
+ ): CancelablePromise<PlatformController2Response> {
2564
+ return __request(OpenAPI, {
2565
+ method: 'DELETE',
2566
+ url: '/api/v1/bean/platforms/{id}',
2567
+ path: {
2568
+ region: data.region
2569
+ }
2570
+ });
2571
+ }
2572
+ }
2573
+
2574
+ export class SymbolsService {
2575
+ /**
2576
+ * Search for symbols
2577
+ * Search symbols by query with optional filters for asset class, area, and indices
2578
+ * @param data The data for the request.
2579
+ * @param data.region Region code (cn, us, eu-core, de)
2580
+ * @param data.includeIndices Include index symbols in results
2581
+ * @param data.assetSubClass Asset sub-class filter
2582
+ * @param data.assetClass Asset class filter
2583
+ * @param data.area Geographic area filter (e.g., CN, US)
2584
+ * @param data.query Search query string
2585
+ * @returns unknown Symbols found successfully
2586
+ * @throws ApiError
2587
+ */
2588
+ public static symbolControllerLookupSymbol(
2589
+ data: SymbolControllerLookupSymbolData
2590
+ ): CancelablePromise<SymbolControllerLookupSymbolResponse> {
2591
+ return __request(OpenAPI, {
2592
+ method: 'GET',
2593
+ url: '/api/v1/market/symbols/lookup',
2594
+ path: {
2595
+ region: data.region
2596
+ },
2597
+ query: {
2598
+ includeIndices: data.includeIndices,
2599
+ assetSubClass: data.assetSubClass,
2600
+ assetClass: data.assetClass,
2601
+ area: data.area,
2602
+ query: data.query
2603
+ },
2604
+ errors: {
2605
+ 400: 'Invalid query parameters'
2606
+ }
2607
+ });
2608
+ }
2609
+
2610
+ /**
2611
+ * Get symbol data
2612
+ * Retrieve detailed symbol information including optional historical data
2613
+ * @param data The data for the request.
2614
+ * @param data.dataSource Data source provider
2615
+ * @param data.symbol Symbol identifier (e.g., ticker code)
2616
+ * @param data.region Region code (cn, us, eu-core, de)
2617
+ * @param data.includeHistoricalData Include historical price data (0 or 1)
2618
+ * @returns unknown Symbol data retrieved successfully
2619
+ * @throws ApiError
2620
+ */
2621
+ public static symbolControllerGetSymbolData(
2622
+ data: SymbolControllerGetSymbolDataData
2623
+ ): CancelablePromise<SymbolControllerGetSymbolDataResponse> {
2624
+ return __request(OpenAPI, {
2625
+ method: 'GET',
2626
+ url: '/api/v1/market/symbols/{dataSource}/{symbol}',
2627
+ path: {
2628
+ dataSource: data.dataSource,
2629
+ symbol: data.symbol,
2630
+ region: data.region
2631
+ },
2632
+ query: {
2633
+ includeHistoricalData: data.includeHistoricalData
2634
+ },
2635
+ errors: {
2636
+ 400: 'Invalid data source',
2637
+ 404: 'Symbol not found'
2638
+ }
2639
+ });
2640
+ }
2641
+
2642
+ /**
2643
+ * Gather symbol data for specific date
2644
+ * Retrieve historical symbol data for a specific date
2645
+ * @param data The data for the request.
2646
+ * @param data.dataSource Data source provider
2647
+ * @param data.dateString Date in ISO 8601 format (YYYY-MM-DD)
2648
+ * @param data.symbol Symbol identifier (e.g., ticker code)
2649
+ * @param data.region Region code (cn, us, eu-core, de)
2650
+ * @returns unknown Historical data retrieved successfully
2651
+ * @throws ApiError
2652
+ */
2653
+ public static symbolControllerGatherSymbolForDate(
2654
+ data: SymbolControllerGatherSymbolForDateData
2655
+ ): CancelablePromise<SymbolControllerGatherSymbolForDateResponse> {
2656
+ return __request(OpenAPI, {
2657
+ method: 'GET',
2658
+ url: '/api/v1/market/symbols/{dataSource}/{symbol}/{dateString}',
2659
+ path: {
2660
+ dataSource: data.dataSource,
2661
+ dateString: data.dateString,
2662
+ symbol: data.symbol,
2663
+ region: data.region
2664
+ },
2665
+ errors: {
2666
+ 400: 'Invalid date format',
2667
+ 404: 'Symbol data not found for specified date'
2668
+ }
2669
+ });
2670
+ }
2671
+
2672
+ /**
2673
+ * @param data The data for the request.
2674
+ * @param data.region Region code (cn, us, eu-core, de)
2675
+ * @returns unknown
2676
+ * @throws ApiError
2677
+ */
2678
+ public static symbolController(
2679
+ data: SymbolControllerData
2680
+ ): CancelablePromise<SymbolControllerResponse> {
2681
+ return __request(OpenAPI, {
2682
+ method: 'PUT',
2683
+ url: '/api/v1/market/symbols/yahoo/batch-update',
2684
+ path: {
2685
+ region: data.region
2686
+ }
2687
+ });
2688
+ }
2689
+ }
2690
+
2691
+ export class DefaultService {
2692
+ /**
2693
+ * @param data The data for the request.
2694
+ * @param data.region Region code (cn, us, eu-core, de)
2695
+ * @returns unknown
2696
+ * @throws ApiError
2697
+ */
2698
+ public static cacheControllerFlushCache(
2699
+ data: CacheControllerFlushCacheData
2700
+ ): CancelablePromise<CacheControllerFlushCacheResponse> {
2701
+ return __request(OpenAPI, {
2702
+ method: 'POST',
2703
+ url: '/api/v1/cache/flush',
2704
+ path: {
2705
+ region: data.region
2706
+ }
2707
+ });
2708
+ }
2709
+ }
2710
+
2711
+ export class DashboardService {
2712
+ /**
2713
+ * Get net worth overview
2714
+ * Returns total net worth with breakdown of assets and liabilities
2715
+ * @param data The data for the request.
2716
+ * @param data.region Region code (cn, us, eu-core, de)
2717
+ * @param data.date Date for balance calculation (ISO 8601 format)
2718
+ * @returns NetWorthResponseDto Net worth retrieved successfully
2719
+ * @throws ApiError
2720
+ */
2721
+ public static dashboardControllerGetNetWorth(
2722
+ data: DashboardControllerGetNetWorthData
2723
+ ): CancelablePromise<DashboardControllerGetNetWorthResponse> {
2724
+ return __request(OpenAPI, {
2725
+ method: 'GET',
2726
+ url: '/api/v1/{region}/dashboard/net-worth',
2727
+ path: {
2728
+ region: data.region
2729
+ },
2730
+ query: {
2731
+ date: data.date
2732
+ },
2733
+ errors: {
2734
+ 401: 'User not authenticated'
2735
+ }
2736
+ });
2737
+ }
2738
+
2739
+ /**
2740
+ * Get accounts grouped by platform
2741
+ * Returns accounts with balances grouped by financial platform
2742
+ * @param data The data for the request.
2743
+ * @param data.region Region code (cn, us, eu-core, de)
2744
+ * @param data.groupBy Grouping strategy
2745
+ * @param data.date Date for balance calculation (ISO 8601 format)
2746
+ * @returns unknown Accounts retrieved successfully. Response type depends on groupBy parameter.
2747
+ * @throws ApiError
2748
+ */
2749
+ public static dashboardControllerGetAccounts(
2750
+ data: DashboardControllerGetAccountsData
2751
+ ): CancelablePromise<DashboardControllerGetAccountsResponse> {
2752
+ return __request(OpenAPI, {
2753
+ method: 'GET',
2754
+ url: '/api/v1/{region}/dashboard/accounts',
2755
+ path: {
2756
+ region: data.region
2757
+ },
2758
+ query: {
2759
+ groupBy: data.groupBy,
2760
+ date: data.date
2761
+ },
2762
+ errors: {
2763
+ 401: 'User not authenticated'
2764
+ }
2765
+ });
2766
+ }
2767
+
2768
+ /**
2769
+ * Get cash flow summary
2770
+ * Returns income, expenses, and savings for a monthly period
2771
+ * @param data The data for the request.
2772
+ * @param data.period Period in YYYY-MM format
2773
+ * @param data.region Region code (cn, us, eu-core, de)
2774
+ * @returns CashFlowResponseDto Cash flow retrieved successfully
2775
+ * @throws ApiError
2776
+ */
2777
+ public static dashboardControllerGetCashFlow(
2778
+ data: DashboardControllerGetCashFlowData
2779
+ ): CancelablePromise<DashboardControllerGetCashFlowResponse> {
2780
+ return __request(OpenAPI, {
2781
+ method: 'GET',
2782
+ url: '/api/v1/{region}/dashboard/cash-flow',
2783
+ path: {
2784
+ region: data.region
2785
+ },
2786
+ query: {
2787
+ period: data.period
2788
+ },
2789
+ errors: {
2790
+ 400: 'Invalid period format',
2791
+ 401: 'User not authenticated'
2792
+ }
2793
+ });
2794
+ }
2795
+ }
2796
+
2797
+ export class ReportingService {
2798
+ /**
2799
+ * Get portfolio value trends
2800
+ *
2801
+ * Returns time series data of portfolio net worth.
2802
+ *
2803
+ * **Multi-currency Support:**
2804
+ * - `series[].byCurrency` - Currency breakdown for each data point
2805
+ * - `byCurrency` - Separate time series grouped by currency
2806
+ * - `warnings` - Exchange rate warnings if conversion failed
2807
+ *
2808
+ * **Parameters:**
2809
+ * - `period`: Time period (1m, 3m, 6m, 1y)
2810
+ * - `granularity`: Data granularity (day, week, month)
2811
+ *
2812
+ * @param data The data for the request.
2813
+ * @param data.region Region code (cn, us, eu-core, de)
2814
+ * @param data.period Time period
2815
+ * @param data.granularity Data granularity
2816
+ * @returns PortfolioTrendsResponseDto Trends retrieved successfully
2817
+ * @throws ApiError
2818
+ */
2819
+ public static reportingControllerGetPortfolioTrends(
2820
+ data: ReportingControllerGetPortfolioTrendsData
2821
+ ): CancelablePromise<ReportingControllerGetPortfolioTrendsResponse> {
2822
+ return __request(OpenAPI, {
2823
+ method: 'GET',
2824
+ url: '/api/v1/{region}/reporting/portfolio/trends',
2825
+ path: {
2826
+ region: data.region
2827
+ },
2828
+ query: {
2829
+ period: data.period,
2830
+ granularity: data.granularity
2831
+ },
2832
+ errors: {
2833
+ 401: 'User not authenticated'
2834
+ }
2835
+ });
2836
+ }
2837
+
2838
+ /**
2839
+ * Generate portfolio snapshot
2840
+ *
2841
+ * Manually generate a portfolio snapshot for a specific date.
2842
+ *
2843
+ * **Multi-currency Support:**
2844
+ * - Fetches balances grouped by currency
2845
+ * - Uses user's baseCurrency setting for conversion
2846
+ * - Stores exchange rates and warnings
2847
+ *
2848
+ * **Use Cases:**
2849
+ * - Testing snapshot generation
2850
+ * - Force regeneration after data correction
2851
+ * - Initial setup for new users
2852
+ *
2853
+ * @param data The data for the request.
2854
+ * @param data.region Region code (cn, us, eu-core, de)
2855
+ * @param data.requestBody Optional date (defaults to today)
2856
+ * @returns GenerateSnapshotResponse Snapshot generated successfully
2857
+ * @throws ApiError
2858
+ */
2859
+ public static reportingControllerGenerateSnapshot(
2860
+ data: ReportingControllerGenerateSnapshotData
2861
+ ): CancelablePromise<ReportingControllerGenerateSnapshotResponse> {
2862
+ return __request(OpenAPI, {
2863
+ method: 'POST',
2864
+ url: '/api/v1/{region}/reporting/snapshots/generate',
2865
+ path: {
2866
+ region: data.region
2867
+ },
2868
+ body: data.requestBody,
2869
+ mediaType: 'application/json',
2870
+ errors: {
2871
+ 400: 'Invalid date format',
2872
+ 401: 'User not authenticated'
2873
+ }
2874
+ });
2875
+ }
2876
+
2877
+ /**
2878
+ * Backfill portfolio snapshots
2879
+ *
2880
+ * Generate snapshots for a date range (historical data backfill).
2881
+ *
2882
+ * **Multi-currency Support:**
2883
+ * - Each snapshot includes multi-currency data
2884
+ * - Uses exchange rates available at generation time
2885
+ * - Warnings stored for missing exchange rates
2886
+ *
2887
+ * **Best Practices:**
2888
+ * - Use for initial setup after account configuration
2889
+ * - Run during low-traffic periods for large date ranges
2890
+ * - Existing snapshots are skipped (not regenerated)
2891
+ *
2892
+ * @param data The data for the request.
2893
+ * @param data.region Region code (cn, us, eu-core, de)
2894
+ * @param data.requestBody
2895
+ * @returns BackfillSnapshotsResponse Backfill completed successfully
2896
+ * @throws ApiError
2897
+ */
2898
+ public static reportingControllerBackfillSnapshots(
2899
+ data: ReportingControllerBackfillSnapshotsData
2900
+ ): CancelablePromise<ReportingControllerBackfillSnapshotsResponse> {
2901
+ return __request(OpenAPI, {
2902
+ method: 'POST',
2903
+ url: '/api/v1/{region}/reporting/snapshots/backfill',
2904
+ path: {
2905
+ region: data.region
2906
+ },
2907
+ body: data.requestBody,
2908
+ mediaType: 'application/json',
2909
+ errors: {
2910
+ 400: 'Invalid date format or range',
2911
+ 401: 'User not authenticated',
2912
+ 409: 'Backfill already in progress for this user'
2913
+ }
2914
+ });
2915
+ }
2916
+ }
2917
+
2918
+ export class ApiKeysService {
2919
+ /**
2920
+ * @param data The data for the request.
2921
+ * @param data.region Region code (cn, us, eu-core, de)
2922
+ * @returns unknown
2923
+ * @throws ApiError
2924
+ */
2925
+ public static apiKeysController(
2926
+ data: ApiKeysControllerData
2927
+ ): CancelablePromise<ApiKeysControllerResponse> {
2928
+ return __request(OpenAPI, {
2929
+ method: 'POST',
2930
+ url: '/api/v1/auth/api-keys',
2931
+ path: {
2932
+ region: data.region
2933
+ }
2934
+ });
2935
+ }
2936
+ }
2937
+
2938
+ export class AuthService {
2939
+ /**
2940
+ * Anonymous login with access token
2941
+ * @param data The data for the request.
2942
+ * @param data.region Region code (cn, us, eu-core, de)
2943
+ * @param data.requestBody
2944
+ * @returns unknown Login successful
2945
+ * @throws ApiError
2946
+ */
2947
+ public static authControllerAccessTokenLogin(
2948
+ data: AuthControllerAccessTokenLoginData
2949
+ ): CancelablePromise<AuthControllerAccessTokenLoginResponse> {
2950
+ return __request(OpenAPI, {
2951
+ method: 'POST',
2952
+ url: '/api/v1/auth/sessions/anonymous',
2953
+ path: {
2954
+ region: data.region
2955
+ },
2956
+ body: data.requestBody,
2957
+ mediaType: 'application/json',
2958
+ errors: {
2959
+ 401: 'Invalid access token'
2960
+ }
2961
+ });
2962
+ }
2963
+ }
2964
+
2965
+ export class ExchangeRateService {
2966
+ /**
2967
+ * Get exchange rate for currency pair
2968
+ * Retrieves historical exchange rate for a specific date and currency pair
2969
+ * @param data The data for the request.
2970
+ * @param data.symbol Currency pair symbol (e.g., USDCNY, EURUSD)
2971
+ * @param data.dateString Date in ISO format (YYYY-MM-DD)
2972
+ * @param data.region Region code (cn, us, eu-core, de)
2973
+ * @returns unknown Exchange rate retrieved successfully
2974
+ * @throws ApiError
2975
+ */
2976
+ public static exchangeRateControllerGetExchangeRate(
2977
+ data: ExchangeRateControllerGetExchangeRateData
2978
+ ): CancelablePromise<ExchangeRateControllerGetExchangeRateResponse> {
2979
+ return __request(OpenAPI, {
2980
+ method: 'GET',
2981
+ url: '/api/v1/market/exchange-rates/{symbol}/{dateString}',
2982
+ path: {
2983
+ symbol: data.symbol,
2984
+ dateString: data.dateString,
2985
+ region: data.region
2986
+ },
2987
+ errors: {
2988
+ 404: 'Exchange rate not found for the specified currency pair and date'
2989
+ }
2990
+ });
2991
+ }
2992
+ }
2993
+
2994
+ export class HealthService {
2995
+ /**
2996
+ * Basic health check for K8s/load balancer probes
2997
+ * @param data The data for the request.
2998
+ * @param data.region Region code (cn, us, eu-core, de)
2999
+ * @returns unknown Service is healthy
3000
+ * @throws ApiError
3001
+ */
3002
+ public static healthControllerGetHealth(
3003
+ data: HealthControllerGetHealthData
3004
+ ): CancelablePromise<HealthControllerGetHealthResponse> {
3005
+ return __request(OpenAPI, {
3006
+ method: 'GET',
3007
+ url: '/api/v1/health',
3008
+ path: {
3009
+ region: data.region
3010
+ },
3011
+ errors: {
3012
+ 503: 'Service unavailable'
3013
+ }
3014
+ });
3015
+ }
3016
+
3017
+ /**
3018
+ * Check database connection health
3019
+ * @param data The data for the request.
3020
+ * @param data.region Region code (cn, us, eu-core, de)
3021
+ * @returns unknown Database is healthy
3022
+ * @throws ApiError
3023
+ */
3024
+ public static healthControllerCheckDatabase(
3025
+ data: HealthControllerCheckDatabaseData
3026
+ ): CancelablePromise<HealthControllerCheckDatabaseResponse> {
3027
+ return __request(OpenAPI, {
3028
+ method: 'GET',
3029
+ url: '/api/v1/health/database',
3030
+ path: {
3031
+ region: data.region
3032
+ },
3033
+ errors: {
3034
+ 503: 'Database unavailable'
3035
+ }
3036
+ });
3037
+ }
3038
+
3039
+ /**
3040
+ * Check Redis connection health
3041
+ * @param data The data for the request.
3042
+ * @param data.region Region code (cn, us, eu-core, de)
3043
+ * @returns unknown Redis is healthy
3044
+ * @throws ApiError
3045
+ */
3046
+ public static healthControllerCheckRedis(
3047
+ data: HealthControllerCheckRedisData
3048
+ ): CancelablePromise<HealthControllerCheckRedisResponse> {
3049
+ return __request(OpenAPI, {
3050
+ method: 'GET',
3051
+ url: '/api/v1/health/redis',
3052
+ path: {
3053
+ region: data.region
3054
+ },
3055
+ errors: {
3056
+ 503: 'Redis unavailable'
3057
+ }
3058
+ });
3059
+ }
3060
+
3061
+ /**
3062
+ * Get status of all circuit breakers
3063
+ * @param data The data for the request.
3064
+ * @param data.region Region code (cn, us, eu-core, de)
3065
+ * @returns unknown Circuit breaker status
3066
+ * @throws ApiError
3067
+ */
3068
+ public static healthControllerGetCircuitBreakersHealth(
3069
+ data: HealthControllerGetCircuitBreakersHealthData
3070
+ ): CancelablePromise<HealthControllerGetCircuitBreakersHealthResponse> {
3071
+ return __request(OpenAPI, {
3072
+ method: 'GET',
3073
+ url: '/api/v1/health/circuit-breakers',
3074
+ path: {
3075
+ region: data.region
3076
+ },
3077
+ errors: {
3078
+ 401: 'Unauthorized',
3079
+ 500: 'Internal error'
3080
+ }
3081
+ });
3082
+ }
3083
+
3084
+ /**
3085
+ * Reset a circuit breaker to CLOSED state
3086
+ * @param data The data for the request.
3087
+ * @param data.name Circuit breaker name to reset
3088
+ * @param data.region Region code (cn, us, eu-core, de)
3089
+ * @returns unknown Circuit breaker reset successfully
3090
+ * @throws ApiError
3091
+ */
3092
+ public static healthControllerResetCircuitBreaker(
3093
+ data: HealthControllerResetCircuitBreakerData
3094
+ ): CancelablePromise<HealthControllerResetCircuitBreakerResponse> {
3095
+ return __request(OpenAPI, {
3096
+ method: 'POST',
3097
+ url: '/api/v1/health/circuit-breakers/{name}/reset',
3098
+ path: {
3099
+ name: data.name,
3100
+ region: data.region
3101
+ },
3102
+ errors: {
3103
+ 401: 'Unauthorized',
3104
+ 404: 'Circuit breaker not found'
3105
+ }
3106
+ });
3107
+ }
3108
+
3109
+ /**
3110
+ * Get health check metrics and statistics
3111
+ * @param data The data for the request.
3112
+ * @param data.region Region code (cn, us, eu-core, de)
3113
+ * @returns unknown Health metrics
3114
+ * @throws ApiError
3115
+ */
3116
+ public static healthControllerGetMetrics(
3117
+ data: HealthControllerGetMetricsData
3118
+ ): CancelablePromise<HealthControllerGetMetricsResponse> {
3119
+ return __request(OpenAPI, {
3120
+ method: 'GET',
3121
+ url: '/api/v1/health/metrics',
3122
+ path: {
3123
+ region: data.region
3124
+ },
3125
+ errors: {
3126
+ 401: 'Unauthorized'
3127
+ }
3128
+ });
3129
+ }
3130
+
3131
+ /**
3132
+ * Check health of a specific data enhancer
3133
+ * @param data The data for the request.
3134
+ * @param data.name Data enhancer name
3135
+ * @param data.region Region code (cn, us, eu-core, de)
3136
+ * @returns unknown Data enhancer is healthy
3137
+ * @throws ApiError
3138
+ */
3139
+ public static healthControllerGetHealthOfDataEnhancer(
3140
+ data: HealthControllerGetHealthOfDataEnhancerData
3141
+ ): CancelablePromise<HealthControllerGetHealthOfDataEnhancerResponse> {
3142
+ return __request(OpenAPI, {
3143
+ method: 'GET',
3144
+ url: '/api/v1/health/data-enhancer/{name}',
3145
+ path: {
3146
+ name: data.name,
3147
+ region: data.region
3148
+ },
3149
+ errors: {
3150
+ 401: 'Unauthorized',
3151
+ 503: 'Data enhancer unavailable'
3152
+ }
3153
+ });
3154
+ }
3155
+
3156
+ /**
3157
+ * Check health of all data providers
3158
+ * @param data The data for the request.
3159
+ * @param data.region Region code (cn, us, eu-core, de)
3160
+ * @returns unknown Data providers health status
3161
+ * @throws ApiError
3162
+ */
3163
+ public static healthControllerCheckDataProviders(
3164
+ data: HealthControllerCheckDataProvidersData
3165
+ ): CancelablePromise<HealthControllerCheckDataProvidersResponse> {
3166
+ return __request(OpenAPI, {
3167
+ method: 'GET',
3168
+ url: '/api/v1/health/data-providers',
3169
+ path: {
3170
+ region: data.region
3171
+ },
3172
+ errors: {
3173
+ 401: 'Unauthorized',
3174
+ 503: 'Data providers check failed'
3175
+ }
3176
+ });
3177
+ }
3178
+
3179
+ /**
3180
+ * Check health of a specific data provider
3181
+ * @param data The data for the request.
3182
+ * @param data.dataSource Data source identifier
3183
+ * @param data.region Region code (cn, us, eu-core, de)
3184
+ * @returns unknown Data provider is healthy
3185
+ * @throws ApiError
3186
+ */
3187
+ public static healthControllerGetHealthOfDataProvider(
3188
+ data: HealthControllerGetHealthOfDataProviderData
3189
+ ): CancelablePromise<HealthControllerGetHealthOfDataProviderResponse> {
3190
+ return __request(OpenAPI, {
3191
+ method: 'GET',
3192
+ url: '/api/v1/health/data-provider/{dataSource}',
3193
+ path: {
3194
+ dataSource: data.dataSource,
3195
+ region: data.region
3196
+ },
3197
+ errors: {
3198
+ 400: 'Invalid data source',
3199
+ 401: 'Unauthorized',
3200
+ 503: 'Data provider unavailable'
3201
+ }
3202
+ });
3203
+ }
3204
+ }
3205
+
3206
+ export class InfoService {
3207
+ /**
3208
+ * Get system information
3209
+ * @param data The data for the request.
3210
+ * @param data.region Region code (cn, us, eu-core, de)
3211
+ * @returns unknown System information retrieved successfully
3212
+ * @throws ApiError
3213
+ */
3214
+ public static infoControllerGetInfo(
3215
+ data: InfoControllerGetInfoData
3216
+ ): CancelablePromise<InfoControllerGetInfoResponse> {
3217
+ return __request(OpenAPI, {
3218
+ method: 'GET',
3219
+ url: '/api/v1/system/info',
3220
+ path: {
3221
+ region: data.region
3222
+ }
3223
+ });
3224
+ }
3225
+ }
3226
+
3227
+ export class LogosService {
3228
+ /**
3229
+ * Get asset logo by data source and symbol
3230
+ * @param data The data for the request.
3231
+ * @param data.dataSource Data source identifier (e.g., YAHOO, COINGECKO)
3232
+ * @param data.symbol Asset symbol (e.g., AAPL, BTC)
3233
+ * @param data.region Region code (cn, us, eu-core, de)
3234
+ * @returns unknown Logo image stream (favicon)
3235
+ * @throws ApiError
3236
+ */
3237
+ public static logoControllerGetLogoByDataSourceAndSymbol(
3238
+ data: LogoControllerGetLogoByDataSourceAndSymbolData
3239
+ ): CancelablePromise<LogoControllerGetLogoByDataSourceAndSymbolResponse> {
3240
+ return __request(OpenAPI, {
3241
+ method: 'GET',
3242
+ url: '/api/v1/market/logos/{dataSource}/{symbol}',
3243
+ path: {
3244
+ dataSource: data.dataSource,
3245
+ symbol: data.symbol,
3246
+ region: data.region
3247
+ },
3248
+ errors: {
3249
+ 401: 'Unauthorized',
3250
+ 404: 'Logo not found for the specified asset',
3251
+ 503: 'Service unavailable'
3252
+ }
3253
+ });
3254
+ }
3255
+
3256
+ /**
3257
+ * Get website favicon by URL
3258
+ * @param data The data for the request.
3259
+ * @param data.url Website URL to fetch favicon from
3260
+ * @param data.region Region code (cn, us, eu-core, de)
3261
+ * @returns unknown Logo image stream (favicon)
3262
+ * @throws ApiError
3263
+ */
3264
+ public static logoControllerGetLogoByUrl(
3265
+ data: LogoControllerGetLogoByUrlData
3266
+ ): CancelablePromise<LogoControllerGetLogoByUrlResponse> {
3267
+ return __request(OpenAPI, {
3268
+ method: 'GET',
3269
+ url: '/api/v1/market/logos',
3270
+ path: {
3271
+ region: data.region
3272
+ },
3273
+ query: {
3274
+ url: data.url
3275
+ },
3276
+ errors: {
3277
+ 401: 'Unauthorized',
3278
+ 503: 'Service unavailable'
3279
+ }
3280
+ });
3281
+ }
3282
+ }
3283
+
3284
+ export class MarketDataService {
3285
+ /**
3286
+ * Get market data by symbol
3287
+ * Retrieves market data and asset profile for a given symbol and data source
3288
+ * @param data The data for the request.
3289
+ * @param data.dataSource Data source provider
3290
+ * @param data.symbol Symbol code
3291
+ * @param data.region Region code (cn, us, eu-core, de)
3292
+ * @returns unknown Market data retrieved successfully
3293
+ * @throws ApiError
3294
+ */
3295
+ public static marketDataControllerGetMarketDataBySymbol(
3296
+ data: MarketDataControllerGetMarketDataBySymbolData
3297
+ ): CancelablePromise<MarketDataControllerGetMarketDataBySymbolResponse> {
3298
+ return __request(OpenAPI, {
3299
+ method: 'GET',
3300
+ url: '/api/v1/market-data/{dataSource}/{symbol}',
3301
+ path: {
3302
+ dataSource: data.dataSource,
3303
+ symbol: data.symbol,
3304
+ region: data.region
3305
+ },
3306
+ errors: {
3307
+ 403: 'Insufficient permissions to read market data',
3308
+ 404: 'Market data not found'
3309
+ }
3310
+ });
3311
+ }
3312
+
3313
+ /**
3314
+ * @param data The data for the request.
3315
+ * @param data.region Region code (cn, us, eu-core, de)
3316
+ * @returns unknown
3317
+ * @throws ApiError
3318
+ */
3319
+ public static marketDataController(
3320
+ data: MarketDataControllerData
3321
+ ): CancelablePromise<MarketDataControllerResponse> {
3322
+ return __request(OpenAPI, {
3323
+ method: 'POST',
3324
+ url: '/api/v1/market-data/{dataSource}/{symbol}',
3325
+ path: {
3326
+ region: data.region
3327
+ }
3328
+ });
3329
+ }
3330
+ }