@firela/api-types 0.0.0-canary.2fbeefe9 → 0.0.0-canary.30542238
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1739 -944
- package/dist/index.d.ts +1739 -944
- package/dist/index.js +33 -5
- package/dist/index.mjs +33 -5
- package/package.json +1 -1
- package/src/generated/schemas.gen.ts +1480 -394
- package/src/generated/services.gen.ts +607 -448
- package/src/generated/types.gen.ts +4556 -874
|
@@ -17,6 +17,8 @@ import type {
|
|
|
17
17
|
AccountControllerCloseResponse,
|
|
18
18
|
AccountControllerReopenData,
|
|
19
19
|
AccountControllerReopenResponse,
|
|
20
|
+
AccountControllerAddOpeningBalanceData,
|
|
21
|
+
AccountControllerAddOpeningBalanceResponse,
|
|
20
22
|
AccountStandardsControllerGetTemplatesData,
|
|
21
23
|
AccountStandardsControllerGetTemplatesResponse,
|
|
22
24
|
AccountStandardsControllerGetTemplateMetadataData,
|
|
@@ -141,26 +143,14 @@ import type {
|
|
|
141
143
|
ExpectedTransactionControllerEnterNowResponse,
|
|
142
144
|
ForecastControllerGetForecastData,
|
|
143
145
|
ForecastControllerGetForecastResponse,
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
TransactionRuleControllerExportData,
|
|
153
|
-
TransactionRuleControllerExportResponse,
|
|
154
|
-
TransactionRuleControllerGetStatisticsData,
|
|
155
|
-
TransactionRuleControllerGetStatisticsResponse,
|
|
156
|
-
TransactionRuleControllerGetDetailData,
|
|
157
|
-
TransactionRuleControllerGetDetailResponse,
|
|
158
|
-
TransactionRuleControllerUpdateData,
|
|
159
|
-
TransactionRuleControllerUpdateResponse,
|
|
160
|
-
TransactionRuleControllerDeleteData,
|
|
161
|
-
TransactionRuleControllerDeleteResponse,
|
|
162
|
-
TransactionRuleControllerTestData,
|
|
163
|
-
TransactionRuleControllerTestResponse,
|
|
146
|
+
ReportingControllerGetPortfolioTrendsData,
|
|
147
|
+
ReportingControllerGetPortfolioTrendsResponse,
|
|
148
|
+
ReportingControllerGetCashFlowTrendsData,
|
|
149
|
+
ReportingControllerGetCashFlowTrendsResponse,
|
|
150
|
+
ReportingControllerGenerateSnapshotData,
|
|
151
|
+
ReportingControllerGenerateSnapshotResponse,
|
|
152
|
+
ReportingControllerBackfillSnapshotsData,
|
|
153
|
+
ReportingControllerBackfillSnapshotsResponse,
|
|
164
154
|
UserControllerDeleteOwnUserData,
|
|
165
155
|
UserControllerDeleteOwnUserResponse,
|
|
166
156
|
UserControllerGetUserData,
|
|
@@ -183,6 +173,28 @@ import type {
|
|
|
183
173
|
PropertyControllerUpdateResponse,
|
|
184
174
|
PropertyControllerDeleteData,
|
|
185
175
|
PropertyControllerDeleteResponse,
|
|
176
|
+
TransactionRuleControllerCreateData,
|
|
177
|
+
TransactionRuleControllerCreateResponse,
|
|
178
|
+
TransactionRuleControllerListData,
|
|
179
|
+
TransactionRuleControllerListResponse,
|
|
180
|
+
TransactionRuleControllerValidateData,
|
|
181
|
+
TransactionRuleControllerValidateResponse,
|
|
182
|
+
TransactionRuleControllerBulkCreateData,
|
|
183
|
+
TransactionRuleControllerBulkCreateResponse,
|
|
184
|
+
TransactionRuleControllerExportData,
|
|
185
|
+
TransactionRuleControllerExportResponse,
|
|
186
|
+
TransactionRuleControllerGetStatisticsData,
|
|
187
|
+
TransactionRuleControllerGetStatisticsResponse,
|
|
188
|
+
TransactionRuleControllerGetDetailData,
|
|
189
|
+
TransactionRuleControllerGetDetailResponse,
|
|
190
|
+
TransactionRuleControllerUpdateData,
|
|
191
|
+
TransactionRuleControllerUpdateResponse,
|
|
192
|
+
TransactionRuleControllerDeleteData,
|
|
193
|
+
TransactionRuleControllerDeleteResponse,
|
|
194
|
+
TransactionRuleControllerTestData,
|
|
195
|
+
TransactionRuleControllerTestResponse,
|
|
196
|
+
CategoryCatalogControllerListData,
|
|
197
|
+
CategoryCatalogControllerListResponse,
|
|
186
198
|
EventControllerCreateData,
|
|
187
199
|
EventControllerCreateResponse,
|
|
188
200
|
EventControllerFindAllData,
|
|
@@ -247,6 +259,7 @@ import type {
|
|
|
247
259
|
PlatformControllerFindAllResponse,
|
|
248
260
|
PlatformControllerCreateData,
|
|
249
261
|
PlatformControllerCreateResponse,
|
|
262
|
+
PlatformControllerGetPlatformListData,
|
|
250
263
|
PlatformControllerGetPlatformListResponse,
|
|
251
264
|
PlatformControllerMatchPlatformsData,
|
|
252
265
|
PlatformControllerMatchPlatformsResponse,
|
|
@@ -264,17 +277,11 @@ import type {
|
|
|
264
277
|
DashboardControllerGetExpensesResponse,
|
|
265
278
|
HoldingPnlControllerGetHoldingPnlData,
|
|
266
279
|
HoldingPnlControllerGetHoldingPnlResponse,
|
|
267
|
-
ReportingControllerGetPortfolioTrendsData,
|
|
268
|
-
ReportingControllerGetPortfolioTrendsResponse,
|
|
269
|
-
ReportingControllerGetCashFlowTrendsData,
|
|
270
|
-
ReportingControllerGetCashFlowTrendsResponse,
|
|
271
|
-
ReportingControllerGenerateSnapshotData,
|
|
272
|
-
ReportingControllerGenerateSnapshotResponse,
|
|
273
|
-
ReportingControllerBackfillSnapshotsData,
|
|
274
|
-
ReportingControllerBackfillSnapshotsResponse,
|
|
275
280
|
ApiKeysControllerCreateApiKeyResponse,
|
|
276
281
|
AuthControllerAccessTokenLoginData,
|
|
277
282
|
AuthControllerAccessTokenLoginResponse,
|
|
283
|
+
ParserContributionControllerCreateData,
|
|
284
|
+
ParserContributionControllerCreateResponse,
|
|
278
285
|
CacheControllerFlushCacheResponse,
|
|
279
286
|
ExchangeRateControllerGetExchangeRateData,
|
|
280
287
|
ExchangeRateControllerGetExchangeRateResponse,
|
|
@@ -286,7 +293,11 @@ import type {
|
|
|
286
293
|
HealthControllerResetCircuitBreakerData,
|
|
287
294
|
HealthControllerResetCircuitBreakerResponse,
|
|
288
295
|
HealthControllerGetMetricsResponse,
|
|
289
|
-
InfoControllerGetInfoResponse
|
|
296
|
+
InfoControllerGetInfoResponse,
|
|
297
|
+
SymbolControllerSearchData,
|
|
298
|
+
SymbolControllerSearchResponse,
|
|
299
|
+
SymbolControllerGetQuoteData,
|
|
300
|
+
SymbolControllerGetQuoteResponse
|
|
290
301
|
} from './types.gen';
|
|
291
302
|
|
|
292
303
|
export class BeanAccountsService {
|
|
@@ -405,7 +416,7 @@ export class BeanAccountsService {
|
|
|
405
416
|
|
|
406
417
|
/**
|
|
407
418
|
* Delete account
|
|
408
|
-
* Deletes an account (only if no transactions)
|
|
419
|
+
* Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
|
|
409
420
|
* @param data The data for the request.
|
|
410
421
|
* @param data.id Account UUID
|
|
411
422
|
* @param data.region Region code for tenant context
|
|
@@ -424,7 +435,7 @@ export class BeanAccountsService {
|
|
|
424
435
|
},
|
|
425
436
|
errors: {
|
|
426
437
|
404: 'Account not found',
|
|
427
|
-
409: 'Account has transactions and cannot be deleted'
|
|
438
|
+
409: 'Account has active transactions and cannot be deleted'
|
|
428
439
|
}
|
|
429
440
|
});
|
|
430
441
|
}
|
|
@@ -486,6 +497,35 @@ export class BeanAccountsService {
|
|
|
486
497
|
}
|
|
487
498
|
});
|
|
488
499
|
}
|
|
500
|
+
|
|
501
|
+
/**
|
|
502
|
+
* Post an opening-balance transaction
|
|
503
|
+
* Posts a double-entry opening-balance transaction against Equity:Opening-Balances for an existing Assets/Liabilities account. At most one active opening balance per account.
|
|
504
|
+
* @param data The data for the request.
|
|
505
|
+
* @param data.id Account UUID
|
|
506
|
+
* @param data.region Region code for tenant context
|
|
507
|
+
* @param data.requestBody
|
|
508
|
+
* @returns OpeningBalanceResultDto Opening-balance transaction created
|
|
509
|
+
* @throws ApiError
|
|
510
|
+
*/
|
|
511
|
+
public static accountControllerAddOpeningBalance(
|
|
512
|
+
data: AccountControllerAddOpeningBalanceData
|
|
513
|
+
): CancelablePromise<AccountControllerAddOpeningBalanceResponse> {
|
|
514
|
+
return __request(OpenAPI, {
|
|
515
|
+
method: 'POST',
|
|
516
|
+
url: '/api/v1/{region}/bean/accounts/{id}/opening-balance',
|
|
517
|
+
path: {
|
|
518
|
+
id: data.id,
|
|
519
|
+
region: data.region
|
|
520
|
+
},
|
|
521
|
+
body: data.requestBody,
|
|
522
|
+
mediaType: 'application/json',
|
|
523
|
+
errors: {
|
|
524
|
+
404: 'Account not found',
|
|
525
|
+
409: 'An opening balance already exists for this account'
|
|
526
|
+
}
|
|
527
|
+
});
|
|
528
|
+
}
|
|
489
529
|
}
|
|
490
530
|
|
|
491
531
|
export class BeanAccountStandardsService {
|
|
@@ -600,10 +640,11 @@ export class BeanTransactionsService {
|
|
|
600
640
|
* @param data.offset Number of items to skip (default: 0)
|
|
601
641
|
* @param data.dateFrom Filter by start date (inclusive), format: YYYY-MM-DD
|
|
602
642
|
* @param data.dateTo Filter by end date (inclusive), format: YYYY-MM-DD
|
|
603
|
-
* @param data.status Filter by transaction status
|
|
643
|
+
* @param data.status Filter by transaction status: single value, comma-separated multi-value (e.g. VOIDED,SUPERSEDED), or ALL to include audit rows. Defaults to ACTIVE-only (ADR-0128; previously unfiltered — breaking change).
|
|
604
644
|
* @param data.search Search in narration and payee fields (max 200 chars)
|
|
605
645
|
* @param data.accountId Filter by account ID (transactions with postings to this account)
|
|
606
|
-
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an
|
|
646
|
+
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
|
|
647
|
+
* @param data.flow Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
|
|
607
648
|
* @returns TransactionListResponseDto Transaction list
|
|
608
649
|
* @throws ApiError
|
|
609
650
|
*/
|
|
@@ -624,7 +665,8 @@ export class BeanTransactionsService {
|
|
|
624
665
|
status: data.status,
|
|
625
666
|
search: data.search,
|
|
626
667
|
accountId: data.accountId,
|
|
627
|
-
category: data.category
|
|
668
|
+
category: data.category,
|
|
669
|
+
flow: data.flow
|
|
628
670
|
},
|
|
629
671
|
errors: {
|
|
630
672
|
400: 'Validation failed',
|
|
@@ -2130,534 +2172,719 @@ export class RecurringForecastService {
|
|
|
2130
2172
|
}
|
|
2131
2173
|
}
|
|
2132
2174
|
|
|
2133
|
-
export class
|
|
2175
|
+
export class ReportingService {
|
|
2134
2176
|
/**
|
|
2135
|
-
*
|
|
2136
|
-
*
|
|
2177
|
+
* Get portfolio value trends
|
|
2178
|
+
*
|
|
2179
|
+
* Returns time series data of portfolio net worth.
|
|
2180
|
+
*
|
|
2181
|
+
* **Multi-currency Support:**
|
|
2182
|
+
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
2183
|
+
* - `byCurrency` - Separate time series grouped by currency
|
|
2184
|
+
* - `warnings` - Exchange rate warnings if conversion failed
|
|
2185
|
+
*
|
|
2186
|
+
* **Parameters:**
|
|
2187
|
+
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
2188
|
+
* - `granularity`: Data granularity (day, week, month)
|
|
2189
|
+
*
|
|
2137
2190
|
* @param data The data for the request.
|
|
2138
2191
|
* @param data.region Region code for tenant context
|
|
2139
|
-
* @param data.
|
|
2140
|
-
* @
|
|
2192
|
+
* @param data.period Time period
|
|
2193
|
+
* @param data.granularity Data granularity
|
|
2194
|
+
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
2141
2195
|
* @throws ApiError
|
|
2142
2196
|
*/
|
|
2143
|
-
public static
|
|
2144
|
-
data:
|
|
2145
|
-
): CancelablePromise<
|
|
2197
|
+
public static reportingControllerGetPortfolioTrends(
|
|
2198
|
+
data: ReportingControllerGetPortfolioTrendsData
|
|
2199
|
+
): CancelablePromise<ReportingControllerGetPortfolioTrendsResponse> {
|
|
2146
2200
|
return __request(OpenAPI, {
|
|
2147
|
-
method: '
|
|
2148
|
-
url: '/api/v1/{region}/
|
|
2201
|
+
method: 'GET',
|
|
2202
|
+
url: '/api/v1/{region}/reporting/portfolio/trends',
|
|
2149
2203
|
path: {
|
|
2150
2204
|
region: data.region
|
|
2151
2205
|
},
|
|
2152
|
-
|
|
2153
|
-
|
|
2206
|
+
query: {
|
|
2207
|
+
period: data.period,
|
|
2208
|
+
granularity: data.granularity
|
|
2209
|
+
},
|
|
2154
2210
|
errors: {
|
|
2155
|
-
|
|
2156
|
-
401: 'Unauthorized',
|
|
2157
|
-
409: 'Resource conflict - another process is updating this rule'
|
|
2211
|
+
401: 'User not authenticated'
|
|
2158
2212
|
}
|
|
2159
2213
|
});
|
|
2160
2214
|
}
|
|
2161
2215
|
|
|
2162
2216
|
/**
|
|
2163
|
-
* Get
|
|
2217
|
+
* Get cash-flow trends
|
|
2218
|
+
*
|
|
2219
|
+
* Monthly income / expense / netSavings over a fixed N-month window
|
|
2220
|
+
* (current month + N−1 prior). Missing months are zero-filled (flow metric).
|
|
2221
|
+
*
|
|
2222
|
+
* **Parameters:**
|
|
2223
|
+
* - `period`: 1m | 3m | 6m | 1y (default 6m)
|
|
2224
|
+
* - `granularity`: accepted for API symmetry; v1 returns month buckets
|
|
2225
|
+
*
|
|
2164
2226
|
* @param data The data for the request.
|
|
2165
2227
|
* @param data.region Region code for tenant context
|
|
2166
|
-
* @param data.
|
|
2167
|
-
* @param data.
|
|
2168
|
-
* @
|
|
2169
|
-
* @param data.learningSource Filter by learning source. Omit this parameter or pass empty string to get manually created rules (learningSource is null in database).
|
|
2170
|
-
* @param data.autoApplyEnabled Filter by auto-apply status
|
|
2171
|
-
* @returns TransactionRuleListResponseDto List of rules
|
|
2228
|
+
* @param data.period Time period
|
|
2229
|
+
* @param data.granularity Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
2230
|
+
* @returns CashFlowTrendsResponseDto Cash-flow trends retrieved successfully
|
|
2172
2231
|
* @throws ApiError
|
|
2173
2232
|
*/
|
|
2174
|
-
public static
|
|
2175
|
-
data:
|
|
2176
|
-
): CancelablePromise<
|
|
2233
|
+
public static reportingControllerGetCashFlowTrends(
|
|
2234
|
+
data: ReportingControllerGetCashFlowTrendsData
|
|
2235
|
+
): CancelablePromise<ReportingControllerGetCashFlowTrendsResponse> {
|
|
2177
2236
|
return __request(OpenAPI, {
|
|
2178
2237
|
method: 'GET',
|
|
2179
|
-
url: '/api/v1/{region}/
|
|
2238
|
+
url: '/api/v1/{region}/reporting/cash-flow/trends',
|
|
2180
2239
|
path: {
|
|
2181
2240
|
region: data.region
|
|
2182
2241
|
},
|
|
2183
2242
|
query: {
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
enabled: data.enabled,
|
|
2187
|
-
learningSource: data.learningSource,
|
|
2188
|
-
autoApplyEnabled: data.autoApplyEnabled
|
|
2243
|
+
period: data.period,
|
|
2244
|
+
granularity: data.granularity
|
|
2189
2245
|
},
|
|
2190
2246
|
errors: {
|
|
2191
|
-
401: '
|
|
2247
|
+
401: 'User not authenticated'
|
|
2192
2248
|
}
|
|
2193
2249
|
});
|
|
2194
2250
|
}
|
|
2195
2251
|
|
|
2196
2252
|
/**
|
|
2197
|
-
*
|
|
2253
|
+
* Generate portfolio snapshot
|
|
2254
|
+
*
|
|
2255
|
+
* Manually generate a portfolio snapshot for a specific date.
|
|
2256
|
+
*
|
|
2257
|
+
* **Multi-currency Support:**
|
|
2258
|
+
* - Fetches balances grouped by currency
|
|
2259
|
+
* - Uses user's baseCurrency setting for conversion
|
|
2260
|
+
* - Stores exchange rates and warnings
|
|
2261
|
+
*
|
|
2262
|
+
* **Use Cases:**
|
|
2263
|
+
* - Testing snapshot generation
|
|
2264
|
+
* - Force regeneration after data correction
|
|
2265
|
+
* - Initial setup for new users
|
|
2266
|
+
*
|
|
2198
2267
|
* @param data The data for the request.
|
|
2199
2268
|
* @param data.region Region code for tenant context
|
|
2200
|
-
* @param data.requestBody
|
|
2201
|
-
* @returns
|
|
2269
|
+
* @param data.requestBody Optional date (defaults to today)
|
|
2270
|
+
* @returns GenerateSnapshotResponse Snapshot generated successfully
|
|
2202
2271
|
* @throws ApiError
|
|
2203
2272
|
*/
|
|
2204
|
-
public static
|
|
2205
|
-
data:
|
|
2206
|
-
): CancelablePromise<
|
|
2273
|
+
public static reportingControllerGenerateSnapshot(
|
|
2274
|
+
data: ReportingControllerGenerateSnapshotData
|
|
2275
|
+
): CancelablePromise<ReportingControllerGenerateSnapshotResponse> {
|
|
2207
2276
|
return __request(OpenAPI, {
|
|
2208
2277
|
method: 'POST',
|
|
2209
|
-
url: '/api/v1/{region}/
|
|
2278
|
+
url: '/api/v1/{region}/reporting/snapshots/generate',
|
|
2210
2279
|
path: {
|
|
2211
2280
|
region: data.region
|
|
2212
2281
|
},
|
|
2213
2282
|
body: data.requestBody,
|
|
2214
2283
|
mediaType: 'application/json',
|
|
2215
2284
|
errors: {
|
|
2216
|
-
400: '
|
|
2217
|
-
401: '
|
|
2285
|
+
400: 'Invalid date format',
|
|
2286
|
+
401: 'User not authenticated'
|
|
2218
2287
|
}
|
|
2219
2288
|
});
|
|
2220
2289
|
}
|
|
2221
2290
|
|
|
2222
2291
|
/**
|
|
2223
|
-
*
|
|
2292
|
+
* Backfill portfolio snapshots
|
|
2293
|
+
*
|
|
2294
|
+
* Generate snapshots for a date range (historical data backfill).
|
|
2295
|
+
*
|
|
2296
|
+
* **Multi-currency Support:**
|
|
2297
|
+
* - Each snapshot includes multi-currency data
|
|
2298
|
+
* - Uses exchange rates available at generation time
|
|
2299
|
+
* - Warnings stored for missing exchange rates
|
|
2300
|
+
*
|
|
2301
|
+
* **Best Practices:**
|
|
2302
|
+
* - Use for initial setup after account configuration
|
|
2303
|
+
* - Run during low-traffic periods for large date ranges
|
|
2304
|
+
* - Existing snapshots are skipped (not regenerated)
|
|
2305
|
+
*
|
|
2224
2306
|
* @param data The data for the request.
|
|
2225
2307
|
* @param data.region Region code for tenant context
|
|
2226
2308
|
* @param data.requestBody
|
|
2227
|
-
* @returns
|
|
2309
|
+
* @returns BackfillSnapshotsResponse Backfill completed successfully
|
|
2228
2310
|
* @throws ApiError
|
|
2229
2311
|
*/
|
|
2230
|
-
public static
|
|
2231
|
-
data:
|
|
2232
|
-
): CancelablePromise<
|
|
2312
|
+
public static reportingControllerBackfillSnapshots(
|
|
2313
|
+
data: ReportingControllerBackfillSnapshotsData
|
|
2314
|
+
): CancelablePromise<ReportingControllerBackfillSnapshotsResponse> {
|
|
2233
2315
|
return __request(OpenAPI, {
|
|
2234
2316
|
method: 'POST',
|
|
2235
|
-
url: '/api/v1/{region}/
|
|
2317
|
+
url: '/api/v1/{region}/reporting/snapshots/backfill',
|
|
2236
2318
|
path: {
|
|
2237
2319
|
region: data.region
|
|
2238
2320
|
},
|
|
2239
2321
|
body: data.requestBody,
|
|
2240
2322
|
mediaType: 'application/json',
|
|
2241
2323
|
errors: {
|
|
2242
|
-
400: 'Invalid
|
|
2243
|
-
401: '
|
|
2324
|
+
400: 'Invalid date format or range',
|
|
2325
|
+
401: 'User not authenticated',
|
|
2326
|
+
409: 'Backfill already in progress for this user'
|
|
2244
2327
|
}
|
|
2245
2328
|
});
|
|
2246
2329
|
}
|
|
2330
|
+
}
|
|
2247
2331
|
|
|
2332
|
+
export class UsersService {
|
|
2248
2333
|
/**
|
|
2249
|
-
*
|
|
2334
|
+
* Delete own user account
|
|
2250
2335
|
* @param data The data for the request.
|
|
2251
|
-
* @param data.
|
|
2252
|
-
* @
|
|
2253
|
-
* @returns ExportRulesResponseDto Exported rules
|
|
2336
|
+
* @param data.requestBody
|
|
2337
|
+
* @returns void User deleted successfully
|
|
2254
2338
|
* @throws ApiError
|
|
2255
2339
|
*/
|
|
2256
|
-
public static
|
|
2257
|
-
data:
|
|
2258
|
-
): CancelablePromise<
|
|
2340
|
+
public static userControllerDeleteOwnUser(
|
|
2341
|
+
data: UserControllerDeleteOwnUserData
|
|
2342
|
+
): CancelablePromise<UserControllerDeleteOwnUserResponse> {
|
|
2259
2343
|
return __request(OpenAPI, {
|
|
2260
|
-
method: '
|
|
2261
|
-
url: '/api/v1/
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
region: data.region
|
|
2265
|
-
},
|
|
2344
|
+
method: 'DELETE',
|
|
2345
|
+
url: '/api/v1/users',
|
|
2346
|
+
body: data.requestBody,
|
|
2347
|
+
mediaType: 'application/json',
|
|
2266
2348
|
errors: {
|
|
2267
|
-
|
|
2268
|
-
401: 'Unauthorized'
|
|
2349
|
+
403: 'Invalid access token'
|
|
2269
2350
|
}
|
|
2270
2351
|
});
|
|
2271
2352
|
}
|
|
2272
2353
|
|
|
2273
2354
|
/**
|
|
2274
|
-
* Get
|
|
2355
|
+
* Get current authenticated user
|
|
2275
2356
|
* @param data The data for the request.
|
|
2276
|
-
* @param data.
|
|
2277
|
-
* @
|
|
2278
|
-
* @returns RuleStatisticsResponseDto Rule statistics
|
|
2357
|
+
* @param data.acceptLanguage
|
|
2358
|
+
* @returns UserResponseDto User retrieved successfully
|
|
2279
2359
|
* @throws ApiError
|
|
2280
2360
|
*/
|
|
2281
|
-
public static
|
|
2282
|
-
data:
|
|
2283
|
-
): CancelablePromise<
|
|
2284
|
-
return __request(OpenAPI, {
|
|
2361
|
+
public static userControllerGetUser(
|
|
2362
|
+
data: UserControllerGetUserData
|
|
2363
|
+
): CancelablePromise<UserControllerGetUserResponse> {
|
|
2364
|
+
return __request(OpenAPI, {
|
|
2285
2365
|
method: 'GET',
|
|
2286
|
-
url: '/api/v1/
|
|
2366
|
+
url: '/api/v1/users',
|
|
2367
|
+
headers: {
|
|
2368
|
+
'accept-language': data.acceptLanguage
|
|
2369
|
+
}
|
|
2370
|
+
});
|
|
2371
|
+
}
|
|
2372
|
+
|
|
2373
|
+
/**
|
|
2374
|
+
* Sign up new user
|
|
2375
|
+
* Create a new account with auto-generated access token. Protected by Cloudflare Turnstile to prevent automated signup (when enabled).
|
|
2376
|
+
* @param data The data for the request.
|
|
2377
|
+
* @param data.requestBody
|
|
2378
|
+
* @returns SignupResponseDto User created successfully
|
|
2379
|
+
* @throws ApiError
|
|
2380
|
+
*/
|
|
2381
|
+
public static userControllerSignupUser(
|
|
2382
|
+
data: UserControllerSignupUserData
|
|
2383
|
+
): CancelablePromise<UserControllerSignupUserResponse> {
|
|
2384
|
+
return __request(OpenAPI, {
|
|
2385
|
+
method: 'POST',
|
|
2386
|
+
url: '/api/v1/users',
|
|
2387
|
+
body: data.requestBody,
|
|
2388
|
+
mediaType: 'application/json',
|
|
2389
|
+
errors: {
|
|
2390
|
+
400: 'Invalid Turnstile token (when Turnstile is enabled)',
|
|
2391
|
+
403: 'User signup is disabled'
|
|
2392
|
+
}
|
|
2393
|
+
});
|
|
2394
|
+
}
|
|
2395
|
+
|
|
2396
|
+
/**
|
|
2397
|
+
* Delete user by ID (admin only)
|
|
2398
|
+
* @param data The data for the request.
|
|
2399
|
+
* @param data.id User ID to delete
|
|
2400
|
+
* @returns void User deleted successfully
|
|
2401
|
+
* @throws ApiError
|
|
2402
|
+
*/
|
|
2403
|
+
public static userControllerDeleteUser(
|
|
2404
|
+
data: UserControllerDeleteUserData
|
|
2405
|
+
): CancelablePromise<UserControllerDeleteUserResponse> {
|
|
2406
|
+
return __request(OpenAPI, {
|
|
2407
|
+
method: 'DELETE',
|
|
2408
|
+
url: '/api/v1/users/{id}',
|
|
2287
2409
|
path: {
|
|
2288
|
-
|
|
2289
|
-
region: data.region
|
|
2410
|
+
id: data.id
|
|
2290
2411
|
},
|
|
2291
2412
|
errors: {
|
|
2292
|
-
|
|
2413
|
+
403: 'Cannot delete own account or insufficient permissions'
|
|
2293
2414
|
}
|
|
2294
2415
|
});
|
|
2295
2416
|
}
|
|
2296
2417
|
|
|
2297
2418
|
/**
|
|
2298
|
-
* Get
|
|
2419
|
+
* Get user info by user ID
|
|
2299
2420
|
* @param data The data for the request.
|
|
2300
|
-
* @param data.
|
|
2301
|
-
* @
|
|
2302
|
-
* @returns TransactionRuleResponseDto Rule details
|
|
2421
|
+
* @param data.id User ID
|
|
2422
|
+
* @returns unknown User info retrieved successfully
|
|
2303
2423
|
* @throws ApiError
|
|
2304
2424
|
*/
|
|
2305
|
-
public static
|
|
2306
|
-
data:
|
|
2307
|
-
): CancelablePromise<
|
|
2425
|
+
public static userControllerGetUserInfo(
|
|
2426
|
+
data: UserControllerGetUserInfoData
|
|
2427
|
+
): CancelablePromise<UserControllerGetUserInfoResponse> {
|
|
2308
2428
|
return __request(OpenAPI, {
|
|
2309
2429
|
method: 'GET',
|
|
2310
|
-
url: '/api/v1/{
|
|
2430
|
+
url: '/api/v1/users/{id}/info',
|
|
2311
2431
|
path: {
|
|
2312
|
-
|
|
2313
|
-
region: data.region
|
|
2432
|
+
id: data.id
|
|
2314
2433
|
},
|
|
2315
2434
|
errors: {
|
|
2316
|
-
|
|
2317
|
-
403: 'Forbidden - not owner of rule',
|
|
2318
|
-
404: 'Rule not found'
|
|
2435
|
+
403: 'Cannot access other user info without admin permission'
|
|
2319
2436
|
}
|
|
2320
2437
|
});
|
|
2321
2438
|
}
|
|
2322
2439
|
|
|
2323
2440
|
/**
|
|
2324
|
-
* Update
|
|
2441
|
+
* Update user settings
|
|
2325
2442
|
* @param data The data for the request.
|
|
2326
|
-
* @param data.ruleId Rule ID to update
|
|
2327
|
-
* @param data.region Region code for tenant context
|
|
2328
2443
|
* @param data.requestBody
|
|
2329
|
-
* @returns
|
|
2444
|
+
* @returns unknown Settings updated successfully
|
|
2330
2445
|
* @throws ApiError
|
|
2331
2446
|
*/
|
|
2332
|
-
public static
|
|
2333
|
-
data:
|
|
2334
|
-
): CancelablePromise<
|
|
2447
|
+
public static userControllerUpdateUserSetting(
|
|
2448
|
+
data: UserControllerUpdateUserSettingData
|
|
2449
|
+
): CancelablePromise<UserControllerUpdateUserSettingResponse> {
|
|
2335
2450
|
return __request(OpenAPI, {
|
|
2336
2451
|
method: 'PUT',
|
|
2337
|
-
url: '/api/v1/
|
|
2338
|
-
path: {
|
|
2339
|
-
ruleId: data.ruleId,
|
|
2340
|
-
region: data.region
|
|
2341
|
-
},
|
|
2452
|
+
url: '/api/v1/users/setting',
|
|
2342
2453
|
body: data.requestBody,
|
|
2343
2454
|
mediaType: 'application/json',
|
|
2344
2455
|
errors: {
|
|
2345
|
-
|
|
2346
|
-
401: 'Unauthorized',
|
|
2347
|
-
403: 'Forbidden - not owner of rule',
|
|
2348
|
-
404: 'Rule not found',
|
|
2349
|
-
409: 'Resource conflict - rule is being modified by another process'
|
|
2456
|
+
403: 'Insufficient permissions'
|
|
2350
2457
|
}
|
|
2351
2458
|
});
|
|
2352
2459
|
}
|
|
2353
2460
|
|
|
2354
2461
|
/**
|
|
2355
|
-
*
|
|
2462
|
+
* Get all user settings paginated (admin only)
|
|
2356
2463
|
* @param data The data for the request.
|
|
2357
|
-
* @param data.
|
|
2358
|
-
* @param data.
|
|
2359
|
-
* @returns
|
|
2464
|
+
* @param data.pageNo Page number
|
|
2465
|
+
* @param data.pageSize Page size
|
|
2466
|
+
* @returns unknown Settings list retrieved successfully
|
|
2360
2467
|
* @throws ApiError
|
|
2361
2468
|
*/
|
|
2362
|
-
public static
|
|
2363
|
-
data:
|
|
2364
|
-
): CancelablePromise<
|
|
2469
|
+
public static userControllerGetAllUserSettingsByPage(
|
|
2470
|
+
data: UserControllerGetAllUserSettingsByPageData
|
|
2471
|
+
): CancelablePromise<UserControllerGetAllUserSettingsByPageResponse> {
|
|
2365
2472
|
return __request(OpenAPI, {
|
|
2366
|
-
method: '
|
|
2367
|
-
url: '/api/v1/
|
|
2368
|
-
|
|
2369
|
-
|
|
2370
|
-
|
|
2371
|
-
}
|
|
2473
|
+
method: 'GET',
|
|
2474
|
+
url: '/api/v1/users/settings-by-page',
|
|
2475
|
+
query: {
|
|
2476
|
+
pageNo: data.pageNo,
|
|
2477
|
+
pageSize: data.pageSize
|
|
2478
|
+
}
|
|
2479
|
+
});
|
|
2480
|
+
}
|
|
2481
|
+
|
|
2482
|
+
/**
|
|
2483
|
+
* Get asset and liability summary for current user
|
|
2484
|
+
* @returns unknown Summary retrieved successfully
|
|
2485
|
+
* @throws ApiError
|
|
2486
|
+
*/
|
|
2487
|
+
public static userControllerGetAssetLiabilitySummary(): CancelablePromise<UserControllerGetAssetLiabilitySummaryResponse> {
|
|
2488
|
+
return __request(OpenAPI, {
|
|
2489
|
+
method: 'GET',
|
|
2490
|
+
url: '/api/v1/users/asset-liability-summary'
|
|
2491
|
+
});
|
|
2492
|
+
}
|
|
2493
|
+
}
|
|
2494
|
+
|
|
2495
|
+
export class PropertiesService {
|
|
2496
|
+
/**
|
|
2497
|
+
* Get all system properties
|
|
2498
|
+
* @returns unknown Properties retrieved successfully
|
|
2499
|
+
* @throws ApiError
|
|
2500
|
+
*/
|
|
2501
|
+
public static propertyControllerGetAll(): CancelablePromise<PropertyControllerGetAllResponse> {
|
|
2502
|
+
return __request(OpenAPI, {
|
|
2503
|
+
method: 'GET',
|
|
2504
|
+
url: '/api/v1/admin/properties',
|
|
2372
2505
|
errors: {
|
|
2373
2506
|
401: 'Unauthorized',
|
|
2374
|
-
403: 'Forbidden -
|
|
2375
|
-
404: 'Rule not found',
|
|
2376
|
-
409: 'Resource conflict - rule is being modified by another process'
|
|
2507
|
+
403: 'Forbidden - insufficient permissions'
|
|
2377
2508
|
}
|
|
2378
2509
|
});
|
|
2379
2510
|
}
|
|
2380
2511
|
|
|
2381
2512
|
/**
|
|
2382
|
-
*
|
|
2513
|
+
* Get property by key
|
|
2383
2514
|
* @param data The data for the request.
|
|
2384
|
-
* @param data.
|
|
2385
|
-
* @
|
|
2386
|
-
* @param data.requestBody
|
|
2387
|
-
* @returns TestRuleResponseDto Test result
|
|
2515
|
+
* @param data.key Property key
|
|
2516
|
+
* @returns unknown Property retrieved successfully
|
|
2388
2517
|
* @throws ApiError
|
|
2389
2518
|
*/
|
|
2390
|
-
public static
|
|
2391
|
-
data:
|
|
2392
|
-
): CancelablePromise<
|
|
2519
|
+
public static propertyControllerGetByKey(
|
|
2520
|
+
data: PropertyControllerGetByKeyData
|
|
2521
|
+
): CancelablePromise<PropertyControllerGetByKeyResponse> {
|
|
2393
2522
|
return __request(OpenAPI, {
|
|
2394
|
-
method: '
|
|
2395
|
-
url: '/api/v1/
|
|
2523
|
+
method: 'GET',
|
|
2524
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2396
2525
|
path: {
|
|
2397
|
-
|
|
2398
|
-
region: data.region
|
|
2526
|
+
key: data.key
|
|
2399
2527
|
},
|
|
2400
|
-
body: data.requestBody,
|
|
2401
|
-
mediaType: 'application/json',
|
|
2402
2528
|
errors: {
|
|
2403
2529
|
401: 'Unauthorized',
|
|
2404
|
-
403: 'Forbidden -
|
|
2405
|
-
404: '
|
|
2530
|
+
403: 'Forbidden - insufficient permissions',
|
|
2531
|
+
404: 'Property not found'
|
|
2406
2532
|
}
|
|
2407
2533
|
});
|
|
2408
2534
|
}
|
|
2409
|
-
}
|
|
2410
2535
|
|
|
2411
|
-
export class UsersService {
|
|
2412
2536
|
/**
|
|
2413
|
-
*
|
|
2537
|
+
* Update a system property
|
|
2414
2538
|
* @param data The data for the request.
|
|
2539
|
+
* @param data.key Property key
|
|
2415
2540
|
* @param data.requestBody
|
|
2416
|
-
* @returns
|
|
2541
|
+
* @returns unknown Property updated successfully
|
|
2417
2542
|
* @throws ApiError
|
|
2418
2543
|
*/
|
|
2419
|
-
public static
|
|
2420
|
-
data:
|
|
2421
|
-
): CancelablePromise<
|
|
2544
|
+
public static propertyControllerUpdate(
|
|
2545
|
+
data: PropertyControllerUpdateData
|
|
2546
|
+
): CancelablePromise<PropertyControllerUpdateResponse> {
|
|
2422
2547
|
return __request(OpenAPI, {
|
|
2423
|
-
method: '
|
|
2424
|
-
url: '/api/v1/
|
|
2548
|
+
method: 'PUT',
|
|
2549
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2550
|
+
path: {
|
|
2551
|
+
key: data.key
|
|
2552
|
+
},
|
|
2425
2553
|
body: data.requestBody,
|
|
2426
2554
|
mediaType: 'application/json',
|
|
2427
2555
|
errors: {
|
|
2428
|
-
|
|
2556
|
+
401: 'Unauthorized',
|
|
2557
|
+
403: 'Forbidden - insufficient permissions'
|
|
2429
2558
|
}
|
|
2430
2559
|
});
|
|
2431
2560
|
}
|
|
2432
2561
|
|
|
2433
2562
|
/**
|
|
2434
|
-
*
|
|
2563
|
+
* Delete a system property
|
|
2435
2564
|
* @param data The data for the request.
|
|
2436
|
-
* @param data.
|
|
2437
|
-
* @returns
|
|
2565
|
+
* @param data.key Property key
|
|
2566
|
+
* @returns void Property deleted successfully
|
|
2438
2567
|
* @throws ApiError
|
|
2439
2568
|
*/
|
|
2440
|
-
public static
|
|
2441
|
-
data:
|
|
2442
|
-
): CancelablePromise<
|
|
2569
|
+
public static propertyControllerDelete(
|
|
2570
|
+
data: PropertyControllerDeleteData
|
|
2571
|
+
): CancelablePromise<PropertyControllerDeleteResponse> {
|
|
2443
2572
|
return __request(OpenAPI, {
|
|
2444
|
-
method: '
|
|
2445
|
-
url: '/api/v1/
|
|
2446
|
-
|
|
2447
|
-
|
|
2573
|
+
method: 'DELETE',
|
|
2574
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2575
|
+
path: {
|
|
2576
|
+
key: data.key
|
|
2577
|
+
},
|
|
2578
|
+
errors: {
|
|
2579
|
+
401: 'Unauthorized',
|
|
2580
|
+
403: 'Forbidden - insufficient permissions',
|
|
2581
|
+
404: 'Property not found'
|
|
2448
2582
|
}
|
|
2449
2583
|
});
|
|
2450
2584
|
}
|
|
2585
|
+
}
|
|
2451
2586
|
|
|
2587
|
+
export class BeanTransactionRulesService {
|
|
2452
2588
|
/**
|
|
2453
|
-
*
|
|
2454
|
-
*
|
|
2589
|
+
* Create a new transaction rule (or upsert if upsertByPayee=true)
|
|
2590
|
+
* Creates a new rule. If upsertByPayee=true, updates existing rule matching payeeKeywords[0] instead of creating duplicate.
|
|
2455
2591
|
* @param data The data for the request.
|
|
2592
|
+
* @param data.region Region code for tenant context
|
|
2456
2593
|
* @param data.requestBody
|
|
2457
|
-
* @returns
|
|
2594
|
+
* @returns TransactionRuleResponseDto Rule updated successfully (upsert mode)
|
|
2458
2595
|
* @throws ApiError
|
|
2459
2596
|
*/
|
|
2460
|
-
public static
|
|
2461
|
-
data:
|
|
2462
|
-
): CancelablePromise<
|
|
2597
|
+
public static transactionRuleControllerCreate(
|
|
2598
|
+
data: TransactionRuleControllerCreateData
|
|
2599
|
+
): CancelablePromise<TransactionRuleControllerCreateResponse> {
|
|
2463
2600
|
return __request(OpenAPI, {
|
|
2464
2601
|
method: 'POST',
|
|
2465
|
-
url: '/api/v1/
|
|
2602
|
+
url: '/api/v1/{region}/bean/transaction-rules',
|
|
2603
|
+
path: {
|
|
2604
|
+
region: data.region
|
|
2605
|
+
},
|
|
2466
2606
|
body: data.requestBody,
|
|
2467
2607
|
mediaType: 'application/json',
|
|
2468
2608
|
errors: {
|
|
2469
|
-
400: '
|
|
2470
|
-
|
|
2609
|
+
400: 'Validation failed',
|
|
2610
|
+
401: 'Unauthorized',
|
|
2611
|
+
409: 'Resource conflict - another process is updating this rule'
|
|
2471
2612
|
}
|
|
2472
2613
|
});
|
|
2473
2614
|
}
|
|
2474
2615
|
|
|
2475
2616
|
/**
|
|
2476
|
-
*
|
|
2617
|
+
* Get all transaction rules for user
|
|
2477
2618
|
* @param data The data for the request.
|
|
2478
|
-
* @param data.
|
|
2479
|
-
* @
|
|
2619
|
+
* @param data.region Region code for tenant context
|
|
2620
|
+
* @param data.limit Max results per page (default: 20, max: 100)
|
|
2621
|
+
* @param data.offset Pagination offset (default: 0)
|
|
2622
|
+
* @param data.enabled Filter by enabled status
|
|
2623
|
+
* @param data.learningSource Filter by learning source. Omit this parameter or pass empty string to get manually created rules (learningSource is null in database).
|
|
2624
|
+
* @param data.autoApplyEnabled Filter by auto-apply status
|
|
2625
|
+
* @returns TransactionRuleListResponseDto List of rules
|
|
2480
2626
|
* @throws ApiError
|
|
2481
2627
|
*/
|
|
2482
|
-
public static
|
|
2483
|
-
data:
|
|
2484
|
-
): CancelablePromise<
|
|
2628
|
+
public static transactionRuleControllerList(
|
|
2629
|
+
data: TransactionRuleControllerListData
|
|
2630
|
+
): CancelablePromise<TransactionRuleControllerListResponse> {
|
|
2485
2631
|
return __request(OpenAPI, {
|
|
2486
|
-
method: '
|
|
2487
|
-
url: '/api/v1/
|
|
2632
|
+
method: 'GET',
|
|
2633
|
+
url: '/api/v1/{region}/bean/transaction-rules',
|
|
2488
2634
|
path: {
|
|
2489
|
-
|
|
2635
|
+
region: data.region
|
|
2636
|
+
},
|
|
2637
|
+
query: {
|
|
2638
|
+
limit: data.limit,
|
|
2639
|
+
offset: data.offset,
|
|
2640
|
+
enabled: data.enabled,
|
|
2641
|
+
learningSource: data.learningSource,
|
|
2642
|
+
autoApplyEnabled: data.autoApplyEnabled
|
|
2490
2643
|
},
|
|
2491
2644
|
errors: {
|
|
2492
|
-
|
|
2645
|
+
401: 'Unauthorized'
|
|
2493
2646
|
}
|
|
2494
2647
|
});
|
|
2495
2648
|
}
|
|
2496
2649
|
|
|
2497
2650
|
/**
|
|
2498
|
-
*
|
|
2651
|
+
* Validate transaction rule configuration
|
|
2499
2652
|
* @param data The data for the request.
|
|
2500
|
-
* @param data.
|
|
2501
|
-
* @
|
|
2653
|
+
* @param data.region Region code for tenant context
|
|
2654
|
+
* @param data.requestBody
|
|
2655
|
+
* @returns ValidateRuleResponseDto Validation result
|
|
2502
2656
|
* @throws ApiError
|
|
2503
2657
|
*/
|
|
2504
|
-
public static
|
|
2505
|
-
data:
|
|
2506
|
-
): CancelablePromise<
|
|
2658
|
+
public static transactionRuleControllerValidate(
|
|
2659
|
+
data: TransactionRuleControllerValidateData
|
|
2660
|
+
): CancelablePromise<TransactionRuleControllerValidateResponse> {
|
|
2507
2661
|
return __request(OpenAPI, {
|
|
2508
|
-
method: '
|
|
2509
|
-
url: '/api/v1/
|
|
2662
|
+
method: 'POST',
|
|
2663
|
+
url: '/api/v1/{region}/bean/transaction-rules/validate',
|
|
2510
2664
|
path: {
|
|
2511
|
-
|
|
2665
|
+
region: data.region
|
|
2512
2666
|
},
|
|
2667
|
+
body: data.requestBody,
|
|
2668
|
+
mediaType: 'application/json',
|
|
2513
2669
|
errors: {
|
|
2514
|
-
|
|
2670
|
+
400: 'Validation failed',
|
|
2671
|
+
401: 'Unauthorized'
|
|
2515
2672
|
}
|
|
2516
2673
|
});
|
|
2517
2674
|
}
|
|
2518
2675
|
|
|
2519
2676
|
/**
|
|
2520
|
-
*
|
|
2677
|
+
* Bulk create transaction rules
|
|
2521
2678
|
* @param data The data for the request.
|
|
2679
|
+
* @param data.region Region code for tenant context
|
|
2522
2680
|
* @param data.requestBody
|
|
2523
|
-
* @returns
|
|
2681
|
+
* @returns BulkCreateRulesResponseDto Bulk create completed
|
|
2524
2682
|
* @throws ApiError
|
|
2525
2683
|
*/
|
|
2526
|
-
public static
|
|
2527
|
-
data:
|
|
2528
|
-
): CancelablePromise<
|
|
2684
|
+
public static transactionRuleControllerBulkCreate(
|
|
2685
|
+
data: TransactionRuleControllerBulkCreateData
|
|
2686
|
+
): CancelablePromise<TransactionRuleControllerBulkCreateResponse> {
|
|
2529
2687
|
return __request(OpenAPI, {
|
|
2530
|
-
method: '
|
|
2531
|
-
url: '/api/v1/
|
|
2688
|
+
method: 'POST',
|
|
2689
|
+
url: '/api/v1/{region}/bean/transaction-rules/bulk',
|
|
2690
|
+
path: {
|
|
2691
|
+
region: data.region
|
|
2692
|
+
},
|
|
2532
2693
|
body: data.requestBody,
|
|
2533
2694
|
mediaType: 'application/json',
|
|
2534
2695
|
errors: {
|
|
2535
|
-
|
|
2696
|
+
400: 'Invalid bulk create data',
|
|
2697
|
+
401: 'Unauthorized'
|
|
2536
2698
|
}
|
|
2537
2699
|
});
|
|
2538
2700
|
}
|
|
2539
2701
|
|
|
2540
2702
|
/**
|
|
2541
|
-
*
|
|
2703
|
+
* Export transaction rules
|
|
2542
2704
|
* @param data The data for the request.
|
|
2543
|
-
* @param data.
|
|
2544
|
-
* @param data.
|
|
2545
|
-
* @returns
|
|
2705
|
+
* @param data.format Export format (currently only JSON supported)
|
|
2706
|
+
* @param data.region Region code for tenant context
|
|
2707
|
+
* @returns ExportRulesResponseDto Exported rules
|
|
2546
2708
|
* @throws ApiError
|
|
2547
2709
|
*/
|
|
2548
|
-
public static
|
|
2549
|
-
data:
|
|
2550
|
-
): CancelablePromise<
|
|
2710
|
+
public static transactionRuleControllerExport(
|
|
2711
|
+
data: TransactionRuleControllerExportData
|
|
2712
|
+
): CancelablePromise<TransactionRuleControllerExportResponse> {
|
|
2551
2713
|
return __request(OpenAPI, {
|
|
2552
2714
|
method: 'GET',
|
|
2553
|
-
url: '/api/v1/
|
|
2554
|
-
|
|
2555
|
-
|
|
2556
|
-
|
|
2715
|
+
url: '/api/v1/{region}/bean/transaction-rules/export/{format}',
|
|
2716
|
+
path: {
|
|
2717
|
+
format: data.format,
|
|
2718
|
+
region: data.region
|
|
2719
|
+
},
|
|
2720
|
+
errors: {
|
|
2721
|
+
400: 'Unsupported format',
|
|
2722
|
+
401: 'Unauthorized'
|
|
2557
2723
|
}
|
|
2558
2724
|
});
|
|
2559
2725
|
}
|
|
2560
2726
|
|
|
2561
2727
|
/**
|
|
2562
|
-
* Get
|
|
2563
|
-
* @
|
|
2728
|
+
* Get transaction rule statistics
|
|
2729
|
+
* @param data The data for the request.
|
|
2730
|
+
* @param data.period Statistics time period
|
|
2731
|
+
* @param data.region Region code for tenant context
|
|
2732
|
+
* @returns RuleStatisticsResponseDto Rule statistics
|
|
2564
2733
|
* @throws ApiError
|
|
2565
2734
|
*/
|
|
2566
|
-
public static
|
|
2735
|
+
public static transactionRuleControllerGetStatistics(
|
|
2736
|
+
data: TransactionRuleControllerGetStatisticsData
|
|
2737
|
+
): CancelablePromise<TransactionRuleControllerGetStatisticsResponse> {
|
|
2567
2738
|
return __request(OpenAPI, {
|
|
2568
2739
|
method: 'GET',
|
|
2569
|
-
url: '/api/v1/
|
|
2740
|
+
url: '/api/v1/{region}/bean/transaction-rules/statistics/{period}',
|
|
2741
|
+
path: {
|
|
2742
|
+
period: data.period,
|
|
2743
|
+
region: data.region
|
|
2744
|
+
},
|
|
2745
|
+
errors: {
|
|
2746
|
+
401: 'Unauthorized'
|
|
2747
|
+
}
|
|
2570
2748
|
});
|
|
2571
2749
|
}
|
|
2572
|
-
}
|
|
2573
2750
|
|
|
2574
|
-
export class PropertiesService {
|
|
2575
2751
|
/**
|
|
2576
|
-
* Get
|
|
2577
|
-
* @
|
|
2752
|
+
* Get transaction rule detail
|
|
2753
|
+
* @param data The data for the request.
|
|
2754
|
+
* @param data.ruleId Rule ID
|
|
2755
|
+
* @param data.region Region code for tenant context
|
|
2756
|
+
* @returns TransactionRuleResponseDto Rule details
|
|
2578
2757
|
* @throws ApiError
|
|
2579
2758
|
*/
|
|
2580
|
-
public static
|
|
2759
|
+
public static transactionRuleControllerGetDetail(
|
|
2760
|
+
data: TransactionRuleControllerGetDetailData
|
|
2761
|
+
): CancelablePromise<TransactionRuleControllerGetDetailResponse> {
|
|
2581
2762
|
return __request(OpenAPI, {
|
|
2582
2763
|
method: 'GET',
|
|
2583
|
-
url: '/api/v1/
|
|
2764
|
+
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
|
|
2765
|
+
path: {
|
|
2766
|
+
ruleId: data.ruleId,
|
|
2767
|
+
region: data.region
|
|
2768
|
+
},
|
|
2584
2769
|
errors: {
|
|
2585
2770
|
401: 'Unauthorized',
|
|
2586
|
-
403: 'Forbidden -
|
|
2771
|
+
403: 'Forbidden - not owner of rule',
|
|
2772
|
+
404: 'Rule not found'
|
|
2587
2773
|
}
|
|
2588
2774
|
});
|
|
2589
2775
|
}
|
|
2590
2776
|
|
|
2591
2777
|
/**
|
|
2592
|
-
*
|
|
2778
|
+
* Update a transaction rule
|
|
2593
2779
|
* @param data The data for the request.
|
|
2594
|
-
* @param data.
|
|
2595
|
-
* @
|
|
2780
|
+
* @param data.ruleId Rule ID to update
|
|
2781
|
+
* @param data.region Region code for tenant context
|
|
2782
|
+
* @param data.requestBody
|
|
2783
|
+
* @returns TransactionRuleResponseDto Rule updated successfully
|
|
2596
2784
|
* @throws ApiError
|
|
2597
2785
|
*/
|
|
2598
|
-
public static
|
|
2599
|
-
data:
|
|
2600
|
-
): CancelablePromise<
|
|
2786
|
+
public static transactionRuleControllerUpdate(
|
|
2787
|
+
data: TransactionRuleControllerUpdateData
|
|
2788
|
+
): CancelablePromise<TransactionRuleControllerUpdateResponse> {
|
|
2601
2789
|
return __request(OpenAPI, {
|
|
2602
|
-
method: '
|
|
2603
|
-
url: '/api/v1/
|
|
2790
|
+
method: 'PUT',
|
|
2791
|
+
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
|
|
2604
2792
|
path: {
|
|
2605
|
-
|
|
2793
|
+
ruleId: data.ruleId,
|
|
2794
|
+
region: data.region
|
|
2795
|
+
},
|
|
2796
|
+
body: data.requestBody,
|
|
2797
|
+
mediaType: 'application/json',
|
|
2798
|
+
errors: {
|
|
2799
|
+
400: 'Validation failed',
|
|
2800
|
+
401: 'Unauthorized',
|
|
2801
|
+
403: 'Forbidden - not owner of rule',
|
|
2802
|
+
404: 'Rule not found',
|
|
2803
|
+
409: 'Resource conflict - rule is being modified by another process'
|
|
2804
|
+
}
|
|
2805
|
+
});
|
|
2806
|
+
}
|
|
2807
|
+
|
|
2808
|
+
/**
|
|
2809
|
+
* Delete a transaction rule
|
|
2810
|
+
* @param data The data for the request.
|
|
2811
|
+
* @param data.ruleId Rule ID to delete
|
|
2812
|
+
* @param data.region Region code for tenant context
|
|
2813
|
+
* @returns void Rule deleted successfully
|
|
2814
|
+
* @throws ApiError
|
|
2815
|
+
*/
|
|
2816
|
+
public static transactionRuleControllerDelete(
|
|
2817
|
+
data: TransactionRuleControllerDeleteData
|
|
2818
|
+
): CancelablePromise<TransactionRuleControllerDeleteResponse> {
|
|
2819
|
+
return __request(OpenAPI, {
|
|
2820
|
+
method: 'DELETE',
|
|
2821
|
+
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}',
|
|
2822
|
+
path: {
|
|
2823
|
+
ruleId: data.ruleId,
|
|
2824
|
+
region: data.region
|
|
2606
2825
|
},
|
|
2607
2826
|
errors: {
|
|
2608
2827
|
401: 'Unauthorized',
|
|
2609
|
-
403: 'Forbidden -
|
|
2610
|
-
404: '
|
|
2828
|
+
403: 'Forbidden - not owner of rule',
|
|
2829
|
+
404: 'Rule not found',
|
|
2830
|
+
409: 'Resource conflict - rule is being modified by another process'
|
|
2611
2831
|
}
|
|
2612
2832
|
});
|
|
2613
2833
|
}
|
|
2614
2834
|
|
|
2615
2835
|
/**
|
|
2616
|
-
*
|
|
2836
|
+
* Test rule matching
|
|
2617
2837
|
* @param data The data for the request.
|
|
2618
|
-
* @param data.
|
|
2838
|
+
* @param data.ruleId Rule ID to test
|
|
2839
|
+
* @param data.region Region code for tenant context
|
|
2619
2840
|
* @param data.requestBody
|
|
2620
|
-
* @returns
|
|
2841
|
+
* @returns TestRuleResponseDto Test result
|
|
2621
2842
|
* @throws ApiError
|
|
2622
2843
|
*/
|
|
2623
|
-
public static
|
|
2624
|
-
data:
|
|
2625
|
-
): CancelablePromise<
|
|
2844
|
+
public static transactionRuleControllerTest(
|
|
2845
|
+
data: TransactionRuleControllerTestData
|
|
2846
|
+
): CancelablePromise<TransactionRuleControllerTestResponse> {
|
|
2626
2847
|
return __request(OpenAPI, {
|
|
2627
|
-
method: '
|
|
2628
|
-
url: '/api/v1/
|
|
2848
|
+
method: 'POST',
|
|
2849
|
+
url: '/api/v1/{region}/bean/transaction-rules/{ruleId}/test',
|
|
2629
2850
|
path: {
|
|
2630
|
-
|
|
2851
|
+
ruleId: data.ruleId,
|
|
2852
|
+
region: data.region
|
|
2631
2853
|
},
|
|
2632
2854
|
body: data.requestBody,
|
|
2633
2855
|
mediaType: 'application/json',
|
|
2634
2856
|
errors: {
|
|
2635
2857
|
401: 'Unauthorized',
|
|
2636
|
-
403: 'Forbidden -
|
|
2858
|
+
403: 'Forbidden - not owner of rule',
|
|
2859
|
+
404: 'Rule not found'
|
|
2637
2860
|
}
|
|
2638
2861
|
});
|
|
2639
2862
|
}
|
|
2863
|
+
}
|
|
2640
2864
|
|
|
2865
|
+
export class BeanCategoryCatalogService {
|
|
2641
2866
|
/**
|
|
2642
|
-
*
|
|
2867
|
+
* List category catalog for a region
|
|
2868
|
+
* Returns the region-scoped category slugs (expense/income/investment/banking/transfer/payment) for the NLP result picker. CN-exclusive payment instruments (huabei/baitiao) appear only under /cn.
|
|
2643
2869
|
* @param data The data for the request.
|
|
2644
|
-
* @param data.
|
|
2645
|
-
* @
|
|
2870
|
+
* @param data.region Region code for tenant context
|
|
2871
|
+
* @param data.scenario Filter by scenario
|
|
2872
|
+
* @param data.routeBearing Filter by routeBearing (entity-router route() consumes it)
|
|
2873
|
+
* @returns CategoryCatalogListResponseDto Category catalog retrieved successfully
|
|
2646
2874
|
* @throws ApiError
|
|
2647
2875
|
*/
|
|
2648
|
-
public static
|
|
2649
|
-
data:
|
|
2650
|
-
): CancelablePromise<
|
|
2876
|
+
public static categoryCatalogControllerList(
|
|
2877
|
+
data: CategoryCatalogControllerListData
|
|
2878
|
+
): CancelablePromise<CategoryCatalogControllerListResponse> {
|
|
2651
2879
|
return __request(OpenAPI, {
|
|
2652
|
-
method: '
|
|
2653
|
-
url: '/api/v1/
|
|
2880
|
+
method: 'GET',
|
|
2881
|
+
url: '/api/v1/{region}/bean/categories',
|
|
2654
2882
|
path: {
|
|
2655
|
-
|
|
2883
|
+
region: data.region
|
|
2656
2884
|
},
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
|
|
2660
|
-
404: 'Property not found'
|
|
2885
|
+
query: {
|
|
2886
|
+
scenario: data.scenario,
|
|
2887
|
+
routeBearing: data.routeBearing
|
|
2661
2888
|
}
|
|
2662
2889
|
});
|
|
2663
2890
|
}
|
|
@@ -3538,13 +3765,20 @@ export class BeanPlatformsService {
|
|
|
3538
3765
|
|
|
3539
3766
|
/**
|
|
3540
3767
|
* Get platform list for current user
|
|
3541
|
-
* @
|
|
3768
|
+
* @param data The data for the request.
|
|
3769
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-type-bucket ordering (local-region platforms first). Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3770
|
+
* @returns PlatformListItemDto List of platforms with user binding status
|
|
3542
3771
|
* @throws ApiError
|
|
3543
3772
|
*/
|
|
3544
|
-
public static platformControllerGetPlatformList(
|
|
3773
|
+
public static platformControllerGetPlatformList(
|
|
3774
|
+
data: PlatformControllerGetPlatformListData = {}
|
|
3775
|
+
): CancelablePromise<PlatformControllerGetPlatformListResponse> {
|
|
3545
3776
|
return __request(OpenAPI, {
|
|
3546
3777
|
method: 'GET',
|
|
3547
|
-
url: '/api/v1/bean/platforms/list'
|
|
3778
|
+
url: '/api/v1/bean/platforms/list',
|
|
3779
|
+
query: {
|
|
3780
|
+
region: data.region
|
|
3781
|
+
}
|
|
3548
3782
|
});
|
|
3549
3783
|
}
|
|
3550
3784
|
|
|
@@ -3552,8 +3786,8 @@ export class BeanPlatformsService {
|
|
|
3552
3786
|
* Match platforms by name or alias
|
|
3553
3787
|
* @param data The data for the request.
|
|
3554
3788
|
* @param data.q Search query — Chinese name, English name, or abbreviation
|
|
3555
|
-
* @param data.region Region code
|
|
3556
|
-
* @returns
|
|
3789
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-tier ordering (local-region platforms first); also the intended categoryOverrides key. Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3790
|
+
* @returns PlatformMatchResponseDto Matching platforms with overall match type and truncation flag
|
|
3557
3791
|
* @throws ApiError
|
|
3558
3792
|
*/
|
|
3559
3793
|
public static platformControllerMatchPlatforms(
|
|
@@ -3771,163 +4005,6 @@ export class InvestmentService {
|
|
|
3771
4005
|
}
|
|
3772
4006
|
}
|
|
3773
4007
|
|
|
3774
|
-
export class ReportingService {
|
|
3775
|
-
/**
|
|
3776
|
-
* Get portfolio value trends
|
|
3777
|
-
*
|
|
3778
|
-
* Returns time series data of portfolio net worth.
|
|
3779
|
-
*
|
|
3780
|
-
* **Multi-currency Support:**
|
|
3781
|
-
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
3782
|
-
* - `byCurrency` - Separate time series grouped by currency
|
|
3783
|
-
* - `warnings` - Exchange rate warnings if conversion failed
|
|
3784
|
-
*
|
|
3785
|
-
* **Parameters:**
|
|
3786
|
-
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
3787
|
-
* - `granularity`: Data granularity (day, week, month)
|
|
3788
|
-
*
|
|
3789
|
-
* @param data The data for the request.
|
|
3790
|
-
* @param data.region Region code for tenant context
|
|
3791
|
-
* @param data.period Time period
|
|
3792
|
-
* @param data.granularity Data granularity
|
|
3793
|
-
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
3794
|
-
* @throws ApiError
|
|
3795
|
-
*/
|
|
3796
|
-
public static reportingControllerGetPortfolioTrends(
|
|
3797
|
-
data: ReportingControllerGetPortfolioTrendsData
|
|
3798
|
-
): CancelablePromise<ReportingControllerGetPortfolioTrendsResponse> {
|
|
3799
|
-
return __request(OpenAPI, {
|
|
3800
|
-
method: 'GET',
|
|
3801
|
-
url: '/api/v1/{region}/reporting/portfolio/trends',
|
|
3802
|
-
path: {
|
|
3803
|
-
region: data.region
|
|
3804
|
-
},
|
|
3805
|
-
query: {
|
|
3806
|
-
period: data.period,
|
|
3807
|
-
granularity: data.granularity
|
|
3808
|
-
},
|
|
3809
|
-
errors: {
|
|
3810
|
-
401: 'User not authenticated'
|
|
3811
|
-
}
|
|
3812
|
-
});
|
|
3813
|
-
}
|
|
3814
|
-
|
|
3815
|
-
/**
|
|
3816
|
-
* Get cash-flow trends
|
|
3817
|
-
*
|
|
3818
|
-
* Monthly income / expense / netSavings over a fixed N-month window
|
|
3819
|
-
* (current month + N−1 prior). Missing months are zero-filled (flow metric).
|
|
3820
|
-
*
|
|
3821
|
-
* **Parameters:**
|
|
3822
|
-
* - `period`: 1m | 3m | 6m | 1y (default 6m)
|
|
3823
|
-
* - `granularity`: accepted for API symmetry; v1 returns month buckets
|
|
3824
|
-
*
|
|
3825
|
-
* @param data The data for the request.
|
|
3826
|
-
* @param data.region Region code for tenant context
|
|
3827
|
-
* @param data.period Time period
|
|
3828
|
-
* @param data.granularity Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
3829
|
-
* @returns CashFlowTrendsResponseDto Cash-flow trends retrieved successfully
|
|
3830
|
-
* @throws ApiError
|
|
3831
|
-
*/
|
|
3832
|
-
public static reportingControllerGetCashFlowTrends(
|
|
3833
|
-
data: ReportingControllerGetCashFlowTrendsData
|
|
3834
|
-
): CancelablePromise<ReportingControllerGetCashFlowTrendsResponse> {
|
|
3835
|
-
return __request(OpenAPI, {
|
|
3836
|
-
method: 'GET',
|
|
3837
|
-
url: '/api/v1/{region}/reporting/cash-flow/trends',
|
|
3838
|
-
path: {
|
|
3839
|
-
region: data.region
|
|
3840
|
-
},
|
|
3841
|
-
query: {
|
|
3842
|
-
period: data.period,
|
|
3843
|
-
granularity: data.granularity
|
|
3844
|
-
},
|
|
3845
|
-
errors: {
|
|
3846
|
-
401: 'User not authenticated'
|
|
3847
|
-
}
|
|
3848
|
-
});
|
|
3849
|
-
}
|
|
3850
|
-
|
|
3851
|
-
/**
|
|
3852
|
-
* Generate portfolio snapshot
|
|
3853
|
-
*
|
|
3854
|
-
* Manually generate a portfolio snapshot for a specific date.
|
|
3855
|
-
*
|
|
3856
|
-
* **Multi-currency Support:**
|
|
3857
|
-
* - Fetches balances grouped by currency
|
|
3858
|
-
* - Uses user's baseCurrency setting for conversion
|
|
3859
|
-
* - Stores exchange rates and warnings
|
|
3860
|
-
*
|
|
3861
|
-
* **Use Cases:**
|
|
3862
|
-
* - Testing snapshot generation
|
|
3863
|
-
* - Force regeneration after data correction
|
|
3864
|
-
* - Initial setup for new users
|
|
3865
|
-
*
|
|
3866
|
-
* @param data The data for the request.
|
|
3867
|
-
* @param data.region Region code for tenant context
|
|
3868
|
-
* @param data.requestBody Optional date (defaults to today)
|
|
3869
|
-
* @returns GenerateSnapshotResponse Snapshot generated successfully
|
|
3870
|
-
* @throws ApiError
|
|
3871
|
-
*/
|
|
3872
|
-
public static reportingControllerGenerateSnapshot(
|
|
3873
|
-
data: ReportingControllerGenerateSnapshotData
|
|
3874
|
-
): CancelablePromise<ReportingControllerGenerateSnapshotResponse> {
|
|
3875
|
-
return __request(OpenAPI, {
|
|
3876
|
-
method: 'POST',
|
|
3877
|
-
url: '/api/v1/{region}/reporting/snapshots/generate',
|
|
3878
|
-
path: {
|
|
3879
|
-
region: data.region
|
|
3880
|
-
},
|
|
3881
|
-
body: data.requestBody,
|
|
3882
|
-
mediaType: 'application/json',
|
|
3883
|
-
errors: {
|
|
3884
|
-
400: 'Invalid date format',
|
|
3885
|
-
401: 'User not authenticated'
|
|
3886
|
-
}
|
|
3887
|
-
});
|
|
3888
|
-
}
|
|
3889
|
-
|
|
3890
|
-
/**
|
|
3891
|
-
* Backfill portfolio snapshots
|
|
3892
|
-
*
|
|
3893
|
-
* Generate snapshots for a date range (historical data backfill).
|
|
3894
|
-
*
|
|
3895
|
-
* **Multi-currency Support:**
|
|
3896
|
-
* - Each snapshot includes multi-currency data
|
|
3897
|
-
* - Uses exchange rates available at generation time
|
|
3898
|
-
* - Warnings stored for missing exchange rates
|
|
3899
|
-
*
|
|
3900
|
-
* **Best Practices:**
|
|
3901
|
-
* - Use for initial setup after account configuration
|
|
3902
|
-
* - Run during low-traffic periods for large date ranges
|
|
3903
|
-
* - Existing snapshots are skipped (not regenerated)
|
|
3904
|
-
*
|
|
3905
|
-
* @param data The data for the request.
|
|
3906
|
-
* @param data.region Region code for tenant context
|
|
3907
|
-
* @param data.requestBody
|
|
3908
|
-
* @returns BackfillSnapshotsResponse Backfill completed successfully
|
|
3909
|
-
* @throws ApiError
|
|
3910
|
-
*/
|
|
3911
|
-
public static reportingControllerBackfillSnapshots(
|
|
3912
|
-
data: ReportingControllerBackfillSnapshotsData
|
|
3913
|
-
): CancelablePromise<ReportingControllerBackfillSnapshotsResponse> {
|
|
3914
|
-
return __request(OpenAPI, {
|
|
3915
|
-
method: 'POST',
|
|
3916
|
-
url: '/api/v1/{region}/reporting/snapshots/backfill',
|
|
3917
|
-
path: {
|
|
3918
|
-
region: data.region
|
|
3919
|
-
},
|
|
3920
|
-
body: data.requestBody,
|
|
3921
|
-
mediaType: 'application/json',
|
|
3922
|
-
errors: {
|
|
3923
|
-
400: 'Invalid date format or range',
|
|
3924
|
-
401: 'User not authenticated',
|
|
3925
|
-
409: 'Backfill already in progress for this user'
|
|
3926
|
-
}
|
|
3927
|
-
});
|
|
3928
|
-
}
|
|
3929
|
-
}
|
|
3930
|
-
|
|
3931
4008
|
export class ApiKeysService {
|
|
3932
4009
|
/**
|
|
3933
4010
|
* Create API key
|
|
@@ -3951,7 +4028,7 @@ export class AuthService {
|
|
|
3951
4028
|
* Anonymous login with access token
|
|
3952
4029
|
* @param data The data for the request.
|
|
3953
4030
|
* @param data.requestBody
|
|
3954
|
-
* @returns
|
|
4031
|
+
* @returns AnonymousLoginResponseDto Login successful
|
|
3955
4032
|
* @throws ApiError
|
|
3956
4033
|
*/
|
|
3957
4034
|
public static authControllerAccessTokenLogin(
|
|
@@ -3969,6 +4046,38 @@ export class AuthService {
|
|
|
3969
4046
|
}
|
|
3970
4047
|
}
|
|
3971
4048
|
|
|
4049
|
+
export class CommunityService {
|
|
4050
|
+
/**
|
|
4051
|
+
* Relay a sanitized parser-contribution payload
|
|
4052
|
+
* A server-side bot re-sanitizes the payload and opens an issue on the target repository; the issue URL is returned. The payload is never persisted or logged (forward-and-drop).
|
|
4053
|
+
* @param data The data for the request.
|
|
4054
|
+
* @param data.region Region code for tenant context (routing only; the institution region rides in the payload meta)
|
|
4055
|
+
* @param data.requestBody
|
|
4056
|
+
* @returns ParserContributionRelayResponseDto Issue created by the bot
|
|
4057
|
+
* @throws ApiError
|
|
4058
|
+
*/
|
|
4059
|
+
public static parserContributionControllerCreate(
|
|
4060
|
+
data: ParserContributionControllerCreateData
|
|
4061
|
+
): CancelablePromise<ParserContributionControllerCreateResponse> {
|
|
4062
|
+
return __request(OpenAPI, {
|
|
4063
|
+
method: 'POST',
|
|
4064
|
+
url: '/api/v1/{region}/community/parser-contributions',
|
|
4065
|
+
path: {
|
|
4066
|
+
region: data.region
|
|
4067
|
+
},
|
|
4068
|
+
body: data.requestBody,
|
|
4069
|
+
mediaType: 'application/json',
|
|
4070
|
+
errors: {
|
|
4071
|
+
401: 'Unauthorized',
|
|
4072
|
+
422: 'Validation failed (institution slug, empty samples, row/cell size limits)',
|
|
4073
|
+
429: 'Rate limited (5 submissions per user per hour)',
|
|
4074
|
+
501: 'Relay not configured on this deployment — clients fall back to the clipboard flow',
|
|
4075
|
+
502: 'GitHub bot failure (upstream), safe to retry'
|
|
4076
|
+
}
|
|
4077
|
+
});
|
|
4078
|
+
}
|
|
4079
|
+
}
|
|
4080
|
+
|
|
3972
4081
|
export class DefaultService {
|
|
3973
4082
|
/**
|
|
3974
4083
|
* @returns unknown
|
|
@@ -4138,3 +4247,53 @@ export class InfoService {
|
|
|
4138
4247
|
});
|
|
4139
4248
|
}
|
|
4140
4249
|
}
|
|
4250
|
+
|
|
4251
|
+
export class MarketDataService {
|
|
4252
|
+
/**
|
|
4253
|
+
* Search market symbols by name or code
|
|
4254
|
+
* Ranked search over the openbb catalog. Empty `q` returns [].
|
|
4255
|
+
* @param data The data for the request.
|
|
4256
|
+
* @param data.q Search term — matched against symbol and instrument name. Empty string returns [].
|
|
4257
|
+
* @param data.limit Maximum number of results (clamped 1..50)
|
|
4258
|
+
* @param data.exchange Filter by exchange code (e.g. US, HK, SS, SZ)
|
|
4259
|
+
* @param data.assetType Filter by OpenBB asset_type (e.g. stock, etf)
|
|
4260
|
+
* @returns SymbolSearchResultDto Ranked search results
|
|
4261
|
+
* @throws ApiError
|
|
4262
|
+
*/
|
|
4263
|
+
public static symbolControllerSearch(
|
|
4264
|
+
data: SymbolControllerSearchData
|
|
4265
|
+
): CancelablePromise<SymbolControllerSearchResponse> {
|
|
4266
|
+
return __request(OpenAPI, {
|
|
4267
|
+
method: 'GET',
|
|
4268
|
+
url: '/api/v1/market/symbols/search',
|
|
4269
|
+
query: {
|
|
4270
|
+
q: data.q,
|
|
4271
|
+
limit: data.limit,
|
|
4272
|
+
exchange: data.exchange,
|
|
4273
|
+
assetType: data.assetType
|
|
4274
|
+
}
|
|
4275
|
+
});
|
|
4276
|
+
}
|
|
4277
|
+
|
|
4278
|
+
/**
|
|
4279
|
+
* Get a market symbol quote
|
|
4280
|
+
* @param data The data for the request.
|
|
4281
|
+
* @param data.symbol
|
|
4282
|
+
* @returns SymbolQuoteDto Symbol quote
|
|
4283
|
+
* @throws ApiError
|
|
4284
|
+
*/
|
|
4285
|
+
public static symbolControllerGetQuote(
|
|
4286
|
+
data: SymbolControllerGetQuoteData
|
|
4287
|
+
): CancelablePromise<SymbolControllerGetQuoteResponse> {
|
|
4288
|
+
return __request(OpenAPI, {
|
|
4289
|
+
method: 'GET',
|
|
4290
|
+
url: '/api/v1/market/symbols/{symbol}/quote',
|
|
4291
|
+
path: {
|
|
4292
|
+
symbol: data.symbol
|
|
4293
|
+
},
|
|
4294
|
+
errors: {
|
|
4295
|
+
404: 'Symbol not found in the openbb catalog'
|
|
4296
|
+
}
|
|
4297
|
+
});
|
|
4298
|
+
}
|
|
4299
|
+
}
|