@firela/api-types 0.0.0-canary.fb3ac1dd → 0.0.0-canary.fcd7d276
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 +1667 -1214
- package/dist/index.d.ts +1667 -1214
- package/dist/index.js +6 -4
- package/dist/index.mjs +6 -4
- package/package.json +1 -1
- package/src/generated/schemas.gen.ts +1904 -1055
- package/src/generated/services.gen.ts +653 -547
- package/src/generated/types.gen.ts +19855 -1485
|
@@ -99,6 +99,14 @@ import type {
|
|
|
99
99
|
CommodityControllerGetOrCreateResponse,
|
|
100
100
|
CommodityControllerBulkCreateData,
|
|
101
101
|
CommodityControllerBulkCreateResponse,
|
|
102
|
+
ReportingControllerGetPortfolioTrendsData,
|
|
103
|
+
ReportingControllerGetPortfolioTrendsResponse,
|
|
104
|
+
ReportingControllerGetCashFlowTrendsData,
|
|
105
|
+
ReportingControllerGetCashFlowTrendsResponse,
|
|
106
|
+
ReportingControllerGenerateSnapshotData,
|
|
107
|
+
ReportingControllerGenerateSnapshotResponse,
|
|
108
|
+
ReportingControllerBackfillSnapshotsData,
|
|
109
|
+
ReportingControllerBackfillSnapshotsResponse,
|
|
102
110
|
PriceControllerCreateData,
|
|
103
111
|
PriceControllerCreateResponse,
|
|
104
112
|
PriceControllerFindAllData,
|
|
@@ -111,6 +119,28 @@ import type {
|
|
|
111
119
|
PriceControllerDeleteResponse,
|
|
112
120
|
PriceControllerBulkCreateData,
|
|
113
121
|
PriceControllerBulkCreateResponse,
|
|
122
|
+
UserControllerDeleteOwnUserData,
|
|
123
|
+
UserControllerDeleteOwnUserResponse,
|
|
124
|
+
UserControllerGetUserData,
|
|
125
|
+
UserControllerGetUserResponse,
|
|
126
|
+
UserControllerSignupUserData,
|
|
127
|
+
UserControllerSignupUserResponse,
|
|
128
|
+
UserControllerDeleteUserData,
|
|
129
|
+
UserControllerDeleteUserResponse,
|
|
130
|
+
UserControllerGetUserInfoData,
|
|
131
|
+
UserControllerGetUserInfoResponse,
|
|
132
|
+
UserControllerUpdateUserSettingData,
|
|
133
|
+
UserControllerUpdateUserSettingResponse,
|
|
134
|
+
UserControllerGetAllUserSettingsByPageData,
|
|
135
|
+
UserControllerGetAllUserSettingsByPageResponse,
|
|
136
|
+
UserControllerGetAssetLiabilitySummaryResponse,
|
|
137
|
+
PropertyControllerGetAllResponse,
|
|
138
|
+
PropertyControllerGetByKeyData,
|
|
139
|
+
PropertyControllerGetByKeyResponse,
|
|
140
|
+
PropertyControllerUpdateData,
|
|
141
|
+
PropertyControllerUpdateResponse,
|
|
142
|
+
PropertyControllerDeleteData,
|
|
143
|
+
PropertyControllerDeleteResponse,
|
|
114
144
|
RecurringRuleControllerCreateData,
|
|
115
145
|
RecurringRuleControllerCreateResponse,
|
|
116
146
|
RecurringRuleControllerFindAllData,
|
|
@@ -143,36 +173,6 @@ import type {
|
|
|
143
173
|
ExpectedTransactionControllerEnterNowResponse,
|
|
144
174
|
ForecastControllerGetForecastData,
|
|
145
175
|
ForecastControllerGetForecastResponse,
|
|
146
|
-
ReportingControllerGetPortfolioTrendsData,
|
|
147
|
-
ReportingControllerGetPortfolioTrendsResponse,
|
|
148
|
-
ReportingControllerGetCashFlowTrendsData,
|
|
149
|
-
ReportingControllerGetCashFlowTrendsResponse,
|
|
150
|
-
ReportingControllerGenerateSnapshotData,
|
|
151
|
-
ReportingControllerGenerateSnapshotResponse,
|
|
152
|
-
ReportingControllerBackfillSnapshotsData,
|
|
153
|
-
ReportingControllerBackfillSnapshotsResponse,
|
|
154
|
-
UserControllerDeleteOwnUserData,
|
|
155
|
-
UserControllerDeleteOwnUserResponse,
|
|
156
|
-
UserControllerGetUserData,
|
|
157
|
-
UserControllerGetUserResponse,
|
|
158
|
-
UserControllerSignupUserData,
|
|
159
|
-
UserControllerSignupUserResponse,
|
|
160
|
-
UserControllerDeleteUserData,
|
|
161
|
-
UserControllerDeleteUserResponse,
|
|
162
|
-
UserControllerGetUserInfoData,
|
|
163
|
-
UserControllerGetUserInfoResponse,
|
|
164
|
-
UserControllerUpdateUserSettingData,
|
|
165
|
-
UserControllerUpdateUserSettingResponse,
|
|
166
|
-
UserControllerGetAllUserSettingsByPageData,
|
|
167
|
-
UserControllerGetAllUserSettingsByPageResponse,
|
|
168
|
-
UserControllerGetAssetLiabilitySummaryResponse,
|
|
169
|
-
PropertyControllerGetAllResponse,
|
|
170
|
-
PropertyControllerGetByKeyData,
|
|
171
|
-
PropertyControllerGetByKeyResponse,
|
|
172
|
-
PropertyControllerUpdateData,
|
|
173
|
-
PropertyControllerUpdateResponse,
|
|
174
|
-
PropertyControllerDeleteData,
|
|
175
|
-
PropertyControllerDeleteResponse,
|
|
176
176
|
TransactionRuleControllerCreateData,
|
|
177
177
|
TransactionRuleControllerCreateResponse,
|
|
178
178
|
TransactionRuleControllerListData,
|
|
@@ -193,6 +193,8 @@ import type {
|
|
|
193
193
|
TransactionRuleControllerDeleteResponse,
|
|
194
194
|
TransactionRuleControllerTestData,
|
|
195
195
|
TransactionRuleControllerTestResponse,
|
|
196
|
+
CategoryCatalogControllerListData,
|
|
197
|
+
CategoryCatalogControllerListResponse,
|
|
196
198
|
EventControllerCreateData,
|
|
197
199
|
EventControllerCreateResponse,
|
|
198
200
|
EventControllerFindAllData,
|
|
@@ -257,9 +259,12 @@ import type {
|
|
|
257
259
|
PlatformControllerFindAllResponse,
|
|
258
260
|
PlatformControllerCreateData,
|
|
259
261
|
PlatformControllerCreateResponse,
|
|
262
|
+
PlatformControllerGetPlatformListData,
|
|
260
263
|
PlatformControllerGetPlatformListResponse,
|
|
261
264
|
PlatformControllerMatchPlatformsData,
|
|
262
265
|
PlatformControllerMatchPlatformsResponse,
|
|
266
|
+
PlatformControllerGetPlatformStandardsData,
|
|
267
|
+
PlatformControllerGetPlatformStandardsResponse,
|
|
263
268
|
PlatformControllerUpdateData,
|
|
264
269
|
PlatformControllerUpdateResponse,
|
|
265
270
|
PlatformControllerDeleteData,
|
|
@@ -277,6 +282,8 @@ import type {
|
|
|
277
282
|
ApiKeysControllerCreateApiKeyResponse,
|
|
278
283
|
AuthControllerAccessTokenLoginData,
|
|
279
284
|
AuthControllerAccessTokenLoginResponse,
|
|
285
|
+
ParserContributionControllerCreateData,
|
|
286
|
+
ParserContributionControllerCreateResponse,
|
|
280
287
|
CacheControllerFlushCacheResponse,
|
|
281
288
|
ExchangeRateControllerGetExchangeRateData,
|
|
282
289
|
ExchangeRateControllerGetExchangeRateResponse,
|
|
@@ -330,7 +337,7 @@ export class BeanAccountsService {
|
|
|
330
337
|
* @param data.type Filter by account type
|
|
331
338
|
* @param data.status Filter by status
|
|
332
339
|
* @param data.isCustom Filter by custom (user-created) accounts only
|
|
333
|
-
* @param data.search Search term
|
|
340
|
+
* @param data.search Search term matched against account path and user-set display name (case-insensitive)
|
|
334
341
|
* @param data.limit Maximum number of results
|
|
335
342
|
* @param data.offset Number of results to skip
|
|
336
343
|
* @returns AccountListResponseDto Accounts retrieved successfully
|
|
@@ -526,11 +533,11 @@ export class BeanAccountsService {
|
|
|
526
533
|
export class BeanAccountStandardsService {
|
|
527
534
|
/**
|
|
528
535
|
* Get account templates
|
|
529
|
-
* Returns predefined account templates for a region. Supports filtering by account type and search term.
|
|
536
|
+
* Returns predefined account templates for a region. Supports filtering by account type and search term. Not-yet-open region codes return the universal-only catalog (#759).
|
|
530
537
|
* @param data The data for the request.
|
|
531
|
-
* @param data.region Region code (
|
|
538
|
+
* @param data.region Region code (any ISO alpha-2; not-yet-open codes return the universal-only catalog)
|
|
532
539
|
* @param data.type Filter by account type
|
|
533
|
-
* @param data.search Search term for path or
|
|
540
|
+
* @param data.search Search term for path, description, aliases, or localized display name
|
|
534
541
|
* @returns AccountStandardListResponseDto Account templates retrieved successfully
|
|
535
542
|
* @throws ApiError
|
|
536
543
|
*/
|
|
@@ -554,7 +561,7 @@ export class BeanAccountStandardsService {
|
|
|
554
561
|
* Get template metadata for an account path
|
|
555
562
|
* Returns root type for a template path.
|
|
556
563
|
* @param data The data for the request.
|
|
557
|
-
* @param data.region Region code for tenant context
|
|
564
|
+
* @param data.region Region code for tenant context. Not-yet-open codes degrade to the universal-only catalog (#759)
|
|
558
565
|
* @param data.path Account path to check
|
|
559
566
|
* @returns TemplateMetadataResponseDto Template metadata retrieved successfully
|
|
560
567
|
* @throws ApiError
|
|
@@ -576,9 +583,9 @@ export class BeanAccountStandardsService {
|
|
|
576
583
|
|
|
577
584
|
/**
|
|
578
585
|
* Get available regions with hierarchy
|
|
579
|
-
* Returns
|
|
586
|
+
* Returns the full region catalog (every ISO 3166-1 entry) with an 'open' flag and inheritance metadata (#759)
|
|
580
587
|
* @param data The data for the request.
|
|
581
|
-
* @param data.region Region code for tenant context
|
|
588
|
+
* @param data.region Region code for tenant context. Not-yet-open codes degrade to the universal-only catalog (#759)
|
|
582
589
|
* @returns RegionsMetadataResponseDto Regions metadata retrieved successfully
|
|
583
590
|
* @throws ApiError
|
|
584
591
|
*/
|
|
@@ -635,10 +642,11 @@ export class BeanTransactionsService {
|
|
|
635
642
|
* @param data.offset Number of items to skip (default: 0)
|
|
636
643
|
* @param data.dateFrom Filter by start date (inclusive), format: YYYY-MM-DD
|
|
637
644
|
* @param data.dateTo Filter by end date (inclusive), format: YYYY-MM-DD
|
|
638
|
-
* @param data.status Filter by transaction status
|
|
645
|
+
* @param data.status Filter by transaction status: single value, comma-separated multi-value (e.g. VOIDED,SUPERSEDED), or ALL to include audit rows. Defaults to ACTIVE-only (ADR-0128; previously unfiltered — breaking change).
|
|
639
646
|
* @param data.search Search in narration and payee fields (max 200 chars)
|
|
640
647
|
* @param data.accountId Filter by account ID (transactions with postings to this account)
|
|
641
|
-
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an
|
|
648
|
+
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
|
|
649
|
+
* @param data.flow Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
|
|
642
650
|
* @returns TransactionListResponseDto Transaction list
|
|
643
651
|
* @throws ApiError
|
|
644
652
|
*/
|
|
@@ -659,7 +667,8 @@ export class BeanTransactionsService {
|
|
|
659
667
|
status: data.status,
|
|
660
668
|
search: data.search,
|
|
661
669
|
accountId: data.accountId,
|
|
662
|
-
category: data.category
|
|
670
|
+
category: data.category,
|
|
671
|
+
flow: data.flow
|
|
663
672
|
},
|
|
664
673
|
errors: {
|
|
665
674
|
400: 'Validation failed',
|
|
@@ -1372,7 +1381,7 @@ export class AdminPayeeProfilesService {
|
|
|
1372
1381
|
* Removes verification status by setting verifiedAt to null.
|
|
1373
1382
|
* @param data The data for the request.
|
|
1374
1383
|
* @param data.id Payee profile ID (UUID)
|
|
1375
|
-
* @returns
|
|
1384
|
+
* @returns void Payee profile unverified successfully
|
|
1376
1385
|
* @throws ApiError
|
|
1377
1386
|
*/
|
|
1378
1387
|
public static payeeProfileAdminControllerUnverify(
|
|
@@ -1568,6 +1577,163 @@ export class BeanCommoditiesService {
|
|
|
1568
1577
|
}
|
|
1569
1578
|
}
|
|
1570
1579
|
|
|
1580
|
+
export class ReportingService {
|
|
1581
|
+
/**
|
|
1582
|
+
* Get portfolio value trends
|
|
1583
|
+
*
|
|
1584
|
+
* Returns time series data of portfolio net worth.
|
|
1585
|
+
*
|
|
1586
|
+
* **Multi-currency Support:**
|
|
1587
|
+
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
1588
|
+
* - `byCurrency` - Separate time series grouped by currency
|
|
1589
|
+
* - `warnings` - Exchange rate warnings if conversion failed
|
|
1590
|
+
*
|
|
1591
|
+
* **Parameters:**
|
|
1592
|
+
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
1593
|
+
* - `granularity`: Data granularity (day, week, month)
|
|
1594
|
+
*
|
|
1595
|
+
* @param data The data for the request.
|
|
1596
|
+
* @param data.region Region code for tenant context
|
|
1597
|
+
* @param data.period Time period
|
|
1598
|
+
* @param data.granularity Data granularity
|
|
1599
|
+
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
1600
|
+
* @throws ApiError
|
|
1601
|
+
*/
|
|
1602
|
+
public static reportingControllerGetPortfolioTrends(
|
|
1603
|
+
data: ReportingControllerGetPortfolioTrendsData
|
|
1604
|
+
): CancelablePromise<ReportingControllerGetPortfolioTrendsResponse> {
|
|
1605
|
+
return __request(OpenAPI, {
|
|
1606
|
+
method: 'GET',
|
|
1607
|
+
url: '/api/v1/{region}/reporting/portfolio/trends',
|
|
1608
|
+
path: {
|
|
1609
|
+
region: data.region
|
|
1610
|
+
},
|
|
1611
|
+
query: {
|
|
1612
|
+
period: data.period,
|
|
1613
|
+
granularity: data.granularity
|
|
1614
|
+
},
|
|
1615
|
+
errors: {
|
|
1616
|
+
401: 'User not authenticated'
|
|
1617
|
+
}
|
|
1618
|
+
});
|
|
1619
|
+
}
|
|
1620
|
+
|
|
1621
|
+
/**
|
|
1622
|
+
* Get cash-flow trends
|
|
1623
|
+
*
|
|
1624
|
+
* Monthly income / expense / netSavings over a fixed N-month window
|
|
1625
|
+
* (current month + N−1 prior). Missing months are zero-filled (flow metric).
|
|
1626
|
+
*
|
|
1627
|
+
* **Parameters:**
|
|
1628
|
+
* - `period`: 1m | 3m | 6m | 1y (default 6m)
|
|
1629
|
+
* - `granularity`: accepted for API symmetry; v1 returns month buckets
|
|
1630
|
+
*
|
|
1631
|
+
* @param data The data for the request.
|
|
1632
|
+
* @param data.region Region code for tenant context
|
|
1633
|
+
* @param data.period Time period
|
|
1634
|
+
* @param data.granularity Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
1635
|
+
* @returns CashFlowTrendsResponseDto Cash-flow trends retrieved successfully
|
|
1636
|
+
* @throws ApiError
|
|
1637
|
+
*/
|
|
1638
|
+
public static reportingControllerGetCashFlowTrends(
|
|
1639
|
+
data: ReportingControllerGetCashFlowTrendsData
|
|
1640
|
+
): CancelablePromise<ReportingControllerGetCashFlowTrendsResponse> {
|
|
1641
|
+
return __request(OpenAPI, {
|
|
1642
|
+
method: 'GET',
|
|
1643
|
+
url: '/api/v1/{region}/reporting/cash-flow/trends',
|
|
1644
|
+
path: {
|
|
1645
|
+
region: data.region
|
|
1646
|
+
},
|
|
1647
|
+
query: {
|
|
1648
|
+
period: data.period,
|
|
1649
|
+
granularity: data.granularity
|
|
1650
|
+
},
|
|
1651
|
+
errors: {
|
|
1652
|
+
401: 'User not authenticated'
|
|
1653
|
+
}
|
|
1654
|
+
});
|
|
1655
|
+
}
|
|
1656
|
+
|
|
1657
|
+
/**
|
|
1658
|
+
* Generate portfolio snapshot
|
|
1659
|
+
*
|
|
1660
|
+
* Manually generate a portfolio snapshot for a specific date.
|
|
1661
|
+
*
|
|
1662
|
+
* **Multi-currency Support:**
|
|
1663
|
+
* - Fetches balances grouped by currency
|
|
1664
|
+
* - Uses user's baseCurrency setting for conversion
|
|
1665
|
+
* - Stores exchange rates and warnings
|
|
1666
|
+
*
|
|
1667
|
+
* **Use Cases:**
|
|
1668
|
+
* - Testing snapshot generation
|
|
1669
|
+
* - Force regeneration after data correction
|
|
1670
|
+
* - Initial setup for new users
|
|
1671
|
+
*
|
|
1672
|
+
* @param data The data for the request.
|
|
1673
|
+
* @param data.region Region code for tenant context
|
|
1674
|
+
* @param data.requestBody Optional date (defaults to today)
|
|
1675
|
+
* @returns GenerateSnapshotResponse Snapshot generated successfully
|
|
1676
|
+
* @throws ApiError
|
|
1677
|
+
*/
|
|
1678
|
+
public static reportingControllerGenerateSnapshot(
|
|
1679
|
+
data: ReportingControllerGenerateSnapshotData
|
|
1680
|
+
): CancelablePromise<ReportingControllerGenerateSnapshotResponse> {
|
|
1681
|
+
return __request(OpenAPI, {
|
|
1682
|
+
method: 'POST',
|
|
1683
|
+
url: '/api/v1/{region}/reporting/snapshots/generate',
|
|
1684
|
+
path: {
|
|
1685
|
+
region: data.region
|
|
1686
|
+
},
|
|
1687
|
+
body: data.requestBody,
|
|
1688
|
+
mediaType: 'application/json',
|
|
1689
|
+
errors: {
|
|
1690
|
+
400: 'Invalid date format',
|
|
1691
|
+
401: 'User not authenticated'
|
|
1692
|
+
}
|
|
1693
|
+
});
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
/**
|
|
1697
|
+
* Backfill portfolio snapshots
|
|
1698
|
+
*
|
|
1699
|
+
* Generate snapshots for a date range (historical data backfill).
|
|
1700
|
+
*
|
|
1701
|
+
* **Multi-currency Support:**
|
|
1702
|
+
* - Each snapshot includes multi-currency data
|
|
1703
|
+
* - Uses exchange rates available at generation time
|
|
1704
|
+
* - Warnings stored for missing exchange rates
|
|
1705
|
+
*
|
|
1706
|
+
* **Best Practices:**
|
|
1707
|
+
* - Use for initial setup after account configuration
|
|
1708
|
+
* - Run during low-traffic periods for large date ranges
|
|
1709
|
+
* - Existing snapshots are skipped (not regenerated)
|
|
1710
|
+
*
|
|
1711
|
+
* @param data The data for the request.
|
|
1712
|
+
* @param data.region Region code for tenant context
|
|
1713
|
+
* @param data.requestBody
|
|
1714
|
+
* @returns BackfillSnapshotsResponse Backfill completed successfully
|
|
1715
|
+
* @throws ApiError
|
|
1716
|
+
*/
|
|
1717
|
+
public static reportingControllerBackfillSnapshots(
|
|
1718
|
+
data: ReportingControllerBackfillSnapshotsData
|
|
1719
|
+
): CancelablePromise<ReportingControllerBackfillSnapshotsResponse> {
|
|
1720
|
+
return __request(OpenAPI, {
|
|
1721
|
+
method: 'POST',
|
|
1722
|
+
url: '/api/v1/{region}/reporting/snapshots/backfill',
|
|
1723
|
+
path: {
|
|
1724
|
+
region: data.region
|
|
1725
|
+
},
|
|
1726
|
+
body: data.requestBody,
|
|
1727
|
+
mediaType: 'application/json',
|
|
1728
|
+
errors: {
|
|
1729
|
+
400: 'Invalid date format or range',
|
|
1730
|
+
401: 'User not authenticated',
|
|
1731
|
+
409: 'Backfill already in progress for this user'
|
|
1732
|
+
}
|
|
1733
|
+
});
|
|
1734
|
+
}
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1571
1737
|
export class BeanPricesService {
|
|
1572
1738
|
/**
|
|
1573
1739
|
* Create a new price
|
|
@@ -1735,843 +1901,686 @@ export class BeanPricesService {
|
|
|
1735
1901
|
}
|
|
1736
1902
|
}
|
|
1737
1903
|
|
|
1738
|
-
export class
|
|
1904
|
+
export class UsersService {
|
|
1739
1905
|
/**
|
|
1740
|
-
*
|
|
1741
|
-
* Creates a new recurring transaction rule for the authenticated user
|
|
1906
|
+
* Delete own user account
|
|
1742
1907
|
* @param data The data for the request.
|
|
1743
|
-
* @param data.region Region code for tenant context
|
|
1744
1908
|
* @param data.requestBody
|
|
1745
|
-
* @returns
|
|
1909
|
+
* @returns void User deleted successfully
|
|
1746
1910
|
* @throws ApiError
|
|
1747
1911
|
*/
|
|
1748
|
-
public static
|
|
1749
|
-
data:
|
|
1750
|
-
): CancelablePromise<
|
|
1912
|
+
public static userControllerDeleteOwnUser(
|
|
1913
|
+
data: UserControllerDeleteOwnUserData
|
|
1914
|
+
): CancelablePromise<UserControllerDeleteOwnUserResponse> {
|
|
1751
1915
|
return __request(OpenAPI, {
|
|
1752
|
-
method: '
|
|
1753
|
-
url: '/api/v1/
|
|
1754
|
-
path: {
|
|
1755
|
-
region: data.region
|
|
1756
|
-
},
|
|
1916
|
+
method: 'DELETE',
|
|
1917
|
+
url: '/api/v1/users',
|
|
1757
1918
|
body: data.requestBody,
|
|
1758
1919
|
mediaType: 'application/json',
|
|
1759
1920
|
errors: {
|
|
1760
|
-
|
|
1761
|
-
409: 'Rule with same name already exists'
|
|
1921
|
+
403: 'Invalid access token'
|
|
1762
1922
|
}
|
|
1763
1923
|
});
|
|
1764
1924
|
}
|
|
1765
1925
|
|
|
1766
1926
|
/**
|
|
1767
|
-
*
|
|
1768
|
-
* Returns all recurring rules for the authenticated user with optional filtering
|
|
1927
|
+
* Get current authenticated user
|
|
1769
1928
|
* @param data The data for the request.
|
|
1770
|
-
* @param data.
|
|
1771
|
-
* @
|
|
1772
|
-
* @param data.frequency Filter by frequency (WEEKLY, MONTHLY, etc.)
|
|
1773
|
-
* @param data.hasAutoCreate Filter by autoCreate enabled
|
|
1774
|
-
* @returns RecurringRuleResponseDto Rules retrieved successfully
|
|
1929
|
+
* @param data.acceptLanguage
|
|
1930
|
+
* @returns UserResponseDto User retrieved successfully
|
|
1775
1931
|
* @throws ApiError
|
|
1776
1932
|
*/
|
|
1777
|
-
public static
|
|
1778
|
-
data:
|
|
1779
|
-
): CancelablePromise<
|
|
1933
|
+
public static userControllerGetUser(
|
|
1934
|
+
data: UserControllerGetUserData
|
|
1935
|
+
): CancelablePromise<UserControllerGetUserResponse> {
|
|
1780
1936
|
return __request(OpenAPI, {
|
|
1781
1937
|
method: 'GET',
|
|
1782
|
-
url: '/api/v1/
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
},
|
|
1786
|
-
query: {
|
|
1787
|
-
isActive: data.isActive,
|
|
1788
|
-
frequency: data.frequency,
|
|
1789
|
-
hasAutoCreate: data.hasAutoCreate
|
|
1938
|
+
url: '/api/v1/users',
|
|
1939
|
+
headers: {
|
|
1940
|
+
'accept-language': data.acceptLanguage
|
|
1790
1941
|
}
|
|
1791
1942
|
});
|
|
1792
1943
|
}
|
|
1793
1944
|
|
|
1794
1945
|
/**
|
|
1795
|
-
*
|
|
1796
|
-
*
|
|
1946
|
+
* Sign up new user
|
|
1947
|
+
* Create a new account with auto-generated access token. Protected by Cloudflare Turnstile to prevent automated signup (when enabled).
|
|
1797
1948
|
* @param data The data for the request.
|
|
1798
|
-
* @param data.transactionId Source transaction ID
|
|
1799
|
-
* @param data.region Region code for tenant context
|
|
1800
1949
|
* @param data.requestBody
|
|
1801
|
-
* @returns
|
|
1950
|
+
* @returns SignupResponseDto User created successfully
|
|
1802
1951
|
* @throws ApiError
|
|
1803
1952
|
*/
|
|
1804
|
-
public static
|
|
1805
|
-
data:
|
|
1806
|
-
): CancelablePromise<
|
|
1953
|
+
public static userControllerSignupUser(
|
|
1954
|
+
data: UserControllerSignupUserData
|
|
1955
|
+
): CancelablePromise<UserControllerSignupUserResponse> {
|
|
1807
1956
|
return __request(OpenAPI, {
|
|
1808
1957
|
method: 'POST',
|
|
1809
|
-
url: '/api/v1/
|
|
1810
|
-
path: {
|
|
1811
|
-
transactionId: data.transactionId,
|
|
1812
|
-
region: data.region
|
|
1813
|
-
},
|
|
1958
|
+
url: '/api/v1/users',
|
|
1814
1959
|
body: data.requestBody,
|
|
1815
1960
|
mediaType: 'application/json',
|
|
1816
1961
|
errors: {
|
|
1817
|
-
|
|
1818
|
-
|
|
1962
|
+
400: 'Invalid Turnstile token (when Turnstile is enabled)',
|
|
1963
|
+
403: 'User signup is disabled'
|
|
1819
1964
|
}
|
|
1820
1965
|
});
|
|
1821
1966
|
}
|
|
1822
1967
|
|
|
1823
1968
|
/**
|
|
1824
|
-
*
|
|
1825
|
-
* Returns a specific recurring rule with its details
|
|
1969
|
+
* Delete user by ID (admin only)
|
|
1826
1970
|
* @param data The data for the request.
|
|
1827
|
-
* @param data.id
|
|
1828
|
-
* @
|
|
1829
|
-
* @returns RecurringRuleResponseDto Rule retrieved successfully
|
|
1971
|
+
* @param data.id User ID to delete
|
|
1972
|
+
* @returns void User deleted successfully
|
|
1830
1973
|
* @throws ApiError
|
|
1831
1974
|
*/
|
|
1832
|
-
public static
|
|
1833
|
-
data:
|
|
1834
|
-
): CancelablePromise<
|
|
1975
|
+
public static userControllerDeleteUser(
|
|
1976
|
+
data: UserControllerDeleteUserData
|
|
1977
|
+
): CancelablePromise<UserControllerDeleteUserResponse> {
|
|
1835
1978
|
return __request(OpenAPI, {
|
|
1836
|
-
method: '
|
|
1837
|
-
url: '/api/v1/
|
|
1979
|
+
method: 'DELETE',
|
|
1980
|
+
url: '/api/v1/users/{id}',
|
|
1838
1981
|
path: {
|
|
1839
|
-
id: data.id
|
|
1840
|
-
region: data.region
|
|
1982
|
+
id: data.id
|
|
1841
1983
|
},
|
|
1842
1984
|
errors: {
|
|
1843
|
-
|
|
1985
|
+
403: 'Cannot delete own account or insufficient permissions'
|
|
1844
1986
|
}
|
|
1845
1987
|
});
|
|
1846
1988
|
}
|
|
1847
1989
|
|
|
1848
1990
|
/**
|
|
1849
|
-
*
|
|
1850
|
-
* Updates an existing recurring rule
|
|
1991
|
+
* Get user info by user ID
|
|
1851
1992
|
* @param data The data for the request.
|
|
1852
|
-
* @param data.id
|
|
1853
|
-
* @
|
|
1854
|
-
* @param data.requestBody
|
|
1855
|
-
* @returns RecurringRuleResponseDto Rule updated successfully
|
|
1993
|
+
* @param data.id User ID
|
|
1994
|
+
* @returns unknown User info retrieved successfully
|
|
1856
1995
|
* @throws ApiError
|
|
1857
1996
|
*/
|
|
1858
|
-
public static
|
|
1859
|
-
data:
|
|
1860
|
-
): CancelablePromise<
|
|
1997
|
+
public static userControllerGetUserInfo(
|
|
1998
|
+
data: UserControllerGetUserInfoData
|
|
1999
|
+
): CancelablePromise<UserControllerGetUserInfoResponse> {
|
|
1861
2000
|
return __request(OpenAPI, {
|
|
1862
|
-
method: '
|
|
1863
|
-
url: '/api/v1/
|
|
2001
|
+
method: 'GET',
|
|
2002
|
+
url: '/api/v1/users/{id}/info',
|
|
1864
2003
|
path: {
|
|
1865
|
-
id: data.id
|
|
1866
|
-
region: data.region
|
|
2004
|
+
id: data.id
|
|
1867
2005
|
},
|
|
1868
|
-
body: data.requestBody,
|
|
1869
|
-
mediaType: 'application/json',
|
|
1870
2006
|
errors: {
|
|
1871
|
-
|
|
1872
|
-
404: 'Rule not found'
|
|
2007
|
+
403: 'Cannot access other user info without admin permission'
|
|
1873
2008
|
}
|
|
1874
2009
|
});
|
|
1875
2010
|
}
|
|
1876
2011
|
|
|
1877
2012
|
/**
|
|
1878
|
-
*
|
|
1879
|
-
* Soft deletes a recurring rule (sets isActive to false)
|
|
2013
|
+
* Update user settings
|
|
1880
2014
|
* @param data The data for the request.
|
|
1881
|
-
* @param data.
|
|
1882
|
-
* @
|
|
1883
|
-
* @returns void Rule deleted successfully
|
|
2015
|
+
* @param data.requestBody
|
|
2016
|
+
* @returns unknown Settings updated successfully
|
|
1884
2017
|
* @throws ApiError
|
|
1885
2018
|
*/
|
|
1886
|
-
public static
|
|
1887
|
-
data:
|
|
1888
|
-
): CancelablePromise<
|
|
2019
|
+
public static userControllerUpdateUserSetting(
|
|
2020
|
+
data: UserControllerUpdateUserSettingData
|
|
2021
|
+
): CancelablePromise<UserControllerUpdateUserSettingResponse> {
|
|
1889
2022
|
return __request(OpenAPI, {
|
|
1890
|
-
method: '
|
|
1891
|
-
url: '/api/v1/
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
region: data.region
|
|
1895
|
-
},
|
|
2023
|
+
method: 'PUT',
|
|
2024
|
+
url: '/api/v1/users/setting',
|
|
2025
|
+
body: data.requestBody,
|
|
2026
|
+
mediaType: 'application/json',
|
|
1896
2027
|
errors: {
|
|
1897
|
-
|
|
2028
|
+
403: 'Insufficient permissions'
|
|
1898
2029
|
}
|
|
1899
2030
|
});
|
|
1900
2031
|
}
|
|
1901
2032
|
|
|
1902
2033
|
/**
|
|
1903
|
-
* Get
|
|
1904
|
-
* Returns a rule with pending/overdue counts and next expected date
|
|
2034
|
+
* Get all user settings paginated (admin only)
|
|
1905
2035
|
* @param data The data for the request.
|
|
1906
|
-
* @param data.
|
|
1907
|
-
* @param data.
|
|
1908
|
-
* @returns
|
|
2036
|
+
* @param data.pageNo Page number
|
|
2037
|
+
* @param data.pageSize Page size
|
|
2038
|
+
* @returns unknown Settings list retrieved successfully
|
|
1909
2039
|
* @throws ApiError
|
|
1910
2040
|
*/
|
|
1911
|
-
public static
|
|
1912
|
-
data:
|
|
1913
|
-
): CancelablePromise<
|
|
2041
|
+
public static userControllerGetAllUserSettingsByPage(
|
|
2042
|
+
data: UserControllerGetAllUserSettingsByPageData
|
|
2043
|
+
): CancelablePromise<UserControllerGetAllUserSettingsByPageResponse> {
|
|
1914
2044
|
return __request(OpenAPI, {
|
|
1915
2045
|
method: 'GET',
|
|
1916
|
-
url: '/api/v1/
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
},
|
|
1921
|
-
errors: {
|
|
1922
|
-
404: 'Rule not found'
|
|
2046
|
+
url: '/api/v1/users/settings-by-page',
|
|
2047
|
+
query: {
|
|
2048
|
+
pageNo: data.pageNo,
|
|
2049
|
+
pageSize: data.pageSize
|
|
1923
2050
|
}
|
|
1924
2051
|
});
|
|
1925
2052
|
}
|
|
1926
|
-
}
|
|
1927
2053
|
|
|
1928
|
-
export class ExpectedTransactionsService {
|
|
1929
2054
|
/**
|
|
1930
|
-
*
|
|
1931
|
-
*
|
|
1932
|
-
* @param data The data for the request.
|
|
1933
|
-
* @param data.region Region code for tenant context
|
|
1934
|
-
* @param data.ruleId Filter by recurring rule ID
|
|
1935
|
-
* @param data.status Filter by status (PENDING, COMPLETED, SKIPPED)
|
|
1936
|
-
* @param data.fromDate Filter by date range start (YYYY-MM-DD)
|
|
1937
|
-
* @param data.toDate Filter by date range end (YYYY-MM-DD)
|
|
1938
|
-
* @returns ExpectedTransactionListResponseDto Expected transactions retrieved successfully
|
|
2055
|
+
* Get asset and liability summary for current user
|
|
2056
|
+
* @returns unknown Summary retrieved successfully
|
|
1939
2057
|
* @throws ApiError
|
|
1940
2058
|
*/
|
|
1941
|
-
public static
|
|
1942
|
-
data: ExpectedTransactionControllerFindAllData
|
|
1943
|
-
): CancelablePromise<ExpectedTransactionControllerFindAllResponse> {
|
|
2059
|
+
public static userControllerGetAssetLiabilitySummary(): CancelablePromise<UserControllerGetAssetLiabilitySummaryResponse> {
|
|
1944
2060
|
return __request(OpenAPI, {
|
|
1945
2061
|
method: 'GET',
|
|
1946
|
-
url: '/api/v1/
|
|
1947
|
-
path: {
|
|
1948
|
-
region: data.region
|
|
1949
|
-
},
|
|
1950
|
-
query: {
|
|
1951
|
-
ruleId: data.ruleId,
|
|
1952
|
-
status: data.status,
|
|
1953
|
-
fromDate: data.fromDate,
|
|
1954
|
-
toDate: data.toDate
|
|
1955
|
-
}
|
|
2062
|
+
url: '/api/v1/users/asset-liability-summary'
|
|
1956
2063
|
});
|
|
1957
2064
|
}
|
|
2065
|
+
}
|
|
1958
2066
|
|
|
2067
|
+
export class PropertiesService {
|
|
1959
2068
|
/**
|
|
1960
|
-
*
|
|
1961
|
-
*
|
|
1962
|
-
* @param data The data for the request.
|
|
1963
|
-
* @param data.region Region code for tenant context
|
|
1964
|
-
* @returns ExpectedTransactionListResponseDto Overdue transactions retrieved successfully
|
|
2069
|
+
* Get all system properties
|
|
2070
|
+
* @returns unknown Properties retrieved successfully
|
|
1965
2071
|
* @throws ApiError
|
|
1966
2072
|
*/
|
|
1967
|
-
public static
|
|
1968
|
-
data: ExpectedTransactionControllerFindOverdueData
|
|
1969
|
-
): CancelablePromise<ExpectedTransactionControllerFindOverdueResponse> {
|
|
2073
|
+
public static propertyControllerGetAll(): CancelablePromise<PropertyControllerGetAllResponse> {
|
|
1970
2074
|
return __request(OpenAPI, {
|
|
1971
2075
|
method: 'GET',
|
|
1972
|
-
url: '/api/v1/
|
|
1973
|
-
|
|
1974
|
-
|
|
2076
|
+
url: '/api/v1/admin/properties',
|
|
2077
|
+
errors: {
|
|
2078
|
+
401: 'Unauthorized',
|
|
2079
|
+
403: 'Forbidden - insufficient permissions'
|
|
1975
2080
|
}
|
|
1976
2081
|
});
|
|
1977
2082
|
}
|
|
1978
2083
|
|
|
1979
2084
|
/**
|
|
1980
|
-
* Get
|
|
1981
|
-
* Returns a specific expected transaction with rule details
|
|
2085
|
+
* Get property by key
|
|
1982
2086
|
* @param data The data for the request.
|
|
1983
|
-
* @param data.
|
|
1984
|
-
* @
|
|
1985
|
-
* @returns ExpectedTransactionResponseDto Expected transaction retrieved successfully
|
|
2087
|
+
* @param data.key Property key
|
|
2088
|
+
* @returns unknown Property retrieved successfully
|
|
1986
2089
|
* @throws ApiError
|
|
1987
2090
|
*/
|
|
1988
|
-
public static
|
|
1989
|
-
data:
|
|
1990
|
-
): CancelablePromise<
|
|
2091
|
+
public static propertyControllerGetByKey(
|
|
2092
|
+
data: PropertyControllerGetByKeyData
|
|
2093
|
+
): CancelablePromise<PropertyControllerGetByKeyResponse> {
|
|
1991
2094
|
return __request(OpenAPI, {
|
|
1992
2095
|
method: 'GET',
|
|
1993
|
-
url: '/api/v1/
|
|
2096
|
+
url: '/api/v1/admin/properties/{key}',
|
|
1994
2097
|
path: {
|
|
1995
|
-
|
|
1996
|
-
region: data.region
|
|
2098
|
+
key: data.key
|
|
1997
2099
|
},
|
|
1998
2100
|
errors: {
|
|
1999
|
-
|
|
2101
|
+
401: 'Unauthorized',
|
|
2102
|
+
403: 'Forbidden - insufficient permissions',
|
|
2103
|
+
404: 'Property not found'
|
|
2000
2104
|
}
|
|
2001
2105
|
});
|
|
2002
2106
|
}
|
|
2003
2107
|
|
|
2004
2108
|
/**
|
|
2005
|
-
*
|
|
2006
|
-
* Marks an expected transaction as skipped (PENDING -> SKIPPED)
|
|
2109
|
+
* Update a system property
|
|
2007
2110
|
* @param data The data for the request.
|
|
2008
|
-
* @param data.
|
|
2009
|
-
* @param data.
|
|
2010
|
-
* @returns
|
|
2111
|
+
* @param data.key Property key
|
|
2112
|
+
* @param data.requestBody
|
|
2113
|
+
* @returns unknown Property updated successfully
|
|
2011
2114
|
* @throws ApiError
|
|
2012
2115
|
*/
|
|
2013
|
-
public static
|
|
2014
|
-
data:
|
|
2015
|
-
): CancelablePromise<
|
|
2116
|
+
public static propertyControllerUpdate(
|
|
2117
|
+
data: PropertyControllerUpdateData
|
|
2118
|
+
): CancelablePromise<PropertyControllerUpdateResponse> {
|
|
2016
2119
|
return __request(OpenAPI, {
|
|
2017
|
-
method: '
|
|
2018
|
-
url: '/api/v1/
|
|
2120
|
+
method: 'PUT',
|
|
2121
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2019
2122
|
path: {
|
|
2020
|
-
|
|
2021
|
-
region: data.region
|
|
2123
|
+
key: data.key
|
|
2022
2124
|
},
|
|
2125
|
+
body: data.requestBody,
|
|
2126
|
+
mediaType: 'application/json',
|
|
2023
2127
|
errors: {
|
|
2024
|
-
|
|
2025
|
-
|
|
2128
|
+
401: 'Unauthorized',
|
|
2129
|
+
403: 'Forbidden - insufficient permissions'
|
|
2026
2130
|
}
|
|
2027
2131
|
});
|
|
2028
2132
|
}
|
|
2029
2133
|
|
|
2030
2134
|
/**
|
|
2031
|
-
*
|
|
2032
|
-
* Reverses a skip operation (SKIPPED -> PENDING)
|
|
2135
|
+
* Delete a system property
|
|
2033
2136
|
* @param data The data for the request.
|
|
2034
|
-
* @param data.
|
|
2035
|
-
* @
|
|
2036
|
-
* @returns ExpectedTransactionResponseDto Skip undone successfully
|
|
2137
|
+
* @param data.key Property key
|
|
2138
|
+
* @returns void Property deleted successfully
|
|
2037
2139
|
* @throws ApiError
|
|
2038
2140
|
*/
|
|
2039
|
-
public static
|
|
2040
|
-
data:
|
|
2041
|
-
): CancelablePromise<
|
|
2141
|
+
public static propertyControllerDelete(
|
|
2142
|
+
data: PropertyControllerDeleteData
|
|
2143
|
+
): CancelablePromise<PropertyControllerDeleteResponse> {
|
|
2042
2144
|
return __request(OpenAPI, {
|
|
2043
2145
|
method: 'DELETE',
|
|
2044
|
-
url: '/api/v1/
|
|
2146
|
+
url: '/api/v1/admin/properties/{key}',
|
|
2045
2147
|
path: {
|
|
2046
|
-
|
|
2047
|
-
region: data.region
|
|
2148
|
+
key: data.key
|
|
2048
2149
|
},
|
|
2049
2150
|
errors: {
|
|
2050
|
-
|
|
2051
|
-
|
|
2151
|
+
401: 'Unauthorized',
|
|
2152
|
+
403: 'Forbidden - insufficient permissions',
|
|
2153
|
+
404: 'Property not found'
|
|
2052
2154
|
}
|
|
2053
2155
|
});
|
|
2054
2156
|
}
|
|
2157
|
+
}
|
|
2055
2158
|
|
|
2159
|
+
export class RecurringRulesService {
|
|
2056
2160
|
/**
|
|
2057
|
-
*
|
|
2058
|
-
*
|
|
2161
|
+
* Create a new recurring rule
|
|
2162
|
+
* Creates a new recurring transaction rule for the authenticated user
|
|
2059
2163
|
* @param data The data for the request.
|
|
2060
|
-
* @param data.id Expected transaction ID
|
|
2061
2164
|
* @param data.region Region code for tenant context
|
|
2062
2165
|
* @param data.requestBody
|
|
2063
|
-
* @returns
|
|
2166
|
+
* @returns RecurringRuleResponseDto Rule created successfully
|
|
2064
2167
|
* @throws ApiError
|
|
2065
2168
|
*/
|
|
2066
|
-
public static
|
|
2067
|
-
data:
|
|
2068
|
-
): CancelablePromise<
|
|
2169
|
+
public static recurringRuleControllerCreate(
|
|
2170
|
+
data: RecurringRuleControllerCreateData
|
|
2171
|
+
): CancelablePromise<RecurringRuleControllerCreateResponse> {
|
|
2069
2172
|
return __request(OpenAPI, {
|
|
2070
2173
|
method: 'POST',
|
|
2071
|
-
url: '/api/v1/{region}/bean/
|
|
2174
|
+
url: '/api/v1/{region}/bean/recurring-rules',
|
|
2072
2175
|
path: {
|
|
2073
|
-
id: data.id,
|
|
2074
2176
|
region: data.region
|
|
2075
2177
|
},
|
|
2076
2178
|
body: data.requestBody,
|
|
2077
2179
|
mediaType: 'application/json',
|
|
2078
2180
|
errors: {
|
|
2079
|
-
400: '
|
|
2080
|
-
|
|
2081
|
-
409: 'Actual transaction already matched to another rule'
|
|
2181
|
+
400: 'Invalid input data (e.g., autoCreate without accounts)',
|
|
2182
|
+
409: 'Rule with same name already exists'
|
|
2082
2183
|
}
|
|
2083
2184
|
});
|
|
2084
2185
|
}
|
|
2085
2186
|
|
|
2086
2187
|
/**
|
|
2087
|
-
*
|
|
2088
|
-
*
|
|
2188
|
+
* List recurring rules
|
|
2189
|
+
* Returns all recurring rules for the authenticated user with optional filtering
|
|
2089
2190
|
* @param data The data for the request.
|
|
2090
|
-
* @param data.id Expected transaction ID
|
|
2091
2191
|
* @param data.region Region code for tenant context
|
|
2092
|
-
* @
|
|
2192
|
+
* @param data.isActive Filter by active status
|
|
2193
|
+
* @param data.frequency Filter by frequency (WEEKLY, MONTHLY, etc.)
|
|
2194
|
+
* @param data.hasAutoCreate Filter by autoCreate enabled
|
|
2195
|
+
* @returns RecurringRuleResponseDto Rules retrieved successfully
|
|
2093
2196
|
* @throws ApiError
|
|
2094
2197
|
*/
|
|
2095
|
-
public static
|
|
2096
|
-
data:
|
|
2097
|
-
): CancelablePromise<
|
|
2198
|
+
public static recurringRuleControllerFindAll(
|
|
2199
|
+
data: RecurringRuleControllerFindAllData
|
|
2200
|
+
): CancelablePromise<RecurringRuleControllerFindAllResponse> {
|
|
2098
2201
|
return __request(OpenAPI, {
|
|
2099
|
-
method: '
|
|
2100
|
-
url: '/api/v1/{region}/bean/
|
|
2202
|
+
method: 'GET',
|
|
2203
|
+
url: '/api/v1/{region}/bean/recurring-rules',
|
|
2101
2204
|
path: {
|
|
2102
|
-
id: data.id,
|
|
2103
2205
|
region: data.region
|
|
2104
2206
|
},
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2207
|
+
query: {
|
|
2208
|
+
isActive: data.isActive,
|
|
2209
|
+
frequency: data.frequency,
|
|
2210
|
+
hasAutoCreate: data.hasAutoCreate
|
|
2108
2211
|
}
|
|
2109
2212
|
});
|
|
2110
2213
|
}
|
|
2111
2214
|
|
|
2112
2215
|
/**
|
|
2113
|
-
*
|
|
2114
|
-
*
|
|
2216
|
+
* Create recurring rule from transaction
|
|
2217
|
+
* Auto-creates a recurring rule using transaction data. User only confirms frequency.
|
|
2115
2218
|
* @param data The data for the request.
|
|
2116
|
-
* @param data.
|
|
2219
|
+
* @param data.transactionId Source transaction ID
|
|
2117
2220
|
* @param data.region Region code for tenant context
|
|
2118
2221
|
* @param data.requestBody
|
|
2119
|
-
* @returns
|
|
2222
|
+
* @returns RecurringRuleResponseDto Rule created successfully
|
|
2120
2223
|
* @throws ApiError
|
|
2121
2224
|
*/
|
|
2122
|
-
public static
|
|
2123
|
-
data:
|
|
2124
|
-
): CancelablePromise<
|
|
2225
|
+
public static recurringRuleControllerCreateFromTransaction(
|
|
2226
|
+
data: RecurringRuleControllerCreateFromTransactionData
|
|
2227
|
+
): CancelablePromise<RecurringRuleControllerCreateFromTransactionResponse> {
|
|
2125
2228
|
return __request(OpenAPI, {
|
|
2126
2229
|
method: 'POST',
|
|
2127
|
-
url: '/api/v1/{region}/bean/
|
|
2230
|
+
url: '/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}',
|
|
2128
2231
|
path: {
|
|
2129
|
-
|
|
2232
|
+
transactionId: data.transactionId,
|
|
2130
2233
|
region: data.region
|
|
2131
2234
|
},
|
|
2132
2235
|
body: data.requestBody,
|
|
2133
2236
|
mediaType: 'application/json',
|
|
2134
2237
|
errors: {
|
|
2135
|
-
|
|
2136
|
-
|
|
2238
|
+
404: 'Transaction not found',
|
|
2239
|
+
409: 'Rule with same name already exists or transaction already linked'
|
|
2137
2240
|
}
|
|
2138
2241
|
});
|
|
2139
2242
|
}
|
|
2140
|
-
}
|
|
2141
2243
|
|
|
2142
|
-
export class RecurringForecastService {
|
|
2143
2244
|
/**
|
|
2144
|
-
* Get
|
|
2145
|
-
* Returns
|
|
2245
|
+
* Get recurring rule by ID
|
|
2246
|
+
* Returns a specific recurring rule with its details
|
|
2146
2247
|
* @param data The data for the request.
|
|
2248
|
+
* @param data.id Rule ID
|
|
2147
2249
|
* @param data.region Region code for tenant context
|
|
2148
|
-
* @
|
|
2149
|
-
* @returns ForecastResponseDto Forecast retrieved successfully
|
|
2250
|
+
* @returns RecurringRuleResponseDto Rule retrieved successfully
|
|
2150
2251
|
* @throws ApiError
|
|
2151
2252
|
*/
|
|
2152
|
-
public static
|
|
2153
|
-
data:
|
|
2154
|
-
): CancelablePromise<
|
|
2253
|
+
public static recurringRuleControllerFindOne(
|
|
2254
|
+
data: RecurringRuleControllerFindOneData
|
|
2255
|
+
): CancelablePromise<RecurringRuleControllerFindOneResponse> {
|
|
2155
2256
|
return __request(OpenAPI, {
|
|
2156
2257
|
method: 'GET',
|
|
2157
|
-
url: '/api/v1/{region}/bean/recurring/
|
|
2258
|
+
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
2158
2259
|
path: {
|
|
2260
|
+
id: data.id,
|
|
2159
2261
|
region: data.region
|
|
2160
2262
|
},
|
|
2161
|
-
|
|
2162
|
-
|
|
2263
|
+
errors: {
|
|
2264
|
+
404: 'Rule not found'
|
|
2163
2265
|
}
|
|
2164
2266
|
});
|
|
2165
2267
|
}
|
|
2166
|
-
}
|
|
2167
2268
|
|
|
2168
|
-
export class ReportingService {
|
|
2169
2269
|
/**
|
|
2170
|
-
*
|
|
2171
|
-
*
|
|
2172
|
-
* Returns time series data of portfolio net worth.
|
|
2173
|
-
*
|
|
2174
|
-
* **Multi-currency Support:**
|
|
2175
|
-
* - `series[].byCurrency` - Currency breakdown for each data point
|
|
2176
|
-
* - `byCurrency` - Separate time series grouped by currency
|
|
2177
|
-
* - `warnings` - Exchange rate warnings if conversion failed
|
|
2178
|
-
*
|
|
2179
|
-
* **Parameters:**
|
|
2180
|
-
* - `period`: Time period (1m, 3m, 6m, 1y)
|
|
2181
|
-
* - `granularity`: Data granularity (day, week, month)
|
|
2182
|
-
*
|
|
2270
|
+
* Update recurring rule
|
|
2271
|
+
* Updates an existing recurring rule
|
|
2183
2272
|
* @param data The data for the request.
|
|
2273
|
+
* @param data.id Rule ID
|
|
2184
2274
|
* @param data.region Region code for tenant context
|
|
2185
|
-
* @param data.
|
|
2186
|
-
* @
|
|
2187
|
-
* @returns PortfolioTrendsResponseDto Trends retrieved successfully
|
|
2275
|
+
* @param data.requestBody
|
|
2276
|
+
* @returns RecurringRuleResponseDto Rule updated successfully
|
|
2188
2277
|
* @throws ApiError
|
|
2189
2278
|
*/
|
|
2190
|
-
public static
|
|
2191
|
-
data:
|
|
2192
|
-
): CancelablePromise<
|
|
2279
|
+
public static recurringRuleControllerUpdate(
|
|
2280
|
+
data: RecurringRuleControllerUpdateData
|
|
2281
|
+
): CancelablePromise<RecurringRuleControllerUpdateResponse> {
|
|
2193
2282
|
return __request(OpenAPI, {
|
|
2194
|
-
method: '
|
|
2195
|
-
url: '/api/v1/{region}/
|
|
2283
|
+
method: 'PATCH',
|
|
2284
|
+
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
2196
2285
|
path: {
|
|
2286
|
+
id: data.id,
|
|
2197
2287
|
region: data.region
|
|
2198
2288
|
},
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
granularity: data.granularity
|
|
2202
|
-
},
|
|
2289
|
+
body: data.requestBody,
|
|
2290
|
+
mediaType: 'application/json',
|
|
2203
2291
|
errors: {
|
|
2204
|
-
|
|
2292
|
+
400: 'Invalid input data',
|
|
2293
|
+
404: 'Rule not found'
|
|
2205
2294
|
}
|
|
2206
2295
|
});
|
|
2207
2296
|
}
|
|
2208
2297
|
|
|
2209
2298
|
/**
|
|
2210
|
-
*
|
|
2211
|
-
*
|
|
2212
|
-
* Monthly income / expense / netSavings over a fixed N-month window
|
|
2213
|
-
* (current month + N−1 prior). Missing months are zero-filled (flow metric).
|
|
2214
|
-
*
|
|
2215
|
-
* **Parameters:**
|
|
2216
|
-
* - `period`: 1m | 3m | 6m | 1y (default 6m)
|
|
2217
|
-
* - `granularity`: accepted for API symmetry; v1 returns month buckets
|
|
2218
|
-
*
|
|
2299
|
+
* Delete recurring rule
|
|
2300
|
+
* Soft deletes a recurring rule (sets isActive to false)
|
|
2219
2301
|
* @param data The data for the request.
|
|
2302
|
+
* @param data.id Rule ID
|
|
2220
2303
|
* @param data.region Region code for tenant context
|
|
2221
|
-
* @
|
|
2222
|
-
* @param data.granularity Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
2223
|
-
* @returns CashFlowTrendsResponseDto Cash-flow trends retrieved successfully
|
|
2304
|
+
* @returns void Rule deleted successfully
|
|
2224
2305
|
* @throws ApiError
|
|
2225
2306
|
*/
|
|
2226
|
-
public static
|
|
2227
|
-
data:
|
|
2228
|
-
): CancelablePromise<
|
|
2307
|
+
public static recurringRuleControllerDelete(
|
|
2308
|
+
data: RecurringRuleControllerDeleteData
|
|
2309
|
+
): CancelablePromise<RecurringRuleControllerDeleteResponse> {
|
|
2229
2310
|
return __request(OpenAPI, {
|
|
2230
|
-
method: '
|
|
2231
|
-
url: '/api/v1/{region}/
|
|
2311
|
+
method: 'DELETE',
|
|
2312
|
+
url: '/api/v1/{region}/bean/recurring-rules/{id}',
|
|
2232
2313
|
path: {
|
|
2314
|
+
id: data.id,
|
|
2233
2315
|
region: data.region
|
|
2234
2316
|
},
|
|
2235
|
-
query: {
|
|
2236
|
-
period: data.period,
|
|
2237
|
-
granularity: data.granularity
|
|
2238
|
-
},
|
|
2239
2317
|
errors: {
|
|
2240
|
-
|
|
2318
|
+
404: 'Rule not found'
|
|
2241
2319
|
}
|
|
2242
2320
|
});
|
|
2243
2321
|
}
|
|
2244
2322
|
|
|
2245
2323
|
/**
|
|
2246
|
-
*
|
|
2247
|
-
*
|
|
2248
|
-
* Manually generate a portfolio snapshot for a specific date.
|
|
2249
|
-
*
|
|
2250
|
-
* **Multi-currency Support:**
|
|
2251
|
-
* - Fetches balances grouped by currency
|
|
2252
|
-
* - Uses user's baseCurrency setting for conversion
|
|
2253
|
-
* - Stores exchange rates and warnings
|
|
2254
|
-
*
|
|
2255
|
-
* **Use Cases:**
|
|
2256
|
-
* - Testing snapshot generation
|
|
2257
|
-
* - Force regeneration after data correction
|
|
2258
|
-
* - Initial setup for new users
|
|
2259
|
-
*
|
|
2324
|
+
* Get rule with statistics
|
|
2325
|
+
* Returns a rule with pending/overdue counts and next expected date
|
|
2260
2326
|
* @param data The data for the request.
|
|
2327
|
+
* @param data.id Rule ID
|
|
2261
2328
|
* @param data.region Region code for tenant context
|
|
2262
|
-
* @
|
|
2263
|
-
* @returns GenerateSnapshotResponse Snapshot generated successfully
|
|
2329
|
+
* @returns RecurringRuleWithStatsResponseDto Rule with stats retrieved successfully
|
|
2264
2330
|
* @throws ApiError
|
|
2265
2331
|
*/
|
|
2266
|
-
public static
|
|
2267
|
-
data:
|
|
2268
|
-
): CancelablePromise<
|
|
2332
|
+
public static recurringRuleControllerGetWithStats(
|
|
2333
|
+
data: RecurringRuleControllerGetWithStatsData
|
|
2334
|
+
): CancelablePromise<RecurringRuleControllerGetWithStatsResponse> {
|
|
2269
2335
|
return __request(OpenAPI, {
|
|
2270
|
-
method: '
|
|
2271
|
-
url: '/api/v1/{region}/
|
|
2336
|
+
method: 'GET',
|
|
2337
|
+
url: '/api/v1/{region}/bean/recurring-rules/{id}/stats',
|
|
2272
2338
|
path: {
|
|
2339
|
+
id: data.id,
|
|
2273
2340
|
region: data.region
|
|
2274
2341
|
},
|
|
2275
|
-
body: data.requestBody,
|
|
2276
|
-
mediaType: 'application/json',
|
|
2277
2342
|
errors: {
|
|
2278
|
-
|
|
2279
|
-
401: 'User not authenticated'
|
|
2343
|
+
404: 'Rule not found'
|
|
2280
2344
|
}
|
|
2281
2345
|
});
|
|
2282
2346
|
}
|
|
2347
|
+
}
|
|
2283
2348
|
|
|
2349
|
+
export class ExpectedTransactionsService {
|
|
2284
2350
|
/**
|
|
2285
|
-
*
|
|
2286
|
-
*
|
|
2287
|
-
* Generate snapshots for a date range (historical data backfill).
|
|
2288
|
-
*
|
|
2289
|
-
* **Multi-currency Support:**
|
|
2290
|
-
* - Each snapshot includes multi-currency data
|
|
2291
|
-
* - Uses exchange rates available at generation time
|
|
2292
|
-
* - Warnings stored for missing exchange rates
|
|
2293
|
-
*
|
|
2294
|
-
* **Best Practices:**
|
|
2295
|
-
* - Use for initial setup after account configuration
|
|
2296
|
-
* - Run during low-traffic periods for large date ranges
|
|
2297
|
-
* - Existing snapshots are skipped (not regenerated)
|
|
2298
|
-
*
|
|
2351
|
+
* List expected transactions
|
|
2352
|
+
* Returns expected transactions for the authenticated user with optional filtering
|
|
2299
2353
|
* @param data The data for the request.
|
|
2300
2354
|
* @param data.region Region code for tenant context
|
|
2301
|
-
* @param data.
|
|
2302
|
-
* @
|
|
2355
|
+
* @param data.ruleId Filter by recurring rule ID
|
|
2356
|
+
* @param data.status Filter by status (PENDING, COMPLETED, SKIPPED)
|
|
2357
|
+
* @param data.fromDate Filter by date range start (YYYY-MM-DD)
|
|
2358
|
+
* @param data.toDate Filter by date range end (YYYY-MM-DD)
|
|
2359
|
+
* @returns ExpectedTransactionListResponseDto Expected transactions retrieved successfully
|
|
2303
2360
|
* @throws ApiError
|
|
2304
2361
|
*/
|
|
2305
|
-
public static
|
|
2306
|
-
data:
|
|
2307
|
-
): CancelablePromise<
|
|
2362
|
+
public static expectedTransactionControllerFindAll(
|
|
2363
|
+
data: ExpectedTransactionControllerFindAllData
|
|
2364
|
+
): CancelablePromise<ExpectedTransactionControllerFindAllResponse> {
|
|
2308
2365
|
return __request(OpenAPI, {
|
|
2309
|
-
method: '
|
|
2310
|
-
url: '/api/v1/{region}/
|
|
2366
|
+
method: 'GET',
|
|
2367
|
+
url: '/api/v1/{region}/bean/expected-transactions',
|
|
2311
2368
|
path: {
|
|
2312
2369
|
region: data.region
|
|
2313
2370
|
},
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
409: 'Backfill already in progress for this user'
|
|
2320
|
-
}
|
|
2321
|
-
});
|
|
2322
|
-
}
|
|
2323
|
-
}
|
|
2324
|
-
|
|
2325
|
-
export class UsersService {
|
|
2326
|
-
/**
|
|
2327
|
-
* Delete own user account
|
|
2328
|
-
* @param data The data for the request.
|
|
2329
|
-
* @param data.requestBody
|
|
2330
|
-
* @returns void User deleted successfully
|
|
2331
|
-
* @throws ApiError
|
|
2332
|
-
*/
|
|
2333
|
-
public static userControllerDeleteOwnUser(
|
|
2334
|
-
data: UserControllerDeleteOwnUserData
|
|
2335
|
-
): CancelablePromise<UserControllerDeleteOwnUserResponse> {
|
|
2336
|
-
return __request(OpenAPI, {
|
|
2337
|
-
method: 'DELETE',
|
|
2338
|
-
url: '/api/v1/users',
|
|
2339
|
-
body: data.requestBody,
|
|
2340
|
-
mediaType: 'application/json',
|
|
2341
|
-
errors: {
|
|
2342
|
-
403: 'Invalid access token'
|
|
2371
|
+
query: {
|
|
2372
|
+
ruleId: data.ruleId,
|
|
2373
|
+
status: data.status,
|
|
2374
|
+
fromDate: data.fromDate,
|
|
2375
|
+
toDate: data.toDate
|
|
2343
2376
|
}
|
|
2344
2377
|
});
|
|
2345
2378
|
}
|
|
2346
2379
|
|
|
2347
2380
|
/**
|
|
2348
|
-
*
|
|
2381
|
+
* List overdue expected transactions
|
|
2382
|
+
* Returns all overdue expected transactions (PENDING past tolerance)
|
|
2349
2383
|
* @param data The data for the request.
|
|
2350
|
-
* @param data.
|
|
2351
|
-
* @returns
|
|
2384
|
+
* @param data.region Region code for tenant context
|
|
2385
|
+
* @returns ExpectedTransactionListResponseDto Overdue transactions retrieved successfully
|
|
2352
2386
|
* @throws ApiError
|
|
2353
2387
|
*/
|
|
2354
|
-
public static
|
|
2355
|
-
data:
|
|
2356
|
-
): CancelablePromise<
|
|
2388
|
+
public static expectedTransactionControllerFindOverdue(
|
|
2389
|
+
data: ExpectedTransactionControllerFindOverdueData
|
|
2390
|
+
): CancelablePromise<ExpectedTransactionControllerFindOverdueResponse> {
|
|
2357
2391
|
return __request(OpenAPI, {
|
|
2358
2392
|
method: 'GET',
|
|
2359
|
-
url: '/api/v1/
|
|
2360
|
-
|
|
2361
|
-
|
|
2362
|
-
}
|
|
2363
|
-
});
|
|
2364
|
-
}
|
|
2365
|
-
|
|
2366
|
-
/**
|
|
2367
|
-
* Sign up new user
|
|
2368
|
-
* Create a new account with auto-generated access token. Protected by Cloudflare Turnstile to prevent automated signup (when enabled).
|
|
2369
|
-
* @param data The data for the request.
|
|
2370
|
-
* @param data.requestBody
|
|
2371
|
-
* @returns SignupResponseDto User created successfully
|
|
2372
|
-
* @throws ApiError
|
|
2373
|
-
*/
|
|
2374
|
-
public static userControllerSignupUser(
|
|
2375
|
-
data: UserControllerSignupUserData
|
|
2376
|
-
): CancelablePromise<UserControllerSignupUserResponse> {
|
|
2377
|
-
return __request(OpenAPI, {
|
|
2378
|
-
method: 'POST',
|
|
2379
|
-
url: '/api/v1/users',
|
|
2380
|
-
body: data.requestBody,
|
|
2381
|
-
mediaType: 'application/json',
|
|
2382
|
-
errors: {
|
|
2383
|
-
400: 'Invalid Turnstile token (when Turnstile is enabled)',
|
|
2384
|
-
403: 'User signup is disabled'
|
|
2385
|
-
}
|
|
2386
|
-
});
|
|
2387
|
-
}
|
|
2388
|
-
|
|
2389
|
-
/**
|
|
2390
|
-
* Delete user by ID (admin only)
|
|
2391
|
-
* @param data The data for the request.
|
|
2392
|
-
* @param data.id User ID to delete
|
|
2393
|
-
* @returns void User deleted successfully
|
|
2394
|
-
* @throws ApiError
|
|
2395
|
-
*/
|
|
2396
|
-
public static userControllerDeleteUser(
|
|
2397
|
-
data: UserControllerDeleteUserData
|
|
2398
|
-
): CancelablePromise<UserControllerDeleteUserResponse> {
|
|
2399
|
-
return __request(OpenAPI, {
|
|
2400
|
-
method: 'DELETE',
|
|
2401
|
-
url: '/api/v1/users/{id}',
|
|
2402
|
-
path: {
|
|
2403
|
-
id: data.id
|
|
2404
|
-
},
|
|
2405
|
-
errors: {
|
|
2406
|
-
403: 'Cannot delete own account or insufficient permissions'
|
|
2393
|
+
url: '/api/v1/{region}/bean/expected-transactions/overdue',
|
|
2394
|
+
path: {
|
|
2395
|
+
region: data.region
|
|
2407
2396
|
}
|
|
2408
2397
|
});
|
|
2409
2398
|
}
|
|
2410
2399
|
|
|
2411
2400
|
/**
|
|
2412
|
-
* Get
|
|
2401
|
+
* Get expected transaction by ID
|
|
2402
|
+
* Returns a specific expected transaction with rule details
|
|
2413
2403
|
* @param data The data for the request.
|
|
2414
|
-
* @param data.id
|
|
2415
|
-
* @
|
|
2404
|
+
* @param data.id Expected transaction ID
|
|
2405
|
+
* @param data.region Region code for tenant context
|
|
2406
|
+
* @returns ExpectedTransactionResponseDto Expected transaction retrieved successfully
|
|
2416
2407
|
* @throws ApiError
|
|
2417
2408
|
*/
|
|
2418
|
-
public static
|
|
2419
|
-
data:
|
|
2420
|
-
): CancelablePromise<
|
|
2409
|
+
public static expectedTransactionControllerFindOne(
|
|
2410
|
+
data: ExpectedTransactionControllerFindOneData
|
|
2411
|
+
): CancelablePromise<ExpectedTransactionControllerFindOneResponse> {
|
|
2421
2412
|
return __request(OpenAPI, {
|
|
2422
2413
|
method: 'GET',
|
|
2423
|
-
url: '/api/v1/
|
|
2414
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}',
|
|
2424
2415
|
path: {
|
|
2425
|
-
id: data.id
|
|
2416
|
+
id: data.id,
|
|
2417
|
+
region: data.region
|
|
2426
2418
|
},
|
|
2427
2419
|
errors: {
|
|
2428
|
-
|
|
2420
|
+
404: 'Expected transaction not found'
|
|
2429
2421
|
}
|
|
2430
2422
|
});
|
|
2431
2423
|
}
|
|
2432
2424
|
|
|
2433
2425
|
/**
|
|
2434
|
-
*
|
|
2426
|
+
* Skip expected transaction
|
|
2427
|
+
* Marks an expected transaction as skipped (PENDING -> SKIPPED)
|
|
2435
2428
|
* @param data The data for the request.
|
|
2436
|
-
* @param data.
|
|
2437
|
-
* @
|
|
2429
|
+
* @param data.id Expected transaction ID
|
|
2430
|
+
* @param data.region Region code for tenant context
|
|
2431
|
+
* @returns ExpectedTransactionResponseDto Expected transaction skipped successfully
|
|
2438
2432
|
* @throws ApiError
|
|
2439
2433
|
*/
|
|
2440
|
-
public static
|
|
2441
|
-
data:
|
|
2442
|
-
): CancelablePromise<
|
|
2434
|
+
public static expectedTransactionControllerSkip(
|
|
2435
|
+
data: ExpectedTransactionControllerSkipData
|
|
2436
|
+
): CancelablePromise<ExpectedTransactionControllerSkipResponse> {
|
|
2443
2437
|
return __request(OpenAPI, {
|
|
2444
|
-
method: '
|
|
2445
|
-
url: '/api/v1/
|
|
2446
|
-
|
|
2447
|
-
|
|
2438
|
+
method: 'POST',
|
|
2439
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
|
|
2440
|
+
path: {
|
|
2441
|
+
id: data.id,
|
|
2442
|
+
region: data.region
|
|
2443
|
+
},
|
|
2448
2444
|
errors: {
|
|
2449
|
-
|
|
2445
|
+
400: 'Cannot skip - not in PENDING status',
|
|
2446
|
+
404: 'Expected transaction not found'
|
|
2450
2447
|
}
|
|
2451
2448
|
});
|
|
2452
2449
|
}
|
|
2453
2450
|
|
|
2454
2451
|
/**
|
|
2455
|
-
*
|
|
2452
|
+
* Undo skip
|
|
2453
|
+
* Reverses a skip operation (SKIPPED -> PENDING)
|
|
2456
2454
|
* @param data The data for the request.
|
|
2457
|
-
* @param data.
|
|
2458
|
-
* @param data.
|
|
2459
|
-
* @returns
|
|
2455
|
+
* @param data.id Expected transaction ID
|
|
2456
|
+
* @param data.region Region code for tenant context
|
|
2457
|
+
* @returns void Skip undone successfully
|
|
2460
2458
|
* @throws ApiError
|
|
2461
2459
|
*/
|
|
2462
|
-
public static
|
|
2463
|
-
data:
|
|
2464
|
-
): CancelablePromise<
|
|
2460
|
+
public static expectedTransactionControllerUndoSkip(
|
|
2461
|
+
data: ExpectedTransactionControllerUndoSkipData
|
|
2462
|
+
): CancelablePromise<ExpectedTransactionControllerUndoSkipResponse> {
|
|
2465
2463
|
return __request(OpenAPI, {
|
|
2466
|
-
method: '
|
|
2467
|
-
url: '/api/v1/
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2464
|
+
method: 'DELETE',
|
|
2465
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}/skip',
|
|
2466
|
+
path: {
|
|
2467
|
+
id: data.id,
|
|
2468
|
+
region: data.region
|
|
2469
|
+
},
|
|
2470
|
+
errors: {
|
|
2471
|
+
400: 'Cannot undo - not in SKIPPED status',
|
|
2472
|
+
404: 'Expected transaction not found'
|
|
2471
2473
|
}
|
|
2472
2474
|
});
|
|
2473
2475
|
}
|
|
2474
2476
|
|
|
2475
2477
|
/**
|
|
2476
|
-
*
|
|
2477
|
-
*
|
|
2478
|
-
* @
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
url: '/api/v1/users/asset-liability-summary'
|
|
2484
|
-
});
|
|
2485
|
-
}
|
|
2486
|
-
}
|
|
2487
|
-
|
|
2488
|
-
export class PropertiesService {
|
|
2489
|
-
/**
|
|
2490
|
-
* Get all system properties
|
|
2491
|
-
* @returns unknown Properties retrieved successfully
|
|
2478
|
+
* Confirm transaction match
|
|
2479
|
+
* Manually matches an expected transaction with an actual transaction
|
|
2480
|
+
* @param data The data for the request.
|
|
2481
|
+
* @param data.id Expected transaction ID
|
|
2482
|
+
* @param data.region Region code for tenant context
|
|
2483
|
+
* @param data.requestBody
|
|
2484
|
+
* @returns unknown Match confirmed successfully
|
|
2492
2485
|
* @throws ApiError
|
|
2493
2486
|
*/
|
|
2494
|
-
public static
|
|
2487
|
+
public static expectedTransactionControllerConfirmMatch(
|
|
2488
|
+
data: ExpectedTransactionControllerConfirmMatchData
|
|
2489
|
+
): CancelablePromise<ExpectedTransactionControllerConfirmMatchResponse> {
|
|
2495
2490
|
return __request(OpenAPI, {
|
|
2496
|
-
method: '
|
|
2497
|
-
url: '/api/v1/
|
|
2491
|
+
method: 'POST',
|
|
2492
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
|
|
2493
|
+
path: {
|
|
2494
|
+
id: data.id,
|
|
2495
|
+
region: data.region
|
|
2496
|
+
},
|
|
2497
|
+
body: data.requestBody,
|
|
2498
|
+
mediaType: 'application/json',
|
|
2498
2499
|
errors: {
|
|
2499
|
-
|
|
2500
|
-
|
|
2500
|
+
400: 'Cannot match - not in PENDING status',
|
|
2501
|
+
404: 'Expected or actual transaction not found',
|
|
2502
|
+
409: 'Actual transaction already matched to another rule'
|
|
2501
2503
|
}
|
|
2502
2504
|
});
|
|
2503
2505
|
}
|
|
2504
2506
|
|
|
2505
2507
|
/**
|
|
2506
|
-
*
|
|
2508
|
+
* Unmatch transaction
|
|
2509
|
+
* Removes the match between expected and actual transaction (COMPLETED -> PENDING)
|
|
2507
2510
|
* @param data The data for the request.
|
|
2508
|
-
* @param data.
|
|
2509
|
-
* @
|
|
2511
|
+
* @param data.id Expected transaction ID
|
|
2512
|
+
* @param data.region Region code for tenant context
|
|
2513
|
+
* @returns void Match removed successfully
|
|
2510
2514
|
* @throws ApiError
|
|
2511
2515
|
*/
|
|
2512
|
-
public static
|
|
2513
|
-
data:
|
|
2514
|
-
): CancelablePromise<
|
|
2516
|
+
public static expectedTransactionControllerUnmatch(
|
|
2517
|
+
data: ExpectedTransactionControllerUnmatchData
|
|
2518
|
+
): CancelablePromise<ExpectedTransactionControllerUnmatchResponse> {
|
|
2515
2519
|
return __request(OpenAPI, {
|
|
2516
|
-
method: '
|
|
2517
|
-
url: '/api/v1/
|
|
2520
|
+
method: 'DELETE',
|
|
2521
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}/match',
|
|
2518
2522
|
path: {
|
|
2519
|
-
|
|
2523
|
+
id: data.id,
|
|
2524
|
+
region: data.region
|
|
2520
2525
|
},
|
|
2521
2526
|
errors: {
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
404: 'Property not found'
|
|
2527
|
+
400: 'Cannot unmatch - not in COMPLETED status',
|
|
2528
|
+
404: 'Expected transaction not found'
|
|
2525
2529
|
}
|
|
2526
2530
|
});
|
|
2527
2531
|
}
|
|
2528
2532
|
|
|
2529
2533
|
/**
|
|
2530
|
-
*
|
|
2534
|
+
* Enter Now
|
|
2535
|
+
* Creates an actual transaction for an expected transaction (YNAB-style Enter Now)
|
|
2531
2536
|
* @param data The data for the request.
|
|
2532
|
-
* @param data.
|
|
2537
|
+
* @param data.id Expected transaction ID
|
|
2538
|
+
* @param data.region Region code for tenant context
|
|
2533
2539
|
* @param data.requestBody
|
|
2534
|
-
* @returns unknown
|
|
2540
|
+
* @returns unknown Transaction created successfully
|
|
2535
2541
|
* @throws ApiError
|
|
2536
2542
|
*/
|
|
2537
|
-
public static
|
|
2538
|
-
data:
|
|
2539
|
-
): CancelablePromise<
|
|
2543
|
+
public static expectedTransactionControllerEnterNow(
|
|
2544
|
+
data: ExpectedTransactionControllerEnterNowData
|
|
2545
|
+
): CancelablePromise<ExpectedTransactionControllerEnterNowResponse> {
|
|
2540
2546
|
return __request(OpenAPI, {
|
|
2541
|
-
method: '
|
|
2542
|
-
url: '/api/v1/
|
|
2547
|
+
method: 'POST',
|
|
2548
|
+
url: '/api/v1/{region}/bean/expected-transactions/{id}/enter',
|
|
2543
2549
|
path: {
|
|
2544
|
-
|
|
2550
|
+
id: data.id,
|
|
2551
|
+
region: data.region
|
|
2545
2552
|
},
|
|
2546
2553
|
body: data.requestBody,
|
|
2547
2554
|
mediaType: 'application/json',
|
|
2548
2555
|
errors: {
|
|
2549
|
-
|
|
2550
|
-
|
|
2556
|
+
400: 'Cannot enter - not in PENDING status or missing accounts',
|
|
2557
|
+
404: 'Expected transaction or accounts not found'
|
|
2551
2558
|
}
|
|
2552
2559
|
});
|
|
2553
2560
|
}
|
|
2561
|
+
}
|
|
2554
2562
|
|
|
2563
|
+
export class RecurringForecastService {
|
|
2555
2564
|
/**
|
|
2556
|
-
*
|
|
2565
|
+
* Get cash flow forecast
|
|
2566
|
+
* Returns predicted outflows for the next N months based on active recurring rules
|
|
2557
2567
|
* @param data The data for the request.
|
|
2558
|
-
* @param data.
|
|
2559
|
-
* @
|
|
2568
|
+
* @param data.region Region code for tenant context
|
|
2569
|
+
* @param data.months Number of months to forecast (1-12, default 3)
|
|
2570
|
+
* @returns ForecastResponseDto Forecast retrieved successfully
|
|
2560
2571
|
* @throws ApiError
|
|
2561
2572
|
*/
|
|
2562
|
-
public static
|
|
2563
|
-
data:
|
|
2564
|
-
): CancelablePromise<
|
|
2573
|
+
public static forecastControllerGetForecast(
|
|
2574
|
+
data: ForecastControllerGetForecastData
|
|
2575
|
+
): CancelablePromise<ForecastControllerGetForecastResponse> {
|
|
2565
2576
|
return __request(OpenAPI, {
|
|
2566
|
-
method: '
|
|
2567
|
-
url: '/api/v1/
|
|
2577
|
+
method: 'GET',
|
|
2578
|
+
url: '/api/v1/{region}/bean/recurring/forecast',
|
|
2568
2579
|
path: {
|
|
2569
|
-
|
|
2580
|
+
region: data.region
|
|
2570
2581
|
},
|
|
2571
|
-
|
|
2572
|
-
|
|
2573
|
-
403: 'Forbidden - insufficient permissions',
|
|
2574
|
-
404: 'Property not found'
|
|
2582
|
+
query: {
|
|
2583
|
+
months: data.months
|
|
2575
2584
|
}
|
|
2576
2585
|
});
|
|
2577
2586
|
}
|
|
@@ -2855,6 +2864,34 @@ export class BeanTransactionRulesService {
|
|
|
2855
2864
|
}
|
|
2856
2865
|
}
|
|
2857
2866
|
|
|
2867
|
+
export class BeanCategoryCatalogService {
|
|
2868
|
+
/**
|
|
2869
|
+
* List category catalog for a region
|
|
2870
|
+
* Returns the region-scoped category slugs (expense/income/investment/banking/transfer/payment) for the NLP result picker, each with the categoryAccount paths the region-enabled system rules map it to (#816). CN-exclusive payment instruments (huabei/baitiao) appear only under /cn.
|
|
2871
|
+
* @param data The data for the request.
|
|
2872
|
+
* @param data.region Region code for tenant context
|
|
2873
|
+
* @param data.scenario Filter by scenario
|
|
2874
|
+
* @param data.routeBearing Filter by routeBearing (entity-router route() consumes it)
|
|
2875
|
+
* @returns CategoryCatalogListResponseDto Category catalog retrieved successfully
|
|
2876
|
+
* @throws ApiError
|
|
2877
|
+
*/
|
|
2878
|
+
public static categoryCatalogControllerList(
|
|
2879
|
+
data: CategoryCatalogControllerListData
|
|
2880
|
+
): CancelablePromise<CategoryCatalogControllerListResponse> {
|
|
2881
|
+
return __request(OpenAPI, {
|
|
2882
|
+
method: 'GET',
|
|
2883
|
+
url: '/api/v1/{region}/bean/categories',
|
|
2884
|
+
path: {
|
|
2885
|
+
region: data.region
|
|
2886
|
+
},
|
|
2887
|
+
query: {
|
|
2888
|
+
scenario: data.scenario,
|
|
2889
|
+
routeBearing: data.routeBearing
|
|
2890
|
+
}
|
|
2891
|
+
});
|
|
2892
|
+
}
|
|
2893
|
+
}
|
|
2894
|
+
|
|
2858
2895
|
export class LifeEventsService {
|
|
2859
2896
|
/**
|
|
2860
2897
|
* Create a new life event
|
|
@@ -3034,7 +3071,7 @@ export class OnboardingService {
|
|
|
3034
3071
|
/**
|
|
3035
3072
|
* Bootstrap core accounts + register asset accounts with opening balances (ADR-0113)
|
|
3036
3073
|
* @param data The data for the request.
|
|
3037
|
-
* @param data.region Region code for tenant context
|
|
3074
|
+
* @param data.region Region code for tenant context. Not-yet-open codes are accepted: the universal catalog backs onboarding regardless of region (#759)
|
|
3038
3075
|
* @param data.requestBody
|
|
3039
3076
|
* @returns unknown Onboarding bootstrap result.
|
|
3040
3077
|
* @throws ApiError
|
|
@@ -3167,7 +3204,7 @@ export class BeanExportService {
|
|
|
3167
3204
|
/**
|
|
3168
3205
|
* Export Beancount ledger as ZIP
|
|
3169
3206
|
* Export all user Beancount data as a ZIP file containing ledger.beancount and yearly files in community format.
|
|
3170
|
-
* @returns
|
|
3207
|
+
* @returns binary ZIP archive (application/zip) streamed as an attachment
|
|
3171
3208
|
* @throws ApiError
|
|
3172
3209
|
*/
|
|
3173
3210
|
public static exportControllerExportBeancount(): CancelablePromise<ExportControllerExportBeancountResponse> {
|
|
@@ -3730,13 +3767,20 @@ export class BeanPlatformsService {
|
|
|
3730
3767
|
|
|
3731
3768
|
/**
|
|
3732
3769
|
* Get platform list for current user
|
|
3770
|
+
* @param data The data for the request.
|
|
3771
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-type-bucket ordering (local-region platforms first). Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3733
3772
|
* @returns PlatformListItemDto List of platforms with user binding status
|
|
3734
3773
|
* @throws ApiError
|
|
3735
3774
|
*/
|
|
3736
|
-
public static platformControllerGetPlatformList(
|
|
3775
|
+
public static platformControllerGetPlatformList(
|
|
3776
|
+
data: PlatformControllerGetPlatformListData = {}
|
|
3777
|
+
): CancelablePromise<PlatformControllerGetPlatformListResponse> {
|
|
3737
3778
|
return __request(OpenAPI, {
|
|
3738
3779
|
method: 'GET',
|
|
3739
|
-
url: '/api/v1/bean/platforms/list'
|
|
3780
|
+
url: '/api/v1/bean/platforms/list',
|
|
3781
|
+
query: {
|
|
3782
|
+
region: data.region
|
|
3783
|
+
}
|
|
3740
3784
|
});
|
|
3741
3785
|
}
|
|
3742
3786
|
|
|
@@ -3744,7 +3788,7 @@ export class BeanPlatformsService {
|
|
|
3744
3788
|
* Match platforms by name or alias
|
|
3745
3789
|
* @param data The data for the request.
|
|
3746
3790
|
* @param data.q Search query — Chinese name, English name, or abbreviation
|
|
3747
|
-
* @param data.region Region code
|
|
3791
|
+
* @param data.region Region code (ISO 3166-1 alpha-2) that biases within-tier ordering (local-region platforms first); also the intended categoryOverrides key. Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
|
|
3748
3792
|
* @returns PlatformMatchResponseDto Matching platforms with overall match type and truncation flag
|
|
3749
3793
|
* @throws ApiError
|
|
3750
3794
|
*/
|
|
@@ -3761,6 +3805,31 @@ export class BeanPlatformsService {
|
|
|
3761
3805
|
});
|
|
3762
3806
|
}
|
|
3763
3807
|
|
|
3808
|
+
/**
|
|
3809
|
+
* Get the region and candidate account standards for a platform
|
|
3810
|
+
* @param data The data for the request.
|
|
3811
|
+
* @param data.id Platform ID (from a match result)
|
|
3812
|
+
* @param data.region Region code (ISO 3166-1 alpha-2, case-insensitive). Required for global platforms (countryCode null) — resolved as their template region; ignored when the platform has its own countryCode.
|
|
3813
|
+
* @param data.type Filter templates by account type (path first segment)
|
|
3814
|
+
* @returns PlatformStandardsResponseDto Resolved region plus the merged account-standard catalog of that region (groupable by productCategory client-side)
|
|
3815
|
+
* @throws ApiError
|
|
3816
|
+
*/
|
|
3817
|
+
public static platformControllerGetPlatformStandards(
|
|
3818
|
+
data: PlatformControllerGetPlatformStandardsData
|
|
3819
|
+
): CancelablePromise<PlatformControllerGetPlatformStandardsResponse> {
|
|
3820
|
+
return __request(OpenAPI, {
|
|
3821
|
+
method: 'GET',
|
|
3822
|
+
url: '/api/v1/bean/platforms/{id}/standards',
|
|
3823
|
+
path: {
|
|
3824
|
+
id: data.id
|
|
3825
|
+
},
|
|
3826
|
+
query: {
|
|
3827
|
+
region: data.region,
|
|
3828
|
+
type: data.type
|
|
3829
|
+
}
|
|
3830
|
+
});
|
|
3831
|
+
}
|
|
3832
|
+
|
|
3764
3833
|
/**
|
|
3765
3834
|
* Update a platform
|
|
3766
3835
|
* @param data The data for the request.
|
|
@@ -4004,15 +4073,52 @@ export class AuthService {
|
|
|
4004
4073
|
}
|
|
4005
4074
|
}
|
|
4006
4075
|
|
|
4007
|
-
export class
|
|
4076
|
+
export class CommunityService {
|
|
4077
|
+
/**
|
|
4078
|
+
* Relay a sanitized parser-contribution payload
|
|
4079
|
+
* A server-side bot re-sanitizes the payload and opens an issue on the target repository; the issue URL is returned. The payload is never persisted or logged (forward-and-drop).
|
|
4080
|
+
* @param data The data for the request.
|
|
4081
|
+
* @param data.region Region code for tenant context (routing only; the institution region rides in the payload meta)
|
|
4082
|
+
* @param data.requestBody
|
|
4083
|
+
* @returns ParserContributionRelayResponseDto Issue created by the bot
|
|
4084
|
+
* @throws ApiError
|
|
4085
|
+
*/
|
|
4086
|
+
public static parserContributionControllerCreate(
|
|
4087
|
+
data: ParserContributionControllerCreateData
|
|
4088
|
+
): CancelablePromise<ParserContributionControllerCreateResponse> {
|
|
4089
|
+
return __request(OpenAPI, {
|
|
4090
|
+
method: 'POST',
|
|
4091
|
+
url: '/api/v1/{region}/community/parser-contributions',
|
|
4092
|
+
path: {
|
|
4093
|
+
region: data.region
|
|
4094
|
+
},
|
|
4095
|
+
body: data.requestBody,
|
|
4096
|
+
mediaType: 'application/json',
|
|
4097
|
+
errors: {
|
|
4098
|
+
401: 'Unauthorized',
|
|
4099
|
+
422: 'Validation failed (institution slug, empty samples, row/cell size limits)',
|
|
4100
|
+
429: 'Rate limited (5 submissions per user per hour)',
|
|
4101
|
+
501: 'Relay not configured on this deployment — clients fall back to the clipboard flow',
|
|
4102
|
+
502: 'GitHub bot failure (upstream), safe to retry'
|
|
4103
|
+
}
|
|
4104
|
+
});
|
|
4105
|
+
}
|
|
4106
|
+
}
|
|
4107
|
+
|
|
4108
|
+
export class AdminCacheService {
|
|
4008
4109
|
/**
|
|
4009
|
-
*
|
|
4110
|
+
* Flush entire cache (L1 + L2)
|
|
4111
|
+
* Clears ALL cache entries across ALL namespaces and users. Use only for emergency cache corruption recovery, maintenance-window refresh, or development resets.
|
|
4112
|
+
* @returns unknown Cache flushed successfully
|
|
4010
4113
|
* @throws ApiError
|
|
4011
4114
|
*/
|
|
4012
4115
|
public static cacheControllerFlushCache(): CancelablePromise<CacheControllerFlushCacheResponse> {
|
|
4013
4116
|
return __request(OpenAPI, {
|
|
4014
4117
|
method: 'POST',
|
|
4015
|
-
url: '/api/v1/cache/flush'
|
|
4118
|
+
url: '/api/v1/cache/flush',
|
|
4119
|
+
errors: {
|
|
4120
|
+
403: 'Admin access required'
|
|
4121
|
+
}
|
|
4016
4122
|
});
|
|
4017
4123
|
}
|
|
4018
4124
|
}
|