@firela/api-types 0.0.0-canary.486851ea → 0.0.0-canary.4ce4aee8
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 +1398 -1113
- package/dist/index.d.ts +1398 -1113
- package/dist/index.js +5 -3
- package/dist/index.mjs +5 -3
- package/package.json +1 -1
- package/src/generated/schemas.gen.ts +1731 -1120
- package/src/generated/services.gen.ts +605 -537
- package/src/generated/types.gen.ts +1686 -1299
|
@@ -164,9 +164,7 @@ export type AccountResponseDto = {
|
|
|
164
164
|
/**
|
|
165
165
|
* Platform ID (null if unbound)
|
|
166
166
|
*/
|
|
167
|
-
platformId?:
|
|
168
|
-
[key: string]: unknown;
|
|
169
|
-
};
|
|
167
|
+
platformId?: string;
|
|
170
168
|
/**
|
|
171
169
|
* Platform details (populated if platformId is set)
|
|
172
170
|
*/
|
|
@@ -327,15 +325,27 @@ export type AccountStandardResponseDto = {
|
|
|
327
325
|
*/
|
|
328
326
|
type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
|
|
329
327
|
/**
|
|
330
|
-
* Short
|
|
328
|
+
* Short display name. Universal rows project to the request locale (Accept-Language); regional rows keep the authored native name — mixed-language by design (ADR-0131 class P vs class A).
|
|
331
329
|
*/
|
|
332
330
|
name?: string;
|
|
333
331
|
/**
|
|
334
|
-
*
|
|
332
|
+
* Authored market-language alternative names delivered verbatim (not localized copy, not xlf-managed, not locale-projected). Flat string[] per ADR-0129 D1; ADR-0131 class A.
|
|
333
|
+
*/
|
|
334
|
+
aliases?: Array<string>;
|
|
335
|
+
/**
|
|
336
|
+
* Locale-projected search synonyms (e.g. the zh bank-card / debit-card everyday terms for the checking account). Pure-locale projection — absent when the locale has no seeded synonyms; English fallback rides the authored aliases field. Search-only vocabulary, not the NLP routing corpus (#698, ADR-0131 fourth-class adjudication).
|
|
337
|
+
*/
|
|
338
|
+
searchTerms?: Array<string>;
|
|
339
|
+
/**
|
|
340
|
+
* Product denomination as a 3-letter ISO 4217 code, authored market data delivered verbatim (not localized, not xlf-managed). ADR-0131 class A. Absent = single-currency not asserted — consumers fall back to their own region currency (#714).
|
|
341
|
+
*/
|
|
342
|
+
currency?: string;
|
|
343
|
+
/**
|
|
344
|
+
* Account description (stable semantics only). Mixed-language contract: universal rows project to the request locale via the accountDesc xlf axis with an en fallback (ADR-0131 class P, ADR-0132; unseeded locales falling back to English are expected); regional rows deliver the authored market language (ADR-0131 class A, verbatim, never xlf-managed).
|
|
335
345
|
*/
|
|
336
346
|
description: string;
|
|
337
347
|
/**
|
|
338
|
-
* Account tags for categorization
|
|
348
|
+
* Account tags for categorization — structured metadata delivered verbatim (not localized, not xlf-managed). ADR-0131 class A.
|
|
339
349
|
*/
|
|
340
350
|
tags: Array<string>;
|
|
341
351
|
/**
|
|
@@ -595,7 +605,7 @@ export type PostingResponseDto = {
|
|
|
595
605
|
*/
|
|
596
606
|
account: string;
|
|
597
607
|
/**
|
|
598
|
-
* Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
|
|
608
|
+
* Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned. Carries the raw Beancount sign (credit-normal accounts such as Income post negative — the accounting truth, ADR-0126); renderers must not infer economic semantics from this sign.
|
|
599
609
|
*/
|
|
600
610
|
units?: string;
|
|
601
611
|
/**
|
|
@@ -830,7 +840,7 @@ export type PostingDetailDto = {
|
|
|
830
840
|
*/
|
|
831
841
|
account: string;
|
|
832
842
|
/**
|
|
833
|
-
* Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
|
|
843
|
+
* Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned. Carries the raw Beancount sign (credit-normal accounts such as Income post negative — the accounting truth, ADR-0126); renderers must not infer economic semantics from this sign.
|
|
834
844
|
*/
|
|
835
845
|
units?: string;
|
|
836
846
|
/**
|
|
@@ -976,6 +986,101 @@ export type flag2 =
|
|
|
976
986
|
*/
|
|
977
987
|
export type status2 = 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
|
|
978
988
|
|
|
989
|
+
export type TransactionListItemDto = {
|
|
990
|
+
/**
|
|
991
|
+
* Transaction ID
|
|
992
|
+
*/
|
|
993
|
+
id: string;
|
|
994
|
+
/**
|
|
995
|
+
* Transaction date
|
|
996
|
+
*/
|
|
997
|
+
date: string;
|
|
998
|
+
/**
|
|
999
|
+
* Transaction flag
|
|
1000
|
+
*/
|
|
1001
|
+
flag?:
|
|
1002
|
+
| 'CLEARED'
|
|
1003
|
+
| 'PENDING'
|
|
1004
|
+
| 'PADDING'
|
|
1005
|
+
| 'SUMMARIZE'
|
|
1006
|
+
| 'TRANSFER'
|
|
1007
|
+
| 'CONVERSIONS';
|
|
1008
|
+
/**
|
|
1009
|
+
* Custom flag (if not using standard flags)
|
|
1010
|
+
*/
|
|
1011
|
+
customFlag?: string;
|
|
1012
|
+
/**
|
|
1013
|
+
* Payee name
|
|
1014
|
+
*/
|
|
1015
|
+
payee?: string;
|
|
1016
|
+
/**
|
|
1017
|
+
* Transaction narration
|
|
1018
|
+
*/
|
|
1019
|
+
narration: string;
|
|
1020
|
+
/**
|
|
1021
|
+
* Transaction tags
|
|
1022
|
+
*/
|
|
1023
|
+
tags: Array<string>;
|
|
1024
|
+
/**
|
|
1025
|
+
* Transaction links
|
|
1026
|
+
*/
|
|
1027
|
+
links: Array<string>;
|
|
1028
|
+
/**
|
|
1029
|
+
* Transaction metadata
|
|
1030
|
+
*/
|
|
1031
|
+
meta?: {
|
|
1032
|
+
[key: string]: unknown;
|
|
1033
|
+
};
|
|
1034
|
+
/**
|
|
1035
|
+
* Transaction status
|
|
1036
|
+
*/
|
|
1037
|
+
status: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
|
|
1038
|
+
/**
|
|
1039
|
+
* Source type (free-form string from transaction metadata, e.g. import, api)
|
|
1040
|
+
*/
|
|
1041
|
+
sourceType?: string;
|
|
1042
|
+
/**
|
|
1043
|
+
* Source platform (e.g., alipay, wechat)
|
|
1044
|
+
*/
|
|
1045
|
+
sourcePlatform?: string;
|
|
1046
|
+
/**
|
|
1047
|
+
* Transaction postings
|
|
1048
|
+
*/
|
|
1049
|
+
postings: Array<PostingDetailDto>;
|
|
1050
|
+
/**
|
|
1051
|
+
* Created at timestamp
|
|
1052
|
+
*/
|
|
1053
|
+
createdAt: string;
|
|
1054
|
+
/**
|
|
1055
|
+
* Voided at timestamp (if voided)
|
|
1056
|
+
*/
|
|
1057
|
+
voidedAt?: string;
|
|
1058
|
+
/**
|
|
1059
|
+
* User ID who voided this transaction
|
|
1060
|
+
*/
|
|
1061
|
+
voidedBy?: string;
|
|
1062
|
+
/**
|
|
1063
|
+
* Correction reason (if voided or superseded)
|
|
1064
|
+
*/
|
|
1065
|
+
correctionReason?: string;
|
|
1066
|
+
/**
|
|
1067
|
+
* ID of the transaction that supersedes this one (set when status=SUPERSEDED)
|
|
1068
|
+
*/
|
|
1069
|
+
supersededBy?: string;
|
|
1070
|
+
/**
|
|
1071
|
+
* ID of the transaction this one corrected/replaced (back-link on the replacement)
|
|
1072
|
+
*/
|
|
1073
|
+
originalTxn?: string;
|
|
1074
|
+
/**
|
|
1075
|
+
* Row amount under the request viewpoint (ADR-0126). Category viewpoint (category + flow): per-leg sign-normalized sum over the category account set (Income-root legs negated, Expenses-root identity) — positive under normal booking but NOT clamped (explicit negative expense legs and net-flip refund months stay negative). No viewpoint (plain list / search, no accountId): wallet money-flow net = raw-sign sum over cost-less Assets/Liabilities legs (income positive, expenses negative, transfers net ~0); color cue is the wallet sign (net < 0 = wealth-decreasing). Status-orthogonal: audit views match too (ADR-0128 amount-as-matching-key). Omitted under the account viewpoint (incl. dual) and for rows with no wallet leg.
|
|
1076
|
+
*/
|
|
1077
|
+
viewpointAmount?: string;
|
|
1078
|
+
/**
|
|
1079
|
+
* Currency of viewpointAmount. A row spanning multiple currencies takes the largest-magnitude currency group (known simplification, ADR-0126).
|
|
1080
|
+
*/
|
|
1081
|
+
viewpointCurrency?: string;
|
|
1082
|
+
};
|
|
1083
|
+
|
|
979
1084
|
export type BalanceByCurrencyDto = {
|
|
980
1085
|
/**
|
|
981
1086
|
* ISO 4217 currency code
|
|
@@ -1004,7 +1109,7 @@ export type ExchangeRateWarningDto = {
|
|
|
1004
1109
|
|
|
1005
1110
|
export type TransactionListSummaryDto = {
|
|
1006
1111
|
/**
|
|
1007
|
-
* Partial converted total in base currency (rated currencies only
|
|
1112
|
+
* Partial converted total in base currency (rated currencies only). Sign by viewpoint (ADR-0126): account viewpoint keeps the raw Beancount sign (income negative); category viewpoint is per-leg sign-normalized (Income legs negated, Expenses legs identity — positive under normal booking, not clamped). When warnings is non-empty this excludes currencies missing an FX rate; may be "0.00" if ALL non-base currencies lack a rate. Converted at the dateTo (or current) available rate.
|
|
1008
1113
|
*/
|
|
1009
1114
|
totalAmount: string;
|
|
1010
1115
|
/**
|
|
@@ -1021,11 +1126,32 @@ export type TransactionListSummaryDto = {
|
|
|
1021
1126
|
warnings?: Array<ExchangeRateWarningDto>;
|
|
1022
1127
|
};
|
|
1023
1128
|
|
|
1129
|
+
export type TransactionListViewpointDto = {
|
|
1130
|
+
/**
|
|
1131
|
+
* Viewpoint type (only category drill-down carries a viewpoint today)
|
|
1132
|
+
*/
|
|
1133
|
+
type: 'category';
|
|
1134
|
+
/**
|
|
1135
|
+
* Flow root the category account set is restricted to
|
|
1136
|
+
*/
|
|
1137
|
+
flow: 'income' | 'expense';
|
|
1138
|
+
};
|
|
1139
|
+
|
|
1140
|
+
/**
|
|
1141
|
+
* Viewpoint type (only category drill-down carries a viewpoint today)
|
|
1142
|
+
*/
|
|
1143
|
+
export type type2 = 'category';
|
|
1144
|
+
|
|
1145
|
+
/**
|
|
1146
|
+
* Flow root the category account set is restricted to
|
|
1147
|
+
*/
|
|
1148
|
+
export type flow = 'income' | 'expense';
|
|
1149
|
+
|
|
1024
1150
|
export type TransactionListResponseDto = {
|
|
1025
1151
|
/**
|
|
1026
1152
|
* List of transactions
|
|
1027
1153
|
*/
|
|
1028
|
-
data: Array<
|
|
1154
|
+
data: Array<TransactionListItemDto>;
|
|
1029
1155
|
/**
|
|
1030
1156
|
* Total count of matching transactions
|
|
1031
1157
|
*/
|
|
@@ -1042,6 +1168,10 @@ export type TransactionListResponseDto = {
|
|
|
1042
1168
|
* Amount summary for the full filtered set (#514). Present only when the request has a single account OR category viewpoint; omitted for search-only / plain-list / dual-perspective requests.
|
|
1043
1169
|
*/
|
|
1044
1170
|
summary?: TransactionListSummaryDto;
|
|
1171
|
+
/**
|
|
1172
|
+
* Viewpoint metadata (ADR-0126). Present only for a single category filter (category + flow, no accountId); dual-perspective requests are viewpoint-less (raw signs, no viewpointAmount).
|
|
1173
|
+
*/
|
|
1174
|
+
viewpoint?: TransactionListViewpointDto;
|
|
1045
1175
|
};
|
|
1046
1176
|
|
|
1047
1177
|
export type TagSuggestionDto = {
|
|
@@ -1253,7 +1383,7 @@ export type ReviewSummaryDto = {
|
|
|
1253
1383
|
/**
|
|
1254
1384
|
* Review type
|
|
1255
1385
|
*/
|
|
1256
|
-
export type
|
|
1386
|
+
export type type3 =
|
|
1257
1387
|
| 'DUPLICATE'
|
|
1258
1388
|
| 'RULE_MATCH'
|
|
1259
1389
|
| 'PAYEE_MATCH'
|
|
@@ -1701,7 +1831,7 @@ export type UpdatePayeeDto = {
|
|
|
1701
1831
|
*/
|
|
1702
1832
|
customTags?: Array<string>;
|
|
1703
1833
|
/**
|
|
1704
|
-
* Metadata for extended information (location, notes, contact info, etc.)
|
|
1834
|
+
* Metadata for extended information (location, notes, contact info, etc.)
|
|
1705
1835
|
*/
|
|
1706
1836
|
meta?: {
|
|
1707
1837
|
[key: string]: unknown;
|
|
@@ -2094,481 +2224,449 @@ export type UpdateCommodityDto = {
|
|
|
2094
2224
|
};
|
|
2095
2225
|
};
|
|
2096
2226
|
|
|
2097
|
-
export type
|
|
2227
|
+
export type CurrencyBalanceDto = {
|
|
2098
2228
|
/**
|
|
2099
|
-
*
|
|
2229
|
+
* ISO 4217 currency code
|
|
2100
2230
|
*/
|
|
2101
2231
|
currency: string;
|
|
2102
2232
|
/**
|
|
2103
|
-
*
|
|
2233
|
+
* Balance amount
|
|
2104
2234
|
*/
|
|
2105
|
-
|
|
2235
|
+
balance: string;
|
|
2236
|
+
};
|
|
2237
|
+
|
|
2238
|
+
export type TimeSeriesPointDto = {
|
|
2106
2239
|
/**
|
|
2107
|
-
*
|
|
2240
|
+
* Date in YYYY-MM-DD format
|
|
2108
2241
|
*/
|
|
2109
|
-
|
|
2242
|
+
date: string;
|
|
2110
2243
|
/**
|
|
2111
|
-
*
|
|
2244
|
+
* Value at this date (in base currency)
|
|
2112
2245
|
*/
|
|
2113
|
-
|
|
2246
|
+
value: string;
|
|
2114
2247
|
/**
|
|
2115
|
-
*
|
|
2248
|
+
* Change from previous point
|
|
2116
2249
|
*/
|
|
2117
|
-
|
|
2118
|
-
[key: string]: unknown;
|
|
2119
|
-
};
|
|
2120
|
-
};
|
|
2121
|
-
|
|
2122
|
-
export type PriceResponseDto = {
|
|
2250
|
+
change?: string;
|
|
2123
2251
|
/**
|
|
2124
|
-
*
|
|
2252
|
+
* Total assets at this date (in base currency)
|
|
2125
2253
|
*/
|
|
2126
|
-
|
|
2254
|
+
assets?: string;
|
|
2127
2255
|
/**
|
|
2128
|
-
*
|
|
2256
|
+
* Total liabilities at this date (in base currency)
|
|
2129
2257
|
*/
|
|
2130
|
-
|
|
2258
|
+
liabilities?: string;
|
|
2131
2259
|
/**
|
|
2132
|
-
*
|
|
2260
|
+
* Multi-currency breakdown for this point
|
|
2133
2261
|
*/
|
|
2134
|
-
|
|
2262
|
+
byCurrency?: Array<CurrencyBalanceDto>;
|
|
2263
|
+
};
|
|
2264
|
+
|
|
2265
|
+
export type TrendSummaryDto = {
|
|
2135
2266
|
/**
|
|
2136
|
-
*
|
|
2267
|
+
* Value at start of period
|
|
2137
2268
|
*/
|
|
2138
|
-
|
|
2269
|
+
startValue: string;
|
|
2139
2270
|
/**
|
|
2140
|
-
*
|
|
2271
|
+
* Value at end of period
|
|
2141
2272
|
*/
|
|
2142
|
-
|
|
2273
|
+
endValue: string;
|
|
2143
2274
|
/**
|
|
2144
|
-
*
|
|
2275
|
+
* Total change over period
|
|
2145
2276
|
*/
|
|
2146
|
-
|
|
2277
|
+
totalChange: string;
|
|
2147
2278
|
/**
|
|
2148
|
-
*
|
|
2279
|
+
* Total change percentage
|
|
2149
2280
|
*/
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2281
|
+
totalChangePercentage: string;
|
|
2282
|
+
};
|
|
2283
|
+
|
|
2284
|
+
export type MultiCurrencyPointDto = {
|
|
2153
2285
|
/**
|
|
2154
|
-
*
|
|
2286
|
+
* Date in YYYY-MM-DD format
|
|
2155
2287
|
*/
|
|
2156
|
-
|
|
2288
|
+
date: string;
|
|
2157
2289
|
/**
|
|
2158
|
-
*
|
|
2290
|
+
* Balances by currency
|
|
2159
2291
|
*/
|
|
2160
|
-
|
|
2292
|
+
byCurrency: Array<CurrencyBalanceDto>;
|
|
2161
2293
|
};
|
|
2162
2294
|
|
|
2163
|
-
export type
|
|
2295
|
+
export type PortfolioTrendsResponseDto = {
|
|
2164
2296
|
/**
|
|
2165
|
-
*
|
|
2297
|
+
* Time series data points
|
|
2166
2298
|
*/
|
|
2167
|
-
|
|
2299
|
+
series: Array<TimeSeriesPointDto>;
|
|
2168
2300
|
/**
|
|
2169
|
-
*
|
|
2301
|
+
* Period summary
|
|
2170
2302
|
*/
|
|
2171
|
-
|
|
2172
|
-
};
|
|
2173
|
-
|
|
2174
|
-
export type UpdateBeanPriceDto = {
|
|
2303
|
+
summary: TrendSummaryDto;
|
|
2175
2304
|
/**
|
|
2176
|
-
*
|
|
2305
|
+
* Period requested
|
|
2177
2306
|
*/
|
|
2178
|
-
|
|
2307
|
+
period: string;
|
|
2179
2308
|
/**
|
|
2180
|
-
*
|
|
2309
|
+
* Data granularity
|
|
2181
2310
|
*/
|
|
2182
|
-
|
|
2311
|
+
granularity: string;
|
|
2183
2312
|
/**
|
|
2184
|
-
*
|
|
2313
|
+
* Base currency for converted values
|
|
2185
2314
|
*/
|
|
2186
|
-
|
|
2315
|
+
currency: string;
|
|
2187
2316
|
/**
|
|
2188
|
-
*
|
|
2317
|
+
* Multi-currency time series (each point has currency breakdown)
|
|
2189
2318
|
*/
|
|
2190
|
-
|
|
2319
|
+
byCurrency?: Array<MultiCurrencyPointDto>;
|
|
2191
2320
|
/**
|
|
2192
|
-
*
|
|
2321
|
+
* Exchange rate warnings
|
|
2193
2322
|
*/
|
|
2194
|
-
|
|
2195
|
-
[key: string]: unknown;
|
|
2196
|
-
};
|
|
2323
|
+
warnings?: Array<ExchangeRateWarningDto>;
|
|
2197
2324
|
};
|
|
2198
2325
|
|
|
2199
|
-
export type
|
|
2326
|
+
export type CashFlowPointDto = {
|
|
2200
2327
|
/**
|
|
2201
|
-
*
|
|
2328
|
+
* Month key (YYYY-MM)
|
|
2202
2329
|
*/
|
|
2203
|
-
|
|
2330
|
+
month: string;
|
|
2204
2331
|
/**
|
|
2205
|
-
*
|
|
2332
|
+
* Income in base currency (absolute, converted)
|
|
2206
2333
|
*/
|
|
2207
|
-
|
|
2334
|
+
income: string;
|
|
2208
2335
|
/**
|
|
2209
|
-
*
|
|
2336
|
+
* Expense in base currency (absolute, converted)
|
|
2210
2337
|
*/
|
|
2211
|
-
|
|
2212
|
-
| 'WEEKLY'
|
|
2213
|
-
| 'BIWEEKLY'
|
|
2214
|
-
| 'MONTHLY'
|
|
2215
|
-
| 'BIMONTHLY'
|
|
2216
|
-
| 'QUARTERLY'
|
|
2217
|
-
| 'YEARLY'
|
|
2218
|
-
| 'CUSTOM';
|
|
2338
|
+
expense: string;
|
|
2219
2339
|
/**
|
|
2220
|
-
*
|
|
2340
|
+
* netSavings = income − expense (savings positive)
|
|
2221
2341
|
*/
|
|
2222
|
-
|
|
2342
|
+
netSavings: string;
|
|
2343
|
+
};
|
|
2344
|
+
|
|
2345
|
+
export type CashFlowTrendSummaryDto = {
|
|
2223
2346
|
/**
|
|
2224
|
-
*
|
|
2347
|
+
* Total income across the period
|
|
2225
2348
|
*/
|
|
2226
|
-
|
|
2349
|
+
totalIncome: string;
|
|
2227
2350
|
/**
|
|
2228
|
-
*
|
|
2229
|
-
*/
|
|
2230
|
-
customIntervalDays?: number;
|
|
2231
|
-
/**
|
|
2232
|
-
* Currency code
|
|
2351
|
+
* Total expense across the period
|
|
2233
2352
|
*/
|
|
2234
|
-
|
|
2353
|
+
totalExpense: string;
|
|
2235
2354
|
/**
|
|
2236
|
-
*
|
|
2355
|
+
* income − expense across the period
|
|
2237
2356
|
*/
|
|
2238
|
-
|
|
2357
|
+
totalNetSavings: string;
|
|
2239
2358
|
/**
|
|
2240
|
-
*
|
|
2359
|
+
* totalNetSavings divided by the window length (N months, incl. zero-filled)
|
|
2241
2360
|
*/
|
|
2242
|
-
|
|
2361
|
+
averageMonthlyNetSavings: string;
|
|
2362
|
+
};
|
|
2363
|
+
|
|
2364
|
+
export type CashFlowTrendsResponseDto = {
|
|
2243
2365
|
/**
|
|
2244
|
-
*
|
|
2366
|
+
* Monthly cash-flow series (fixed N-month window, zero-filled)
|
|
2245
2367
|
*/
|
|
2246
|
-
|
|
2368
|
+
series: Array<CashFlowPointDto>;
|
|
2247
2369
|
/**
|
|
2248
|
-
*
|
|
2370
|
+
* Period totals
|
|
2249
2371
|
*/
|
|
2250
|
-
|
|
2372
|
+
summary: CashFlowTrendSummaryDto;
|
|
2251
2373
|
/**
|
|
2252
|
-
*
|
|
2374
|
+
* Period requested
|
|
2253
2375
|
*/
|
|
2254
|
-
|
|
2376
|
+
period: string;
|
|
2255
2377
|
/**
|
|
2256
|
-
*
|
|
2378
|
+
* Data granularity (v1 returns month buckets)
|
|
2257
2379
|
*/
|
|
2258
|
-
|
|
2380
|
+
granularity: string;
|
|
2259
2381
|
/**
|
|
2260
|
-
*
|
|
2382
|
+
* Base currency for converted values
|
|
2261
2383
|
*/
|
|
2262
|
-
|
|
2384
|
+
currency: string;
|
|
2263
2385
|
/**
|
|
2264
|
-
*
|
|
2386
|
+
* Exchange rate warnings (e.g. missing rate for a currency)
|
|
2265
2387
|
*/
|
|
2266
|
-
|
|
2388
|
+
warnings?: Array<ExchangeRateWarningDto>;
|
|
2267
2389
|
};
|
|
2268
2390
|
|
|
2269
|
-
|
|
2270
|
-
* Recurring frequency
|
|
2271
|
-
*/
|
|
2272
|
-
export type frequency =
|
|
2273
|
-
| 'WEEKLY'
|
|
2274
|
-
| 'BIWEEKLY'
|
|
2275
|
-
| 'MONTHLY'
|
|
2276
|
-
| 'BIMONTHLY'
|
|
2277
|
-
| 'QUARTERLY'
|
|
2278
|
-
| 'YEARLY'
|
|
2279
|
-
| 'CUSTOM';
|
|
2391
|
+
export type GenerateSnapshotBody = unknown;
|
|
2280
2392
|
|
|
2281
|
-
export type
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
*/
|
|
2289
|
-
userId: string;
|
|
2393
|
+
export type GenerateSnapshotResponse = unknown;
|
|
2394
|
+
|
|
2395
|
+
export type BackfillSnapshotsBody = unknown;
|
|
2396
|
+
|
|
2397
|
+
export type BackfillSnapshotsResponse = unknown;
|
|
2398
|
+
|
|
2399
|
+
export type CreateBeanPriceDto = {
|
|
2290
2400
|
/**
|
|
2291
|
-
*
|
|
2401
|
+
* Currency being priced (e.g., USD, AAPL, BTC)
|
|
2292
2402
|
*/
|
|
2293
|
-
|
|
2403
|
+
currency: string;
|
|
2294
2404
|
/**
|
|
2295
|
-
*
|
|
2405
|
+
* Quote currency (pricing currency, e.g., CNY, EUR)
|
|
2296
2406
|
*/
|
|
2297
|
-
|
|
2298
|
-
[key: string]: unknown;
|
|
2299
|
-
};
|
|
2407
|
+
quoteCurrency: string;
|
|
2300
2408
|
/**
|
|
2301
|
-
*
|
|
2409
|
+
* Price amount (MUST be >= 0 per Beancount spec, supports up to 15 decimal places). Zero allowed for conversion entries, negative strictly prohibited.
|
|
2302
2410
|
*/
|
|
2303
|
-
|
|
2411
|
+
amount: number;
|
|
2304
2412
|
/**
|
|
2305
|
-
*
|
|
2413
|
+
* Price date (ISO 8601 format)
|
|
2306
2414
|
*/
|
|
2307
|
-
|
|
2415
|
+
date: string;
|
|
2308
2416
|
/**
|
|
2309
|
-
*
|
|
2417
|
+
* Metadata (validated by Zod schema, max field lengths enforced)
|
|
2310
2418
|
*/
|
|
2311
|
-
|
|
2419
|
+
metadata?: {
|
|
2312
2420
|
[key: string]: unknown;
|
|
2313
2421
|
};
|
|
2422
|
+
};
|
|
2423
|
+
|
|
2424
|
+
export type PriceResponseDto = {
|
|
2314
2425
|
/**
|
|
2315
|
-
*
|
|
2426
|
+
* Unique identifier
|
|
2316
2427
|
*/
|
|
2317
|
-
|
|
2318
|
-
[key: string]: unknown;
|
|
2319
|
-
};
|
|
2428
|
+
id: string;
|
|
2320
2429
|
/**
|
|
2321
|
-
*
|
|
2430
|
+
* User ID (owner of the price)
|
|
2431
|
+
*/
|
|
2432
|
+
userId: string;
|
|
2433
|
+
/**
|
|
2434
|
+
* Currency being priced (e.g., USD, AAPL, BTC)
|
|
2322
2435
|
*/
|
|
2323
2436
|
currency: string;
|
|
2324
2437
|
/**
|
|
2325
|
-
*
|
|
2438
|
+
* Quote currency (pricing currency, e.g., USD, CNY)
|
|
2326
2439
|
*/
|
|
2327
|
-
|
|
2328
|
-
[key: string]: unknown;
|
|
2329
|
-
};
|
|
2440
|
+
quoteCurrency: string;
|
|
2330
2441
|
/**
|
|
2331
|
-
* Amount
|
|
2442
|
+
* Price amount (corresponds to Beancount Amount.number). Supports up to 15 decimal places.
|
|
2332
2443
|
*/
|
|
2333
|
-
|
|
2444
|
+
amount: number;
|
|
2334
2445
|
/**
|
|
2335
|
-
*
|
|
2446
|
+
* Price date (ISO 8601 format). Represents the date this price was valid.
|
|
2336
2447
|
*/
|
|
2337
|
-
|
|
2338
|
-
[key: string]: unknown;
|
|
2339
|
-
};
|
|
2448
|
+
date: string;
|
|
2340
2449
|
/**
|
|
2341
|
-
*
|
|
2450
|
+
* Metadata (corresponds to Beancount meta field). Contains source, confidence, note, etc.
|
|
2342
2451
|
*/
|
|
2343
|
-
|
|
2452
|
+
meta: {
|
|
2344
2453
|
[key: string]: unknown;
|
|
2345
2454
|
};
|
|
2346
2455
|
/**
|
|
2347
|
-
*
|
|
2456
|
+
* Creation timestamp
|
|
2348
2457
|
*/
|
|
2349
|
-
|
|
2350
|
-
[key: string]: unknown;
|
|
2351
|
-
};
|
|
2458
|
+
createdAt: string;
|
|
2352
2459
|
/**
|
|
2353
|
-
*
|
|
2460
|
+
* Last update timestamp
|
|
2354
2461
|
*/
|
|
2355
|
-
|
|
2462
|
+
updatedAt: string;
|
|
2463
|
+
};
|
|
2464
|
+
|
|
2465
|
+
export type PriceListResponseDto = {
|
|
2356
2466
|
/**
|
|
2357
|
-
*
|
|
2467
|
+
* List of prices
|
|
2358
2468
|
*/
|
|
2359
|
-
|
|
2469
|
+
items: Array<PriceResponseDto>;
|
|
2360
2470
|
/**
|
|
2361
|
-
*
|
|
2471
|
+
* Total number of prices
|
|
2362
2472
|
*/
|
|
2363
|
-
|
|
2364
|
-
|
|
2365
|
-
|
|
2473
|
+
total: number;
|
|
2474
|
+
};
|
|
2475
|
+
|
|
2476
|
+
export type UpdateBeanPriceDto = {
|
|
2366
2477
|
/**
|
|
2367
|
-
*
|
|
2478
|
+
* Currency being priced
|
|
2368
2479
|
*/
|
|
2369
|
-
|
|
2480
|
+
currency?: string;
|
|
2370
2481
|
/**
|
|
2371
|
-
*
|
|
2482
|
+
* Quote currency (pricing currency)
|
|
2372
2483
|
*/
|
|
2373
|
-
|
|
2374
|
-
[key: string]: unknown;
|
|
2375
|
-
};
|
|
2484
|
+
quoteCurrency?: string;
|
|
2376
2485
|
/**
|
|
2377
|
-
*
|
|
2486
|
+
* Price amount (MUST be >= 0 per Beancount spec)
|
|
2378
2487
|
*/
|
|
2379
|
-
|
|
2488
|
+
amount?: number;
|
|
2380
2489
|
/**
|
|
2381
|
-
*
|
|
2490
|
+
* Price date (ISO 8601 format)
|
|
2382
2491
|
*/
|
|
2383
|
-
|
|
2492
|
+
date?: string;
|
|
2384
2493
|
/**
|
|
2385
|
-
*
|
|
2494
|
+
* Metadata
|
|
2386
2495
|
*/
|
|
2387
|
-
|
|
2496
|
+
metadata?: {
|
|
2497
|
+
[key: string]: unknown;
|
|
2498
|
+
};
|
|
2388
2499
|
};
|
|
2389
2500
|
|
|
2390
|
-
export type
|
|
2391
|
-
/**
|
|
2392
|
-
* Recurring frequency
|
|
2393
|
-
*/
|
|
2394
|
-
frequency:
|
|
2395
|
-
| 'WEEKLY'
|
|
2396
|
-
| 'BIWEEKLY'
|
|
2397
|
-
| 'MONTHLY'
|
|
2398
|
-
| 'BIMONTHLY'
|
|
2399
|
-
| 'QUARTERLY'
|
|
2400
|
-
| 'YEARLY'
|
|
2401
|
-
| 'CUSTOM';
|
|
2402
|
-
/**
|
|
2403
|
-
* Optional name override (default: transaction payee)
|
|
2404
|
-
*/
|
|
2405
|
-
name?: string;
|
|
2501
|
+
export type DeleteOwnUserDto = {
|
|
2406
2502
|
/**
|
|
2407
|
-
*
|
|
2503
|
+
* Access token for user verification
|
|
2408
2504
|
*/
|
|
2409
|
-
|
|
2505
|
+
accessToken: string;
|
|
2410
2506
|
};
|
|
2411
2507
|
|
|
2412
|
-
export type
|
|
2508
|
+
export type UserSettingsResponseDto = {
|
|
2413
2509
|
/**
|
|
2414
|
-
*
|
|
2510
|
+
* Stored base currency choice (ISO 4217) for net-worth/report aggregation. null = user never chose; aggregates fall back to the region default at display time (#713).
|
|
2415
2511
|
*/
|
|
2416
|
-
|
|
2512
|
+
baseCurrency: string | null;
|
|
2513
|
+
};
|
|
2514
|
+
|
|
2515
|
+
export type UserResponseDto = {
|
|
2417
2516
|
/**
|
|
2418
2517
|
* User ID
|
|
2419
2518
|
*/
|
|
2420
|
-
|
|
2421
|
-
/**
|
|
2422
|
-
* Rule name
|
|
2423
|
-
*/
|
|
2424
|
-
name: string;
|
|
2519
|
+
id: string;
|
|
2425
2520
|
/**
|
|
2426
|
-
*
|
|
2521
|
+
* Assigned user role
|
|
2427
2522
|
*/
|
|
2428
|
-
|
|
2429
|
-
[key: string]: unknown;
|
|
2430
|
-
};
|
|
2523
|
+
role: string;
|
|
2431
2524
|
/**
|
|
2432
|
-
*
|
|
2525
|
+
* Permission strings
|
|
2433
2526
|
*/
|
|
2434
|
-
|
|
2527
|
+
permissions: Array<string>;
|
|
2435
2528
|
/**
|
|
2436
|
-
*
|
|
2529
|
+
* User settings
|
|
2437
2530
|
*/
|
|
2438
|
-
|
|
2531
|
+
settings: UserSettingsResponseDto;
|
|
2532
|
+
};
|
|
2533
|
+
|
|
2534
|
+
export type SignupDto = {
|
|
2439
2535
|
/**
|
|
2440
|
-
*
|
|
2536
|
+
* Cloudflare Turnstile verification token (optional when Turnstile disabled)
|
|
2441
2537
|
*/
|
|
2442
|
-
|
|
2443
|
-
|
|
2444
|
-
|
|
2538
|
+
turnstileToken?: string;
|
|
2539
|
+
};
|
|
2540
|
+
|
|
2541
|
+
export type SignupResponseDto = {
|
|
2445
2542
|
/**
|
|
2446
|
-
*
|
|
2543
|
+
* JWT auth token
|
|
2447
2544
|
*/
|
|
2448
|
-
|
|
2449
|
-
[key: string]: unknown;
|
|
2450
|
-
};
|
|
2545
|
+
authToken: string;
|
|
2451
2546
|
/**
|
|
2452
|
-
*
|
|
2547
|
+
* Auto-generated access token
|
|
2453
2548
|
*/
|
|
2454
|
-
|
|
2549
|
+
accessToken: string;
|
|
2455
2550
|
/**
|
|
2456
|
-
*
|
|
2551
|
+
* Assigned user role
|
|
2457
2552
|
*/
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2553
|
+
role: 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
|
|
2554
|
+
};
|
|
2555
|
+
|
|
2556
|
+
/**
|
|
2557
|
+
* Assigned user role
|
|
2558
|
+
*/
|
|
2559
|
+
export type role = 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
|
|
2560
|
+
|
|
2561
|
+
export type UpdateUserSettingDto = {
|
|
2461
2562
|
/**
|
|
2462
|
-
*
|
|
2563
|
+
* Security ID
|
|
2463
2564
|
*/
|
|
2464
|
-
|
|
2565
|
+
secId?: number;
|
|
2465
2566
|
/**
|
|
2466
|
-
*
|
|
2567
|
+
* Annual interest rate
|
|
2467
2568
|
*/
|
|
2468
|
-
|
|
2469
|
-
[key: string]: unknown;
|
|
2470
|
-
};
|
|
2569
|
+
annualInterestRate?: number;
|
|
2471
2570
|
/**
|
|
2472
|
-
*
|
|
2571
|
+
* Currency code
|
|
2473
2572
|
*/
|
|
2474
|
-
|
|
2475
|
-
[key: string]: unknown;
|
|
2476
|
-
};
|
|
2573
|
+
currency?: string;
|
|
2477
2574
|
/**
|
|
2478
|
-
*
|
|
2575
|
+
* Base currency code
|
|
2479
2576
|
*/
|
|
2480
|
-
|
|
2481
|
-
[key: string]: unknown;
|
|
2482
|
-
};
|
|
2577
|
+
baseCurrency?: string;
|
|
2483
2578
|
/**
|
|
2484
|
-
*
|
|
2579
|
+
* Benchmark symbol
|
|
2485
2580
|
*/
|
|
2486
|
-
|
|
2581
|
+
benchmark?: string;
|
|
2487
2582
|
/**
|
|
2488
|
-
*
|
|
2583
|
+
* Color scheme
|
|
2489
2584
|
*/
|
|
2490
|
-
|
|
2585
|
+
colorScheme?: 'DARK' | 'LIGHT';
|
|
2491
2586
|
/**
|
|
2492
|
-
*
|
|
2587
|
+
* Date range filter
|
|
2493
2588
|
*/
|
|
2494
|
-
|
|
2495
|
-
[key: string]: unknown;
|
|
2496
|
-
};
|
|
2589
|
+
dateRange?: string;
|
|
2497
2590
|
/**
|
|
2498
|
-
*
|
|
2591
|
+
* Emergency fund amount
|
|
2499
2592
|
*/
|
|
2500
|
-
|
|
2593
|
+
emergencyFund?: number;
|
|
2501
2594
|
/**
|
|
2502
|
-
*
|
|
2595
|
+
* Account filter IDs
|
|
2503
2596
|
*/
|
|
2504
|
-
|
|
2505
|
-
[key: string]: unknown;
|
|
2506
|
-
};
|
|
2597
|
+
'filters.accounts'?: Array<string>;
|
|
2507
2598
|
/**
|
|
2508
|
-
*
|
|
2599
|
+
* Asset class filters
|
|
2509
2600
|
*/
|
|
2510
|
-
|
|
2601
|
+
'filters.assetClasses'?: Array<string>;
|
|
2511
2602
|
/**
|
|
2512
|
-
*
|
|
2603
|
+
* Data source filter
|
|
2513
2604
|
*/
|
|
2514
|
-
|
|
2605
|
+
'filters.dataSource'?: string;
|
|
2515
2606
|
/**
|
|
2516
|
-
*
|
|
2607
|
+
* Symbol filter
|
|
2517
2608
|
*/
|
|
2518
|
-
|
|
2609
|
+
'filters.symbol'?: string;
|
|
2519
2610
|
/**
|
|
2520
|
-
*
|
|
2611
|
+
* Tag filters
|
|
2521
2612
|
*/
|
|
2522
|
-
|
|
2613
|
+
'filters.tags'?: Array<string>;
|
|
2523
2614
|
/**
|
|
2524
|
-
*
|
|
2615
|
+
* Enable experimental features
|
|
2525
2616
|
*/
|
|
2526
|
-
|
|
2617
|
+
isExperimentalFeatures?: boolean;
|
|
2527
2618
|
/**
|
|
2528
|
-
*
|
|
2619
|
+
* Enable restricted view mode
|
|
2529
2620
|
*/
|
|
2530
|
-
|
|
2531
|
-
[key: string]: unknown;
|
|
2532
|
-
};
|
|
2621
|
+
isRestrictedView?: boolean;
|
|
2533
2622
|
/**
|
|
2534
|
-
*
|
|
2623
|
+
* Language code
|
|
2535
2624
|
*/
|
|
2536
|
-
|
|
2625
|
+
language?: string;
|
|
2537
2626
|
/**
|
|
2538
|
-
*
|
|
2627
|
+
* Locale code
|
|
2539
2628
|
*/
|
|
2540
|
-
|
|
2629
|
+
locale?: string;
|
|
2541
2630
|
/**
|
|
2542
|
-
*
|
|
2631
|
+
* Projected total amount
|
|
2543
2632
|
*/
|
|
2544
|
-
|
|
2633
|
+
projectedTotalAmount?: number;
|
|
2545
2634
|
/**
|
|
2546
|
-
*
|
|
2635
|
+
* Retirement date in ISO 8601 format
|
|
2547
2636
|
*/
|
|
2548
|
-
|
|
2549
|
-
[key: string]: unknown;
|
|
2550
|
-
};
|
|
2637
|
+
retirementDate?: string;
|
|
2551
2638
|
/**
|
|
2552
|
-
*
|
|
2639
|
+
* Savings rate percentage
|
|
2553
2640
|
*/
|
|
2554
|
-
|
|
2555
|
-
[key: string]: unknown;
|
|
2556
|
-
};
|
|
2641
|
+
savingsRate?: number;
|
|
2557
2642
|
/**
|
|
2558
|
-
*
|
|
2643
|
+
* View mode
|
|
2559
2644
|
*/
|
|
2560
|
-
|
|
2645
|
+
viewMode?: 'DEFAULT' | 'ZEN';
|
|
2646
|
+
};
|
|
2647
|
+
|
|
2648
|
+
/**
|
|
2649
|
+
* Color scheme
|
|
2650
|
+
*/
|
|
2651
|
+
export type colorScheme = 'DARK' | 'LIGHT';
|
|
2652
|
+
|
|
2653
|
+
/**
|
|
2654
|
+
* View mode
|
|
2655
|
+
*/
|
|
2656
|
+
export type viewMode = 'DEFAULT' | 'ZEN';
|
|
2657
|
+
|
|
2658
|
+
export type UpdatePropertyDto = {
|
|
2561
2659
|
/**
|
|
2562
|
-
*
|
|
2660
|
+
* Property value
|
|
2563
2661
|
*/
|
|
2564
|
-
|
|
2662
|
+
value: string;
|
|
2565
2663
|
};
|
|
2566
2664
|
|
|
2567
|
-
export type
|
|
2665
|
+
export type CreateRecurringRuleDto = {
|
|
2568
2666
|
/**
|
|
2569
|
-
* Rule name
|
|
2667
|
+
* Rule name (unique per user)
|
|
2570
2668
|
*/
|
|
2571
|
-
name
|
|
2669
|
+
name: string;
|
|
2572
2670
|
/**
|
|
2573
2671
|
* Icon emoji
|
|
2574
2672
|
*/
|
|
@@ -2576,7 +2674,7 @@ export type UpdateRecurringRuleDto = {
|
|
|
2576
2674
|
/**
|
|
2577
2675
|
* Recurring frequency
|
|
2578
2676
|
*/
|
|
2579
|
-
frequency
|
|
2677
|
+
frequency:
|
|
2580
2678
|
| 'WEEKLY'
|
|
2581
2679
|
| 'BIWEEKLY'
|
|
2582
2680
|
| 'MONTHLY'
|
|
@@ -2585,15 +2683,15 @@ export type UpdateRecurringRuleDto = {
|
|
|
2585
2683
|
| 'YEARLY'
|
|
2586
2684
|
| 'CUSTOM';
|
|
2587
2685
|
/**
|
|
2588
|
-
* Expected amount
|
|
2686
|
+
* Expected amount (positive number)
|
|
2589
2687
|
*/
|
|
2590
|
-
expectedAmount
|
|
2688
|
+
expectedAmount: number;
|
|
2591
2689
|
/**
|
|
2592
2690
|
* Expected day of month (1-31)
|
|
2593
2691
|
*/
|
|
2594
2692
|
expectedDay?: number;
|
|
2595
2693
|
/**
|
|
2596
|
-
* Custom interval in days
|
|
2694
|
+
* Custom interval in days (required for CUSTOM frequency)
|
|
2597
2695
|
*/
|
|
2598
2696
|
customIntervalDays?: number;
|
|
2599
2697
|
/**
|
|
@@ -2601,111 +2699,132 @@ export type UpdateRecurringRuleDto = {
|
|
|
2601
2699
|
*/
|
|
2602
2700
|
currency?: string;
|
|
2603
2701
|
/**
|
|
2604
|
-
* Payee matching pattern
|
|
2702
|
+
* Payee matching pattern (supports wildcards)
|
|
2605
2703
|
*/
|
|
2606
2704
|
matchPayeePattern?: string;
|
|
2607
2705
|
/**
|
|
2608
2706
|
* Amount tolerance percentage (0-1)
|
|
2609
2707
|
*/
|
|
2610
|
-
matchAmountTolerance
|
|
2708
|
+
matchAmountTolerance: number;
|
|
2611
2709
|
/**
|
|
2612
|
-
* Default expense account
|
|
2710
|
+
* Default expense account for auto-create
|
|
2613
2711
|
*/
|
|
2614
2712
|
defaultExpenseAccount?: string;
|
|
2615
2713
|
/**
|
|
2616
|
-
* Default payment account
|
|
2714
|
+
* Default payment account for auto-create
|
|
2617
2715
|
*/
|
|
2618
2716
|
defaultPaymentAccount?: string;
|
|
2619
2717
|
/**
|
|
2620
|
-
* Default payee
|
|
2718
|
+
* Default payee for auto-create
|
|
2621
2719
|
*/
|
|
2622
2720
|
defaultPayee?: string;
|
|
2623
2721
|
/**
|
|
2624
|
-
* Auto-create transaction
|
|
2722
|
+
* Auto-create transaction when expected date arrives
|
|
2625
2723
|
*/
|
|
2626
|
-
autoCreate
|
|
2724
|
+
autoCreate: boolean;
|
|
2627
2725
|
/**
|
|
2628
|
-
* Rule
|
|
2726
|
+
* Rule start date (ISO format)
|
|
2629
2727
|
*/
|
|
2630
|
-
|
|
2728
|
+
startDate?: string;
|
|
2631
2729
|
/**
|
|
2632
2730
|
* Rule end date (ISO format)
|
|
2633
2731
|
*/
|
|
2634
2732
|
endDate?: string;
|
|
2635
2733
|
};
|
|
2636
2734
|
|
|
2637
|
-
|
|
2735
|
+
/**
|
|
2736
|
+
* Recurring frequency
|
|
2737
|
+
*/
|
|
2738
|
+
export type frequency =
|
|
2739
|
+
| 'WEEKLY'
|
|
2740
|
+
| 'BIWEEKLY'
|
|
2741
|
+
| 'MONTHLY'
|
|
2742
|
+
| 'BIMONTHLY'
|
|
2743
|
+
| 'QUARTERLY'
|
|
2744
|
+
| 'YEARLY'
|
|
2745
|
+
| 'CUSTOM';
|
|
2746
|
+
|
|
2747
|
+
export type RecurringRuleResponseDto = {
|
|
2748
|
+
/**
|
|
2749
|
+
* Rule ID
|
|
2750
|
+
*/
|
|
2751
|
+
id: string;
|
|
2752
|
+
/**
|
|
2753
|
+
* User ID
|
|
2754
|
+
*/
|
|
2755
|
+
userId: string;
|
|
2638
2756
|
/**
|
|
2639
2757
|
* Rule name
|
|
2640
2758
|
*/
|
|
2641
2759
|
name: string;
|
|
2642
2760
|
/**
|
|
2643
|
-
*
|
|
2761
|
+
* Icon emoji
|
|
2644
2762
|
*/
|
|
2645
|
-
icon?:
|
|
2646
|
-
[key: string]: unknown;
|
|
2647
|
-
};
|
|
2763
|
+
icon?: string;
|
|
2648
2764
|
/**
|
|
2649
|
-
*
|
|
2765
|
+
* Recurring frequency
|
|
2650
2766
|
*/
|
|
2651
2767
|
frequency: string;
|
|
2768
|
+
/**
|
|
2769
|
+
* Expected amount
|
|
2770
|
+
*/
|
|
2771
|
+
expectedAmount: number;
|
|
2772
|
+
/**
|
|
2773
|
+
* Expected day of month
|
|
2774
|
+
*/
|
|
2775
|
+
expectedDay?: number;
|
|
2776
|
+
/**
|
|
2777
|
+
* Custom interval in days
|
|
2778
|
+
*/
|
|
2779
|
+
customIntervalDays?: number;
|
|
2652
2780
|
/**
|
|
2653
2781
|
* Currency code
|
|
2654
2782
|
*/
|
|
2655
2783
|
currency: string;
|
|
2656
|
-
};
|
|
2657
|
-
|
|
2658
|
-
export type ExpectedTransactionResponseDto = {
|
|
2659
2784
|
/**
|
|
2660
|
-
*
|
|
2785
|
+
* Payee matching pattern
|
|
2661
2786
|
*/
|
|
2662
|
-
|
|
2787
|
+
matchPayeePattern?: string;
|
|
2663
2788
|
/**
|
|
2664
|
-
*
|
|
2789
|
+
* Amount tolerance percentage
|
|
2665
2790
|
*/
|
|
2666
|
-
|
|
2791
|
+
matchAmountTolerance: number;
|
|
2667
2792
|
/**
|
|
2668
|
-
*
|
|
2793
|
+
* Default expense account
|
|
2669
2794
|
*/
|
|
2670
|
-
|
|
2795
|
+
defaultExpenseAccount?: string;
|
|
2671
2796
|
/**
|
|
2672
|
-
*
|
|
2797
|
+
* Default payment account
|
|
2673
2798
|
*/
|
|
2674
|
-
|
|
2799
|
+
defaultPaymentAccount?: string;
|
|
2675
2800
|
/**
|
|
2676
|
-
*
|
|
2801
|
+
* Default payee
|
|
2677
2802
|
*/
|
|
2678
|
-
|
|
2803
|
+
defaultPayee?: string;
|
|
2679
2804
|
/**
|
|
2680
|
-
*
|
|
2805
|
+
* Whether rule is active
|
|
2681
2806
|
*/
|
|
2682
|
-
|
|
2807
|
+
isActive: boolean;
|
|
2683
2808
|
/**
|
|
2684
|
-
*
|
|
2809
|
+
* Rule start date (YYYY-MM-DD)
|
|
2685
2810
|
*/
|
|
2686
|
-
|
|
2687
|
-
[key: string]: unknown;
|
|
2688
|
-
};
|
|
2811
|
+
startDate: string;
|
|
2689
2812
|
/**
|
|
2690
|
-
*
|
|
2813
|
+
* Rule end date (YYYY-MM-DD)
|
|
2691
2814
|
*/
|
|
2692
|
-
|
|
2693
|
-
[key: string]: unknown;
|
|
2694
|
-
};
|
|
2815
|
+
endDate?: string;
|
|
2695
2816
|
/**
|
|
2696
|
-
*
|
|
2817
|
+
* Auto-create transaction on expected date
|
|
2697
2818
|
*/
|
|
2698
|
-
|
|
2699
|
-
[key: string]: unknown;
|
|
2700
|
-
};
|
|
2819
|
+
autoCreate: boolean;
|
|
2701
2820
|
/**
|
|
2702
|
-
*
|
|
2821
|
+
* Last matched occurrence date (YYYY-MM-DD)
|
|
2703
2822
|
*/
|
|
2704
|
-
|
|
2823
|
+
lastOccurrence?: string;
|
|
2705
2824
|
/**
|
|
2706
|
-
*
|
|
2825
|
+
* Total matched transactions count
|
|
2707
2826
|
*/
|
|
2708
|
-
|
|
2827
|
+
totalCount: number;
|
|
2709
2828
|
/**
|
|
2710
2829
|
* Created at timestamp
|
|
2711
2830
|
*/
|
|
@@ -2716,461 +2835,420 @@ export type ExpectedTransactionResponseDto = {
|
|
|
2716
2835
|
updatedAt: string;
|
|
2717
2836
|
};
|
|
2718
2837
|
|
|
2719
|
-
export type
|
|
2720
|
-
items: Array<ExpectedTransactionResponseDto>;
|
|
2721
|
-
/**
|
|
2722
|
-
* Total count
|
|
2723
|
-
*/
|
|
2724
|
-
total: number;
|
|
2725
|
-
};
|
|
2726
|
-
|
|
2727
|
-
export type ConfirmMatchDto = {
|
|
2838
|
+
export type CreateRuleFromTransactionDto = {
|
|
2728
2839
|
/**
|
|
2729
|
-
*
|
|
2840
|
+
* Recurring frequency
|
|
2730
2841
|
*/
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2842
|
+
frequency:
|
|
2843
|
+
| 'WEEKLY'
|
|
2844
|
+
| 'BIWEEKLY'
|
|
2845
|
+
| 'MONTHLY'
|
|
2846
|
+
| 'BIMONTHLY'
|
|
2847
|
+
| 'QUARTERLY'
|
|
2848
|
+
| 'YEARLY'
|
|
2849
|
+
| 'CUSTOM';
|
|
2735
2850
|
/**
|
|
2736
|
-
*
|
|
2851
|
+
* Optional name override (default: transaction payee)
|
|
2737
2852
|
*/
|
|
2738
|
-
|
|
2853
|
+
name?: string;
|
|
2739
2854
|
/**
|
|
2740
|
-
*
|
|
2855
|
+
* Optional icon emoji
|
|
2741
2856
|
*/
|
|
2742
|
-
|
|
2857
|
+
icon?: string;
|
|
2858
|
+
};
|
|
2859
|
+
|
|
2860
|
+
export type RecurringRuleWithStatsResponseDto = {
|
|
2743
2861
|
/**
|
|
2744
|
-
*
|
|
2862
|
+
* Rule ID
|
|
2745
2863
|
*/
|
|
2746
|
-
|
|
2864
|
+
id: string;
|
|
2747
2865
|
/**
|
|
2748
|
-
*
|
|
2866
|
+
* User ID
|
|
2749
2867
|
*/
|
|
2750
|
-
|
|
2868
|
+
userId: string;
|
|
2751
2869
|
/**
|
|
2752
|
-
*
|
|
2870
|
+
* Rule name
|
|
2753
2871
|
*/
|
|
2754
|
-
|
|
2755
|
-
};
|
|
2756
|
-
|
|
2757
|
-
export type ForecastItemDto = {
|
|
2872
|
+
name: string;
|
|
2758
2873
|
/**
|
|
2759
|
-
*
|
|
2874
|
+
* Icon emoji
|
|
2760
2875
|
*/
|
|
2761
|
-
|
|
2876
|
+
icon?: string;
|
|
2762
2877
|
/**
|
|
2763
|
-
*
|
|
2878
|
+
* Recurring frequency
|
|
2764
2879
|
*/
|
|
2765
|
-
|
|
2880
|
+
frequency: string;
|
|
2766
2881
|
/**
|
|
2767
2882
|
* Expected amount
|
|
2768
2883
|
*/
|
|
2769
|
-
|
|
2884
|
+
expectedAmount: number;
|
|
2770
2885
|
/**
|
|
2771
|
-
* Expected
|
|
2886
|
+
* Expected day of month
|
|
2772
2887
|
*/
|
|
2773
|
-
|
|
2888
|
+
expectedDay?: number;
|
|
2774
2889
|
/**
|
|
2775
|
-
*
|
|
2890
|
+
* Custom interval in days
|
|
2776
2891
|
*/
|
|
2777
|
-
|
|
2892
|
+
customIntervalDays?: number;
|
|
2778
2893
|
/**
|
|
2779
2894
|
* Currency code
|
|
2780
2895
|
*/
|
|
2781
2896
|
currency: string;
|
|
2782
|
-
};
|
|
2783
|
-
|
|
2784
|
-
export type MonthlyForecastDto = {
|
|
2785
2897
|
/**
|
|
2786
|
-
*
|
|
2898
|
+
* Payee matching pattern
|
|
2787
2899
|
*/
|
|
2788
|
-
|
|
2900
|
+
matchPayeePattern?: string;
|
|
2789
2901
|
/**
|
|
2790
|
-
*
|
|
2902
|
+
* Amount tolerance percentage
|
|
2791
2903
|
*/
|
|
2792
|
-
|
|
2904
|
+
matchAmountTolerance: number;
|
|
2793
2905
|
/**
|
|
2794
|
-
*
|
|
2906
|
+
* Default expense account
|
|
2795
2907
|
*/
|
|
2796
|
-
|
|
2908
|
+
defaultExpenseAccount?: string;
|
|
2797
2909
|
/**
|
|
2798
|
-
*
|
|
2910
|
+
* Default payment account
|
|
2799
2911
|
*/
|
|
2800
|
-
|
|
2801
|
-
[key: string]: unknown;
|
|
2802
|
-
};
|
|
2912
|
+
defaultPaymentAccount?: string;
|
|
2803
2913
|
/**
|
|
2804
|
-
*
|
|
2914
|
+
* Default payee
|
|
2805
2915
|
*/
|
|
2806
|
-
|
|
2807
|
-
};
|
|
2808
|
-
|
|
2809
|
-
export type ForecastResponseDto = {
|
|
2916
|
+
defaultPayee?: string;
|
|
2810
2917
|
/**
|
|
2811
|
-
*
|
|
2918
|
+
* Whether rule is active
|
|
2812
2919
|
*/
|
|
2813
|
-
|
|
2920
|
+
isActive: boolean;
|
|
2814
2921
|
/**
|
|
2815
|
-
*
|
|
2922
|
+
* Rule start date (YYYY-MM-DD)
|
|
2816
2923
|
*/
|
|
2817
|
-
|
|
2924
|
+
startDate: string;
|
|
2818
2925
|
/**
|
|
2819
|
-
*
|
|
2926
|
+
* Rule end date (YYYY-MM-DD)
|
|
2820
2927
|
*/
|
|
2821
|
-
|
|
2822
|
-
[key: string]: unknown;
|
|
2823
|
-
};
|
|
2928
|
+
endDate?: string;
|
|
2824
2929
|
/**
|
|
2825
|
-
*
|
|
2930
|
+
* Auto-create transaction on expected date
|
|
2826
2931
|
*/
|
|
2827
|
-
|
|
2932
|
+
autoCreate: boolean;
|
|
2828
2933
|
/**
|
|
2829
|
-
*
|
|
2934
|
+
* Last matched occurrence date (YYYY-MM-DD)
|
|
2830
2935
|
*/
|
|
2831
|
-
|
|
2936
|
+
lastOccurrence?: string;
|
|
2832
2937
|
/**
|
|
2833
|
-
*
|
|
2938
|
+
* Total matched transactions count
|
|
2834
2939
|
*/
|
|
2835
|
-
|
|
2836
|
-
};
|
|
2837
|
-
|
|
2838
|
-
export type CurrencyBalanceDto = {
|
|
2940
|
+
totalCount: number;
|
|
2839
2941
|
/**
|
|
2840
|
-
*
|
|
2942
|
+
* Created at timestamp
|
|
2841
2943
|
*/
|
|
2842
|
-
|
|
2944
|
+
createdAt: string;
|
|
2843
2945
|
/**
|
|
2844
|
-
*
|
|
2946
|
+
* Updated at timestamp
|
|
2845
2947
|
*/
|
|
2846
|
-
|
|
2847
|
-
};
|
|
2848
|
-
|
|
2849
|
-
export type TimeSeriesPointDto = {
|
|
2948
|
+
updatedAt: string;
|
|
2850
2949
|
/**
|
|
2851
|
-
*
|
|
2950
|
+
* Number of pending expected transactions
|
|
2852
2951
|
*/
|
|
2853
|
-
|
|
2952
|
+
pendingCount: number;
|
|
2854
2953
|
/**
|
|
2855
|
-
*
|
|
2954
|
+
* Number of overdue expected transactions
|
|
2856
2955
|
*/
|
|
2857
|
-
|
|
2956
|
+
overdueCount: number;
|
|
2858
2957
|
/**
|
|
2859
|
-
*
|
|
2958
|
+
* Next expected date (YYYY-MM-DD)
|
|
2860
2959
|
*/
|
|
2861
|
-
|
|
2862
|
-
[key: string]: unknown;
|
|
2863
|
-
};
|
|
2960
|
+
nextExpectedDate?: string;
|
|
2864
2961
|
/**
|
|
2865
|
-
* Total
|
|
2962
|
+
* Total amount of all matched transactions
|
|
2866
2963
|
*/
|
|
2867
|
-
|
|
2964
|
+
totalAmount: number;
|
|
2868
2965
|
/**
|
|
2869
|
-
*
|
|
2966
|
+
* Average amount per transaction
|
|
2870
2967
|
*/
|
|
2871
|
-
|
|
2968
|
+
averageAmount: number;
|
|
2872
2969
|
/**
|
|
2873
|
-
*
|
|
2970
|
+
* Number of matched transactions
|
|
2874
2971
|
*/
|
|
2875
|
-
|
|
2876
|
-
};
|
|
2877
|
-
|
|
2878
|
-
export type TrendSummaryDto = {
|
|
2972
|
+
transactionCount: number;
|
|
2879
2973
|
/**
|
|
2880
|
-
*
|
|
2974
|
+
* First matched transaction date (YYYY-MM-DD)
|
|
2881
2975
|
*/
|
|
2882
|
-
|
|
2976
|
+
firstDate?: string;
|
|
2883
2977
|
/**
|
|
2884
|
-
*
|
|
2978
|
+
* Last matched transaction date (YYYY-MM-DD)
|
|
2885
2979
|
*/
|
|
2886
|
-
|
|
2980
|
+
lastDate?: string;
|
|
2887
2981
|
/**
|
|
2888
|
-
*
|
|
2982
|
+
* Amount variance (standard deviation squared)
|
|
2889
2983
|
*/
|
|
2890
|
-
|
|
2984
|
+
variance: number;
|
|
2891
2985
|
/**
|
|
2892
|
-
*
|
|
2986
|
+
* Number of upcoming expected transactions
|
|
2893
2987
|
*/
|
|
2894
|
-
|
|
2988
|
+
upcomingCount: number;
|
|
2895
2989
|
};
|
|
2896
2990
|
|
|
2897
|
-
export type
|
|
2991
|
+
export type UpdateRecurringRuleDto = {
|
|
2898
2992
|
/**
|
|
2899
|
-
*
|
|
2993
|
+
* Rule name (unique per user)
|
|
2900
2994
|
*/
|
|
2901
|
-
|
|
2995
|
+
name?: string;
|
|
2902
2996
|
/**
|
|
2903
|
-
*
|
|
2997
|
+
* Icon emoji
|
|
2904
2998
|
*/
|
|
2905
|
-
|
|
2906
|
-
};
|
|
2907
|
-
|
|
2908
|
-
export type PortfolioTrendsResponseDto = {
|
|
2999
|
+
icon?: string;
|
|
2909
3000
|
/**
|
|
2910
|
-
*
|
|
3001
|
+
* Recurring frequency
|
|
2911
3002
|
*/
|
|
2912
|
-
|
|
3003
|
+
frequency?:
|
|
3004
|
+
| 'WEEKLY'
|
|
3005
|
+
| 'BIWEEKLY'
|
|
3006
|
+
| 'MONTHLY'
|
|
3007
|
+
| 'BIMONTHLY'
|
|
3008
|
+
| 'QUARTERLY'
|
|
3009
|
+
| 'YEARLY'
|
|
3010
|
+
| 'CUSTOM';
|
|
2913
3011
|
/**
|
|
2914
|
-
*
|
|
3012
|
+
* Expected amount (positive number)
|
|
2915
3013
|
*/
|
|
2916
|
-
|
|
3014
|
+
expectedAmount?: number;
|
|
2917
3015
|
/**
|
|
2918
|
-
*
|
|
3016
|
+
* Expected day of month (1-31)
|
|
2919
3017
|
*/
|
|
2920
|
-
|
|
3018
|
+
expectedDay?: number;
|
|
2921
3019
|
/**
|
|
2922
|
-
*
|
|
3020
|
+
* Currency code
|
|
2923
3021
|
*/
|
|
2924
|
-
|
|
3022
|
+
currency?: string;
|
|
2925
3023
|
/**
|
|
2926
|
-
*
|
|
3024
|
+
* Payee matching pattern (supports wildcards)
|
|
2927
3025
|
*/
|
|
2928
|
-
|
|
3026
|
+
matchPayeePattern?: string;
|
|
2929
3027
|
/**
|
|
2930
|
-
*
|
|
3028
|
+
* Amount tolerance percentage (0-1)
|
|
2931
3029
|
*/
|
|
2932
|
-
|
|
3030
|
+
matchAmountTolerance?: number;
|
|
2933
3031
|
/**
|
|
2934
|
-
*
|
|
3032
|
+
* Default expense account for auto-create
|
|
2935
3033
|
*/
|
|
2936
|
-
|
|
2937
|
-
};
|
|
2938
|
-
|
|
2939
|
-
export type CashFlowPointDto = {
|
|
3034
|
+
defaultExpenseAccount?: string;
|
|
2940
3035
|
/**
|
|
2941
|
-
*
|
|
3036
|
+
* Default payment account for auto-create
|
|
2942
3037
|
*/
|
|
2943
|
-
|
|
3038
|
+
defaultPaymentAccount?: string;
|
|
2944
3039
|
/**
|
|
2945
|
-
*
|
|
3040
|
+
* Default payee for auto-create
|
|
2946
3041
|
*/
|
|
2947
|
-
|
|
3042
|
+
defaultPayee?: string;
|
|
2948
3043
|
/**
|
|
2949
|
-
*
|
|
3044
|
+
* Auto-create transaction when expected date arrives
|
|
2950
3045
|
*/
|
|
2951
|
-
|
|
3046
|
+
autoCreate?: boolean;
|
|
2952
3047
|
/**
|
|
2953
|
-
*
|
|
3048
|
+
* Rule end date (ISO format)
|
|
2954
3049
|
*/
|
|
2955
|
-
|
|
3050
|
+
endDate?: string;
|
|
3051
|
+
/**
|
|
3052
|
+
* Custom interval in days
|
|
3053
|
+
*/
|
|
3054
|
+
customIntervalDays?: number;
|
|
3055
|
+
/**
|
|
3056
|
+
* Rule active status
|
|
3057
|
+
*/
|
|
3058
|
+
isActive?: boolean;
|
|
2956
3059
|
};
|
|
2957
3060
|
|
|
2958
|
-
export type
|
|
3061
|
+
export type ExpectedTransactionRuleDto = {
|
|
2959
3062
|
/**
|
|
2960
|
-
*
|
|
3063
|
+
* Rule name
|
|
2961
3064
|
*/
|
|
2962
|
-
|
|
3065
|
+
name: string;
|
|
2963
3066
|
/**
|
|
2964
|
-
*
|
|
3067
|
+
* Rule icon
|
|
2965
3068
|
*/
|
|
2966
|
-
|
|
3069
|
+
icon?: string;
|
|
2967
3070
|
/**
|
|
2968
|
-
*
|
|
3071
|
+
* Rule frequency
|
|
2969
3072
|
*/
|
|
2970
|
-
|
|
3073
|
+
frequency: string;
|
|
2971
3074
|
/**
|
|
2972
|
-
*
|
|
3075
|
+
* Currency code
|
|
2973
3076
|
*/
|
|
2974
|
-
|
|
3077
|
+
currency: string;
|
|
2975
3078
|
};
|
|
2976
3079
|
|
|
2977
|
-
export type
|
|
3080
|
+
export type ExpectedTransactionResponseDto = {
|
|
2978
3081
|
/**
|
|
2979
|
-
*
|
|
3082
|
+
* Expected transaction ID
|
|
2980
3083
|
*/
|
|
2981
|
-
|
|
3084
|
+
id: string;
|
|
2982
3085
|
/**
|
|
2983
|
-
*
|
|
3086
|
+
* User ID
|
|
2984
3087
|
*/
|
|
2985
|
-
|
|
3088
|
+
userId: string;
|
|
2986
3089
|
/**
|
|
2987
|
-
*
|
|
3090
|
+
* Associated rule ID
|
|
2988
3091
|
*/
|
|
2989
|
-
|
|
3092
|
+
ruleId: string;
|
|
2990
3093
|
/**
|
|
2991
|
-
*
|
|
3094
|
+
* Expected date (YYYY-MM-DD)
|
|
2992
3095
|
*/
|
|
2993
|
-
|
|
3096
|
+
expectedDate: string;
|
|
2994
3097
|
/**
|
|
2995
|
-
*
|
|
3098
|
+
* Expected amount
|
|
2996
3099
|
*/
|
|
2997
|
-
|
|
3100
|
+
expectedAmount: number;
|
|
2998
3101
|
/**
|
|
2999
|
-
*
|
|
3102
|
+
* Status (PENDING, COMPLETED, SKIPPED)
|
|
3000
3103
|
*/
|
|
3001
|
-
|
|
3002
|
-
};
|
|
3003
|
-
|
|
3004
|
-
export type GenerateSnapshotBody = unknown;
|
|
3005
|
-
|
|
3006
|
-
export type GenerateSnapshotResponse = unknown;
|
|
3007
|
-
|
|
3008
|
-
export type BackfillSnapshotsBody = unknown;
|
|
3009
|
-
|
|
3010
|
-
export type BackfillSnapshotsResponse = unknown;
|
|
3011
|
-
|
|
3012
|
-
export type DeleteOwnUserDto = {
|
|
3104
|
+
status: string;
|
|
3013
3105
|
/**
|
|
3014
|
-
*
|
|
3106
|
+
* Matched transaction ID
|
|
3015
3107
|
*/
|
|
3016
|
-
|
|
3017
|
-
};
|
|
3018
|
-
|
|
3019
|
-
export type UserSettingsResponseDto = {
|
|
3108
|
+
matchedTransactionId?: string;
|
|
3020
3109
|
/**
|
|
3021
|
-
*
|
|
3110
|
+
* Match timestamp (ISO 8601)
|
|
3022
3111
|
*/
|
|
3023
|
-
|
|
3024
|
-
};
|
|
3025
|
-
|
|
3026
|
-
export type UserResponseDto = {
|
|
3112
|
+
matchedAt?: string;
|
|
3027
3113
|
/**
|
|
3028
|
-
*
|
|
3114
|
+
* Match confidence score (0-1)
|
|
3029
3115
|
*/
|
|
3030
|
-
|
|
3116
|
+
matchConfidence?: number;
|
|
3031
3117
|
/**
|
|
3032
|
-
*
|
|
3118
|
+
* Whether this expected transaction is overdue
|
|
3033
3119
|
*/
|
|
3034
|
-
|
|
3120
|
+
isOverdue: boolean;
|
|
3035
3121
|
/**
|
|
3036
|
-
*
|
|
3122
|
+
* Rule information
|
|
3037
3123
|
*/
|
|
3038
|
-
|
|
3124
|
+
rule: ExpectedTransactionRuleDto;
|
|
3039
3125
|
/**
|
|
3040
|
-
*
|
|
3126
|
+
* Created at timestamp
|
|
3041
3127
|
*/
|
|
3042
|
-
|
|
3043
|
-
};
|
|
3044
|
-
|
|
3045
|
-
export type SignupDto = {
|
|
3128
|
+
createdAt: string;
|
|
3046
3129
|
/**
|
|
3047
|
-
*
|
|
3130
|
+
* Updated at timestamp
|
|
3048
3131
|
*/
|
|
3049
|
-
|
|
3132
|
+
updatedAt: string;
|
|
3050
3133
|
};
|
|
3051
3134
|
|
|
3052
|
-
export type
|
|
3053
|
-
|
|
3054
|
-
* JWT auth token
|
|
3055
|
-
*/
|
|
3056
|
-
authToken: string;
|
|
3135
|
+
export type ExpectedTransactionListResponseDto = {
|
|
3136
|
+
items: Array<ExpectedTransactionResponseDto>;
|
|
3057
3137
|
/**
|
|
3058
|
-
*
|
|
3138
|
+
* Total count
|
|
3059
3139
|
*/
|
|
3060
|
-
|
|
3140
|
+
total: number;
|
|
3141
|
+
};
|
|
3142
|
+
|
|
3143
|
+
export type ConfirmMatchDto = {
|
|
3061
3144
|
/**
|
|
3062
|
-
*
|
|
3145
|
+
* Transaction ID to match with
|
|
3063
3146
|
*/
|
|
3064
|
-
|
|
3147
|
+
transactionId: string;
|
|
3065
3148
|
};
|
|
3066
3149
|
|
|
3067
|
-
|
|
3068
|
-
* Assigned user role
|
|
3069
|
-
*/
|
|
3070
|
-
export type role = 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
|
|
3071
|
-
|
|
3072
|
-
export type UpdateUserSettingDto = {
|
|
3150
|
+
export type EnterNowDto = {
|
|
3073
3151
|
/**
|
|
3074
|
-
*
|
|
3152
|
+
* Override expense account (uses rule default if not provided)
|
|
3075
3153
|
*/
|
|
3076
|
-
|
|
3154
|
+
expenseAccount?: string;
|
|
3077
3155
|
/**
|
|
3078
|
-
*
|
|
3156
|
+
* Override payment account (uses rule default if not provided)
|
|
3079
3157
|
*/
|
|
3080
|
-
|
|
3158
|
+
paymentAccount?: string;
|
|
3081
3159
|
/**
|
|
3082
|
-
*
|
|
3160
|
+
* Override amount (uses expected amount if not provided)
|
|
3083
3161
|
*/
|
|
3084
|
-
|
|
3162
|
+
amount?: number;
|
|
3085
3163
|
/**
|
|
3086
|
-
*
|
|
3164
|
+
* Override payee (uses rule default if not provided)
|
|
3087
3165
|
*/
|
|
3088
|
-
|
|
3166
|
+
payee?: string;
|
|
3089
3167
|
/**
|
|
3090
|
-
*
|
|
3168
|
+
* Optional narration
|
|
3091
3169
|
*/
|
|
3092
|
-
|
|
3170
|
+
narration?: string;
|
|
3171
|
+
};
|
|
3172
|
+
|
|
3173
|
+
export type ForecastItemDto = {
|
|
3093
3174
|
/**
|
|
3094
|
-
*
|
|
3175
|
+
* Rule name
|
|
3095
3176
|
*/
|
|
3096
|
-
|
|
3177
|
+
rule: string;
|
|
3097
3178
|
/**
|
|
3098
|
-
*
|
|
3179
|
+
* Rule ID
|
|
3099
3180
|
*/
|
|
3100
|
-
|
|
3181
|
+
ruleId: string;
|
|
3101
3182
|
/**
|
|
3102
|
-
*
|
|
3183
|
+
* Expected amount
|
|
3103
3184
|
*/
|
|
3104
|
-
|
|
3185
|
+
amount: number;
|
|
3105
3186
|
/**
|
|
3106
|
-
*
|
|
3187
|
+
* Expected date (YYYY-MM-DD)
|
|
3107
3188
|
*/
|
|
3108
|
-
|
|
3189
|
+
date: string;
|
|
3109
3190
|
/**
|
|
3110
|
-
*
|
|
3191
|
+
* Rule icon emoji
|
|
3111
3192
|
*/
|
|
3112
|
-
|
|
3193
|
+
icon: string | null;
|
|
3113
3194
|
/**
|
|
3114
|
-
*
|
|
3195
|
+
* Currency code
|
|
3115
3196
|
*/
|
|
3116
|
-
|
|
3197
|
+
currency: string;
|
|
3198
|
+
};
|
|
3199
|
+
|
|
3200
|
+
export type MonthlyForecastDto = {
|
|
3117
3201
|
/**
|
|
3118
|
-
*
|
|
3202
|
+
* Month (YYYY-MM)
|
|
3119
3203
|
*/
|
|
3120
|
-
|
|
3204
|
+
month: string;
|
|
3121
3205
|
/**
|
|
3122
|
-
*
|
|
3206
|
+
* Total expected outflow for the month
|
|
3123
3207
|
*/
|
|
3124
|
-
|
|
3208
|
+
expectedOutflow: number;
|
|
3125
3209
|
/**
|
|
3126
|
-
*
|
|
3210
|
+
* Number of expected transactions
|
|
3127
3211
|
*/
|
|
3128
|
-
|
|
3212
|
+
itemCount: number;
|
|
3129
3213
|
/**
|
|
3130
|
-
*
|
|
3214
|
+
* Breakdown by currency
|
|
3131
3215
|
*/
|
|
3132
|
-
|
|
3216
|
+
byCurrency: {
|
|
3217
|
+
[key: string]: unknown;
|
|
3218
|
+
};
|
|
3133
3219
|
/**
|
|
3134
|
-
*
|
|
3220
|
+
* Individual forecast items
|
|
3135
3221
|
*/
|
|
3136
|
-
|
|
3222
|
+
items: Array<ForecastItemDto>;
|
|
3223
|
+
};
|
|
3224
|
+
|
|
3225
|
+
export type ForecastResponseDto = {
|
|
3137
3226
|
/**
|
|
3138
|
-
*
|
|
3227
|
+
* Monthly forecast data
|
|
3139
3228
|
*/
|
|
3140
|
-
|
|
3229
|
+
forecast: Array<MonthlyForecastDto>;
|
|
3141
3230
|
/**
|
|
3142
|
-
*
|
|
3231
|
+
* Total expected outflow across all months
|
|
3143
3232
|
*/
|
|
3144
|
-
|
|
3233
|
+
totalOutflow: number;
|
|
3145
3234
|
/**
|
|
3146
|
-
*
|
|
3235
|
+
* Total by currency across all months
|
|
3147
3236
|
*/
|
|
3148
|
-
|
|
3237
|
+
totalByCurrency: {
|
|
3238
|
+
[key: string]: unknown;
|
|
3239
|
+
};
|
|
3149
3240
|
/**
|
|
3150
|
-
*
|
|
3241
|
+
* Number of active recurring rules included
|
|
3151
3242
|
*/
|
|
3152
|
-
|
|
3243
|
+
rulesCount: number;
|
|
3153
3244
|
/**
|
|
3154
|
-
*
|
|
3245
|
+
* Forecast period start date
|
|
3155
3246
|
*/
|
|
3156
|
-
|
|
3157
|
-
};
|
|
3158
|
-
|
|
3159
|
-
/**
|
|
3160
|
-
* Color scheme
|
|
3161
|
-
*/
|
|
3162
|
-
export type colorScheme = 'DARK' | 'LIGHT';
|
|
3163
|
-
|
|
3164
|
-
/**
|
|
3165
|
-
* View mode
|
|
3166
|
-
*/
|
|
3167
|
-
export type viewMode = 'DEFAULT' | 'ZEN';
|
|
3168
|
-
|
|
3169
|
-
export type UpdatePropertyDto = {
|
|
3247
|
+
periodStart: string;
|
|
3170
3248
|
/**
|
|
3171
|
-
*
|
|
3249
|
+
* Forecast period end date
|
|
3172
3250
|
*/
|
|
3173
|
-
|
|
3251
|
+
periodEnd: string;
|
|
3174
3252
|
};
|
|
3175
3253
|
|
|
3176
3254
|
export type CreateTransactionRuleDto = {
|
|
@@ -3489,14 +3567,14 @@ export type UpdateTransactionRuleDto = {
|
|
|
3489
3567
|
*/
|
|
3490
3568
|
amountMax?: number;
|
|
3491
3569
|
priority?: number;
|
|
3492
|
-
/**
|
|
3493
|
-
* Enable or disable the rule
|
|
3494
|
-
*/
|
|
3495
|
-
enabled?: boolean;
|
|
3496
3570
|
additionalTags?: Array<unknown[]>;
|
|
3497
3571
|
additionalMetadata?: {
|
|
3498
3572
|
[key: string]: unknown;
|
|
3499
3573
|
};
|
|
3574
|
+
/**
|
|
3575
|
+
* Enable or disable the rule
|
|
3576
|
+
*/
|
|
3577
|
+
enabled?: boolean;
|
|
3500
3578
|
};
|
|
3501
3579
|
|
|
3502
3580
|
export type TestRuleDto = {
|
|
@@ -4260,6 +4338,79 @@ export type ParserTelemetryReportDto = unknown;
|
|
|
4260
4338
|
|
|
4261
4339
|
export type UncoveredFormatMissDto = unknown;
|
|
4262
4340
|
|
|
4341
|
+
export type ClientParsedDataDto = {
|
|
4342
|
+
/**
|
|
4343
|
+
* Transaction amount
|
|
4344
|
+
*/
|
|
4345
|
+
amount?: number;
|
|
4346
|
+
/**
|
|
4347
|
+
* Currency code
|
|
4348
|
+
*/
|
|
4349
|
+
currency?: string;
|
|
4350
|
+
/**
|
|
4351
|
+
* Transaction date (ISO 8601)
|
|
4352
|
+
*/
|
|
4353
|
+
date?: string;
|
|
4354
|
+
/**
|
|
4355
|
+
* Payee/merchant name
|
|
4356
|
+
*/
|
|
4357
|
+
payee?: string;
|
|
4358
|
+
/**
|
|
4359
|
+
* Transaction narration
|
|
4360
|
+
*/
|
|
4361
|
+
narration?: string;
|
|
4362
|
+
/**
|
|
4363
|
+
* Category slug
|
|
4364
|
+
*/
|
|
4365
|
+
category?: string;
|
|
4366
|
+
/**
|
|
4367
|
+
* Income type
|
|
4368
|
+
*/
|
|
4369
|
+
incomeType?: string;
|
|
4370
|
+
/**
|
|
4371
|
+
* Income source
|
|
4372
|
+
*/
|
|
4373
|
+
incomeSource?: string;
|
|
4374
|
+
/**
|
|
4375
|
+
* Security symbol code (e.g., 600519, AAPL)
|
|
4376
|
+
*/
|
|
4377
|
+
symbol?: string;
|
|
4378
|
+
/**
|
|
4379
|
+
* Quantity of shares/units
|
|
4380
|
+
*/
|
|
4381
|
+
quantity?: number;
|
|
4382
|
+
/**
|
|
4383
|
+
* Unit price per share/unit
|
|
4384
|
+
*/
|
|
4385
|
+
price?: number;
|
|
4386
|
+
/**
|
|
4387
|
+
* Investment action
|
|
4388
|
+
*/
|
|
4389
|
+
investmentAction?: 'buy' | 'sell';
|
|
4390
|
+
/**
|
|
4391
|
+
* Payment source: asset (default) or liability (credit card)
|
|
4392
|
+
*/
|
|
4393
|
+
paymentSource?: 'asset' | 'liability';
|
|
4394
|
+
/**
|
|
4395
|
+
* Liability account hint (CreditCard/Huabei/Baitiao)
|
|
4396
|
+
*/
|
|
4397
|
+
liabilityHint?: string;
|
|
4398
|
+
/**
|
|
4399
|
+
* Display-only warning from the prior response; accepted but ignored.
|
|
4400
|
+
*/
|
|
4401
|
+
warning?: string;
|
|
4402
|
+
};
|
|
4403
|
+
|
|
4404
|
+
/**
|
|
4405
|
+
* Investment action
|
|
4406
|
+
*/
|
|
4407
|
+
export type investmentAction = 'buy' | 'sell';
|
|
4408
|
+
|
|
4409
|
+
/**
|
|
4410
|
+
* Payment source: asset (default) or liability (credit card)
|
|
4411
|
+
*/
|
|
4412
|
+
export type paymentSource = 'asset' | 'liability';
|
|
4413
|
+
|
|
4263
4414
|
export type ProcessNlpDto = {
|
|
4264
4415
|
/**
|
|
4265
4416
|
* Natural language text describing a transaction. Optional when `confirm` is true (structured confirm); otherwise required.
|
|
@@ -4276,19 +4427,34 @@ export type ProcessNlpDto = {
|
|
|
4276
4427
|
/**
|
|
4277
4428
|
* Parsed data from previous NLP response for session recovery. Send back the parsedData received in confirm_payee/confirm responses.
|
|
4278
4429
|
*/
|
|
4279
|
-
parsedData?:
|
|
4280
|
-
[key: string]: unknown;
|
|
4281
|
-
};
|
|
4430
|
+
parsedData?: ClientParsedDataDto;
|
|
4282
4431
|
/**
|
|
4283
4432
|
* confirm_rule echo-back: rule id selected from the prior confirm_rule response (matchedRule.id or alternatives[i].ruleId). Applied directly when the session is confirming_rule — no NL re-parse.
|
|
4284
4433
|
*/
|
|
4285
4434
|
selectedRuleId?: string;
|
|
4286
4435
|
/**
|
|
4287
|
-
* confirm_account echo-back: account path selected from the prior confirm_account response (suggestedAccount, similarAccounts[i], or a typed path). Applied directly when the session is confirming_account — no NL re-parse.
|
|
4436
|
+
* confirm_account echo-back: account path selected from the prior confirm_account response (suggestedAccount, similarAccounts[i].path, or a typed path). Applied directly when the session is confirming_account — no NL re-parse.
|
|
4288
4437
|
*/
|
|
4289
4438
|
selectedAccount?: string;
|
|
4439
|
+
/**
|
|
4440
|
+
* Viewpoint account hint: the beancount path the user drilled into (e.g. from an account drill-down). Tie-break only — never overrides accounts resolved from the text. Must be an owned, OPEN Assets:/Liabilities: account; unresolvable hints are silently ignored.
|
|
4441
|
+
*/
|
|
4442
|
+
viewpointAccount?: string;
|
|
4443
|
+
/**
|
|
4444
|
+
* Viewpoint category hint: the ADR-0075 Group segment the user drilled into (e.g. 'Food'). Resolved to a concrete OPEN account in that group; tie-break only — never overrides a category resolved from the text.
|
|
4445
|
+
*/
|
|
4446
|
+
viewpointCategory?: string;
|
|
4447
|
+
/**
|
|
4448
|
+
* Companion flow root for viewpointCategory ('income' | 'expense'), mirroring the ADR-0126 list-endpoint invariant. Derived from the session's routed intent (multi-turn) when absent; a first-turn flow-less category hint is dropped — send the flow explicitly.
|
|
4449
|
+
*/
|
|
4450
|
+
viewpointFlow?: 'income' | 'expense';
|
|
4290
4451
|
};
|
|
4291
4452
|
|
|
4453
|
+
/**
|
|
4454
|
+
* Companion flow root for viewpointCategory ('income' | 'expense'), mirroring the ADR-0126 list-endpoint invariant. Derived from the session's routed intent (multi-turn) when absent; a first-turn flow-less category hint is dropped — send the flow explicitly.
|
|
4455
|
+
*/
|
|
4456
|
+
export type viewpointFlow = 'income' | 'expense';
|
|
4457
|
+
|
|
4292
4458
|
export type NlpTransactionInfoDto = {
|
|
4293
4459
|
/**
|
|
4294
4460
|
* Transaction ID
|
|
@@ -4383,16 +4549,6 @@ export type NlpParsedDataDto = {
|
|
|
4383
4549
|
warning?: string;
|
|
4384
4550
|
};
|
|
4385
4551
|
|
|
4386
|
-
/**
|
|
4387
|
-
* Investment action
|
|
4388
|
-
*/
|
|
4389
|
-
export type investmentAction = 'buy' | 'sell';
|
|
4390
|
-
|
|
4391
|
-
/**
|
|
4392
|
-
* Payment source: asset (default) or liability (credit card)
|
|
4393
|
-
*/
|
|
4394
|
-
export type paymentSource = 'asset' | 'liability';
|
|
4395
|
-
|
|
4396
4552
|
export type NlpSourceTransactionDto = {
|
|
4397
4553
|
/**
|
|
4398
4554
|
* Transaction date (ISO format)
|
|
@@ -4524,6 +4680,17 @@ export type NlpRuleConfirmationDataDto = {
|
|
|
4524
4680
|
reasons: Array<string>;
|
|
4525
4681
|
};
|
|
4526
4682
|
|
|
4683
|
+
export type NlpAccountCandidateDto = {
|
|
4684
|
+
/**
|
|
4685
|
+
* Canonical beancount account path (echo back on selection)
|
|
4686
|
+
*/
|
|
4687
|
+
path: string;
|
|
4688
|
+
/**
|
|
4689
|
+
* Localized display name (ADR-0114 read-time projection, user locale)
|
|
4690
|
+
*/
|
|
4691
|
+
name: string;
|
|
4692
|
+
};
|
|
4693
|
+
|
|
4527
4694
|
export type NlpAccountConfirmationDataDto = {
|
|
4528
4695
|
/**
|
|
4529
4696
|
* The invalid account name
|
|
@@ -4534,9 +4701,9 @@ export type NlpAccountConfirmationDataDto = {
|
|
|
4534
4701
|
*/
|
|
4535
4702
|
suggestedAccount?: string;
|
|
4536
4703
|
/**
|
|
4537
|
-
* Similar accounts for user selection
|
|
4704
|
+
* Similar accounts for user selection (path + localized name, #680)
|
|
4538
4705
|
*/
|
|
4539
|
-
similarAccounts: Array<
|
|
4706
|
+
similarAccounts: Array<NlpAccountCandidateDto>;
|
|
4540
4707
|
/**
|
|
4541
4708
|
* Error message explaining the issue
|
|
4542
4709
|
*/
|
|
@@ -4720,7 +4887,12 @@ export type NlpResponseDto = {
|
|
|
4720
4887
|
/**
|
|
4721
4888
|
* Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
|
|
4722
4889
|
*/
|
|
4723
|
-
assetSubType?:
|
|
4890
|
+
assetSubType?:
|
|
4891
|
+
| 'transfer'
|
|
4892
|
+
| 'banking'
|
|
4893
|
+
| 'investment'
|
|
4894
|
+
| 'lend'
|
|
4895
|
+
| 'lend_collect';
|
|
4724
4896
|
/**
|
|
4725
4897
|
* Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
|
|
4726
4898
|
*/
|
|
@@ -4837,7 +5009,12 @@ export type intent = 'expense' | 'asset' | 'income' | 'liability' | 'equity';
|
|
|
4837
5009
|
/**
|
|
4838
5010
|
* Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
|
|
4839
5011
|
*/
|
|
4840
|
-
export type assetSubType =
|
|
5012
|
+
export type assetSubType =
|
|
5013
|
+
| 'transfer'
|
|
5014
|
+
| 'banking'
|
|
5015
|
+
| 'investment'
|
|
5016
|
+
| 'lend'
|
|
5017
|
+
| 'lend_collect';
|
|
4841
5018
|
|
|
4842
5019
|
/**
|
|
4843
5020
|
* Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
|
|
@@ -4902,7 +5079,7 @@ export type PlatformListItemDto = {
|
|
|
4902
5079
|
/**
|
|
4903
5080
|
* Platform type
|
|
4904
5081
|
*/
|
|
4905
|
-
export type
|
|
5082
|
+
export type type4 =
|
|
4906
5083
|
| 'BANK'
|
|
4907
5084
|
| 'BROKERAGE'
|
|
4908
5085
|
| 'CRYPTO_EXCHANGE'
|
|
@@ -4976,16 +5153,65 @@ export type PlatformMatchResponseDto = {
|
|
|
4976
5153
|
*/
|
|
4977
5154
|
total: number;
|
|
4978
5155
|
/**
|
|
4979
|
-
* true when total > platforms.length (more matches exist)
|
|
5156
|
+
* true when total > platforms.length (more matches exist)
|
|
5157
|
+
*/
|
|
5158
|
+
hasMore: boolean;
|
|
5159
|
+
};
|
|
5160
|
+
|
|
5161
|
+
/**
|
|
5162
|
+
* Overall match quality — top row's tier, or 'none' when no hits
|
|
5163
|
+
*/
|
|
5164
|
+
export type matchType2 = 'none' | 'exact' | 'prefix' | 'substring';
|
|
5165
|
+
|
|
5166
|
+
export type PlatformStandardsPlatformDto = {
|
|
5167
|
+
/**
|
|
5168
|
+
* Global platform ID
|
|
5169
|
+
*/
|
|
5170
|
+
id: string;
|
|
5171
|
+
/**
|
|
5172
|
+
* Platform name (e.g., "ICBC")
|
|
5173
|
+
*/
|
|
5174
|
+
name: string;
|
|
5175
|
+
/**
|
|
5176
|
+
* Canonical identifier in ACCOUNT_RE format (e.g., "icbc")
|
|
5177
|
+
*/
|
|
5178
|
+
canonical: string;
|
|
5179
|
+
/**
|
|
5180
|
+
* Suggested path segment — canonical PascalCased per hyphen-part, hyphens preserved (e.g. "Apple-Pay")
|
|
5181
|
+
*/
|
|
5182
|
+
suggestedSegment: string;
|
|
5183
|
+
/**
|
|
5184
|
+
* Platform type
|
|
5185
|
+
*/
|
|
5186
|
+
type:
|
|
5187
|
+
| 'BANK'
|
|
5188
|
+
| 'BROKERAGE'
|
|
5189
|
+
| 'CRYPTO_EXCHANGE'
|
|
5190
|
+
| 'PAYMENT'
|
|
5191
|
+
| 'INVESTMENT'
|
|
5192
|
+
| 'INSURANCE'
|
|
5193
|
+
| 'OTHER';
|
|
5194
|
+
/**
|
|
5195
|
+
* Region-aware category (institution vocab, e.g. DigitalWallet/Bank) resolved against the final region. null = no region-aware suggestion; fall back to type.
|
|
5196
|
+
*/
|
|
5197
|
+
category: string | null;
|
|
5198
|
+
};
|
|
5199
|
+
|
|
5200
|
+
export type PlatformStandardsResponseDto = {
|
|
5201
|
+
/**
|
|
5202
|
+
* The selected platform (institution lock source)
|
|
5203
|
+
*/
|
|
5204
|
+
platform: PlatformStandardsPlatformDto;
|
|
5205
|
+
/**
|
|
5206
|
+
* Resolved template region (ISO 3166-1 alpha-2, UPPERCASE): the platform's own countryCode when set, else the region query param. For regions without a regional template file the template list falls back to the universal-only catalog while region still echoes the code.
|
|
5207
|
+
*/
|
|
5208
|
+
region: string;
|
|
5209
|
+
/**
|
|
5210
|
+
* Candidate account-standard templates of the resolved region (groupable by productCategory client-side)
|
|
4980
5211
|
*/
|
|
4981
|
-
|
|
5212
|
+
templates: Array<AccountStandardResponseDto>;
|
|
4982
5213
|
};
|
|
4983
5214
|
|
|
4984
|
-
/**
|
|
4985
|
-
* Overall match quality — top row's tier, or 'none' when no hits
|
|
4986
|
-
*/
|
|
4987
|
-
export type matchType2 = 'none' | 'exact' | 'prefix' | 'substring';
|
|
4988
|
-
|
|
4989
5215
|
export type CreatePlatformDto = {
|
|
4990
5216
|
/**
|
|
4991
5217
|
* Platform name
|
|
@@ -5182,11 +5408,11 @@ export type PlatformGroupDto = {
|
|
|
5182
5408
|
*/
|
|
5183
5409
|
platformName: string;
|
|
5184
5410
|
/**
|
|
5185
|
-
* Accounts within this platform
|
|
5411
|
+
* Accounts within this platform (Assets and Liabilities rows, #696)
|
|
5186
5412
|
*/
|
|
5187
5413
|
accounts: Array<AccountItemDto>;
|
|
5188
5414
|
/**
|
|
5189
|
-
* FX-converted total balance in base currency
|
|
5415
|
+
* FX-converted total balance in base currency (nets Assets + Liabilities rows; can be negative)
|
|
5190
5416
|
*/
|
|
5191
5417
|
totalBalance: string;
|
|
5192
5418
|
/**
|
|
@@ -5198,7 +5424,7 @@ export type PlatformGroupDto = {
|
|
|
5198
5424
|
*/
|
|
5199
5425
|
convertedBalance?: string;
|
|
5200
5426
|
/**
|
|
5201
|
-
* Share of the grand
|
|
5427
|
+
* Share of the converted asset-side grand total (0-100); liability balances are excluded from the basis; 0 when grand total is 0 (#696)
|
|
5202
5428
|
*/
|
|
5203
5429
|
sharePct: number;
|
|
5204
5430
|
};
|
|
@@ -5224,7 +5450,7 @@ export type AccountExchangeRateWarningDto = {
|
|
|
5224
5450
|
|
|
5225
5451
|
export type AccountsSummaryDto = {
|
|
5226
5452
|
/**
|
|
5227
|
-
* Total number of accounts
|
|
5453
|
+
* Total number of accounts (balance sheet: Assets + Liabilities, #696)
|
|
5228
5454
|
*/
|
|
5229
5455
|
totalAccounts: number;
|
|
5230
5456
|
/**
|
|
@@ -5576,9 +5802,7 @@ export type MonetaryDto = {
|
|
|
5576
5802
|
/**
|
|
5577
5803
|
* Converted to user base currency (Decimal string)
|
|
5578
5804
|
*/
|
|
5579
|
-
baseCcyEquivalent?:
|
|
5580
|
-
[key: string]: unknown;
|
|
5581
|
-
} | null;
|
|
5805
|
+
baseCcyEquivalent?: string | null;
|
|
5582
5806
|
};
|
|
5583
5807
|
|
|
5584
5808
|
export type CurrentPriceDto = {
|
|
@@ -5630,15 +5854,11 @@ export type HoldingPnlRowDto = {
|
|
|
5630
5854
|
/**
|
|
5631
5855
|
* Account settlement currency (ISO 4217), from cost currency
|
|
5632
5856
|
*/
|
|
5633
|
-
accountCcy?:
|
|
5634
|
-
[key: string]: unknown;
|
|
5635
|
-
} | null;
|
|
5857
|
+
accountCcy?: string | null;
|
|
5636
5858
|
/**
|
|
5637
5859
|
* Broker type derived from Platform.type
|
|
5638
5860
|
*/
|
|
5639
|
-
brokerType?:
|
|
5640
|
-
[key: string]: unknown;
|
|
5641
|
-
} | null;
|
|
5861
|
+
brokerType?: string | null;
|
|
5642
5862
|
/**
|
|
5643
5863
|
* Commodity symbol
|
|
5644
5864
|
*/
|
|
@@ -5648,9 +5868,7 @@ export type HoldingPnlRowDto = {
|
|
|
5648
5868
|
*/
|
|
5649
5869
|
chartToken: 'equity' | 'fund' | 'bond' | 'cash' | 'other';
|
|
5650
5870
|
assetClass: string;
|
|
5651
|
-
assetSubClass?:
|
|
5652
|
-
[key: string]: unknown;
|
|
5653
|
-
} | null;
|
|
5871
|
+
assetSubClass?: string | null;
|
|
5654
5872
|
/**
|
|
5655
5873
|
* Net held units (Decimal string)
|
|
5656
5874
|
*/
|
|
@@ -5674,15 +5892,11 @@ export type HoldingPnlRowDto = {
|
|
|
5674
5892
|
/**
|
|
5675
5893
|
* Unrealized P&L in base currency (Decimal string); null when any FX/price missing
|
|
5676
5894
|
*/
|
|
5677
|
-
unrealizedPnlBase?:
|
|
5678
|
-
[key: string]: unknown;
|
|
5679
|
-
} | null;
|
|
5895
|
+
unrealizedPnlBase?: string | null;
|
|
5680
5896
|
/**
|
|
5681
5897
|
* Unrealized P&L % (Decimal string)
|
|
5682
5898
|
*/
|
|
5683
|
-
unrealizedPnlPct?:
|
|
5684
|
-
[key: string]: unknown;
|
|
5685
|
-
} | null;
|
|
5899
|
+
unrealizedPnlPct?: string | null;
|
|
5686
5900
|
/**
|
|
5687
5901
|
* Historical FX rate applied to cost basis
|
|
5688
5902
|
*/
|
|
@@ -5694,9 +5908,7 @@ export type HoldingPnlRowDto = {
|
|
|
5694
5908
|
/**
|
|
5695
5909
|
* Share of invested assets % (Decimal string); only for invested chartTokens
|
|
5696
5910
|
*/
|
|
5697
|
-
pctOfInvestedAssets?:
|
|
5698
|
-
[key: string]: unknown;
|
|
5699
|
-
} | null;
|
|
5911
|
+
pctOfInvestedAssets?: string | null;
|
|
5700
5912
|
/**
|
|
5701
5913
|
* Cumulative realized P&L on sold lots (asOf-date cutoff); null when the method has no applicable sells, a sell lacks a price, or any required FX rate is missing (never-mix). When a sell spans multiple currencies (cross-currency sale), amount and currency reflect the base currency; baseCcyEquivalent is always the authoritative dual-FX figure
|
|
5702
5914
|
*/
|
|
@@ -5720,21 +5932,15 @@ export type HoldingPnlWarningDto = {
|
|
|
5720
5932
|
| 'OVERSOLD_LOTS'
|
|
5721
5933
|
| 'NO_PRICE'
|
|
5722
5934
|
| 'MIXED_COST_CURRENCY';
|
|
5723
|
-
symbol?:
|
|
5724
|
-
|
|
5725
|
-
|
|
5726
|
-
accountId?: {
|
|
5727
|
-
[key: string]: unknown;
|
|
5728
|
-
} | null;
|
|
5729
|
-
currency?: {
|
|
5730
|
-
[key: string]: unknown;
|
|
5731
|
-
} | null;
|
|
5935
|
+
symbol?: string | null;
|
|
5936
|
+
accountId?: string | null;
|
|
5937
|
+
currency?: string | null;
|
|
5732
5938
|
};
|
|
5733
5939
|
|
|
5734
5940
|
/**
|
|
5735
5941
|
* Warning type
|
|
5736
5942
|
*/
|
|
5737
|
-
export type
|
|
5943
|
+
export type type5 =
|
|
5738
5944
|
| 'MISSING_COST_FX_RATE'
|
|
5739
5945
|
| 'MISSING_MARKET_FX_RATE'
|
|
5740
5946
|
| 'MISSING_SALE_PRICE'
|
|
@@ -5773,132 +5979,205 @@ export type AnonymousLoginResponseDto = {
|
|
|
5773
5979
|
authToken: string;
|
|
5774
5980
|
};
|
|
5775
5981
|
|
|
5982
|
+
export type ParserContributionMetaDto = {
|
|
5983
|
+
/**
|
|
5984
|
+
* Institution slug (lowercase kebab-case)
|
|
5985
|
+
*/
|
|
5986
|
+
institution: string;
|
|
5987
|
+
region:
|
|
5988
|
+
| 'cn'
|
|
5989
|
+
| 'us'
|
|
5990
|
+
| 'de'
|
|
5991
|
+
| 'fr'
|
|
5992
|
+
| 'gb'
|
|
5993
|
+
| 'hk'
|
|
5994
|
+
| 'jp'
|
|
5995
|
+
| 'sg'
|
|
5996
|
+
| 'au'
|
|
5997
|
+
| 'ca'
|
|
5998
|
+
| 'other';
|
|
5999
|
+
accountType: 'checking' | 'savings' | 'credit' | 'debit' | 'investment';
|
|
6000
|
+
format: 'csv' | 'xlsx' | 'pdf' | 'ofx' | 'qif';
|
|
6001
|
+
institutionDisplayName?: string;
|
|
6002
|
+
encoding?: string;
|
|
6003
|
+
/**
|
|
6004
|
+
* CSV delimiter character: ",", ";", "\t" or "|"
|
|
6005
|
+
*/
|
|
6006
|
+
delimiter?: string;
|
|
6007
|
+
/**
|
|
6008
|
+
* Header row count; the client omits the field when it is 1
|
|
6009
|
+
*/
|
|
6010
|
+
headerRows?: number;
|
|
6011
|
+
notes?: string;
|
|
6012
|
+
};
|
|
6013
|
+
|
|
6014
|
+
export type region =
|
|
6015
|
+
| 'cn'
|
|
6016
|
+
| 'us'
|
|
6017
|
+
| 'de'
|
|
6018
|
+
| 'fr'
|
|
6019
|
+
| 'gb'
|
|
6020
|
+
| 'hk'
|
|
6021
|
+
| 'jp'
|
|
6022
|
+
| 'sg'
|
|
6023
|
+
| 'au'
|
|
6024
|
+
| 'ca'
|
|
6025
|
+
| 'other';
|
|
6026
|
+
|
|
6027
|
+
export type accountType =
|
|
6028
|
+
| 'checking'
|
|
6029
|
+
| 'savings'
|
|
6030
|
+
| 'credit'
|
|
6031
|
+
| 'debit'
|
|
6032
|
+
| 'investment';
|
|
6033
|
+
|
|
6034
|
+
export type format = 'csv' | 'xlsx' | 'pdf' | 'ofx' | 'qif';
|
|
6035
|
+
|
|
6036
|
+
export type ParserContributionSamplesDto = {
|
|
6037
|
+
/**
|
|
6038
|
+
* Client-sanitized sample rows (key = column name, value = cell)
|
|
6039
|
+
*/
|
|
6040
|
+
rows: Array<{
|
|
6041
|
+
[key: string]: unknown;
|
|
6042
|
+
}>;
|
|
6043
|
+
rawHeaders?: Array<string>;
|
|
6044
|
+
};
|
|
6045
|
+
|
|
6046
|
+
export type FieldHintDto = {
|
|
6047
|
+
columnName: string;
|
|
6048
|
+
/**
|
|
6049
|
+
* Date format, e.g. yyyy-MM-dd HH:mm
|
|
6050
|
+
*/
|
|
6051
|
+
format?: string;
|
|
6052
|
+
signConvention?: 'negative-expense' | 'positive-expense' | 'separate-columns';
|
|
6053
|
+
creditColumn?: string;
|
|
6054
|
+
debitColumn?: string;
|
|
6055
|
+
};
|
|
6056
|
+
|
|
6057
|
+
export type signConvention =
|
|
6058
|
+
| 'negative-expense'
|
|
6059
|
+
| 'positive-expense'
|
|
6060
|
+
| 'separate-columns';
|
|
6061
|
+
|
|
6062
|
+
export type ParserContributionFieldHintsDto = {
|
|
6063
|
+
date: FieldHintDto;
|
|
6064
|
+
amount: FieldHintDto;
|
|
6065
|
+
description?: FieldHintDto;
|
|
6066
|
+
balance?: FieldHintDto;
|
|
6067
|
+
payee?: FieldHintDto;
|
|
6068
|
+
reference?: FieldHintDto;
|
|
6069
|
+
category?: FieldHintDto;
|
|
6070
|
+
};
|
|
6071
|
+
|
|
6072
|
+
export type ExpectedTransactionDto = {
|
|
6073
|
+
date: string;
|
|
6074
|
+
amount: number;
|
|
6075
|
+
description: string;
|
|
6076
|
+
payee?: string;
|
|
6077
|
+
category?: string;
|
|
6078
|
+
};
|
|
6079
|
+
|
|
6080
|
+
export type ParserContributionExamplesDto = {
|
|
6081
|
+
expectedTransactions: Array<ExpectedTransactionDto>;
|
|
6082
|
+
};
|
|
6083
|
+
|
|
6084
|
+
export type ParserContributionRequestDto = {
|
|
6085
|
+
meta: ParserContributionMetaDto;
|
|
6086
|
+
samples: ParserContributionSamplesDto;
|
|
6087
|
+
fieldHints: ParserContributionFieldHintsDto;
|
|
6088
|
+
/**
|
|
6089
|
+
* Omitted entirely by the client when empty
|
|
6090
|
+
*/
|
|
6091
|
+
examples?: ParserContributionExamplesDto;
|
|
6092
|
+
};
|
|
6093
|
+
|
|
6094
|
+
export type ParserContributionRelayResponseDto = {
|
|
6095
|
+
issueUrl: string;
|
|
6096
|
+
issueNumber: number;
|
|
6097
|
+
};
|
|
6098
|
+
|
|
5776
6099
|
export type SymbolSearchResultDto = {
|
|
5777
6100
|
symbol: string;
|
|
5778
|
-
name?:
|
|
5779
|
-
|
|
5780
|
-
} | null;
|
|
5781
|
-
exchange?: {
|
|
5782
|
-
[key: string]: unknown;
|
|
5783
|
-
} | null;
|
|
6101
|
+
name?: string | null;
|
|
6102
|
+
exchange?: string | null;
|
|
5784
6103
|
/**
|
|
5785
6104
|
* OpenBB asset_type (e.g. stock, etf)
|
|
5786
6105
|
*/
|
|
5787
|
-
assetType?:
|
|
5788
|
-
[key: string]: unknown;
|
|
5789
|
-
} | null;
|
|
6106
|
+
assetType?: string | null;
|
|
5790
6107
|
/**
|
|
5791
6108
|
* IGN asset class (region.types.ts ASSET_CLASSES)
|
|
5792
6109
|
*/
|
|
5793
|
-
assetClass?:
|
|
5794
|
-
[key: string]: unknown;
|
|
5795
|
-
} | null;
|
|
6110
|
+
assetClass?: string | null;
|
|
5796
6111
|
/**
|
|
5797
6112
|
* IGN asset sub-class (region.types.ts ASSET_SUB_CLASSES)
|
|
5798
6113
|
*/
|
|
5799
|
-
assetSubClass?:
|
|
5800
|
-
[key: string]: unknown;
|
|
5801
|
-
} | null;
|
|
6114
|
+
assetSubClass?: string | null;
|
|
5802
6115
|
/**
|
|
5803
6116
|
* Trading currency (extra_data or inferred from exchange)
|
|
5804
6117
|
*/
|
|
5805
|
-
currency?:
|
|
5806
|
-
[key: string]: unknown;
|
|
5807
|
-
} | null;
|
|
6118
|
+
currency?: string | null;
|
|
5808
6119
|
};
|
|
5809
6120
|
|
|
5810
6121
|
export type SymbolQuoteDto = {
|
|
5811
6122
|
symbol?: string;
|
|
5812
|
-
name?:
|
|
5813
|
-
|
|
5814
|
-
} | null;
|
|
5815
|
-
exchange?: {
|
|
5816
|
-
[key: string]: unknown;
|
|
5817
|
-
} | null;
|
|
6123
|
+
name?: string | null;
|
|
6124
|
+
exchange?: string | null;
|
|
5818
6125
|
/**
|
|
5819
6126
|
* OpenBB asset_type
|
|
5820
6127
|
*/
|
|
5821
|
-
assetType?:
|
|
5822
|
-
[key: string]: unknown;
|
|
5823
|
-
} | null;
|
|
6128
|
+
assetType?: string | null;
|
|
5824
6129
|
/**
|
|
5825
6130
|
* IGN asset class
|
|
5826
6131
|
*/
|
|
5827
|
-
assetClass?:
|
|
5828
|
-
[key: string]: unknown;
|
|
5829
|
-
} | null;
|
|
6132
|
+
assetClass?: string | null;
|
|
5830
6133
|
/**
|
|
5831
6134
|
* IGN asset sub-class
|
|
5832
6135
|
*/
|
|
5833
|
-
assetSubClass?:
|
|
5834
|
-
[key: string]: unknown;
|
|
5835
|
-
} | null;
|
|
6136
|
+
assetSubClass?: string | null;
|
|
5836
6137
|
/**
|
|
5837
6138
|
* Trading currency (extra_data or inferred from exchange)
|
|
5838
6139
|
*/
|
|
5839
|
-
currency?:
|
|
5840
|
-
[key: string]: unknown;
|
|
5841
|
-
} | null;
|
|
6140
|
+
currency?: string | null;
|
|
5842
6141
|
/**
|
|
5843
6142
|
* Latest price (Decimal string)
|
|
5844
6143
|
*/
|
|
5845
|
-
price?:
|
|
5846
|
-
[key: string]: unknown;
|
|
5847
|
-
} | null;
|
|
6144
|
+
price?: string | null;
|
|
5848
6145
|
/**
|
|
5849
6146
|
* Date the price was observed (ISO yyyy-MM-dd)
|
|
5850
6147
|
*/
|
|
5851
|
-
priceDate?:
|
|
5852
|
-
[key: string]: unknown;
|
|
5853
|
-
} | null;
|
|
6148
|
+
priceDate?: string | null;
|
|
5854
6149
|
/**
|
|
5855
6150
|
* Change vs previous close, in percentage points (1.7 == 1.7%). openbb stores change_percent as a normalized decimal; this exposes percentage points for frontend convenience.
|
|
5856
6151
|
*/
|
|
5857
|
-
changePercent?:
|
|
5858
|
-
[key: string]: unknown;
|
|
5859
|
-
} | null;
|
|
6152
|
+
changePercent?: number | null;
|
|
5860
6153
|
/**
|
|
5861
6154
|
* Previous close (Decimal string)
|
|
5862
6155
|
*/
|
|
5863
|
-
prevClose?:
|
|
5864
|
-
[key: string]: unknown;
|
|
5865
|
-
} | null;
|
|
6156
|
+
prevClose?: string | null;
|
|
5866
6157
|
/**
|
|
5867
6158
|
* Day open (Decimal string)
|
|
5868
6159
|
*/
|
|
5869
|
-
open?:
|
|
5870
|
-
[key: string]: unknown;
|
|
5871
|
-
} | null;
|
|
6160
|
+
open?: string | null;
|
|
5872
6161
|
/**
|
|
5873
6162
|
* Day high (Decimal string)
|
|
5874
6163
|
*/
|
|
5875
|
-
high?:
|
|
5876
|
-
[key: string]: unknown;
|
|
5877
|
-
} | null;
|
|
6164
|
+
high?: string | null;
|
|
5878
6165
|
/**
|
|
5879
6166
|
* Day low (Decimal string)
|
|
5880
6167
|
*/
|
|
5881
|
-
low?:
|
|
5882
|
-
[key: string]: unknown;
|
|
5883
|
-
} | null;
|
|
6168
|
+
low?: string | null;
|
|
5884
6169
|
/**
|
|
5885
6170
|
* Day volume (Decimal string)
|
|
5886
6171
|
*/
|
|
5887
|
-
volume?:
|
|
5888
|
-
[key: string]: unknown;
|
|
5889
|
-
} | null;
|
|
6172
|
+
volume?: string | null;
|
|
5890
6173
|
/**
|
|
5891
6174
|
* 52-week high (Decimal string)
|
|
5892
6175
|
*/
|
|
5893
|
-
yearHigh?:
|
|
5894
|
-
[key: string]: unknown;
|
|
5895
|
-
} | null;
|
|
6176
|
+
yearHigh?: string | null;
|
|
5896
6177
|
/**
|
|
5897
6178
|
* 52-week low (Decimal string)
|
|
5898
6179
|
*/
|
|
5899
|
-
yearLow?:
|
|
5900
|
-
[key: string]: unknown;
|
|
5901
|
-
} | null;
|
|
6180
|
+
yearLow?: string | null;
|
|
5902
6181
|
};
|
|
5903
6182
|
|
|
5904
6183
|
export type AccountControllerCreateData = {
|
|
@@ -6258,7 +6537,7 @@ export type AccountStandardsControllerGetTemplatesData = {
|
|
|
6258
6537
|
| 'tw'
|
|
6259
6538
|
| 'us';
|
|
6260
6539
|
/**
|
|
6261
|
-
* Search term for path or
|
|
6540
|
+
* Search term for path, description, aliases, or localized display name
|
|
6262
6541
|
*/
|
|
6263
6542
|
search?: string;
|
|
6264
6543
|
/**
|
|
@@ -6388,7 +6667,7 @@ export type TransactionControllerListData = {
|
|
|
6388
6667
|
*/
|
|
6389
6668
|
accountId?: string;
|
|
6390
6669
|
/**
|
|
6391
|
-
* Filter by ADR-0075 functional category (Group segment); matches any posting to an
|
|
6670
|
+
* 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).
|
|
6392
6671
|
*/
|
|
6393
6672
|
category?: string;
|
|
6394
6673
|
/**
|
|
@@ -6399,6 +6678,10 @@ export type TransactionControllerListData = {
|
|
|
6399
6678
|
* Filter by end date (inclusive), format: YYYY-MM-DD
|
|
6400
6679
|
*/
|
|
6401
6680
|
dateTo?: string;
|
|
6681
|
+
/**
|
|
6682
|
+
* 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.
|
|
6683
|
+
*/
|
|
6684
|
+
flow?: 'income' | 'expense';
|
|
6402
6685
|
/**
|
|
6403
6686
|
* Number of items per page (1-100, default: 20)
|
|
6404
6687
|
*/
|
|
@@ -6441,9 +6724,9 @@ export type TransactionControllerListData = {
|
|
|
6441
6724
|
*/
|
|
6442
6725
|
search?: string;
|
|
6443
6726
|
/**
|
|
6444
|
-
* Filter by transaction status
|
|
6727
|
+
* 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).
|
|
6445
6728
|
*/
|
|
6446
|
-
status?: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
|
|
6729
|
+
status?: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED' | 'ALL';
|
|
6447
6730
|
};
|
|
6448
6731
|
|
|
6449
6732
|
export type TransactionControllerListResponse = TransactionListResponseDto;
|
|
@@ -7200,8 +7483,7 @@ export type PayeeProfileAdminControllerUnverifyData = {
|
|
|
7200
7483
|
id: string;
|
|
7201
7484
|
};
|
|
7202
7485
|
|
|
7203
|
-
export type PayeeProfileAdminControllerUnverifyResponse =
|
|
7204
|
-
PayeeProfileResponseDto;
|
|
7486
|
+
export type PayeeProfileAdminControllerUnverifyResponse = void;
|
|
7205
7487
|
|
|
7206
7488
|
export type CommodityControllerCreateData = {
|
|
7207
7489
|
/**
|
|
@@ -7465,7 +7747,168 @@ export type CommodityControllerBulkCreateData = {
|
|
|
7465
7747
|
| 'us';
|
|
7466
7748
|
};
|
|
7467
7749
|
|
|
7468
|
-
export type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
|
|
7750
|
+
export type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
|
|
7751
|
+
|
|
7752
|
+
export type ReportingControllerGetPortfolioTrendsData = {
|
|
7753
|
+
/**
|
|
7754
|
+
* Data granularity
|
|
7755
|
+
*/
|
|
7756
|
+
granularity?: 'day' | 'week' | 'month';
|
|
7757
|
+
/**
|
|
7758
|
+
* Time period
|
|
7759
|
+
*/
|
|
7760
|
+
period?: '1m' | '3m' | '6m' | '1y';
|
|
7761
|
+
/**
|
|
7762
|
+
* Region code for tenant context
|
|
7763
|
+
*/
|
|
7764
|
+
region:
|
|
7765
|
+
| 'ad'
|
|
7766
|
+
| 'ae'
|
|
7767
|
+
| 'af'
|
|
7768
|
+
| 'ag'
|
|
7769
|
+
| 'al'
|
|
7770
|
+
| 'am'
|
|
7771
|
+
| 'ao'
|
|
7772
|
+
| 'au'
|
|
7773
|
+
| 'br'
|
|
7774
|
+
| 'ca'
|
|
7775
|
+
| 'cn'
|
|
7776
|
+
| 'de'
|
|
7777
|
+
| 'dz'
|
|
7778
|
+
| 'es'
|
|
7779
|
+
| 'fr'
|
|
7780
|
+
| 'gb'
|
|
7781
|
+
| 'hk'
|
|
7782
|
+
| 'in'
|
|
7783
|
+
| 'it'
|
|
7784
|
+
| 'jp'
|
|
7785
|
+
| 'kr'
|
|
7786
|
+
| 'nl'
|
|
7787
|
+
| 'sg'
|
|
7788
|
+
| 'tw'
|
|
7789
|
+
| 'us';
|
|
7790
|
+
};
|
|
7791
|
+
|
|
7792
|
+
export type ReportingControllerGetPortfolioTrendsResponse =
|
|
7793
|
+
PortfolioTrendsResponseDto;
|
|
7794
|
+
|
|
7795
|
+
export type ReportingControllerGetCashFlowTrendsData = {
|
|
7796
|
+
/**
|
|
7797
|
+
* Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
7798
|
+
*/
|
|
7799
|
+
granularity?: 'day' | 'week' | 'month';
|
|
7800
|
+
/**
|
|
7801
|
+
* Time period
|
|
7802
|
+
*/
|
|
7803
|
+
period?: '1m' | '3m' | '6m' | '1y';
|
|
7804
|
+
/**
|
|
7805
|
+
* Region code for tenant context
|
|
7806
|
+
*/
|
|
7807
|
+
region:
|
|
7808
|
+
| 'ad'
|
|
7809
|
+
| 'ae'
|
|
7810
|
+
| 'af'
|
|
7811
|
+
| 'ag'
|
|
7812
|
+
| 'al'
|
|
7813
|
+
| 'am'
|
|
7814
|
+
| 'ao'
|
|
7815
|
+
| 'au'
|
|
7816
|
+
| 'br'
|
|
7817
|
+
| 'ca'
|
|
7818
|
+
| 'cn'
|
|
7819
|
+
| 'de'
|
|
7820
|
+
| 'dz'
|
|
7821
|
+
| 'es'
|
|
7822
|
+
| 'fr'
|
|
7823
|
+
| 'gb'
|
|
7824
|
+
| 'hk'
|
|
7825
|
+
| 'in'
|
|
7826
|
+
| 'it'
|
|
7827
|
+
| 'jp'
|
|
7828
|
+
| 'kr'
|
|
7829
|
+
| 'nl'
|
|
7830
|
+
| 'sg'
|
|
7831
|
+
| 'tw'
|
|
7832
|
+
| 'us';
|
|
7833
|
+
};
|
|
7834
|
+
|
|
7835
|
+
export type ReportingControllerGetCashFlowTrendsResponse =
|
|
7836
|
+
CashFlowTrendsResponseDto;
|
|
7837
|
+
|
|
7838
|
+
export type ReportingControllerGenerateSnapshotData = {
|
|
7839
|
+
/**
|
|
7840
|
+
* Region code for tenant context
|
|
7841
|
+
*/
|
|
7842
|
+
region:
|
|
7843
|
+
| 'ad'
|
|
7844
|
+
| 'ae'
|
|
7845
|
+
| 'af'
|
|
7846
|
+
| 'ag'
|
|
7847
|
+
| 'al'
|
|
7848
|
+
| 'am'
|
|
7849
|
+
| 'ao'
|
|
7850
|
+
| 'au'
|
|
7851
|
+
| 'br'
|
|
7852
|
+
| 'ca'
|
|
7853
|
+
| 'cn'
|
|
7854
|
+
| 'de'
|
|
7855
|
+
| 'dz'
|
|
7856
|
+
| 'es'
|
|
7857
|
+
| 'fr'
|
|
7858
|
+
| 'gb'
|
|
7859
|
+
| 'hk'
|
|
7860
|
+
| 'in'
|
|
7861
|
+
| 'it'
|
|
7862
|
+
| 'jp'
|
|
7863
|
+
| 'kr'
|
|
7864
|
+
| 'nl'
|
|
7865
|
+
| 'sg'
|
|
7866
|
+
| 'tw'
|
|
7867
|
+
| 'us';
|
|
7868
|
+
/**
|
|
7869
|
+
* Optional date (defaults to today)
|
|
7870
|
+
*/
|
|
7871
|
+
requestBody: GenerateSnapshotBody;
|
|
7872
|
+
};
|
|
7873
|
+
|
|
7874
|
+
export type ReportingControllerGenerateSnapshotResponse =
|
|
7875
|
+
GenerateSnapshotResponse;
|
|
7876
|
+
|
|
7877
|
+
export type ReportingControllerBackfillSnapshotsData = {
|
|
7878
|
+
/**
|
|
7879
|
+
* Region code for tenant context
|
|
7880
|
+
*/
|
|
7881
|
+
region:
|
|
7882
|
+
| 'ad'
|
|
7883
|
+
| 'ae'
|
|
7884
|
+
| 'af'
|
|
7885
|
+
| 'ag'
|
|
7886
|
+
| 'al'
|
|
7887
|
+
| 'am'
|
|
7888
|
+
| 'ao'
|
|
7889
|
+
| 'au'
|
|
7890
|
+
| 'br'
|
|
7891
|
+
| 'ca'
|
|
7892
|
+
| 'cn'
|
|
7893
|
+
| 'de'
|
|
7894
|
+
| 'dz'
|
|
7895
|
+
| 'es'
|
|
7896
|
+
| 'fr'
|
|
7897
|
+
| 'gb'
|
|
7898
|
+
| 'hk'
|
|
7899
|
+
| 'in'
|
|
7900
|
+
| 'it'
|
|
7901
|
+
| 'jp'
|
|
7902
|
+
| 'kr'
|
|
7903
|
+
| 'nl'
|
|
7904
|
+
| 'sg'
|
|
7905
|
+
| 'tw'
|
|
7906
|
+
| 'us';
|
|
7907
|
+
requestBody: BackfillSnapshotsBody;
|
|
7908
|
+
};
|
|
7909
|
+
|
|
7910
|
+
export type ReportingControllerBackfillSnapshotsResponse =
|
|
7911
|
+
BackfillSnapshotsResponse;
|
|
7469
7912
|
|
|
7470
7913
|
export type PriceControllerCreateData = {
|
|
7471
7914
|
/**
|
|
@@ -7714,6 +8157,93 @@ export type PriceControllerBulkCreateData = {
|
|
|
7714
8157
|
|
|
7715
8158
|
export type PriceControllerBulkCreateResponse = Array<PriceResponseDto>;
|
|
7716
8159
|
|
|
8160
|
+
export type UserControllerDeleteOwnUserData = {
|
|
8161
|
+
requestBody: DeleteOwnUserDto;
|
|
8162
|
+
};
|
|
8163
|
+
|
|
8164
|
+
export type UserControllerDeleteOwnUserResponse = void;
|
|
8165
|
+
|
|
8166
|
+
export type UserControllerGetUserData = {
|
|
8167
|
+
acceptLanguage: string;
|
|
8168
|
+
};
|
|
8169
|
+
|
|
8170
|
+
export type UserControllerGetUserResponse = UserResponseDto;
|
|
8171
|
+
|
|
8172
|
+
export type UserControllerSignupUserData = {
|
|
8173
|
+
requestBody: SignupDto;
|
|
8174
|
+
};
|
|
8175
|
+
|
|
8176
|
+
export type UserControllerSignupUserResponse = SignupResponseDto;
|
|
8177
|
+
|
|
8178
|
+
export type UserControllerDeleteUserData = {
|
|
8179
|
+
/**
|
|
8180
|
+
* User ID to delete
|
|
8181
|
+
*/
|
|
8182
|
+
id: string;
|
|
8183
|
+
};
|
|
8184
|
+
|
|
8185
|
+
export type UserControllerDeleteUserResponse = void;
|
|
8186
|
+
|
|
8187
|
+
export type UserControllerGetUserInfoData = {
|
|
8188
|
+
/**
|
|
8189
|
+
* User ID
|
|
8190
|
+
*/
|
|
8191
|
+
id: string;
|
|
8192
|
+
};
|
|
8193
|
+
|
|
8194
|
+
export type UserControllerGetUserInfoResponse = unknown;
|
|
8195
|
+
|
|
8196
|
+
export type UserControllerUpdateUserSettingData = {
|
|
8197
|
+
requestBody: UpdateUserSettingDto;
|
|
8198
|
+
};
|
|
8199
|
+
|
|
8200
|
+
export type UserControllerUpdateUserSettingResponse = unknown;
|
|
8201
|
+
|
|
8202
|
+
export type UserControllerGetAllUserSettingsByPageData = {
|
|
8203
|
+
/**
|
|
8204
|
+
* Page number
|
|
8205
|
+
*/
|
|
8206
|
+
pageNo: number;
|
|
8207
|
+
/**
|
|
8208
|
+
* Page size
|
|
8209
|
+
*/
|
|
8210
|
+
pageSize: number;
|
|
8211
|
+
};
|
|
8212
|
+
|
|
8213
|
+
export type UserControllerGetAllUserSettingsByPageResponse = unknown;
|
|
8214
|
+
|
|
8215
|
+
export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
|
|
8216
|
+
|
|
8217
|
+
export type PropertyControllerGetAllResponse = unknown;
|
|
8218
|
+
|
|
8219
|
+
export type PropertyControllerGetByKeyData = {
|
|
8220
|
+
/**
|
|
8221
|
+
* Property key
|
|
8222
|
+
*/
|
|
8223
|
+
key: string;
|
|
8224
|
+
};
|
|
8225
|
+
|
|
8226
|
+
export type PropertyControllerGetByKeyResponse = unknown;
|
|
8227
|
+
|
|
8228
|
+
export type PropertyControllerUpdateData = {
|
|
8229
|
+
/**
|
|
8230
|
+
* Property key
|
|
8231
|
+
*/
|
|
8232
|
+
key: string;
|
|
8233
|
+
requestBody: UpdatePropertyDto;
|
|
8234
|
+
};
|
|
8235
|
+
|
|
8236
|
+
export type PropertyControllerUpdateResponse = unknown;
|
|
8237
|
+
|
|
8238
|
+
export type PropertyControllerDeleteData = {
|
|
8239
|
+
/**
|
|
8240
|
+
* Property key
|
|
8241
|
+
*/
|
|
8242
|
+
key: string;
|
|
8243
|
+
};
|
|
8244
|
+
|
|
8245
|
+
export type PropertyControllerDeleteResponse = void;
|
|
8246
|
+
|
|
7717
8247
|
export type RecurringRuleControllerCreateData = {
|
|
7718
8248
|
/**
|
|
7719
8249
|
* Region code for tenant context
|
|
@@ -8190,8 +8720,7 @@ export type ExpectedTransactionControllerUndoSkipData = {
|
|
|
8190
8720
|
| 'us';
|
|
8191
8721
|
};
|
|
8192
8722
|
|
|
8193
|
-
export type ExpectedTransactionControllerUndoSkipResponse =
|
|
8194
|
-
ExpectedTransactionResponseDto;
|
|
8723
|
+
export type ExpectedTransactionControllerUndoSkipResponse = void;
|
|
8195
8724
|
|
|
8196
8725
|
export type ExpectedTransactionControllerConfirmMatchData = {
|
|
8197
8726
|
/**
|
|
@@ -8268,7 +8797,7 @@ export type ExpectedTransactionControllerUnmatchData = {
|
|
|
8268
8797
|
| 'us';
|
|
8269
8798
|
};
|
|
8270
8799
|
|
|
8271
|
-
export type ExpectedTransactionControllerUnmatchResponse =
|
|
8800
|
+
export type ExpectedTransactionControllerUnmatchResponse = void;
|
|
8272
8801
|
|
|
8273
8802
|
export type ExpectedTransactionControllerEnterNowData = {
|
|
8274
8803
|
/**
|
|
@@ -8307,172 +8836,13 @@ export type ExpectedTransactionControllerEnterNowData = {
|
|
|
8307
8836
|
requestBody: EnterNowDto;
|
|
8308
8837
|
};
|
|
8309
8838
|
|
|
8310
|
-
export type ExpectedTransactionControllerEnterNowResponse = unknown;
|
|
8311
|
-
|
|
8312
|
-
export type ForecastControllerGetForecastData = {
|
|
8313
|
-
/**
|
|
8314
|
-
* Number of months to forecast (1-12, default 3)
|
|
8315
|
-
*/
|
|
8316
|
-
months?: number;
|
|
8317
|
-
/**
|
|
8318
|
-
* Region code for tenant context
|
|
8319
|
-
*/
|
|
8320
|
-
region:
|
|
8321
|
-
| 'ad'
|
|
8322
|
-
| 'ae'
|
|
8323
|
-
| 'af'
|
|
8324
|
-
| 'ag'
|
|
8325
|
-
| 'al'
|
|
8326
|
-
| 'am'
|
|
8327
|
-
| 'ao'
|
|
8328
|
-
| 'au'
|
|
8329
|
-
| 'br'
|
|
8330
|
-
| 'ca'
|
|
8331
|
-
| 'cn'
|
|
8332
|
-
| 'de'
|
|
8333
|
-
| 'dz'
|
|
8334
|
-
| 'es'
|
|
8335
|
-
| 'fr'
|
|
8336
|
-
| 'gb'
|
|
8337
|
-
| 'hk'
|
|
8338
|
-
| 'in'
|
|
8339
|
-
| 'it'
|
|
8340
|
-
| 'jp'
|
|
8341
|
-
| 'kr'
|
|
8342
|
-
| 'nl'
|
|
8343
|
-
| 'sg'
|
|
8344
|
-
| 'tw'
|
|
8345
|
-
| 'us';
|
|
8346
|
-
};
|
|
8347
|
-
|
|
8348
|
-
export type ForecastControllerGetForecastResponse = ForecastResponseDto;
|
|
8349
|
-
|
|
8350
|
-
export type ReportingControllerGetPortfolioTrendsData = {
|
|
8351
|
-
/**
|
|
8352
|
-
* Data granularity
|
|
8353
|
-
*/
|
|
8354
|
-
granularity?: 'day' | 'week' | 'month';
|
|
8355
|
-
/**
|
|
8356
|
-
* Time period
|
|
8357
|
-
*/
|
|
8358
|
-
period?: '1m' | '3m' | '6m' | '1y';
|
|
8359
|
-
/**
|
|
8360
|
-
* Region code for tenant context
|
|
8361
|
-
*/
|
|
8362
|
-
region:
|
|
8363
|
-
| 'ad'
|
|
8364
|
-
| 'ae'
|
|
8365
|
-
| 'af'
|
|
8366
|
-
| 'ag'
|
|
8367
|
-
| 'al'
|
|
8368
|
-
| 'am'
|
|
8369
|
-
| 'ao'
|
|
8370
|
-
| 'au'
|
|
8371
|
-
| 'br'
|
|
8372
|
-
| 'ca'
|
|
8373
|
-
| 'cn'
|
|
8374
|
-
| 'de'
|
|
8375
|
-
| 'dz'
|
|
8376
|
-
| 'es'
|
|
8377
|
-
| 'fr'
|
|
8378
|
-
| 'gb'
|
|
8379
|
-
| 'hk'
|
|
8380
|
-
| 'in'
|
|
8381
|
-
| 'it'
|
|
8382
|
-
| 'jp'
|
|
8383
|
-
| 'kr'
|
|
8384
|
-
| 'nl'
|
|
8385
|
-
| 'sg'
|
|
8386
|
-
| 'tw'
|
|
8387
|
-
| 'us';
|
|
8388
|
-
};
|
|
8389
|
-
|
|
8390
|
-
export type ReportingControllerGetPortfolioTrendsResponse =
|
|
8391
|
-
PortfolioTrendsResponseDto;
|
|
8392
|
-
|
|
8393
|
-
export type ReportingControllerGetCashFlowTrendsData = {
|
|
8394
|
-
/**
|
|
8395
|
-
* Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
8396
|
-
*/
|
|
8397
|
-
granularity?: 'day' | 'week' | 'month';
|
|
8398
|
-
/**
|
|
8399
|
-
* Time period
|
|
8400
|
-
*/
|
|
8401
|
-
period?: '1m' | '3m' | '6m' | '1y';
|
|
8402
|
-
/**
|
|
8403
|
-
* Region code for tenant context
|
|
8404
|
-
*/
|
|
8405
|
-
region:
|
|
8406
|
-
| 'ad'
|
|
8407
|
-
| 'ae'
|
|
8408
|
-
| 'af'
|
|
8409
|
-
| 'ag'
|
|
8410
|
-
| 'al'
|
|
8411
|
-
| 'am'
|
|
8412
|
-
| 'ao'
|
|
8413
|
-
| 'au'
|
|
8414
|
-
| 'br'
|
|
8415
|
-
| 'ca'
|
|
8416
|
-
| 'cn'
|
|
8417
|
-
| 'de'
|
|
8418
|
-
| 'dz'
|
|
8419
|
-
| 'es'
|
|
8420
|
-
| 'fr'
|
|
8421
|
-
| 'gb'
|
|
8422
|
-
| 'hk'
|
|
8423
|
-
| 'in'
|
|
8424
|
-
| 'it'
|
|
8425
|
-
| 'jp'
|
|
8426
|
-
| 'kr'
|
|
8427
|
-
| 'nl'
|
|
8428
|
-
| 'sg'
|
|
8429
|
-
| 'tw'
|
|
8430
|
-
| 'us';
|
|
8431
|
-
};
|
|
8432
|
-
|
|
8433
|
-
export type ReportingControllerGetCashFlowTrendsResponse =
|
|
8434
|
-
CashFlowTrendsResponseDto;
|
|
8435
|
-
|
|
8436
|
-
export type ReportingControllerGenerateSnapshotData = {
|
|
8437
|
-
/**
|
|
8438
|
-
* Region code for tenant context
|
|
8439
|
-
*/
|
|
8440
|
-
region:
|
|
8441
|
-
| 'ad'
|
|
8442
|
-
| 'ae'
|
|
8443
|
-
| 'af'
|
|
8444
|
-
| 'ag'
|
|
8445
|
-
| 'al'
|
|
8446
|
-
| 'am'
|
|
8447
|
-
| 'ao'
|
|
8448
|
-
| 'au'
|
|
8449
|
-
| 'br'
|
|
8450
|
-
| 'ca'
|
|
8451
|
-
| 'cn'
|
|
8452
|
-
| 'de'
|
|
8453
|
-
| 'dz'
|
|
8454
|
-
| 'es'
|
|
8455
|
-
| 'fr'
|
|
8456
|
-
| 'gb'
|
|
8457
|
-
| 'hk'
|
|
8458
|
-
| 'in'
|
|
8459
|
-
| 'it'
|
|
8460
|
-
| 'jp'
|
|
8461
|
-
| 'kr'
|
|
8462
|
-
| 'nl'
|
|
8463
|
-
| 'sg'
|
|
8464
|
-
| 'tw'
|
|
8465
|
-
| 'us';
|
|
8466
|
-
/**
|
|
8467
|
-
* Optional date (defaults to today)
|
|
8468
|
-
*/
|
|
8469
|
-
requestBody: GenerateSnapshotBody;
|
|
8470
|
-
};
|
|
8471
|
-
|
|
8472
|
-
export type ReportingControllerGenerateSnapshotResponse =
|
|
8473
|
-
GenerateSnapshotResponse;
|
|
8474
|
-
|
|
8475
|
-
export type ReportingControllerBackfillSnapshotsData = {
|
|
8839
|
+
export type ExpectedTransactionControllerEnterNowResponse = unknown;
|
|
8840
|
+
|
|
8841
|
+
export type ForecastControllerGetForecastData = {
|
|
8842
|
+
/**
|
|
8843
|
+
* Number of months to forecast (1-12, default 3)
|
|
8844
|
+
*/
|
|
8845
|
+
months?: number;
|
|
8476
8846
|
/**
|
|
8477
8847
|
* Region code for tenant context
|
|
8478
8848
|
*/
|
|
@@ -8502,98 +8872,9 @@ export type ReportingControllerBackfillSnapshotsData = {
|
|
|
8502
8872
|
| 'sg'
|
|
8503
8873
|
| 'tw'
|
|
8504
8874
|
| 'us';
|
|
8505
|
-
requestBody: BackfillSnapshotsBody;
|
|
8506
|
-
};
|
|
8507
|
-
|
|
8508
|
-
export type ReportingControllerBackfillSnapshotsResponse =
|
|
8509
|
-
BackfillSnapshotsResponse;
|
|
8510
|
-
|
|
8511
|
-
export type UserControllerDeleteOwnUserData = {
|
|
8512
|
-
requestBody: DeleteOwnUserDto;
|
|
8513
|
-
};
|
|
8514
|
-
|
|
8515
|
-
export type UserControllerDeleteOwnUserResponse = void;
|
|
8516
|
-
|
|
8517
|
-
export type UserControllerGetUserData = {
|
|
8518
|
-
acceptLanguage: string;
|
|
8519
|
-
};
|
|
8520
|
-
|
|
8521
|
-
export type UserControllerGetUserResponse = UserResponseDto;
|
|
8522
|
-
|
|
8523
|
-
export type UserControllerSignupUserData = {
|
|
8524
|
-
requestBody: SignupDto;
|
|
8525
|
-
};
|
|
8526
|
-
|
|
8527
|
-
export type UserControllerSignupUserResponse = SignupResponseDto;
|
|
8528
|
-
|
|
8529
|
-
export type UserControllerDeleteUserData = {
|
|
8530
|
-
/**
|
|
8531
|
-
* User ID to delete
|
|
8532
|
-
*/
|
|
8533
|
-
id: string;
|
|
8534
|
-
};
|
|
8535
|
-
|
|
8536
|
-
export type UserControllerDeleteUserResponse = void;
|
|
8537
|
-
|
|
8538
|
-
export type UserControllerGetUserInfoData = {
|
|
8539
|
-
/**
|
|
8540
|
-
* User ID
|
|
8541
|
-
*/
|
|
8542
|
-
id: string;
|
|
8543
|
-
};
|
|
8544
|
-
|
|
8545
|
-
export type UserControllerGetUserInfoResponse = unknown;
|
|
8546
|
-
|
|
8547
|
-
export type UserControllerUpdateUserSettingData = {
|
|
8548
|
-
requestBody: UpdateUserSettingDto;
|
|
8549
|
-
};
|
|
8550
|
-
|
|
8551
|
-
export type UserControllerUpdateUserSettingResponse = unknown;
|
|
8552
|
-
|
|
8553
|
-
export type UserControllerGetAllUserSettingsByPageData = {
|
|
8554
|
-
/**
|
|
8555
|
-
* Page number
|
|
8556
|
-
*/
|
|
8557
|
-
pageNo: number;
|
|
8558
|
-
/**
|
|
8559
|
-
* Page size
|
|
8560
|
-
*/
|
|
8561
|
-
pageSize: number;
|
|
8562
|
-
};
|
|
8563
|
-
|
|
8564
|
-
export type UserControllerGetAllUserSettingsByPageResponse = unknown;
|
|
8565
|
-
|
|
8566
|
-
export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
|
|
8567
|
-
|
|
8568
|
-
export type PropertyControllerGetAllResponse = unknown;
|
|
8569
|
-
|
|
8570
|
-
export type PropertyControllerGetByKeyData = {
|
|
8571
|
-
/**
|
|
8572
|
-
* Property key
|
|
8573
|
-
*/
|
|
8574
|
-
key: string;
|
|
8575
|
-
};
|
|
8576
|
-
|
|
8577
|
-
export type PropertyControllerGetByKeyResponse = unknown;
|
|
8578
|
-
|
|
8579
|
-
export type PropertyControllerUpdateData = {
|
|
8580
|
-
/**
|
|
8581
|
-
* Property key
|
|
8582
|
-
*/
|
|
8583
|
-
key: string;
|
|
8584
|
-
requestBody: UpdatePropertyDto;
|
|
8585
|
-
};
|
|
8586
|
-
|
|
8587
|
-
export type PropertyControllerUpdateResponse = unknown;
|
|
8588
|
-
|
|
8589
|
-
export type PropertyControllerDeleteData = {
|
|
8590
|
-
/**
|
|
8591
|
-
* Property key
|
|
8592
|
-
*/
|
|
8593
|
-
key: string;
|
|
8594
8875
|
};
|
|
8595
8876
|
|
|
8596
|
-
export type
|
|
8877
|
+
export type ForecastControllerGetForecastResponse = ForecastResponseDto;
|
|
8597
8878
|
|
|
8598
8879
|
export type TransactionRuleControllerCreateData = {
|
|
8599
8880
|
/**
|
|
@@ -9467,7 +9748,7 @@ export type ReconciliationControllerHistoryData = {
|
|
|
9467
9748
|
export type ReconciliationControllerHistoryResponse =
|
|
9468
9749
|
Array<ReconciliationRecordDto>;
|
|
9469
9750
|
|
|
9470
|
-
export type ExportControllerExportBeancountResponse =
|
|
9751
|
+
export type ExportControllerExportBeancountResponse = Blob | File;
|
|
9471
9752
|
|
|
9472
9753
|
export type FileImportControllerImportFileData = {
|
|
9473
9754
|
/**
|
|
@@ -10225,6 +10506,24 @@ export type PlatformControllerMatchPlatformsData = {
|
|
|
10225
10506
|
|
|
10226
10507
|
export type PlatformControllerMatchPlatformsResponse = PlatformMatchResponseDto;
|
|
10227
10508
|
|
|
10509
|
+
export type PlatformControllerGetPlatformStandardsData = {
|
|
10510
|
+
/**
|
|
10511
|
+
* Platform ID (from a match result)
|
|
10512
|
+
*/
|
|
10513
|
+
id: string;
|
|
10514
|
+
/**
|
|
10515
|
+
* 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.
|
|
10516
|
+
*/
|
|
10517
|
+
region?: string;
|
|
10518
|
+
/**
|
|
10519
|
+
* Filter templates by account type (path first segment)
|
|
10520
|
+
*/
|
|
10521
|
+
type?: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
|
|
10522
|
+
};
|
|
10523
|
+
|
|
10524
|
+
export type PlatformControllerGetPlatformStandardsResponse =
|
|
10525
|
+
PlatformStandardsResponseDto;
|
|
10526
|
+
|
|
10228
10527
|
export type PlatformControllerUpdateData = {
|
|
10229
10528
|
/**
|
|
10230
10529
|
* Platform ID
|
|
@@ -10474,6 +10773,42 @@ export type AuthControllerAccessTokenLoginData = {
|
|
|
10474
10773
|
|
|
10475
10774
|
export type AuthControllerAccessTokenLoginResponse = AnonymousLoginResponseDto;
|
|
10476
10775
|
|
|
10776
|
+
export type ParserContributionControllerCreateData = {
|
|
10777
|
+
/**
|
|
10778
|
+
* Region code for tenant context (routing only; the institution region rides in the payload meta)
|
|
10779
|
+
*/
|
|
10780
|
+
region:
|
|
10781
|
+
| 'ad'
|
|
10782
|
+
| 'ae'
|
|
10783
|
+
| 'af'
|
|
10784
|
+
| 'ag'
|
|
10785
|
+
| 'al'
|
|
10786
|
+
| 'am'
|
|
10787
|
+
| 'ao'
|
|
10788
|
+
| 'au'
|
|
10789
|
+
| 'br'
|
|
10790
|
+
| 'ca'
|
|
10791
|
+
| 'cn'
|
|
10792
|
+
| 'de'
|
|
10793
|
+
| 'dz'
|
|
10794
|
+
| 'es'
|
|
10795
|
+
| 'fr'
|
|
10796
|
+
| 'gb'
|
|
10797
|
+
| 'hk'
|
|
10798
|
+
| 'in'
|
|
10799
|
+
| 'it'
|
|
10800
|
+
| 'jp'
|
|
10801
|
+
| 'kr'
|
|
10802
|
+
| 'nl'
|
|
10803
|
+
| 'sg'
|
|
10804
|
+
| 'tw'
|
|
10805
|
+
| 'us';
|
|
10806
|
+
requestBody: ParserContributionRequestDto;
|
|
10807
|
+
};
|
|
10808
|
+
|
|
10809
|
+
export type ParserContributionControllerCreateResponse =
|
|
10810
|
+
ParserContributionRelayResponseDto;
|
|
10811
|
+
|
|
10477
10812
|
export type CacheControllerFlushCacheResponse = unknown;
|
|
10478
10813
|
|
|
10479
10814
|
export type ExchangeRateControllerGetExchangeRateData = {
|
|
@@ -11167,7 +11502,7 @@ export type $OpenApiTs = {
|
|
|
11167
11502
|
/**
|
|
11168
11503
|
* Payee profile unverified successfully
|
|
11169
11504
|
*/
|
|
11170
|
-
|
|
11505
|
+
204: void;
|
|
11171
11506
|
/**
|
|
11172
11507
|
* Admin access required
|
|
11173
11508
|
*/
|
|
@@ -11274,598 +11609,598 @@ export type $OpenApiTs = {
|
|
|
11274
11609
|
};
|
|
11275
11610
|
};
|
|
11276
11611
|
};
|
|
11277
|
-
'/api/v1/{region}/
|
|
11278
|
-
|
|
11279
|
-
req:
|
|
11612
|
+
'/api/v1/{region}/reporting/portfolio/trends': {
|
|
11613
|
+
get: {
|
|
11614
|
+
req: ReportingControllerGetPortfolioTrendsData;
|
|
11280
11615
|
res: {
|
|
11281
11616
|
/**
|
|
11282
|
-
*
|
|
11283
|
-
*/
|
|
11284
|
-
201: PriceResponseDto;
|
|
11285
|
-
/**
|
|
11286
|
-
* Currency or quoteCurrency commodity not found
|
|
11287
|
-
*/
|
|
11288
|
-
404: unknown;
|
|
11289
|
-
/**
|
|
11290
|
-
* Price already exists for this currency pair and date
|
|
11617
|
+
* Trends retrieved successfully
|
|
11291
11618
|
*/
|
|
11292
|
-
|
|
11293
|
-
};
|
|
11294
|
-
};
|
|
11295
|
-
get: {
|
|
11296
|
-
req: PriceControllerFindAllData;
|
|
11297
|
-
res: {
|
|
11619
|
+
200: PortfolioTrendsResponseDto;
|
|
11298
11620
|
/**
|
|
11299
|
-
*
|
|
11621
|
+
* User not authenticated
|
|
11300
11622
|
*/
|
|
11301
|
-
|
|
11623
|
+
401: unknown;
|
|
11302
11624
|
};
|
|
11303
11625
|
};
|
|
11304
11626
|
};
|
|
11305
|
-
'/api/v1/{region}/
|
|
11627
|
+
'/api/v1/{region}/reporting/cash-flow/trends': {
|
|
11306
11628
|
get: {
|
|
11307
|
-
req:
|
|
11308
|
-
res: {
|
|
11309
|
-
/**
|
|
11310
|
-
* Price retrieved successfully
|
|
11311
|
-
*/
|
|
11312
|
-
200: PriceResponseDto;
|
|
11313
|
-
/**
|
|
11314
|
-
* Price not found
|
|
11315
|
-
*/
|
|
11316
|
-
404: unknown;
|
|
11317
|
-
};
|
|
11318
|
-
};
|
|
11319
|
-
put: {
|
|
11320
|
-
req: PriceControllerUpdateData;
|
|
11629
|
+
req: ReportingControllerGetCashFlowTrendsData;
|
|
11321
11630
|
res: {
|
|
11322
11631
|
/**
|
|
11323
|
-
*
|
|
11324
|
-
*/
|
|
11325
|
-
200: PriceResponseDto;
|
|
11326
|
-
/**
|
|
11327
|
-
* Price not found
|
|
11632
|
+
* Cash-flow trends retrieved successfully
|
|
11328
11633
|
*/
|
|
11329
|
-
|
|
11634
|
+
200: CashFlowTrendsResponseDto;
|
|
11330
11635
|
/**
|
|
11331
|
-
*
|
|
11636
|
+
* User not authenticated
|
|
11332
11637
|
*/
|
|
11333
|
-
|
|
11638
|
+
401: unknown;
|
|
11334
11639
|
};
|
|
11335
11640
|
};
|
|
11336
|
-
|
|
11337
|
-
|
|
11641
|
+
};
|
|
11642
|
+
'/api/v1/{region}/reporting/snapshots/generate': {
|
|
11643
|
+
post: {
|
|
11644
|
+
req: ReportingControllerGenerateSnapshotData;
|
|
11338
11645
|
res: {
|
|
11339
11646
|
/**
|
|
11340
|
-
*
|
|
11647
|
+
* Snapshot generated successfully
|
|
11341
11648
|
*/
|
|
11342
|
-
|
|
11649
|
+
200: GenerateSnapshotResponse;
|
|
11343
11650
|
/**
|
|
11344
|
-
*
|
|
11651
|
+
* Invalid date format
|
|
11345
11652
|
*/
|
|
11346
|
-
|
|
11347
|
-
};
|
|
11348
|
-
};
|
|
11349
|
-
};
|
|
11350
|
-
'/api/v1/{region}/bean/prices/bulk': {
|
|
11351
|
-
post: {
|
|
11352
|
-
req: PriceControllerBulkCreateData;
|
|
11353
|
-
res: {
|
|
11653
|
+
400: unknown;
|
|
11354
11654
|
/**
|
|
11355
|
-
*
|
|
11655
|
+
* User not authenticated
|
|
11356
11656
|
*/
|
|
11357
|
-
|
|
11657
|
+
401: unknown;
|
|
11358
11658
|
};
|
|
11359
11659
|
};
|
|
11360
11660
|
};
|
|
11361
|
-
'/api/v1/{region}/
|
|
11661
|
+
'/api/v1/{region}/reporting/snapshots/backfill': {
|
|
11362
11662
|
post: {
|
|
11363
|
-
req:
|
|
11663
|
+
req: ReportingControllerBackfillSnapshotsData;
|
|
11364
11664
|
res: {
|
|
11365
11665
|
/**
|
|
11366
|
-
*
|
|
11666
|
+
* Backfill completed successfully
|
|
11367
11667
|
*/
|
|
11368
|
-
|
|
11668
|
+
200: BackfillSnapshotsResponse;
|
|
11369
11669
|
/**
|
|
11370
|
-
* Invalid
|
|
11670
|
+
* Invalid date format or range
|
|
11371
11671
|
*/
|
|
11372
11672
|
400: unknown;
|
|
11373
11673
|
/**
|
|
11374
|
-
*
|
|
11674
|
+
* User not authenticated
|
|
11375
11675
|
*/
|
|
11376
|
-
|
|
11377
|
-
};
|
|
11378
|
-
};
|
|
11379
|
-
get: {
|
|
11380
|
-
req: RecurringRuleControllerFindAllData;
|
|
11381
|
-
res: {
|
|
11676
|
+
401: unknown;
|
|
11382
11677
|
/**
|
|
11383
|
-
*
|
|
11678
|
+
* Backfill already in progress for this user
|
|
11384
11679
|
*/
|
|
11385
|
-
|
|
11680
|
+
409: unknown;
|
|
11386
11681
|
};
|
|
11387
11682
|
};
|
|
11388
11683
|
};
|
|
11389
|
-
'/api/v1/{region}/bean/
|
|
11684
|
+
'/api/v1/{region}/bean/prices': {
|
|
11390
11685
|
post: {
|
|
11391
|
-
req:
|
|
11686
|
+
req: PriceControllerCreateData;
|
|
11392
11687
|
res: {
|
|
11393
11688
|
/**
|
|
11394
|
-
*
|
|
11689
|
+
* Price created successfully
|
|
11690
|
+
*/
|
|
11691
|
+
201: PriceResponseDto;
|
|
11692
|
+
/**
|
|
11693
|
+
* Currency or quoteCurrency commodity not found
|
|
11395
11694
|
*/
|
|
11396
|
-
|
|
11695
|
+
404: unknown;
|
|
11397
11696
|
/**
|
|
11398
|
-
*
|
|
11697
|
+
* Price already exists for this currency pair and date
|
|
11399
11698
|
*/
|
|
11400
|
-
|
|
11699
|
+
409: unknown;
|
|
11700
|
+
};
|
|
11701
|
+
};
|
|
11702
|
+
get: {
|
|
11703
|
+
req: PriceControllerFindAllData;
|
|
11704
|
+
res: {
|
|
11401
11705
|
/**
|
|
11402
|
-
*
|
|
11706
|
+
* Prices retrieved successfully
|
|
11403
11707
|
*/
|
|
11404
|
-
|
|
11708
|
+
200: PriceListResponseDto;
|
|
11405
11709
|
};
|
|
11406
11710
|
};
|
|
11407
11711
|
};
|
|
11408
|
-
'/api/v1/{region}/bean/
|
|
11712
|
+
'/api/v1/{region}/bean/prices/{id}': {
|
|
11409
11713
|
get: {
|
|
11410
|
-
req:
|
|
11714
|
+
req: PriceControllerFindOneData;
|
|
11411
11715
|
res: {
|
|
11412
11716
|
/**
|
|
11413
|
-
*
|
|
11717
|
+
* Price retrieved successfully
|
|
11414
11718
|
*/
|
|
11415
|
-
200:
|
|
11719
|
+
200: PriceResponseDto;
|
|
11416
11720
|
/**
|
|
11417
|
-
*
|
|
11721
|
+
* Price not found
|
|
11418
11722
|
*/
|
|
11419
11723
|
404: unknown;
|
|
11420
11724
|
};
|
|
11421
11725
|
};
|
|
11422
|
-
|
|
11423
|
-
req:
|
|
11726
|
+
put: {
|
|
11727
|
+
req: PriceControllerUpdateData;
|
|
11424
11728
|
res: {
|
|
11425
11729
|
/**
|
|
11426
|
-
*
|
|
11730
|
+
* Price updated successfully
|
|
11427
11731
|
*/
|
|
11428
|
-
200:
|
|
11732
|
+
200: PriceResponseDto;
|
|
11429
11733
|
/**
|
|
11430
|
-
*
|
|
11734
|
+
* Price not found
|
|
11431
11735
|
*/
|
|
11432
|
-
|
|
11736
|
+
404: unknown;
|
|
11433
11737
|
/**
|
|
11434
|
-
*
|
|
11738
|
+
* Updated price conflicts with existing price
|
|
11435
11739
|
*/
|
|
11436
|
-
|
|
11740
|
+
409: unknown;
|
|
11437
11741
|
};
|
|
11438
11742
|
};
|
|
11439
11743
|
delete: {
|
|
11440
|
-
req:
|
|
11744
|
+
req: PriceControllerDeleteData;
|
|
11441
11745
|
res: {
|
|
11442
11746
|
/**
|
|
11443
|
-
*
|
|
11747
|
+
* Price deleted successfully
|
|
11444
11748
|
*/
|
|
11445
11749
|
204: void;
|
|
11446
11750
|
/**
|
|
11447
|
-
*
|
|
11751
|
+
* Price not found
|
|
11448
11752
|
*/
|
|
11449
11753
|
404: unknown;
|
|
11450
11754
|
};
|
|
11451
11755
|
};
|
|
11452
11756
|
};
|
|
11453
|
-
'/api/v1/{region}/bean/
|
|
11454
|
-
|
|
11455
|
-
req:
|
|
11757
|
+
'/api/v1/{region}/bean/prices/bulk': {
|
|
11758
|
+
post: {
|
|
11759
|
+
req: PriceControllerBulkCreateData;
|
|
11456
11760
|
res: {
|
|
11457
11761
|
/**
|
|
11458
|
-
*
|
|
11459
|
-
*/
|
|
11460
|
-
200: RecurringRuleWithStatsResponseDto;
|
|
11461
|
-
/**
|
|
11462
|
-
* Rule not found
|
|
11762
|
+
* Prices created successfully
|
|
11463
11763
|
*/
|
|
11464
|
-
|
|
11764
|
+
201: Array<PriceResponseDto>;
|
|
11465
11765
|
};
|
|
11466
11766
|
};
|
|
11467
11767
|
};
|
|
11468
|
-
'/api/v1/
|
|
11469
|
-
|
|
11470
|
-
req:
|
|
11768
|
+
'/api/v1/users': {
|
|
11769
|
+
delete: {
|
|
11770
|
+
req: UserControllerDeleteOwnUserData;
|
|
11471
11771
|
res: {
|
|
11472
11772
|
/**
|
|
11473
|
-
*
|
|
11773
|
+
* User deleted successfully
|
|
11474
11774
|
*/
|
|
11475
|
-
|
|
11476
|
-
};
|
|
11477
|
-
};
|
|
11478
|
-
};
|
|
11479
|
-
'/api/v1/{region}/bean/expected-transactions/overdue': {
|
|
11480
|
-
get: {
|
|
11481
|
-
req: ExpectedTransactionControllerFindOverdueData;
|
|
11482
|
-
res: {
|
|
11775
|
+
204: void;
|
|
11483
11776
|
/**
|
|
11484
|
-
*
|
|
11777
|
+
* Invalid access token
|
|
11485
11778
|
*/
|
|
11486
|
-
|
|
11779
|
+
403: unknown;
|
|
11487
11780
|
};
|
|
11488
11781
|
};
|
|
11489
|
-
};
|
|
11490
|
-
'/api/v1/{region}/bean/expected-transactions/{id}': {
|
|
11491
11782
|
get: {
|
|
11492
|
-
req:
|
|
11783
|
+
req: UserControllerGetUserData;
|
|
11493
11784
|
res: {
|
|
11494
11785
|
/**
|
|
11495
|
-
*
|
|
11496
|
-
*/
|
|
11497
|
-
200: ExpectedTransactionResponseDto;
|
|
11498
|
-
/**
|
|
11499
|
-
* Expected transaction not found
|
|
11786
|
+
* User retrieved successfully
|
|
11500
11787
|
*/
|
|
11501
|
-
|
|
11788
|
+
200: UserResponseDto;
|
|
11502
11789
|
};
|
|
11503
11790
|
};
|
|
11504
|
-
};
|
|
11505
|
-
'/api/v1/{region}/bean/expected-transactions/{id}/skip': {
|
|
11506
11791
|
post: {
|
|
11507
|
-
req:
|
|
11792
|
+
req: UserControllerSignupUserData;
|
|
11508
11793
|
res: {
|
|
11509
11794
|
/**
|
|
11510
|
-
*
|
|
11795
|
+
* User created successfully
|
|
11511
11796
|
*/
|
|
11512
|
-
|
|
11797
|
+
201: SignupResponseDto;
|
|
11513
11798
|
/**
|
|
11514
|
-
*
|
|
11799
|
+
* Invalid Turnstile token (when Turnstile is enabled)
|
|
11515
11800
|
*/
|
|
11516
11801
|
400: unknown;
|
|
11517
11802
|
/**
|
|
11518
|
-
*
|
|
11803
|
+
* User signup is disabled
|
|
11519
11804
|
*/
|
|
11520
|
-
|
|
11805
|
+
403: unknown;
|
|
11521
11806
|
};
|
|
11522
11807
|
};
|
|
11808
|
+
};
|
|
11809
|
+
'/api/v1/users/{id}': {
|
|
11523
11810
|
delete: {
|
|
11524
|
-
req:
|
|
11811
|
+
req: UserControllerDeleteUserData;
|
|
11525
11812
|
res: {
|
|
11526
11813
|
/**
|
|
11527
|
-
*
|
|
11528
|
-
*/
|
|
11529
|
-
200: ExpectedTransactionResponseDto;
|
|
11530
|
-
/**
|
|
11531
|
-
* Cannot undo - not in SKIPPED status
|
|
11814
|
+
* User deleted successfully
|
|
11532
11815
|
*/
|
|
11533
|
-
|
|
11816
|
+
204: void;
|
|
11534
11817
|
/**
|
|
11535
|
-
*
|
|
11818
|
+
* Cannot delete own account or insufficient permissions
|
|
11536
11819
|
*/
|
|
11537
|
-
|
|
11820
|
+
403: unknown;
|
|
11538
11821
|
};
|
|
11539
11822
|
};
|
|
11540
11823
|
};
|
|
11541
|
-
'/api/v1/
|
|
11542
|
-
|
|
11543
|
-
req:
|
|
11824
|
+
'/api/v1/users/{id}/info': {
|
|
11825
|
+
get: {
|
|
11826
|
+
req: UserControllerGetUserInfoData;
|
|
11544
11827
|
res: {
|
|
11545
11828
|
/**
|
|
11546
|
-
*
|
|
11829
|
+
* User info retrieved successfully
|
|
11547
11830
|
*/
|
|
11548
11831
|
200: unknown;
|
|
11549
11832
|
/**
|
|
11550
|
-
* Cannot
|
|
11551
|
-
*/
|
|
11552
|
-
400: unknown;
|
|
11553
|
-
/**
|
|
11554
|
-
* Expected or actual transaction not found
|
|
11555
|
-
*/
|
|
11556
|
-
404: unknown;
|
|
11557
|
-
/**
|
|
11558
|
-
* Actual transaction already matched to another rule
|
|
11833
|
+
* Cannot access other user info without admin permission
|
|
11559
11834
|
*/
|
|
11560
|
-
|
|
11835
|
+
403: unknown;
|
|
11561
11836
|
};
|
|
11562
11837
|
};
|
|
11563
|
-
|
|
11564
|
-
|
|
11838
|
+
};
|
|
11839
|
+
'/api/v1/users/setting': {
|
|
11840
|
+
put: {
|
|
11841
|
+
req: UserControllerUpdateUserSettingData;
|
|
11565
11842
|
res: {
|
|
11566
11843
|
/**
|
|
11567
|
-
*
|
|
11844
|
+
* Settings updated successfully
|
|
11568
11845
|
*/
|
|
11569
11846
|
200: unknown;
|
|
11570
11847
|
/**
|
|
11571
|
-
*
|
|
11572
|
-
*/
|
|
11573
|
-
400: unknown;
|
|
11574
|
-
/**
|
|
11575
|
-
* Expected transaction not found
|
|
11848
|
+
* Insufficient permissions
|
|
11576
11849
|
*/
|
|
11577
|
-
|
|
11850
|
+
403: unknown;
|
|
11578
11851
|
};
|
|
11579
11852
|
};
|
|
11580
11853
|
};
|
|
11581
|
-
'/api/v1/
|
|
11582
|
-
|
|
11583
|
-
req:
|
|
11854
|
+
'/api/v1/users/settings-by-page': {
|
|
11855
|
+
get: {
|
|
11856
|
+
req: UserControllerGetAllUserSettingsByPageData;
|
|
11584
11857
|
res: {
|
|
11585
11858
|
/**
|
|
11586
|
-
*
|
|
11587
|
-
*/
|
|
11588
|
-
201: unknown;
|
|
11589
|
-
/**
|
|
11590
|
-
* Cannot enter - not in PENDING status or missing accounts
|
|
11591
|
-
*/
|
|
11592
|
-
400: unknown;
|
|
11593
|
-
/**
|
|
11594
|
-
* Expected transaction or accounts not found
|
|
11859
|
+
* Settings list retrieved successfully
|
|
11595
11860
|
*/
|
|
11596
|
-
|
|
11861
|
+
200: unknown;
|
|
11597
11862
|
};
|
|
11598
11863
|
};
|
|
11599
11864
|
};
|
|
11600
|
-
'/api/v1/
|
|
11865
|
+
'/api/v1/users/asset-liability-summary': {
|
|
11601
11866
|
get: {
|
|
11602
|
-
req: ForecastControllerGetForecastData;
|
|
11603
11867
|
res: {
|
|
11604
11868
|
/**
|
|
11605
|
-
*
|
|
11869
|
+
* Summary retrieved successfully
|
|
11606
11870
|
*/
|
|
11607
|
-
200:
|
|
11871
|
+
200: unknown;
|
|
11608
11872
|
};
|
|
11609
11873
|
};
|
|
11610
11874
|
};
|
|
11611
|
-
'/api/v1/
|
|
11875
|
+
'/api/v1/admin/properties': {
|
|
11612
11876
|
get: {
|
|
11613
|
-
req: ReportingControllerGetPortfolioTrendsData;
|
|
11614
11877
|
res: {
|
|
11615
11878
|
/**
|
|
11616
|
-
*
|
|
11879
|
+
* Properties retrieved successfully
|
|
11617
11880
|
*/
|
|
11618
|
-
200:
|
|
11881
|
+
200: unknown;
|
|
11619
11882
|
/**
|
|
11620
|
-
*
|
|
11883
|
+
* Unauthorized
|
|
11621
11884
|
*/
|
|
11622
11885
|
401: unknown;
|
|
11886
|
+
/**
|
|
11887
|
+
* Forbidden - insufficient permissions
|
|
11888
|
+
*/
|
|
11889
|
+
403: unknown;
|
|
11623
11890
|
};
|
|
11624
11891
|
};
|
|
11625
11892
|
};
|
|
11626
|
-
'/api/v1/{
|
|
11893
|
+
'/api/v1/admin/properties/{key}': {
|
|
11627
11894
|
get: {
|
|
11628
|
-
req:
|
|
11895
|
+
req: PropertyControllerGetByKeyData;
|
|
11629
11896
|
res: {
|
|
11630
11897
|
/**
|
|
11631
|
-
*
|
|
11898
|
+
* Property retrieved successfully
|
|
11632
11899
|
*/
|
|
11633
|
-
200:
|
|
11900
|
+
200: unknown;
|
|
11634
11901
|
/**
|
|
11635
|
-
*
|
|
11902
|
+
* Unauthorized
|
|
11636
11903
|
*/
|
|
11637
11904
|
401: unknown;
|
|
11905
|
+
/**
|
|
11906
|
+
* Forbidden - insufficient permissions
|
|
11907
|
+
*/
|
|
11908
|
+
403: unknown;
|
|
11909
|
+
/**
|
|
11910
|
+
* Property not found
|
|
11911
|
+
*/
|
|
11912
|
+
404: unknown;
|
|
11638
11913
|
};
|
|
11639
11914
|
};
|
|
11640
|
-
|
|
11641
|
-
|
|
11642
|
-
post: {
|
|
11643
|
-
req: ReportingControllerGenerateSnapshotData;
|
|
11915
|
+
put: {
|
|
11916
|
+
req: PropertyControllerUpdateData;
|
|
11644
11917
|
res: {
|
|
11645
11918
|
/**
|
|
11646
|
-
*
|
|
11919
|
+
* Property updated successfully
|
|
11647
11920
|
*/
|
|
11648
|
-
200:
|
|
11921
|
+
200: unknown;
|
|
11649
11922
|
/**
|
|
11650
|
-
*
|
|
11923
|
+
* Unauthorized
|
|
11651
11924
|
*/
|
|
11652
|
-
|
|
11925
|
+
401: unknown;
|
|
11653
11926
|
/**
|
|
11654
|
-
*
|
|
11927
|
+
* Forbidden - insufficient permissions
|
|
11928
|
+
*/
|
|
11929
|
+
403: unknown;
|
|
11930
|
+
};
|
|
11931
|
+
};
|
|
11932
|
+
delete: {
|
|
11933
|
+
req: PropertyControllerDeleteData;
|
|
11934
|
+
res: {
|
|
11935
|
+
/**
|
|
11936
|
+
* Property deleted successfully
|
|
11937
|
+
*/
|
|
11938
|
+
204: void;
|
|
11939
|
+
/**
|
|
11940
|
+
* Unauthorized
|
|
11655
11941
|
*/
|
|
11656
11942
|
401: unknown;
|
|
11943
|
+
/**
|
|
11944
|
+
* Forbidden - insufficient permissions
|
|
11945
|
+
*/
|
|
11946
|
+
403: unknown;
|
|
11947
|
+
/**
|
|
11948
|
+
* Property not found
|
|
11949
|
+
*/
|
|
11950
|
+
404: unknown;
|
|
11657
11951
|
};
|
|
11658
11952
|
};
|
|
11659
11953
|
};
|
|
11660
|
-
'/api/v1/{region}/
|
|
11954
|
+
'/api/v1/{region}/bean/recurring-rules': {
|
|
11661
11955
|
post: {
|
|
11662
|
-
req:
|
|
11956
|
+
req: RecurringRuleControllerCreateData;
|
|
11663
11957
|
res: {
|
|
11664
11958
|
/**
|
|
11665
|
-
*
|
|
11959
|
+
* Rule created successfully
|
|
11666
11960
|
*/
|
|
11667
|
-
|
|
11961
|
+
201: RecurringRuleResponseDto;
|
|
11668
11962
|
/**
|
|
11669
|
-
* Invalid
|
|
11963
|
+
* Invalid input data (e.g., autoCreate without accounts)
|
|
11670
11964
|
*/
|
|
11671
11965
|
400: unknown;
|
|
11672
11966
|
/**
|
|
11673
|
-
*
|
|
11967
|
+
* Rule with same name already exists
|
|
11674
11968
|
*/
|
|
11675
|
-
|
|
11969
|
+
409: unknown;
|
|
11970
|
+
};
|
|
11971
|
+
};
|
|
11972
|
+
get: {
|
|
11973
|
+
req: RecurringRuleControllerFindAllData;
|
|
11974
|
+
res: {
|
|
11676
11975
|
/**
|
|
11677
|
-
*
|
|
11976
|
+
* Rules retrieved successfully
|
|
11678
11977
|
*/
|
|
11679
|
-
|
|
11978
|
+
200: Array<RecurringRuleResponseDto>;
|
|
11680
11979
|
};
|
|
11681
11980
|
};
|
|
11682
11981
|
};
|
|
11683
|
-
'/api/v1/
|
|
11684
|
-
|
|
11685
|
-
req:
|
|
11982
|
+
'/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}': {
|
|
11983
|
+
post: {
|
|
11984
|
+
req: RecurringRuleControllerCreateFromTransactionData;
|
|
11686
11985
|
res: {
|
|
11687
11986
|
/**
|
|
11688
|
-
*
|
|
11987
|
+
* Rule created successfully
|
|
11689
11988
|
*/
|
|
11690
|
-
|
|
11989
|
+
201: RecurringRuleResponseDto;
|
|
11691
11990
|
/**
|
|
11692
|
-
*
|
|
11991
|
+
* Transaction not found
|
|
11693
11992
|
*/
|
|
11694
|
-
|
|
11993
|
+
404: ApiProblemResponseDto;
|
|
11994
|
+
/**
|
|
11995
|
+
* Rule with same name already exists or transaction already linked
|
|
11996
|
+
*/
|
|
11997
|
+
409: ApiProblemResponseDto;
|
|
11695
11998
|
};
|
|
11696
11999
|
};
|
|
12000
|
+
};
|
|
12001
|
+
'/api/v1/{region}/bean/recurring-rules/{id}': {
|
|
11697
12002
|
get: {
|
|
11698
|
-
req:
|
|
12003
|
+
req: RecurringRuleControllerFindOneData;
|
|
11699
12004
|
res: {
|
|
11700
12005
|
/**
|
|
11701
|
-
*
|
|
12006
|
+
* Rule retrieved successfully
|
|
11702
12007
|
*/
|
|
11703
|
-
200:
|
|
12008
|
+
200: RecurringRuleResponseDto;
|
|
12009
|
+
/**
|
|
12010
|
+
* Rule not found
|
|
12011
|
+
*/
|
|
12012
|
+
404: unknown;
|
|
11704
12013
|
};
|
|
11705
12014
|
};
|
|
11706
|
-
|
|
11707
|
-
req:
|
|
12015
|
+
patch: {
|
|
12016
|
+
req: RecurringRuleControllerUpdateData;
|
|
11708
12017
|
res: {
|
|
11709
12018
|
/**
|
|
11710
|
-
*
|
|
12019
|
+
* Rule updated successfully
|
|
11711
12020
|
*/
|
|
11712
|
-
|
|
12021
|
+
200: RecurringRuleResponseDto;
|
|
11713
12022
|
/**
|
|
11714
|
-
* Invalid
|
|
12023
|
+
* Invalid input data
|
|
11715
12024
|
*/
|
|
11716
12025
|
400: unknown;
|
|
11717
12026
|
/**
|
|
11718
|
-
*
|
|
12027
|
+
* Rule not found
|
|
11719
12028
|
*/
|
|
11720
|
-
|
|
12029
|
+
404: unknown;
|
|
11721
12030
|
};
|
|
11722
12031
|
};
|
|
11723
|
-
};
|
|
11724
|
-
'/api/v1/users/{id}': {
|
|
11725
12032
|
delete: {
|
|
11726
|
-
req:
|
|
12033
|
+
req: RecurringRuleControllerDeleteData;
|
|
11727
12034
|
res: {
|
|
11728
12035
|
/**
|
|
11729
|
-
*
|
|
12036
|
+
* Rule deleted successfully
|
|
11730
12037
|
*/
|
|
11731
12038
|
204: void;
|
|
11732
12039
|
/**
|
|
11733
|
-
*
|
|
12040
|
+
* Rule not found
|
|
11734
12041
|
*/
|
|
11735
|
-
|
|
12042
|
+
404: unknown;
|
|
11736
12043
|
};
|
|
11737
12044
|
};
|
|
11738
12045
|
};
|
|
11739
|
-
'/api/v1/
|
|
12046
|
+
'/api/v1/{region}/bean/recurring-rules/{id}/stats': {
|
|
11740
12047
|
get: {
|
|
11741
|
-
req:
|
|
12048
|
+
req: RecurringRuleControllerGetWithStatsData;
|
|
11742
12049
|
res: {
|
|
11743
12050
|
/**
|
|
11744
|
-
*
|
|
12051
|
+
* Rule with stats retrieved successfully
|
|
11745
12052
|
*/
|
|
11746
|
-
200:
|
|
12053
|
+
200: RecurringRuleWithStatsResponseDto;
|
|
11747
12054
|
/**
|
|
11748
|
-
*
|
|
12055
|
+
* Rule not found
|
|
11749
12056
|
*/
|
|
11750
|
-
|
|
12057
|
+
404: unknown;
|
|
11751
12058
|
};
|
|
11752
12059
|
};
|
|
11753
12060
|
};
|
|
11754
|
-
'/api/v1/
|
|
11755
|
-
|
|
11756
|
-
req:
|
|
12061
|
+
'/api/v1/{region}/bean/expected-transactions': {
|
|
12062
|
+
get: {
|
|
12063
|
+
req: ExpectedTransactionControllerFindAllData;
|
|
11757
12064
|
res: {
|
|
11758
12065
|
/**
|
|
11759
|
-
*
|
|
11760
|
-
*/
|
|
11761
|
-
200: unknown;
|
|
11762
|
-
/**
|
|
11763
|
-
* Insufficient permissions
|
|
12066
|
+
* Expected transactions retrieved successfully
|
|
11764
12067
|
*/
|
|
11765
|
-
|
|
12068
|
+
200: ExpectedTransactionListResponseDto;
|
|
11766
12069
|
};
|
|
11767
12070
|
};
|
|
11768
12071
|
};
|
|
11769
|
-
'/api/v1/
|
|
12072
|
+
'/api/v1/{region}/bean/expected-transactions/overdue': {
|
|
11770
12073
|
get: {
|
|
11771
|
-
req:
|
|
12074
|
+
req: ExpectedTransactionControllerFindOverdueData;
|
|
11772
12075
|
res: {
|
|
11773
12076
|
/**
|
|
11774
|
-
*
|
|
12077
|
+
* Overdue transactions retrieved successfully
|
|
11775
12078
|
*/
|
|
11776
|
-
200:
|
|
12079
|
+
200: ExpectedTransactionListResponseDto;
|
|
11777
12080
|
};
|
|
11778
12081
|
};
|
|
11779
12082
|
};
|
|
11780
|
-
'/api/v1/
|
|
12083
|
+
'/api/v1/{region}/bean/expected-transactions/{id}': {
|
|
11781
12084
|
get: {
|
|
12085
|
+
req: ExpectedTransactionControllerFindOneData;
|
|
11782
12086
|
res: {
|
|
11783
12087
|
/**
|
|
11784
|
-
*
|
|
12088
|
+
* Expected transaction retrieved successfully
|
|
11785
12089
|
*/
|
|
11786
|
-
200:
|
|
12090
|
+
200: ExpectedTransactionResponseDto;
|
|
12091
|
+
/**
|
|
12092
|
+
* Expected transaction not found
|
|
12093
|
+
*/
|
|
12094
|
+
404: unknown;
|
|
11787
12095
|
};
|
|
11788
12096
|
};
|
|
11789
12097
|
};
|
|
11790
|
-
'/api/v1/
|
|
11791
|
-
|
|
12098
|
+
'/api/v1/{region}/bean/expected-transactions/{id}/skip': {
|
|
12099
|
+
post: {
|
|
12100
|
+
req: ExpectedTransactionControllerSkipData;
|
|
11792
12101
|
res: {
|
|
11793
12102
|
/**
|
|
11794
|
-
*
|
|
12103
|
+
* Expected transaction skipped successfully
|
|
11795
12104
|
*/
|
|
11796
|
-
200:
|
|
12105
|
+
200: ExpectedTransactionResponseDto;
|
|
11797
12106
|
/**
|
|
11798
|
-
*
|
|
12107
|
+
* Cannot skip - not in PENDING status
|
|
11799
12108
|
*/
|
|
11800
|
-
|
|
12109
|
+
400: unknown;
|
|
11801
12110
|
/**
|
|
11802
|
-
*
|
|
12111
|
+
* Expected transaction not found
|
|
11803
12112
|
*/
|
|
11804
|
-
|
|
12113
|
+
404: unknown;
|
|
11805
12114
|
};
|
|
11806
12115
|
};
|
|
11807
|
-
|
|
11808
|
-
|
|
11809
|
-
get: {
|
|
11810
|
-
req: PropertyControllerGetByKeyData;
|
|
12116
|
+
delete: {
|
|
12117
|
+
req: ExpectedTransactionControllerUndoSkipData;
|
|
11811
12118
|
res: {
|
|
11812
12119
|
/**
|
|
11813
|
-
*
|
|
11814
|
-
*/
|
|
11815
|
-
200: unknown;
|
|
11816
|
-
/**
|
|
11817
|
-
* Unauthorized
|
|
12120
|
+
* Skip undone successfully
|
|
11818
12121
|
*/
|
|
11819
|
-
|
|
12122
|
+
204: void;
|
|
11820
12123
|
/**
|
|
11821
|
-
*
|
|
12124
|
+
* Cannot undo - not in SKIPPED status
|
|
11822
12125
|
*/
|
|
11823
|
-
|
|
12126
|
+
400: unknown;
|
|
11824
12127
|
/**
|
|
11825
|
-
*
|
|
12128
|
+
* Expected transaction not found
|
|
11826
12129
|
*/
|
|
11827
12130
|
404: unknown;
|
|
11828
12131
|
};
|
|
11829
12132
|
};
|
|
11830
|
-
|
|
11831
|
-
|
|
12133
|
+
};
|
|
12134
|
+
'/api/v1/{region}/bean/expected-transactions/{id}/match': {
|
|
12135
|
+
post: {
|
|
12136
|
+
req: ExpectedTransactionControllerConfirmMatchData;
|
|
11832
12137
|
res: {
|
|
11833
12138
|
/**
|
|
11834
|
-
*
|
|
12139
|
+
* Match confirmed successfully
|
|
11835
12140
|
*/
|
|
11836
12141
|
200: unknown;
|
|
11837
12142
|
/**
|
|
11838
|
-
*
|
|
12143
|
+
* Cannot match - not in PENDING status
|
|
11839
12144
|
*/
|
|
11840
|
-
|
|
12145
|
+
400: unknown;
|
|
11841
12146
|
/**
|
|
11842
|
-
*
|
|
12147
|
+
* Expected or actual transaction not found
|
|
11843
12148
|
*/
|
|
11844
|
-
|
|
12149
|
+
404: unknown;
|
|
12150
|
+
/**
|
|
12151
|
+
* Actual transaction already matched to another rule
|
|
12152
|
+
*/
|
|
12153
|
+
409: unknown;
|
|
11845
12154
|
};
|
|
11846
12155
|
};
|
|
11847
12156
|
delete: {
|
|
11848
|
-
req:
|
|
12157
|
+
req: ExpectedTransactionControllerUnmatchData;
|
|
11849
12158
|
res: {
|
|
11850
12159
|
/**
|
|
11851
|
-
*
|
|
12160
|
+
* Match removed successfully
|
|
11852
12161
|
*/
|
|
11853
12162
|
204: void;
|
|
11854
12163
|
/**
|
|
11855
|
-
*
|
|
12164
|
+
* Cannot unmatch - not in COMPLETED status
|
|
11856
12165
|
*/
|
|
11857
|
-
|
|
12166
|
+
400: unknown;
|
|
11858
12167
|
/**
|
|
11859
|
-
*
|
|
12168
|
+
* Expected transaction not found
|
|
11860
12169
|
*/
|
|
11861
|
-
|
|
12170
|
+
404: unknown;
|
|
12171
|
+
};
|
|
12172
|
+
};
|
|
12173
|
+
};
|
|
12174
|
+
'/api/v1/{region}/bean/expected-transactions/{id}/enter': {
|
|
12175
|
+
post: {
|
|
12176
|
+
req: ExpectedTransactionControllerEnterNowData;
|
|
12177
|
+
res: {
|
|
11862
12178
|
/**
|
|
11863
|
-
*
|
|
12179
|
+
* Transaction created successfully
|
|
12180
|
+
*/
|
|
12181
|
+
201: unknown;
|
|
12182
|
+
/**
|
|
12183
|
+
* Cannot enter - not in PENDING status or missing accounts
|
|
12184
|
+
*/
|
|
12185
|
+
400: unknown;
|
|
12186
|
+
/**
|
|
12187
|
+
* Expected transaction or accounts not found
|
|
11864
12188
|
*/
|
|
11865
12189
|
404: unknown;
|
|
11866
12190
|
};
|
|
11867
12191
|
};
|
|
11868
12192
|
};
|
|
12193
|
+
'/api/v1/{region}/bean/recurring/forecast': {
|
|
12194
|
+
get: {
|
|
12195
|
+
req: ForecastControllerGetForecastData;
|
|
12196
|
+
res: {
|
|
12197
|
+
/**
|
|
12198
|
+
* Forecast retrieved successfully
|
|
12199
|
+
*/
|
|
12200
|
+
200: ForecastResponseDto;
|
|
12201
|
+
};
|
|
12202
|
+
};
|
|
12203
|
+
};
|
|
11869
12204
|
'/api/v1/{region}/bean/transaction-rules': {
|
|
11870
12205
|
post: {
|
|
11871
12206
|
req: TransactionRuleControllerCreateData;
|
|
@@ -12263,7 +12598,10 @@ export type $OpenApiTs = {
|
|
|
12263
12598
|
'/api/v1/{region}/bean/export/beancount': {
|
|
12264
12599
|
get: {
|
|
12265
12600
|
res: {
|
|
12266
|
-
|
|
12601
|
+
/**
|
|
12602
|
+
* ZIP archive (application/zip) streamed as an attachment
|
|
12603
|
+
*/
|
|
12604
|
+
200: Blob | File;
|
|
12267
12605
|
};
|
|
12268
12606
|
};
|
|
12269
12607
|
};
|
|
@@ -12644,6 +12982,17 @@ export type $OpenApiTs = {
|
|
|
12644
12982
|
};
|
|
12645
12983
|
};
|
|
12646
12984
|
};
|
|
12985
|
+
'/api/v1/bean/platforms/{id}/standards': {
|
|
12986
|
+
get: {
|
|
12987
|
+
req: PlatformControllerGetPlatformStandardsData;
|
|
12988
|
+
res: {
|
|
12989
|
+
/**
|
|
12990
|
+
* Resolved region plus the merged account-standard catalog of that region (groupable by productCategory client-side)
|
|
12991
|
+
*/
|
|
12992
|
+
200: PlatformStandardsResponseDto;
|
|
12993
|
+
};
|
|
12994
|
+
};
|
|
12995
|
+
};
|
|
12647
12996
|
'/api/v1/bean/platforms/{id}': {
|
|
12648
12997
|
put: {
|
|
12649
12998
|
req: PlatformControllerUpdateData;
|
|
@@ -12791,10 +13140,48 @@ export type $OpenApiTs = {
|
|
|
12791
13140
|
};
|
|
12792
13141
|
};
|
|
12793
13142
|
};
|
|
13143
|
+
'/api/v1/{region}/community/parser-contributions': {
|
|
13144
|
+
post: {
|
|
13145
|
+
req: ParserContributionControllerCreateData;
|
|
13146
|
+
res: {
|
|
13147
|
+
/**
|
|
13148
|
+
* Issue created by the bot
|
|
13149
|
+
*/
|
|
13150
|
+
201: ParserContributionRelayResponseDto;
|
|
13151
|
+
/**
|
|
13152
|
+
* Unauthorized
|
|
13153
|
+
*/
|
|
13154
|
+
401: ApiProblemResponseDto;
|
|
13155
|
+
/**
|
|
13156
|
+
* Validation failed (institution slug, empty samples, row/cell size limits)
|
|
13157
|
+
*/
|
|
13158
|
+
422: ApiProblemResponseDto;
|
|
13159
|
+
/**
|
|
13160
|
+
* Rate limited (5 submissions per user per hour)
|
|
13161
|
+
*/
|
|
13162
|
+
429: ApiProblemResponseDto;
|
|
13163
|
+
/**
|
|
13164
|
+
* Relay not configured on this deployment — clients fall back to the clipboard flow
|
|
13165
|
+
*/
|
|
13166
|
+
501: ApiProblemResponseDto;
|
|
13167
|
+
/**
|
|
13168
|
+
* GitHub bot failure (upstream), safe to retry
|
|
13169
|
+
*/
|
|
13170
|
+
502: ApiProblemResponseDto;
|
|
13171
|
+
};
|
|
13172
|
+
};
|
|
13173
|
+
};
|
|
12794
13174
|
'/api/v1/cache/flush': {
|
|
12795
13175
|
post: {
|
|
12796
13176
|
res: {
|
|
12797
|
-
|
|
13177
|
+
/**
|
|
13178
|
+
* Cache flushed successfully
|
|
13179
|
+
*/
|
|
13180
|
+
200: unknown;
|
|
13181
|
+
/**
|
|
13182
|
+
* Admin access required
|
|
13183
|
+
*/
|
|
13184
|
+
403: ApiProblemResponseDto;
|
|
12798
13185
|
};
|
|
12799
13186
|
};
|
|
12800
13187
|
};
|