@firela/api-types 0.0.0-canary.a90ce0e4 → 0.0.0-canary.a9f0aa08
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 +1163 -858
- package/dist/index.d.ts +1163 -858
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
- package/src/generated/schemas.gen.ts +977 -596
- package/src/generated/services.gen.ts +499 -445
- package/src/generated/types.gen.ts +1344 -942
|
@@ -73,6 +73,43 @@ export type AccountResponseDto = {
|
|
|
73
73
|
* Account type (root segment)
|
|
74
74
|
*/
|
|
75
75
|
type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
|
|
76
|
+
/**
|
|
77
|
+
* Account-level asset sub-class (product type, e.g. STOCK/DEPOSIT/CREDIT_CARD/PERSONAL_LOAN). Computed from the account path via the asset-classifier (ADR-0077). Null for non-asset accounts (Income/Expenses/Equity) or unmatched paths.
|
|
78
|
+
*/
|
|
79
|
+
assetSubClass?:
|
|
80
|
+
| 'DEPOSIT'
|
|
81
|
+
| 'CASH'
|
|
82
|
+
| 'MONEY_MARKET_FUND'
|
|
83
|
+
| 'STOCK'
|
|
84
|
+
| 'ETF'
|
|
85
|
+
| 'MUTUAL_FUND'
|
|
86
|
+
| 'EQUITY_COMPENSATION'
|
|
87
|
+
| 'GOVERNMENT_BOND'
|
|
88
|
+
| 'CORPORATE_BOND'
|
|
89
|
+
| 'BOND_FUND'
|
|
90
|
+
| 'PRIMARY_RESIDENCE'
|
|
91
|
+
| 'INVESTMENT_PROPERTY'
|
|
92
|
+
| 'REIT'
|
|
93
|
+
| 'GOLD'
|
|
94
|
+
| 'SILVER'
|
|
95
|
+
| 'PRECIOUS_METAL'
|
|
96
|
+
| 'PRECIOUS_METAL_FUND'
|
|
97
|
+
| 'COMMODITY'
|
|
98
|
+
| 'COMMODITY_FUND'
|
|
99
|
+
| 'CRYPTOCURRENCY'
|
|
100
|
+
| 'RETIREMENT_ACCOUNT'
|
|
101
|
+
| 'HEALTH_ACCOUNT'
|
|
102
|
+
| 'EDUCATION_ACCOUNT'
|
|
103
|
+
| 'INSURANCE'
|
|
104
|
+
| 'PRIVATE_EQUITY'
|
|
105
|
+
| 'HEDGE_FUND'
|
|
106
|
+
| 'COLLECTIBLES'
|
|
107
|
+
| 'MORTGAGE'
|
|
108
|
+
| 'STUDENT_LOAN'
|
|
109
|
+
| 'CREDIT_CARD'
|
|
110
|
+
| 'PERSONAL_LOAN'
|
|
111
|
+
| 'OTHER'
|
|
112
|
+
| null;
|
|
76
113
|
/**
|
|
77
114
|
* Account status
|
|
78
115
|
*/
|
|
@@ -149,6 +186,43 @@ export type AccountResponseDto = {
|
|
|
149
186
|
*/
|
|
150
187
|
export type type = 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
|
|
151
188
|
|
|
189
|
+
/**
|
|
190
|
+
* Account-level asset sub-class (product type, e.g. STOCK/DEPOSIT/CREDIT_CARD/PERSONAL_LOAN). Computed from the account path via the asset-classifier (ADR-0077). Null for non-asset accounts (Income/Expenses/Equity) or unmatched paths.
|
|
191
|
+
*/
|
|
192
|
+
export type assetSubClass =
|
|
193
|
+
| 'DEPOSIT'
|
|
194
|
+
| 'CASH'
|
|
195
|
+
| 'MONEY_MARKET_FUND'
|
|
196
|
+
| 'STOCK'
|
|
197
|
+
| 'ETF'
|
|
198
|
+
| 'MUTUAL_FUND'
|
|
199
|
+
| 'EQUITY_COMPENSATION'
|
|
200
|
+
| 'GOVERNMENT_BOND'
|
|
201
|
+
| 'CORPORATE_BOND'
|
|
202
|
+
| 'BOND_FUND'
|
|
203
|
+
| 'PRIMARY_RESIDENCE'
|
|
204
|
+
| 'INVESTMENT_PROPERTY'
|
|
205
|
+
| 'REIT'
|
|
206
|
+
| 'GOLD'
|
|
207
|
+
| 'SILVER'
|
|
208
|
+
| 'PRECIOUS_METAL'
|
|
209
|
+
| 'PRECIOUS_METAL_FUND'
|
|
210
|
+
| 'COMMODITY'
|
|
211
|
+
| 'COMMODITY_FUND'
|
|
212
|
+
| 'CRYPTOCURRENCY'
|
|
213
|
+
| 'RETIREMENT_ACCOUNT'
|
|
214
|
+
| 'HEALTH_ACCOUNT'
|
|
215
|
+
| 'EDUCATION_ACCOUNT'
|
|
216
|
+
| 'INSURANCE'
|
|
217
|
+
| 'PRIVATE_EQUITY'
|
|
218
|
+
| 'HEDGE_FUND'
|
|
219
|
+
| 'COLLECTIBLES'
|
|
220
|
+
| 'MORTGAGE'
|
|
221
|
+
| 'STUDENT_LOAN'
|
|
222
|
+
| 'CREDIT_CARD'
|
|
223
|
+
| 'PERSONAL_LOAN'
|
|
224
|
+
| 'OTHER';
|
|
225
|
+
|
|
152
226
|
/**
|
|
153
227
|
* Account status
|
|
154
228
|
*/
|
|
@@ -2701,384 +2775,223 @@ export type ForecastResponseDto = {
|
|
|
2701
2775
|
periodEnd: string;
|
|
2702
2776
|
};
|
|
2703
2777
|
|
|
2704
|
-
export type
|
|
2705
|
-
name: string;
|
|
2706
|
-
description?: string;
|
|
2707
|
-
narrationKeywords?: Array<unknown[]>;
|
|
2708
|
-
payeeKeywords?: Array<unknown[]>;
|
|
2709
|
-
categoryKeywords?: Array<unknown[]>;
|
|
2778
|
+
export type CurrencyBalanceDto = {
|
|
2710
2779
|
/**
|
|
2711
|
-
*
|
|
2780
|
+
* ISO 4217 currency code
|
|
2712
2781
|
*/
|
|
2713
|
-
|
|
2782
|
+
currency: string;
|
|
2714
2783
|
/**
|
|
2715
|
-
*
|
|
2784
|
+
* Balance amount
|
|
2716
2785
|
*/
|
|
2717
|
-
|
|
2718
|
-
|
|
2786
|
+
balance: string;
|
|
2787
|
+
};
|
|
2788
|
+
|
|
2789
|
+
export type TimeSeriesPointDto = {
|
|
2719
2790
|
/**
|
|
2720
|
-
*
|
|
2791
|
+
* Date in YYYY-MM-DD format
|
|
2721
2792
|
*/
|
|
2722
|
-
|
|
2793
|
+
date: string;
|
|
2723
2794
|
/**
|
|
2724
|
-
*
|
|
2795
|
+
* Value at this date (in base currency)
|
|
2725
2796
|
*/
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2797
|
+
value: string;
|
|
2798
|
+
/**
|
|
2799
|
+
* Change from previous point
|
|
2800
|
+
*/
|
|
2801
|
+
change?: {
|
|
2730
2802
|
[key: string]: unknown;
|
|
2731
2803
|
};
|
|
2732
2804
|
/**
|
|
2733
|
-
*
|
|
2805
|
+
* Total assets at this date (in base currency)
|
|
2734
2806
|
*/
|
|
2735
|
-
|
|
2736
|
-
};
|
|
2737
|
-
|
|
2738
|
-
export type matchLogic = 'OR' | 'AND';
|
|
2739
|
-
|
|
2740
|
-
export type AmountRangeDto = {
|
|
2807
|
+
assets?: string;
|
|
2741
2808
|
/**
|
|
2742
|
-
*
|
|
2809
|
+
* Total liabilities at this date (in base currency)
|
|
2743
2810
|
*/
|
|
2744
|
-
|
|
2811
|
+
liabilities?: string;
|
|
2745
2812
|
/**
|
|
2746
|
-
*
|
|
2813
|
+
* Multi-currency breakdown for this point
|
|
2747
2814
|
*/
|
|
2748
|
-
|
|
2815
|
+
byCurrency?: Array<CurrencyBalanceDto>;
|
|
2749
2816
|
};
|
|
2750
2817
|
|
|
2751
|
-
export type
|
|
2752
|
-
/**
|
|
2753
|
-
* Rule ID
|
|
2754
|
-
*/
|
|
2755
|
-
id: string;
|
|
2756
|
-
/**
|
|
2757
|
-
* Rule name
|
|
2758
|
-
*/
|
|
2759
|
-
name: string;
|
|
2818
|
+
export type TrendSummaryDto = {
|
|
2760
2819
|
/**
|
|
2761
|
-
*
|
|
2820
|
+
* Value at start of period
|
|
2762
2821
|
*/
|
|
2763
|
-
|
|
2822
|
+
startValue: string;
|
|
2764
2823
|
/**
|
|
2765
|
-
*
|
|
2824
|
+
* Value at end of period
|
|
2766
2825
|
*/
|
|
2767
|
-
|
|
2826
|
+
endValue: string;
|
|
2768
2827
|
/**
|
|
2769
|
-
*
|
|
2828
|
+
* Total change over period
|
|
2770
2829
|
*/
|
|
2771
|
-
|
|
2830
|
+
totalChange: string;
|
|
2772
2831
|
/**
|
|
2773
|
-
*
|
|
2832
|
+
* Total change percentage
|
|
2774
2833
|
*/
|
|
2775
|
-
|
|
2834
|
+
totalChangePercentage: string;
|
|
2835
|
+
};
|
|
2836
|
+
|
|
2837
|
+
export type MultiCurrencyPointDto = {
|
|
2776
2838
|
/**
|
|
2777
|
-
*
|
|
2839
|
+
* Date in YYYY-MM-DD format
|
|
2778
2840
|
*/
|
|
2779
|
-
|
|
2841
|
+
date: string;
|
|
2780
2842
|
/**
|
|
2781
|
-
*
|
|
2843
|
+
* Balances by currency
|
|
2782
2844
|
*/
|
|
2783
|
-
|
|
2845
|
+
byCurrency: Array<CurrencyBalanceDto>;
|
|
2846
|
+
};
|
|
2847
|
+
|
|
2848
|
+
export type PortfolioTrendsResponseDto = {
|
|
2784
2849
|
/**
|
|
2785
|
-
*
|
|
2850
|
+
* Time series data points
|
|
2786
2851
|
*/
|
|
2787
|
-
|
|
2852
|
+
series: Array<TimeSeriesPointDto>;
|
|
2788
2853
|
/**
|
|
2789
|
-
*
|
|
2854
|
+
* Period summary
|
|
2790
2855
|
*/
|
|
2791
|
-
|
|
2856
|
+
summary: TrendSummaryDto;
|
|
2792
2857
|
/**
|
|
2793
|
-
*
|
|
2858
|
+
* Period requested
|
|
2794
2859
|
*/
|
|
2795
|
-
|
|
2860
|
+
period: string;
|
|
2796
2861
|
/**
|
|
2797
|
-
*
|
|
2862
|
+
* Data granularity
|
|
2798
2863
|
*/
|
|
2799
|
-
|
|
2864
|
+
granularity: string;
|
|
2800
2865
|
/**
|
|
2801
|
-
*
|
|
2866
|
+
* Base currency for converted values
|
|
2802
2867
|
*/
|
|
2803
|
-
|
|
2868
|
+
currency: string;
|
|
2804
2869
|
/**
|
|
2805
|
-
*
|
|
2870
|
+
* Multi-currency time series (each point has currency breakdown)
|
|
2806
2871
|
*/
|
|
2807
|
-
|
|
2872
|
+
byCurrency?: Array<MultiCurrencyPointDto>;
|
|
2808
2873
|
/**
|
|
2809
|
-
*
|
|
2874
|
+
* Exchange rate warnings
|
|
2810
2875
|
*/
|
|
2811
|
-
|
|
2876
|
+
warnings?: Array<ExchangeRateWarningDto>;
|
|
2877
|
+
};
|
|
2878
|
+
|
|
2879
|
+
export type CashFlowPointDto = {
|
|
2812
2880
|
/**
|
|
2813
|
-
*
|
|
2881
|
+
* Month key (YYYY-MM)
|
|
2814
2882
|
*/
|
|
2815
|
-
|
|
2883
|
+
month: string;
|
|
2816
2884
|
/**
|
|
2817
|
-
*
|
|
2885
|
+
* Income in base currency (absolute, converted)
|
|
2818
2886
|
*/
|
|
2819
|
-
|
|
2820
|
-
[key: string]: string;
|
|
2821
|
-
};
|
|
2887
|
+
income: string;
|
|
2822
2888
|
/**
|
|
2823
|
-
*
|
|
2889
|
+
* Expense in base currency (absolute, converted)
|
|
2824
2890
|
*/
|
|
2825
|
-
|
|
2891
|
+
expense: string;
|
|
2826
2892
|
/**
|
|
2827
|
-
*
|
|
2893
|
+
* netSavings = income − expense (savings positive)
|
|
2828
2894
|
*/
|
|
2829
|
-
|
|
2895
|
+
netSavings: string;
|
|
2830
2896
|
};
|
|
2831
2897
|
|
|
2832
|
-
|
|
2833
|
-
* Learning source: NLP, REVIEW_CENTER, or null for manual
|
|
2834
|
-
*/
|
|
2835
|
-
export type learningSource = 'NLP' | 'REVIEW_CENTER';
|
|
2836
|
-
|
|
2837
|
-
export type TransactionRuleListResponseDto = {
|
|
2838
|
-
data: Array<TransactionRuleResponseDto>;
|
|
2898
|
+
export type CashFlowTrendSummaryDto = {
|
|
2839
2899
|
/**
|
|
2840
|
-
* Total
|
|
2900
|
+
* Total income across the period
|
|
2841
2901
|
*/
|
|
2842
|
-
|
|
2902
|
+
totalIncome: string;
|
|
2843
2903
|
/**
|
|
2844
|
-
*
|
|
2904
|
+
* Total expense across the period
|
|
2845
2905
|
*/
|
|
2846
|
-
|
|
2906
|
+
totalExpense: string;
|
|
2847
2907
|
/**
|
|
2848
|
-
*
|
|
2908
|
+
* income − expense across the period
|
|
2849
2909
|
*/
|
|
2850
|
-
|
|
2910
|
+
totalNetSavings: string;
|
|
2911
|
+
/**
|
|
2912
|
+
* totalNetSavings divided by the window length (N months, incl. zero-filled)
|
|
2913
|
+
*/
|
|
2914
|
+
averageMonthlyNetSavings: string;
|
|
2851
2915
|
};
|
|
2852
2916
|
|
|
2853
|
-
export type
|
|
2854
|
-
name: string;
|
|
2855
|
-
description?: string;
|
|
2856
|
-
narrationKeywords?: Array<unknown[]>;
|
|
2857
|
-
payeeKeywords?: Array<unknown[]>;
|
|
2858
|
-
categoryKeywords?: Array<unknown[]>;
|
|
2917
|
+
export type CashFlowTrendsResponseDto = {
|
|
2859
2918
|
/**
|
|
2860
|
-
*
|
|
2919
|
+
* Monthly cash-flow series (fixed N-month window, zero-filled)
|
|
2861
2920
|
*/
|
|
2862
|
-
|
|
2921
|
+
series: Array<CashFlowPointDto>;
|
|
2863
2922
|
/**
|
|
2864
|
-
*
|
|
2923
|
+
* Period totals
|
|
2865
2924
|
*/
|
|
2866
|
-
|
|
2867
|
-
matchLogic: 'OR' | 'AND';
|
|
2925
|
+
summary: CashFlowTrendSummaryDto;
|
|
2868
2926
|
/**
|
|
2869
|
-
*
|
|
2927
|
+
* Period requested
|
|
2870
2928
|
*/
|
|
2871
|
-
|
|
2929
|
+
period: string;
|
|
2872
2930
|
/**
|
|
2873
|
-
*
|
|
2931
|
+
* Data granularity (v1 returns month buckets)
|
|
2874
2932
|
*/
|
|
2875
|
-
|
|
2876
|
-
priority: number;
|
|
2877
|
-
additionalTags?: Array<unknown[]>;
|
|
2878
|
-
additionalMetadata?: {
|
|
2879
|
-
[key: string]: unknown;
|
|
2880
|
-
};
|
|
2933
|
+
granularity: string;
|
|
2881
2934
|
/**
|
|
2882
|
-
*
|
|
2935
|
+
* Base currency for converted values
|
|
2883
2936
|
*/
|
|
2884
|
-
|
|
2885
|
-
};
|
|
2886
|
-
|
|
2887
|
-
export type ValidateRuleResponseDto = {
|
|
2937
|
+
currency: string;
|
|
2888
2938
|
/**
|
|
2889
|
-
*
|
|
2939
|
+
* Exchange rate warnings (e.g. missing rate for a currency)
|
|
2890
2940
|
*/
|
|
2891
|
-
|
|
2941
|
+
warnings?: Array<ExchangeRateWarningDto>;
|
|
2942
|
+
};
|
|
2943
|
+
|
|
2944
|
+
export type GenerateSnapshotBody = unknown;
|
|
2945
|
+
|
|
2946
|
+
export type GenerateSnapshotResponse = unknown;
|
|
2947
|
+
|
|
2948
|
+
export type BackfillSnapshotsBody = unknown;
|
|
2949
|
+
|
|
2950
|
+
export type BackfillSnapshotsResponse = unknown;
|
|
2951
|
+
|
|
2952
|
+
export type DeleteOwnUserDto = {
|
|
2892
2953
|
/**
|
|
2893
|
-
*
|
|
2954
|
+
* Access token for user verification
|
|
2894
2955
|
*/
|
|
2895
|
-
|
|
2956
|
+
accessToken: string;
|
|
2957
|
+
};
|
|
2958
|
+
|
|
2959
|
+
export type SignupDto = {
|
|
2896
2960
|
/**
|
|
2897
|
-
*
|
|
2961
|
+
* Cloudflare Turnstile verification token (optional when Turnstile disabled)
|
|
2898
2962
|
*/
|
|
2899
|
-
|
|
2963
|
+
turnstileToken?: string;
|
|
2900
2964
|
};
|
|
2901
2965
|
|
|
2902
|
-
export type
|
|
2966
|
+
export type SignupResponseDto = {
|
|
2903
2967
|
/**
|
|
2904
|
-
*
|
|
2968
|
+
* JWT auth token
|
|
2905
2969
|
*/
|
|
2906
|
-
|
|
2970
|
+
authToken: string;
|
|
2907
2971
|
/**
|
|
2908
|
-
*
|
|
2972
|
+
* Auto-generated access token
|
|
2909
2973
|
*/
|
|
2910
|
-
|
|
2974
|
+
accessToken: string;
|
|
2975
|
+
/**
|
|
2976
|
+
* Assigned user role
|
|
2977
|
+
*/
|
|
2978
|
+
role: 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
|
|
2911
2979
|
};
|
|
2912
2980
|
|
|
2913
2981
|
/**
|
|
2914
|
-
*
|
|
2982
|
+
* Assigned user role
|
|
2915
2983
|
*/
|
|
2916
|
-
export type
|
|
2984
|
+
export type role = 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
|
|
2917
2985
|
|
|
2918
|
-
export type
|
|
2986
|
+
export type UpdateUserSettingDto = {
|
|
2919
2987
|
/**
|
|
2920
|
-
*
|
|
2988
|
+
* Security ID
|
|
2921
2989
|
*/
|
|
2922
|
-
|
|
2990
|
+
secId?: number;
|
|
2923
2991
|
/**
|
|
2924
|
-
*
|
|
2992
|
+
* Annual interest rate
|
|
2925
2993
|
*/
|
|
2926
|
-
|
|
2927
|
-
/**
|
|
2928
|
-
* Error details for failed rules
|
|
2929
|
-
*/
|
|
2930
|
-
errors: Array<{
|
|
2931
|
-
index?: number;
|
|
2932
|
-
message?: string;
|
|
2933
|
-
}>;
|
|
2934
|
-
/**
|
|
2935
|
-
* IDs of successfully created rules
|
|
2936
|
-
*/
|
|
2937
|
-
createdRuleIds: Array<string>;
|
|
2938
|
-
};
|
|
2939
|
-
|
|
2940
|
-
export type ExportRulesResponseDto = {
|
|
2941
|
-
/**
|
|
2942
|
-
* Export timestamp
|
|
2943
|
-
*/
|
|
2944
|
-
exportedAt: string;
|
|
2945
|
-
/**
|
|
2946
|
-
* User ID
|
|
2947
|
-
*/
|
|
2948
|
-
userId: string;
|
|
2949
|
-
/**
|
|
2950
|
-
* Number of exported rules
|
|
2951
|
-
*/
|
|
2952
|
-
ruleCount: number;
|
|
2953
|
-
/**
|
|
2954
|
-
* Exported rules
|
|
2955
|
-
*/
|
|
2956
|
-
rules: unknown[];
|
|
2957
|
-
};
|
|
2958
|
-
|
|
2959
|
-
export type RuleStatisticsResponseDto = {
|
|
2960
|
-
/**
|
|
2961
|
-
* Statistics time period
|
|
2962
|
-
*/
|
|
2963
|
-
period: '7d' | '30d' | '90d';
|
|
2964
|
-
/**
|
|
2965
|
-
* Total number of rules
|
|
2966
|
-
*/
|
|
2967
|
-
totalRules: number;
|
|
2968
|
-
/**
|
|
2969
|
-
* Number of rules with at least one match
|
|
2970
|
-
*/
|
|
2971
|
-
rulesWithMatches: number;
|
|
2972
|
-
/**
|
|
2973
|
-
* Total number of matches across all rules
|
|
2974
|
-
*/
|
|
2975
|
-
totalMatches: number;
|
|
2976
|
-
/**
|
|
2977
|
-
* Average confidence score across all matches
|
|
2978
|
-
*/
|
|
2979
|
-
averageConfidence: number;
|
|
2980
|
-
/**
|
|
2981
|
-
* Per-rule statistics
|
|
2982
|
-
*/
|
|
2983
|
-
ruleStats: Array<{
|
|
2984
|
-
ruleId?: string;
|
|
2985
|
-
ruleName?: string;
|
|
2986
|
-
matchCount?: number;
|
|
2987
|
-
averageConfidence?: number;
|
|
2988
|
-
}>;
|
|
2989
|
-
};
|
|
2990
|
-
|
|
2991
|
-
/**
|
|
2992
|
-
* Statistics time period
|
|
2993
|
-
*/
|
|
2994
|
-
export type period = '7d' | '30d' | '90d';
|
|
2995
|
-
|
|
2996
|
-
export type UpdateTransactionRuleDto = {
|
|
2997
|
-
name?: string;
|
|
2998
|
-
description?: string;
|
|
2999
|
-
narrationKeywords?: Array<unknown[]>;
|
|
3000
|
-
payeeKeywords?: Array<unknown[]>;
|
|
3001
|
-
categoryKeywords?: Array<unknown[]>;
|
|
3002
|
-
/**
|
|
3003
|
-
* Payment method keywords (e.g., HuaBei, YuEBao)
|
|
3004
|
-
*/
|
|
3005
|
-
methodKeywords?: Array<unknown[]>;
|
|
3006
|
-
/**
|
|
3007
|
-
* Destination account for expenses/income (e.g., Expenses:Food:Coffee)
|
|
3008
|
-
*/
|
|
3009
|
-
categoryAccount?: string;
|
|
3010
|
-
matchLogic?: 'OR' | 'AND';
|
|
3011
|
-
/**
|
|
3012
|
-
* Minimum transaction amount (inclusive)
|
|
3013
|
-
*/
|
|
3014
|
-
amountMin?: number;
|
|
3015
|
-
/**
|
|
3016
|
-
* Maximum transaction amount (inclusive)
|
|
3017
|
-
*/
|
|
3018
|
-
amountMax?: number;
|
|
3019
|
-
priority?: number;
|
|
3020
|
-
/**
|
|
3021
|
-
* Enable or disable the rule
|
|
3022
|
-
*/
|
|
3023
|
-
enabled?: boolean;
|
|
3024
|
-
additionalTags?: Array<unknown[]>;
|
|
3025
|
-
additionalMetadata?: {
|
|
3026
|
-
[key: string]: unknown;
|
|
3027
|
-
};
|
|
3028
|
-
};
|
|
3029
|
-
|
|
3030
|
-
export type TestRuleDto = {
|
|
3031
|
-
narration: string;
|
|
3032
|
-
payee?: string;
|
|
3033
|
-
categoryAccount?: string;
|
|
3034
|
-
amount?: number;
|
|
3035
|
-
currency?: string;
|
|
3036
|
-
};
|
|
3037
|
-
|
|
3038
|
-
export type TestRuleResponseDto = {
|
|
3039
|
-
/**
|
|
3040
|
-
* Rule ID that was tested
|
|
3041
|
-
*/
|
|
3042
|
-
ruleId: string;
|
|
3043
|
-
/**
|
|
3044
|
-
* Whether the rule matched the test data
|
|
3045
|
-
*/
|
|
3046
|
-
matches: boolean;
|
|
3047
|
-
/**
|
|
3048
|
-
* Match confidence score (0-1)
|
|
3049
|
-
*/
|
|
3050
|
-
confidence: number;
|
|
3051
|
-
/**
|
|
3052
|
-
* Details of which fields matched
|
|
3053
|
-
*/
|
|
3054
|
-
matchDetails: {
|
|
3055
|
-
[key: string]: unknown;
|
|
3056
|
-
};
|
|
3057
|
-
};
|
|
3058
|
-
|
|
3059
|
-
export type DeleteOwnUserDto = {
|
|
3060
|
-
/**
|
|
3061
|
-
* Access token for user verification
|
|
3062
|
-
*/
|
|
3063
|
-
accessToken: string;
|
|
3064
|
-
};
|
|
3065
|
-
|
|
3066
|
-
export type SignupDto = {
|
|
3067
|
-
/**
|
|
3068
|
-
* Cloudflare Turnstile verification token (optional when Turnstile disabled)
|
|
3069
|
-
*/
|
|
3070
|
-
turnstileToken?: string;
|
|
3071
|
-
};
|
|
3072
|
-
|
|
3073
|
-
export type UpdateUserSettingDto = {
|
|
3074
|
-
/**
|
|
3075
|
-
* Security ID
|
|
3076
|
-
*/
|
|
3077
|
-
secId?: number;
|
|
3078
|
-
/**
|
|
3079
|
-
* Annual interest rate
|
|
3080
|
-
*/
|
|
3081
|
-
annualInterestRate?: number;
|
|
2994
|
+
annualInterestRate?: number;
|
|
3082
2995
|
/**
|
|
3083
2996
|
* Currency code
|
|
3084
2997
|
*/
|
|
@@ -3174,93 +3087,448 @@ export type UpdatePropertyDto = {
|
|
|
3174
3087
|
value: string;
|
|
3175
3088
|
};
|
|
3176
3089
|
|
|
3177
|
-
export type
|
|
3090
|
+
export type CreateTransactionRuleDto = {
|
|
3091
|
+
name: string;
|
|
3092
|
+
description?: string;
|
|
3093
|
+
narrationKeywords?: Array<unknown[]>;
|
|
3094
|
+
payeeKeywords?: Array<unknown[]>;
|
|
3095
|
+
categoryKeywords?: Array<unknown[]>;
|
|
3178
3096
|
/**
|
|
3179
|
-
*
|
|
3097
|
+
* Payment method keywords (e.g., HuaBei, YuEBao)
|
|
3180
3098
|
*/
|
|
3181
|
-
|
|
3099
|
+
methodKeywords?: Array<unknown[]>;
|
|
3182
3100
|
/**
|
|
3183
|
-
*
|
|
3101
|
+
* Destination account for expenses/income (e.g., Expenses:Food:Coffee)
|
|
3184
3102
|
*/
|
|
3185
|
-
|
|
3103
|
+
categoryAccount?: string;
|
|
3104
|
+
matchLogic: 'OR' | 'AND';
|
|
3186
3105
|
/**
|
|
3187
|
-
*
|
|
3106
|
+
* Minimum transaction amount (inclusive)
|
|
3188
3107
|
*/
|
|
3189
|
-
|
|
3108
|
+
amountMin?: number;
|
|
3190
3109
|
/**
|
|
3191
|
-
*
|
|
3110
|
+
* Maximum transaction amount (inclusive)
|
|
3192
3111
|
*/
|
|
3193
|
-
|
|
3112
|
+
amountMax?: number;
|
|
3113
|
+
priority: number;
|
|
3114
|
+
additionalTags?: Array<unknown[]>;
|
|
3115
|
+
additionalMetadata?: {
|
|
3194
3116
|
[key: string]: unknown;
|
|
3195
3117
|
};
|
|
3118
|
+
/**
|
|
3119
|
+
* If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
|
|
3120
|
+
*/
|
|
3121
|
+
upsertByPayee?: boolean;
|
|
3196
3122
|
};
|
|
3197
3123
|
|
|
3198
|
-
export type
|
|
3124
|
+
export type matchLogic = 'OR' | 'AND';
|
|
3125
|
+
|
|
3126
|
+
export type AmountRangeDto = {
|
|
3199
3127
|
/**
|
|
3200
|
-
*
|
|
3128
|
+
* Minimum amount
|
|
3201
3129
|
*/
|
|
3202
|
-
|
|
3130
|
+
min?: number;
|
|
3203
3131
|
/**
|
|
3204
|
-
*
|
|
3132
|
+
* Maximum amount
|
|
3205
3133
|
*/
|
|
3206
|
-
|
|
3134
|
+
max?: number;
|
|
3135
|
+
};
|
|
3136
|
+
|
|
3137
|
+
export type TransactionRuleResponseDto = {
|
|
3207
3138
|
/**
|
|
3208
|
-
*
|
|
3139
|
+
* Rule ID
|
|
3209
3140
|
*/
|
|
3210
|
-
|
|
3141
|
+
id: string;
|
|
3211
3142
|
/**
|
|
3212
|
-
*
|
|
3143
|
+
* Rule name
|
|
3213
3144
|
*/
|
|
3214
|
-
|
|
3145
|
+
name: string;
|
|
3215
3146
|
/**
|
|
3216
|
-
*
|
|
3147
|
+
* Rule description
|
|
3217
3148
|
*/
|
|
3218
|
-
description
|
|
3149
|
+
description?: string;
|
|
3219
3150
|
/**
|
|
3220
|
-
*
|
|
3151
|
+
* Keywords to match in transaction narration
|
|
3221
3152
|
*/
|
|
3222
|
-
|
|
3223
|
-
[key: string]: unknown;
|
|
3224
|
-
};
|
|
3153
|
+
narrationKeywords: Array<string>;
|
|
3225
3154
|
/**
|
|
3226
|
-
*
|
|
3155
|
+
* Keywords to match in payee name
|
|
3227
3156
|
*/
|
|
3228
|
-
|
|
3157
|
+
payeeKeywords: Array<string>;
|
|
3229
3158
|
/**
|
|
3230
|
-
*
|
|
3159
|
+
* Keywords to match in category
|
|
3231
3160
|
*/
|
|
3232
|
-
|
|
3233
|
-
};
|
|
3234
|
-
|
|
3235
|
-
export type EventListResponseDto = {
|
|
3161
|
+
categoryKeywords: Array<string>;
|
|
3236
3162
|
/**
|
|
3237
|
-
*
|
|
3163
|
+
* Keywords to match in payment method
|
|
3238
3164
|
*/
|
|
3239
|
-
|
|
3165
|
+
methodKeywords: Array<string>;
|
|
3240
3166
|
/**
|
|
3241
|
-
*
|
|
3167
|
+
* Destination account for categorization
|
|
3242
3168
|
*/
|
|
3243
|
-
|
|
3244
|
-
};
|
|
3245
|
-
|
|
3246
|
-
export type UpdateBeanEventDto = {
|
|
3169
|
+
categoryAccount?: string;
|
|
3247
3170
|
/**
|
|
3248
|
-
*
|
|
3171
|
+
* Keyword matching logic
|
|
3249
3172
|
*/
|
|
3250
|
-
|
|
3173
|
+
matchLogic: 'OR' | 'AND';
|
|
3251
3174
|
/**
|
|
3252
|
-
*
|
|
3175
|
+
* Amount range for matching
|
|
3253
3176
|
*/
|
|
3254
|
-
|
|
3177
|
+
amountRange?: AmountRangeDto;
|
|
3255
3178
|
/**
|
|
3256
|
-
*
|
|
3179
|
+
* Rule priority (0-1000, higher = first match)
|
|
3257
3180
|
*/
|
|
3258
|
-
|
|
3181
|
+
priority: number;
|
|
3259
3182
|
/**
|
|
3260
|
-
*
|
|
3183
|
+
* Whether the rule is enabled
|
|
3261
3184
|
*/
|
|
3262
|
-
|
|
3263
|
-
|
|
3185
|
+
enabled: boolean;
|
|
3186
|
+
/**
|
|
3187
|
+
* Learning source: NLP, REVIEW_CENTER, or null for manual
|
|
3188
|
+
*/
|
|
3189
|
+
learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
|
|
3190
|
+
/**
|
|
3191
|
+
* Whether auto-apply is enabled for this rule
|
|
3192
|
+
*/
|
|
3193
|
+
autoApplyEnabled: boolean;
|
|
3194
|
+
/**
|
|
3195
|
+
* Number of confirmations for NLP-learned rules
|
|
3196
|
+
*/
|
|
3197
|
+
confirmationCount: number;
|
|
3198
|
+
/**
|
|
3199
|
+
* Additional tags
|
|
3200
|
+
*/
|
|
3201
|
+
additionalTags: Array<string>;
|
|
3202
|
+
/**
|
|
3203
|
+
* Additional metadata
|
|
3204
|
+
*/
|
|
3205
|
+
additionalMetadata?: {
|
|
3206
|
+
[key: string]: string;
|
|
3207
|
+
};
|
|
3208
|
+
/**
|
|
3209
|
+
* Created timestamp
|
|
3210
|
+
*/
|
|
3211
|
+
createdAt: string;
|
|
3212
|
+
/**
|
|
3213
|
+
* Updated timestamp
|
|
3214
|
+
*/
|
|
3215
|
+
updatedAt: string;
|
|
3216
|
+
};
|
|
3217
|
+
|
|
3218
|
+
/**
|
|
3219
|
+
* Learning source: NLP, REVIEW_CENTER, or null for manual
|
|
3220
|
+
*/
|
|
3221
|
+
export type learningSource = 'NLP' | 'REVIEW_CENTER';
|
|
3222
|
+
|
|
3223
|
+
export type TransactionRuleListResponseDto = {
|
|
3224
|
+
data: Array<TransactionRuleResponseDto>;
|
|
3225
|
+
/**
|
|
3226
|
+
* Total count of rules
|
|
3227
|
+
*/
|
|
3228
|
+
total: number;
|
|
3229
|
+
/**
|
|
3230
|
+
* Results per page
|
|
3231
|
+
*/
|
|
3232
|
+
limit: number;
|
|
3233
|
+
/**
|
|
3234
|
+
* Pagination offset
|
|
3235
|
+
*/
|
|
3236
|
+
offset: number;
|
|
3237
|
+
};
|
|
3238
|
+
|
|
3239
|
+
export type ValidateRuleDto = {
|
|
3240
|
+
name: string;
|
|
3241
|
+
description?: string;
|
|
3242
|
+
narrationKeywords?: Array<unknown[]>;
|
|
3243
|
+
payeeKeywords?: Array<unknown[]>;
|
|
3244
|
+
categoryKeywords?: Array<unknown[]>;
|
|
3245
|
+
/**
|
|
3246
|
+
* Payment method keywords (e.g., HuaBei, YuEBao)
|
|
3247
|
+
*/
|
|
3248
|
+
methodKeywords?: Array<unknown[]>;
|
|
3249
|
+
/**
|
|
3250
|
+
* Destination account for expenses/income (e.g., Expenses:Food:Coffee)
|
|
3251
|
+
*/
|
|
3252
|
+
categoryAccount?: string;
|
|
3253
|
+
matchLogic: 'OR' | 'AND';
|
|
3254
|
+
/**
|
|
3255
|
+
* Minimum transaction amount (inclusive)
|
|
3256
|
+
*/
|
|
3257
|
+
amountMin?: number;
|
|
3258
|
+
/**
|
|
3259
|
+
* Maximum transaction amount (inclusive)
|
|
3260
|
+
*/
|
|
3261
|
+
amountMax?: number;
|
|
3262
|
+
priority: number;
|
|
3263
|
+
additionalTags?: Array<unknown[]>;
|
|
3264
|
+
additionalMetadata?: {
|
|
3265
|
+
[key: string]: unknown;
|
|
3266
|
+
};
|
|
3267
|
+
/**
|
|
3268
|
+
* If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
|
|
3269
|
+
*/
|
|
3270
|
+
upsertByPayee?: boolean;
|
|
3271
|
+
};
|
|
3272
|
+
|
|
3273
|
+
export type ValidateRuleResponseDto = {
|
|
3274
|
+
/**
|
|
3275
|
+
* Whether the rule configuration is valid
|
|
3276
|
+
*/
|
|
3277
|
+
valid: boolean;
|
|
3278
|
+
/**
|
|
3279
|
+
* List of validation errors (empty if valid)
|
|
3280
|
+
*/
|
|
3281
|
+
errors: Array<unknown[]>;
|
|
3282
|
+
/**
|
|
3283
|
+
* List of validation warnings (non-blocking issues)
|
|
3284
|
+
*/
|
|
3285
|
+
warnings: Array<unknown[]>;
|
|
3286
|
+
};
|
|
3287
|
+
|
|
3288
|
+
export type BulkCreateRulesDto = {
|
|
3289
|
+
/**
|
|
3290
|
+
* Array of rules to import
|
|
3291
|
+
*/
|
|
3292
|
+
rules: Array<unknown[]>;
|
|
3293
|
+
/**
|
|
3294
|
+
* Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
|
|
3295
|
+
*/
|
|
3296
|
+
conflictStrategy: 'replace' | 'skip';
|
|
3297
|
+
};
|
|
3298
|
+
|
|
3299
|
+
/**
|
|
3300
|
+
* Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
|
|
3301
|
+
*/
|
|
3302
|
+
export type conflictStrategy = 'replace' | 'skip';
|
|
3303
|
+
|
|
3304
|
+
export type BulkCreateRulesResponseDto = {
|
|
3305
|
+
/**
|
|
3306
|
+
* Number of successfully created rules
|
|
3307
|
+
*/
|
|
3308
|
+
successCount: number;
|
|
3309
|
+
/**
|
|
3310
|
+
* Number of failed rules
|
|
3311
|
+
*/
|
|
3312
|
+
failureCount: number;
|
|
3313
|
+
/**
|
|
3314
|
+
* Error details for failed rules
|
|
3315
|
+
*/
|
|
3316
|
+
errors: Array<{
|
|
3317
|
+
index?: number;
|
|
3318
|
+
message?: string;
|
|
3319
|
+
}>;
|
|
3320
|
+
/**
|
|
3321
|
+
* IDs of successfully created rules
|
|
3322
|
+
*/
|
|
3323
|
+
createdRuleIds: Array<string>;
|
|
3324
|
+
};
|
|
3325
|
+
|
|
3326
|
+
export type ExportRulesResponseDto = {
|
|
3327
|
+
/**
|
|
3328
|
+
* Export timestamp
|
|
3329
|
+
*/
|
|
3330
|
+
exportedAt: string;
|
|
3331
|
+
/**
|
|
3332
|
+
* User ID
|
|
3333
|
+
*/
|
|
3334
|
+
userId: string;
|
|
3335
|
+
/**
|
|
3336
|
+
* Number of exported rules
|
|
3337
|
+
*/
|
|
3338
|
+
ruleCount: number;
|
|
3339
|
+
/**
|
|
3340
|
+
* Exported rules
|
|
3341
|
+
*/
|
|
3342
|
+
rules: unknown[];
|
|
3343
|
+
};
|
|
3344
|
+
|
|
3345
|
+
export type RuleStatisticsResponseDto = {
|
|
3346
|
+
/**
|
|
3347
|
+
* Statistics time period
|
|
3348
|
+
*/
|
|
3349
|
+
period: '7d' | '30d' | '90d';
|
|
3350
|
+
/**
|
|
3351
|
+
* Total number of rules
|
|
3352
|
+
*/
|
|
3353
|
+
totalRules: number;
|
|
3354
|
+
/**
|
|
3355
|
+
* Number of rules with at least one match
|
|
3356
|
+
*/
|
|
3357
|
+
rulesWithMatches: number;
|
|
3358
|
+
/**
|
|
3359
|
+
* Total number of matches across all rules
|
|
3360
|
+
*/
|
|
3361
|
+
totalMatches: number;
|
|
3362
|
+
/**
|
|
3363
|
+
* Average confidence score across all matches
|
|
3364
|
+
*/
|
|
3365
|
+
averageConfidence: number;
|
|
3366
|
+
/**
|
|
3367
|
+
* Per-rule statistics
|
|
3368
|
+
*/
|
|
3369
|
+
ruleStats: Array<{
|
|
3370
|
+
ruleId?: string;
|
|
3371
|
+
ruleName?: string;
|
|
3372
|
+
matchCount?: number;
|
|
3373
|
+
averageConfidence?: number;
|
|
3374
|
+
}>;
|
|
3375
|
+
};
|
|
3376
|
+
|
|
3377
|
+
/**
|
|
3378
|
+
* Statistics time period
|
|
3379
|
+
*/
|
|
3380
|
+
export type period = '7d' | '30d' | '90d';
|
|
3381
|
+
|
|
3382
|
+
export type UpdateTransactionRuleDto = {
|
|
3383
|
+
name?: string;
|
|
3384
|
+
description?: string;
|
|
3385
|
+
narrationKeywords?: Array<unknown[]>;
|
|
3386
|
+
payeeKeywords?: Array<unknown[]>;
|
|
3387
|
+
categoryKeywords?: Array<unknown[]>;
|
|
3388
|
+
/**
|
|
3389
|
+
* Payment method keywords (e.g., HuaBei, YuEBao)
|
|
3390
|
+
*/
|
|
3391
|
+
methodKeywords?: Array<unknown[]>;
|
|
3392
|
+
/**
|
|
3393
|
+
* Destination account for expenses/income (e.g., Expenses:Food:Coffee)
|
|
3394
|
+
*/
|
|
3395
|
+
categoryAccount?: string;
|
|
3396
|
+
matchLogic?: 'OR' | 'AND';
|
|
3397
|
+
/**
|
|
3398
|
+
* Minimum transaction amount (inclusive)
|
|
3399
|
+
*/
|
|
3400
|
+
amountMin?: number;
|
|
3401
|
+
/**
|
|
3402
|
+
* Maximum transaction amount (inclusive)
|
|
3403
|
+
*/
|
|
3404
|
+
amountMax?: number;
|
|
3405
|
+
priority?: number;
|
|
3406
|
+
/**
|
|
3407
|
+
* Enable or disable the rule
|
|
3408
|
+
*/
|
|
3409
|
+
enabled?: boolean;
|
|
3410
|
+
additionalTags?: Array<unknown[]>;
|
|
3411
|
+
additionalMetadata?: {
|
|
3412
|
+
[key: string]: unknown;
|
|
3413
|
+
};
|
|
3414
|
+
};
|
|
3415
|
+
|
|
3416
|
+
export type TestRuleDto = {
|
|
3417
|
+
narration: string;
|
|
3418
|
+
payee?: string;
|
|
3419
|
+
categoryAccount?: string;
|
|
3420
|
+
amount?: number;
|
|
3421
|
+
currency?: string;
|
|
3422
|
+
};
|
|
3423
|
+
|
|
3424
|
+
export type TestRuleResponseDto = {
|
|
3425
|
+
/**
|
|
3426
|
+
* Rule ID that was tested
|
|
3427
|
+
*/
|
|
3428
|
+
ruleId: string;
|
|
3429
|
+
/**
|
|
3430
|
+
* Whether the rule matched the test data
|
|
3431
|
+
*/
|
|
3432
|
+
matches: boolean;
|
|
3433
|
+
/**
|
|
3434
|
+
* Match confidence score (0-1)
|
|
3435
|
+
*/
|
|
3436
|
+
confidence: number;
|
|
3437
|
+
/**
|
|
3438
|
+
* Details of which fields matched
|
|
3439
|
+
*/
|
|
3440
|
+
matchDetails: {
|
|
3441
|
+
[key: string]: unknown;
|
|
3442
|
+
};
|
|
3443
|
+
};
|
|
3444
|
+
|
|
3445
|
+
export type CreateBeanEventDto = {
|
|
3446
|
+
/**
|
|
3447
|
+
* Life event date (ISO 8601)
|
|
3448
|
+
*/
|
|
3449
|
+
date: string;
|
|
3450
|
+
/**
|
|
3451
|
+
* Life event type (e.g., "employer", "location", "marital-status") — user-defined, no enum constraint at engine layer
|
|
3452
|
+
*/
|
|
3453
|
+
type: string;
|
|
3454
|
+
/**
|
|
3455
|
+
* Life event description. Empty string is a VALID value (distinct from absence).
|
|
3456
|
+
*/
|
|
3457
|
+
description: string;
|
|
3458
|
+
/**
|
|
3459
|
+
* Product-side metadata (lives in BeanEvent.meta JSON, never in engine Event fields)
|
|
3460
|
+
*/
|
|
3461
|
+
meta?: {
|
|
3462
|
+
[key: string]: unknown;
|
|
3463
|
+
};
|
|
3464
|
+
};
|
|
3465
|
+
|
|
3466
|
+
export type EventResponseDto = {
|
|
3467
|
+
/**
|
|
3468
|
+
* Unique identifier
|
|
3469
|
+
*/
|
|
3470
|
+
id: string;
|
|
3471
|
+
/**
|
|
3472
|
+
* User ID (owner of the life event)
|
|
3473
|
+
*/
|
|
3474
|
+
userId: string;
|
|
3475
|
+
/**
|
|
3476
|
+
* Life event date (ISO 8601 format)
|
|
3477
|
+
*/
|
|
3478
|
+
date: string;
|
|
3479
|
+
/**
|
|
3480
|
+
* Life event type (user-defined, e.g., "employer", "location")
|
|
3481
|
+
*/
|
|
3482
|
+
type: string;
|
|
3483
|
+
/**
|
|
3484
|
+
* Life event description. May be an empty string (a valid value distinct from absence).
|
|
3485
|
+
*/
|
|
3486
|
+
description: string;
|
|
3487
|
+
/**
|
|
3488
|
+
* Product-side metadata (free-form JSON)
|
|
3489
|
+
*/
|
|
3490
|
+
meta: {
|
|
3491
|
+
[key: string]: unknown;
|
|
3492
|
+
};
|
|
3493
|
+
/**
|
|
3494
|
+
* Creation timestamp
|
|
3495
|
+
*/
|
|
3496
|
+
createdAt: string;
|
|
3497
|
+
/**
|
|
3498
|
+
* Last update timestamp. Also emitted as the ETag response header for If-Match optimistic concurrency.
|
|
3499
|
+
*/
|
|
3500
|
+
updatedAt: string;
|
|
3501
|
+
};
|
|
3502
|
+
|
|
3503
|
+
export type EventListResponseDto = {
|
|
3504
|
+
/**
|
|
3505
|
+
* List of life events
|
|
3506
|
+
*/
|
|
3507
|
+
items: Array<EventResponseDto>;
|
|
3508
|
+
/**
|
|
3509
|
+
* Total number of life events matching the query
|
|
3510
|
+
*/
|
|
3511
|
+
total: number;
|
|
3512
|
+
};
|
|
3513
|
+
|
|
3514
|
+
export type UpdateBeanEventDto = {
|
|
3515
|
+
/**
|
|
3516
|
+
* Life event date (ISO 8601)
|
|
3517
|
+
*/
|
|
3518
|
+
date?: string;
|
|
3519
|
+
/**
|
|
3520
|
+
* Life event type (user-defined)
|
|
3521
|
+
*/
|
|
3522
|
+
type?: string;
|
|
3523
|
+
/**
|
|
3524
|
+
* Life event description. Empty string is a VALID value (distinct from absence).
|
|
3525
|
+
*/
|
|
3526
|
+
description?: string;
|
|
3527
|
+
/**
|
|
3528
|
+
* Product-side metadata (free-form JSON)
|
|
3529
|
+
*/
|
|
3530
|
+
meta?: {
|
|
3531
|
+
[key: string]: unknown;
|
|
3264
3532
|
};
|
|
3265
3533
|
};
|
|
3266
3534
|
|
|
@@ -3870,6 +4138,14 @@ export type ProcessNlpDto = {
|
|
|
3870
4138
|
parsedData?: {
|
|
3871
4139
|
[key: string]: unknown;
|
|
3872
4140
|
};
|
|
4141
|
+
/**
|
|
4142
|
+
* 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.
|
|
4143
|
+
*/
|
|
4144
|
+
selectedRuleId?: string;
|
|
4145
|
+
/**
|
|
4146
|
+
* 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.
|
|
4147
|
+
*/
|
|
4148
|
+
selectedAccount?: string;
|
|
3873
4149
|
};
|
|
3874
4150
|
|
|
3875
4151
|
export type NlpTransactionInfoDto = {
|
|
@@ -4113,9 +4389,9 @@ export type NlpAccountConfirmationDataDto = {
|
|
|
4113
4389
|
*/
|
|
4114
4390
|
invalidAccount: string;
|
|
4115
4391
|
/**
|
|
4116
|
-
* Suggested replacement account
|
|
4392
|
+
* Suggested replacement account (omitted when no clear candidate)
|
|
4117
4393
|
*/
|
|
4118
|
-
suggestedAccount
|
|
4394
|
+
suggestedAccount?: string;
|
|
4119
4395
|
/**
|
|
4120
4396
|
* Similar accounts for user selection
|
|
4121
4397
|
*/
|
|
@@ -4243,7 +4519,7 @@ export type NlpSuggestedAccountDto = {
|
|
|
4243
4519
|
*/
|
|
4244
4520
|
account: string;
|
|
4245
4521
|
/**
|
|
4246
|
-
* Confidence score for this suggestion (0-1)
|
|
4522
|
+
* Confidence score for this suggestion (0-1). Present = predicted (confirm/confirm_rule/confirm_account); omitted = actual persisted account (created). (#586)
|
|
4247
4523
|
*/
|
|
4248
4524
|
confidence?: number;
|
|
4249
4525
|
};
|
|
@@ -4261,21 +4537,21 @@ export type NlpSuggestedAccountsDto = {
|
|
|
4261
4537
|
|
|
4262
4538
|
export type NlpDefaultAccountsDto = {
|
|
4263
4539
|
/**
|
|
4264
|
-
* Default asset account
|
|
4540
|
+
* Default OPEN asset account (MRU when multiple), or null when none/ambiguous
|
|
4265
4541
|
*/
|
|
4266
|
-
asset: string;
|
|
4542
|
+
asset: string | null;
|
|
4267
4543
|
/**
|
|
4268
|
-
* Default expense account
|
|
4544
|
+
* Default OPEN expense account (MRU when multiple), or null when none/ambiguous
|
|
4269
4545
|
*/
|
|
4270
|
-
expense: string;
|
|
4546
|
+
expense: string | null;
|
|
4271
4547
|
/**
|
|
4272
|
-
* Default income account
|
|
4548
|
+
* Default OPEN income account (MRU when multiple), or null when none/ambiguous
|
|
4273
4549
|
*/
|
|
4274
|
-
income: string;
|
|
4550
|
+
income: string | null;
|
|
4275
4551
|
/**
|
|
4276
|
-
* Default liability account
|
|
4552
|
+
* Default OPEN liability account (MRU when multiple), or null when none/ambiguous
|
|
4277
4553
|
*/
|
|
4278
|
-
liability: string;
|
|
4554
|
+
liability: string | null;
|
|
4279
4555
|
};
|
|
4280
4556
|
|
|
4281
4557
|
export type NlpResponseDto = {
|
|
@@ -4294,7 +4570,8 @@ export type NlpResponseDto = {
|
|
|
4294
4570
|
| 'confirm_rule'
|
|
4295
4571
|
| 'confirm_account'
|
|
4296
4572
|
| 'confirm_payee'
|
|
4297
|
-
| 'cancel'
|
|
4573
|
+
| 'cancel'
|
|
4574
|
+
| 'aborted';
|
|
4298
4575
|
/**
|
|
4299
4576
|
* Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
|
|
4300
4577
|
*/
|
|
@@ -4383,11 +4660,11 @@ export type NlpResponseDto = {
|
|
|
4383
4660
|
*/
|
|
4384
4661
|
recurringSuggestion?: RecurringSuggestionDto;
|
|
4385
4662
|
/**
|
|
4386
|
-
* Suggested accounts for this transaction.
|
|
4663
|
+
* Suggested accounts for this transaction (#586). confirm/confirm_rule/confirm_account: predicted (source/destination carry confidence); created: actual persisted accounts (confidence omitted). confirm_account destination is the suggested replacement, never the invalid account.
|
|
4387
4664
|
*/
|
|
4388
4665
|
suggestedAccounts?: NlpSuggestedAccountsDto;
|
|
4389
4666
|
/**
|
|
4390
|
-
* Default accounts for the user/region.
|
|
4667
|
+
* Default fallback accounts for the user/region (#586). v1 returns universal constants; per-user personalization is planned.
|
|
4391
4668
|
*/
|
|
4392
4669
|
defaultAccounts?: NlpDefaultAccountsDto;
|
|
4393
4670
|
};
|
|
@@ -4408,7 +4685,8 @@ export type action2 =
|
|
|
4408
4685
|
| 'confirm_rule'
|
|
4409
4686
|
| 'confirm_account'
|
|
4410
4687
|
| 'confirm_payee'
|
|
4411
|
-
| 'cancel'
|
|
4688
|
+
| 'cancel'
|
|
4689
|
+
| 'aborted';
|
|
4412
4690
|
|
|
4413
4691
|
/**
|
|
4414
4692
|
* Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
|
|
@@ -4430,6 +4708,127 @@ export type liabilitySubType = 'borrow' | 'repay';
|
|
|
4430
4708
|
*/
|
|
4431
4709
|
export type equitySubType = 'opening' | 'adjustment';
|
|
4432
4710
|
|
|
4711
|
+
export type PlatformListItemDto = {
|
|
4712
|
+
/**
|
|
4713
|
+
* Global platform ID
|
|
4714
|
+
*/
|
|
4715
|
+
id: string;
|
|
4716
|
+
/**
|
|
4717
|
+
* Platform name
|
|
4718
|
+
*/
|
|
4719
|
+
name: string;
|
|
4720
|
+
/**
|
|
4721
|
+
* Platform URL
|
|
4722
|
+
*/
|
|
4723
|
+
url: string;
|
|
4724
|
+
/**
|
|
4725
|
+
* Platform type
|
|
4726
|
+
*/
|
|
4727
|
+
type:
|
|
4728
|
+
| 'BANK'
|
|
4729
|
+
| 'BROKERAGE'
|
|
4730
|
+
| 'CRYPTO_EXCHANGE'
|
|
4731
|
+
| 'PAYMENT'
|
|
4732
|
+
| 'INVESTMENT'
|
|
4733
|
+
| 'INSURANCE'
|
|
4734
|
+
| 'OTHER';
|
|
4735
|
+
/**
|
|
4736
|
+
* Canonical identifier in ACCOUNT_RE format (e.g., "icbc")
|
|
4737
|
+
*/
|
|
4738
|
+
canonical: string;
|
|
4739
|
+
/**
|
|
4740
|
+
* Suggested path segment — canonical with first char uppercased (ACC_COMP_NAME_RE)
|
|
4741
|
+
*/
|
|
4742
|
+
suggestedSegment: string;
|
|
4743
|
+
/**
|
|
4744
|
+
* Logo URL
|
|
4745
|
+
*/
|
|
4746
|
+
logoUrl: string | null;
|
|
4747
|
+
/**
|
|
4748
|
+
* Whether user has accounts using this platform
|
|
4749
|
+
*/
|
|
4750
|
+
isBound: boolean;
|
|
4751
|
+
};
|
|
4752
|
+
|
|
4753
|
+
/**
|
|
4754
|
+
* Platform type
|
|
4755
|
+
*/
|
|
4756
|
+
export type type3 =
|
|
4757
|
+
| 'BANK'
|
|
4758
|
+
| 'BROKERAGE'
|
|
4759
|
+
| 'CRYPTO_EXCHANGE'
|
|
4760
|
+
| 'PAYMENT'
|
|
4761
|
+
| 'INVESTMENT'
|
|
4762
|
+
| 'INSURANCE'
|
|
4763
|
+
| 'OTHER';
|
|
4764
|
+
|
|
4765
|
+
export type PlatformMatchResultDto = {
|
|
4766
|
+
/**
|
|
4767
|
+
* Global platform ID
|
|
4768
|
+
*/
|
|
4769
|
+
id: string;
|
|
4770
|
+
/**
|
|
4771
|
+
* Platform name (e.g., "ICBC")
|
|
4772
|
+
*/
|
|
4773
|
+
name: string;
|
|
4774
|
+
/**
|
|
4775
|
+
* Canonical identifier in ACCOUNT_RE format (e.g., "icbc")
|
|
4776
|
+
*/
|
|
4777
|
+
canonical: string;
|
|
4778
|
+
/**
|
|
4779
|
+
* Platform type
|
|
4780
|
+
*/
|
|
4781
|
+
type:
|
|
4782
|
+
| 'BANK'
|
|
4783
|
+
| 'BROKERAGE'
|
|
4784
|
+
| 'CRYPTO_EXCHANGE'
|
|
4785
|
+
| 'PAYMENT'
|
|
4786
|
+
| 'INVESTMENT'
|
|
4787
|
+
| 'INSURANCE'
|
|
4788
|
+
| 'OTHER';
|
|
4789
|
+
/**
|
|
4790
|
+
* Suggested path segment — canonical, already in ACCOUNT_RE format
|
|
4791
|
+
*/
|
|
4792
|
+
suggestedSegment: string;
|
|
4793
|
+
/**
|
|
4794
|
+
* Logo URL
|
|
4795
|
+
*/
|
|
4796
|
+
logoUrl: string | null;
|
|
4797
|
+
/**
|
|
4798
|
+
* How this row matched: 'exact' > 'prefix' > 'substring'
|
|
4799
|
+
*/
|
|
4800
|
+
matchType: 'exact' | 'prefix' | 'substring';
|
|
4801
|
+
};
|
|
4802
|
+
|
|
4803
|
+
/**
|
|
4804
|
+
* How this row matched: 'exact' > 'prefix' > 'substring'
|
|
4805
|
+
*/
|
|
4806
|
+
export type matchType = 'exact' | 'prefix' | 'substring';
|
|
4807
|
+
|
|
4808
|
+
export type PlatformMatchResponseDto = {
|
|
4809
|
+
/**
|
|
4810
|
+
* Ranked matches, best tier first (at most 10 rows)
|
|
4811
|
+
*/
|
|
4812
|
+
platforms: Array<PlatformMatchResultDto>;
|
|
4813
|
+
/**
|
|
4814
|
+
* Overall match quality — top row's tier, or 'none' when no hits
|
|
4815
|
+
*/
|
|
4816
|
+
matchType: 'none' | 'exact' | 'prefix' | 'substring';
|
|
4817
|
+
/**
|
|
4818
|
+
* Total matches before LIMIT (truncation transparency)
|
|
4819
|
+
*/
|
|
4820
|
+
total: number;
|
|
4821
|
+
/**
|
|
4822
|
+
* true when total > platforms.length (more matches exist)
|
|
4823
|
+
*/
|
|
4824
|
+
hasMore: boolean;
|
|
4825
|
+
};
|
|
4826
|
+
|
|
4827
|
+
/**
|
|
4828
|
+
* Overall match quality — top row's tier, or 'none' when no hits
|
|
4829
|
+
*/
|
|
4830
|
+
export type matchType2 = 'none' | 'exact' | 'prefix' | 'substring';
|
|
4831
|
+
|
|
4433
4832
|
export type CreatePlatformDto = {
|
|
4434
4833
|
/**
|
|
4435
4834
|
* Platform name
|
|
@@ -4468,18 +4867,6 @@ export type CreatePlatformDto = {
|
|
|
4468
4867
|
isActive?: boolean;
|
|
4469
4868
|
};
|
|
4470
4869
|
|
|
4471
|
-
/**
|
|
4472
|
-
* Platform type
|
|
4473
|
-
*/
|
|
4474
|
-
export type type3 =
|
|
4475
|
-
| 'BANK'
|
|
4476
|
-
| 'BROKERAGE'
|
|
4477
|
-
| 'CRYPTO_EXCHANGE'
|
|
4478
|
-
| 'PAYMENT'
|
|
4479
|
-
| 'INVESTMENT'
|
|
4480
|
-
| 'INSURANCE'
|
|
4481
|
-
| 'OTHER';
|
|
4482
|
-
|
|
4483
4870
|
export type UpdatePlatformDto = {
|
|
4484
4871
|
/**
|
|
4485
4872
|
* Platform name
|
|
@@ -5231,185 +5618,146 @@ export type HoldingPnlResponseDto = {
|
|
|
5231
5618
|
*/
|
|
5232
5619
|
export type method = 'average' | 'FIFO';
|
|
5233
5620
|
|
|
5234
|
-
export type
|
|
5235
|
-
/**
|
|
5236
|
-
* ISO 4217 currency code
|
|
5237
|
-
*/
|
|
5238
|
-
currency: string;
|
|
5239
|
-
/**
|
|
5240
|
-
* Balance amount
|
|
5241
|
-
*/
|
|
5242
|
-
balance: string;
|
|
5243
|
-
};
|
|
5244
|
-
|
|
5245
|
-
export type TimeSeriesPointDto = {
|
|
5246
|
-
/**
|
|
5247
|
-
* Date in YYYY-MM-DD format
|
|
5248
|
-
*/
|
|
5249
|
-
date: string;
|
|
5250
|
-
/**
|
|
5251
|
-
* Value at this date (in base currency)
|
|
5252
|
-
*/
|
|
5253
|
-
value: string;
|
|
5254
|
-
/**
|
|
5255
|
-
* Change from previous point
|
|
5256
|
-
*/
|
|
5257
|
-
change?: {
|
|
5258
|
-
[key: string]: unknown;
|
|
5259
|
-
};
|
|
5260
|
-
/**
|
|
5261
|
-
* Total assets at this date (in base currency)
|
|
5262
|
-
*/
|
|
5263
|
-
assets?: string;
|
|
5264
|
-
/**
|
|
5265
|
-
* Total liabilities at this date (in base currency)
|
|
5266
|
-
*/
|
|
5267
|
-
liabilities?: string;
|
|
5268
|
-
/**
|
|
5269
|
-
* Multi-currency breakdown for this point
|
|
5270
|
-
*/
|
|
5271
|
-
byCurrency?: Array<CurrencyBalanceDto>;
|
|
5272
|
-
};
|
|
5273
|
-
|
|
5274
|
-
export type TrendSummaryDto = {
|
|
5275
|
-
/**
|
|
5276
|
-
* Value at start of period
|
|
5277
|
-
*/
|
|
5278
|
-
startValue: string;
|
|
5279
|
-
/**
|
|
5280
|
-
* Value at end of period
|
|
5281
|
-
*/
|
|
5282
|
-
endValue: string;
|
|
5283
|
-
/**
|
|
5284
|
-
* Total change over period
|
|
5285
|
-
*/
|
|
5286
|
-
totalChange: string;
|
|
5621
|
+
export type AnonymousLoginDto = {
|
|
5287
5622
|
/**
|
|
5288
|
-
*
|
|
5623
|
+
* Access token for anonymous login
|
|
5289
5624
|
*/
|
|
5290
|
-
|
|
5625
|
+
accessToken: string;
|
|
5291
5626
|
};
|
|
5292
5627
|
|
|
5293
|
-
export type
|
|
5294
|
-
/**
|
|
5295
|
-
* Date in YYYY-MM-DD format
|
|
5296
|
-
*/
|
|
5297
|
-
date: string;
|
|
5628
|
+
export type AnonymousLoginResponseDto = {
|
|
5298
5629
|
/**
|
|
5299
|
-
*
|
|
5630
|
+
* JWT auth token
|
|
5300
5631
|
*/
|
|
5301
|
-
|
|
5632
|
+
authToken: string;
|
|
5302
5633
|
};
|
|
5303
5634
|
|
|
5304
|
-
export type
|
|
5305
|
-
|
|
5306
|
-
|
|
5307
|
-
|
|
5308
|
-
|
|
5309
|
-
|
|
5310
|
-
|
|
5311
|
-
|
|
5312
|
-
summary: TrendSummaryDto;
|
|
5313
|
-
/**
|
|
5314
|
-
* Period requested
|
|
5315
|
-
*/
|
|
5316
|
-
period: string;
|
|
5635
|
+
export type SymbolSearchResultDto = {
|
|
5636
|
+
symbol: string;
|
|
5637
|
+
name?: {
|
|
5638
|
+
[key: string]: unknown;
|
|
5639
|
+
} | null;
|
|
5640
|
+
exchange?: {
|
|
5641
|
+
[key: string]: unknown;
|
|
5642
|
+
} | null;
|
|
5317
5643
|
/**
|
|
5318
|
-
*
|
|
5644
|
+
* OpenBB asset_type (e.g. stock, etf)
|
|
5319
5645
|
*/
|
|
5320
|
-
|
|
5646
|
+
assetType?: {
|
|
5647
|
+
[key: string]: unknown;
|
|
5648
|
+
} | null;
|
|
5321
5649
|
/**
|
|
5322
|
-
*
|
|
5650
|
+
* IGN asset class (region.types.ts ASSET_CLASSES)
|
|
5323
5651
|
*/
|
|
5324
|
-
|
|
5652
|
+
assetClass?: {
|
|
5653
|
+
[key: string]: unknown;
|
|
5654
|
+
} | null;
|
|
5325
5655
|
/**
|
|
5326
|
-
*
|
|
5656
|
+
* IGN asset sub-class (region.types.ts ASSET_SUB_CLASSES)
|
|
5327
5657
|
*/
|
|
5328
|
-
|
|
5658
|
+
assetSubClass?: {
|
|
5659
|
+
[key: string]: unknown;
|
|
5660
|
+
} | null;
|
|
5329
5661
|
/**
|
|
5330
|
-
*
|
|
5662
|
+
* Trading currency (extra_data or inferred from exchange)
|
|
5331
5663
|
*/
|
|
5332
|
-
|
|
5664
|
+
currency?: {
|
|
5665
|
+
[key: string]: unknown;
|
|
5666
|
+
} | null;
|
|
5333
5667
|
};
|
|
5334
5668
|
|
|
5335
|
-
export type
|
|
5336
|
-
|
|
5337
|
-
|
|
5338
|
-
|
|
5339
|
-
|
|
5669
|
+
export type SymbolQuoteDto = {
|
|
5670
|
+
symbol?: string;
|
|
5671
|
+
name?: {
|
|
5672
|
+
[key: string]: unknown;
|
|
5673
|
+
} | null;
|
|
5674
|
+
exchange?: {
|
|
5675
|
+
[key: string]: unknown;
|
|
5676
|
+
} | null;
|
|
5340
5677
|
/**
|
|
5341
|
-
*
|
|
5678
|
+
* OpenBB asset_type
|
|
5342
5679
|
*/
|
|
5343
|
-
|
|
5680
|
+
assetType?: {
|
|
5681
|
+
[key: string]: unknown;
|
|
5682
|
+
} | null;
|
|
5344
5683
|
/**
|
|
5345
|
-
*
|
|
5684
|
+
* IGN asset class
|
|
5346
5685
|
*/
|
|
5347
|
-
|
|
5686
|
+
assetClass?: {
|
|
5687
|
+
[key: string]: unknown;
|
|
5688
|
+
} | null;
|
|
5348
5689
|
/**
|
|
5349
|
-
*
|
|
5690
|
+
* IGN asset sub-class
|
|
5350
5691
|
*/
|
|
5351
|
-
|
|
5352
|
-
|
|
5353
|
-
|
|
5354
|
-
export type CashFlowTrendSummaryDto = {
|
|
5692
|
+
assetSubClass?: {
|
|
5693
|
+
[key: string]: unknown;
|
|
5694
|
+
} | null;
|
|
5355
5695
|
/**
|
|
5356
|
-
*
|
|
5696
|
+
* Trading currency (extra_data or inferred from exchange)
|
|
5357
5697
|
*/
|
|
5358
|
-
|
|
5698
|
+
currency?: {
|
|
5699
|
+
[key: string]: unknown;
|
|
5700
|
+
} | null;
|
|
5359
5701
|
/**
|
|
5360
|
-
*
|
|
5702
|
+
* Latest price (Decimal string)
|
|
5361
5703
|
*/
|
|
5362
|
-
|
|
5704
|
+
price?: {
|
|
5705
|
+
[key: string]: unknown;
|
|
5706
|
+
} | null;
|
|
5363
5707
|
/**
|
|
5364
|
-
*
|
|
5708
|
+
* Date the price was observed (ISO yyyy-MM-dd)
|
|
5365
5709
|
*/
|
|
5366
|
-
|
|
5710
|
+
priceDate?: {
|
|
5711
|
+
[key: string]: unknown;
|
|
5712
|
+
} | null;
|
|
5367
5713
|
/**
|
|
5368
|
-
*
|
|
5714
|
+
* 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.
|
|
5369
5715
|
*/
|
|
5370
|
-
|
|
5371
|
-
|
|
5372
|
-
|
|
5373
|
-
export type CashFlowTrendsResponseDto = {
|
|
5716
|
+
changePercent?: {
|
|
5717
|
+
[key: string]: unknown;
|
|
5718
|
+
} | null;
|
|
5374
5719
|
/**
|
|
5375
|
-
*
|
|
5720
|
+
* Previous close (Decimal string)
|
|
5376
5721
|
*/
|
|
5377
|
-
|
|
5722
|
+
prevClose?: {
|
|
5723
|
+
[key: string]: unknown;
|
|
5724
|
+
} | null;
|
|
5378
5725
|
/**
|
|
5379
|
-
*
|
|
5726
|
+
* Day open (Decimal string)
|
|
5380
5727
|
*/
|
|
5381
|
-
|
|
5728
|
+
open?: {
|
|
5729
|
+
[key: string]: unknown;
|
|
5730
|
+
} | null;
|
|
5382
5731
|
/**
|
|
5383
|
-
*
|
|
5732
|
+
* Day high (Decimal string)
|
|
5384
5733
|
*/
|
|
5385
|
-
|
|
5734
|
+
high?: {
|
|
5735
|
+
[key: string]: unknown;
|
|
5736
|
+
} | null;
|
|
5386
5737
|
/**
|
|
5387
|
-
*
|
|
5738
|
+
* Day low (Decimal string)
|
|
5388
5739
|
*/
|
|
5389
|
-
|
|
5740
|
+
low?: {
|
|
5741
|
+
[key: string]: unknown;
|
|
5742
|
+
} | null;
|
|
5390
5743
|
/**
|
|
5391
|
-
*
|
|
5744
|
+
* Day volume (Decimal string)
|
|
5392
5745
|
*/
|
|
5393
|
-
|
|
5746
|
+
volume?: {
|
|
5747
|
+
[key: string]: unknown;
|
|
5748
|
+
} | null;
|
|
5394
5749
|
/**
|
|
5395
|
-
*
|
|
5750
|
+
* 52-week high (Decimal string)
|
|
5396
5751
|
*/
|
|
5397
|
-
|
|
5398
|
-
|
|
5399
|
-
|
|
5400
|
-
export type GenerateSnapshotBody = unknown;
|
|
5401
|
-
|
|
5402
|
-
export type GenerateSnapshotResponse = unknown;
|
|
5403
|
-
|
|
5404
|
-
export type BackfillSnapshotsBody = unknown;
|
|
5405
|
-
|
|
5406
|
-
export type BackfillSnapshotsResponse = unknown;
|
|
5407
|
-
|
|
5408
|
-
export type AnonymousLoginDto = {
|
|
5752
|
+
yearHigh?: {
|
|
5753
|
+
[key: string]: unknown;
|
|
5754
|
+
} | null;
|
|
5409
5755
|
/**
|
|
5410
|
-
*
|
|
5756
|
+
* 52-week low (Decimal string)
|
|
5411
5757
|
*/
|
|
5412
|
-
|
|
5758
|
+
yearLow?: {
|
|
5759
|
+
[key: string]: unknown;
|
|
5760
|
+
} | null;
|
|
5413
5761
|
};
|
|
5414
5762
|
|
|
5415
5763
|
export type AccountControllerCreateData = {
|
|
@@ -6445,18 +6793,166 @@ export type ExpectedTransactionControllerEnterNowData = {
|
|
|
6445
6793
|
|
|
6446
6794
|
export type ExpectedTransactionControllerEnterNowResponse = unknown;
|
|
6447
6795
|
|
|
6448
|
-
export type ForecastControllerGetForecastData = {
|
|
6449
|
-
/**
|
|
6450
|
-
* Number of months to forecast (1-12, default 3)
|
|
6451
|
-
*/
|
|
6452
|
-
months?: number;
|
|
6796
|
+
export type ForecastControllerGetForecastData = {
|
|
6797
|
+
/**
|
|
6798
|
+
* Number of months to forecast (1-12, default 3)
|
|
6799
|
+
*/
|
|
6800
|
+
months?: number;
|
|
6801
|
+
/**
|
|
6802
|
+
* Region code for tenant context
|
|
6803
|
+
*/
|
|
6804
|
+
region: 'cn' | 'us' | 'de' | 'gb';
|
|
6805
|
+
};
|
|
6806
|
+
|
|
6807
|
+
export type ForecastControllerGetForecastResponse = ForecastResponseDto;
|
|
6808
|
+
|
|
6809
|
+
export type ReportingControllerGetPortfolioTrendsData = {
|
|
6810
|
+
/**
|
|
6811
|
+
* Data granularity
|
|
6812
|
+
*/
|
|
6813
|
+
granularity?: 'day' | 'week' | 'month';
|
|
6814
|
+
/**
|
|
6815
|
+
* Time period
|
|
6816
|
+
*/
|
|
6817
|
+
period?: '1m' | '3m' | '6m' | '1y';
|
|
6818
|
+
/**
|
|
6819
|
+
* Region code for tenant context
|
|
6820
|
+
*/
|
|
6821
|
+
region: 'cn' | 'us' | 'de' | 'gb';
|
|
6822
|
+
};
|
|
6823
|
+
|
|
6824
|
+
export type ReportingControllerGetPortfolioTrendsResponse =
|
|
6825
|
+
PortfolioTrendsResponseDto;
|
|
6826
|
+
|
|
6827
|
+
export type ReportingControllerGetCashFlowTrendsData = {
|
|
6828
|
+
/**
|
|
6829
|
+
* Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
6830
|
+
*/
|
|
6831
|
+
granularity?: 'day' | 'week' | 'month';
|
|
6832
|
+
/**
|
|
6833
|
+
* Time period
|
|
6834
|
+
*/
|
|
6835
|
+
period?: '1m' | '3m' | '6m' | '1y';
|
|
6836
|
+
/**
|
|
6837
|
+
* Region code for tenant context
|
|
6838
|
+
*/
|
|
6839
|
+
region: 'cn' | 'us' | 'de' | 'gb';
|
|
6840
|
+
};
|
|
6841
|
+
|
|
6842
|
+
export type ReportingControllerGetCashFlowTrendsResponse =
|
|
6843
|
+
CashFlowTrendsResponseDto;
|
|
6844
|
+
|
|
6845
|
+
export type ReportingControllerGenerateSnapshotData = {
|
|
6846
|
+
/**
|
|
6847
|
+
* Region code for tenant context
|
|
6848
|
+
*/
|
|
6849
|
+
region: 'cn' | 'us' | 'de' | 'gb';
|
|
6850
|
+
/**
|
|
6851
|
+
* Optional date (defaults to today)
|
|
6852
|
+
*/
|
|
6853
|
+
requestBody: GenerateSnapshotBody;
|
|
6854
|
+
};
|
|
6855
|
+
|
|
6856
|
+
export type ReportingControllerGenerateSnapshotResponse =
|
|
6857
|
+
GenerateSnapshotResponse;
|
|
6858
|
+
|
|
6859
|
+
export type ReportingControllerBackfillSnapshotsData = {
|
|
6860
|
+
/**
|
|
6861
|
+
* Region code for tenant context
|
|
6862
|
+
*/
|
|
6863
|
+
region: 'cn' | 'us' | 'de' | 'gb';
|
|
6864
|
+
requestBody: BackfillSnapshotsBody;
|
|
6865
|
+
};
|
|
6866
|
+
|
|
6867
|
+
export type ReportingControllerBackfillSnapshotsResponse =
|
|
6868
|
+
BackfillSnapshotsResponse;
|
|
6869
|
+
|
|
6870
|
+
export type UserControllerDeleteOwnUserData = {
|
|
6871
|
+
requestBody: DeleteOwnUserDto;
|
|
6872
|
+
};
|
|
6873
|
+
|
|
6874
|
+
export type UserControllerDeleteOwnUserResponse = void;
|
|
6875
|
+
|
|
6876
|
+
export type UserControllerGetUserData = {
|
|
6877
|
+
acceptLanguage: string;
|
|
6878
|
+
};
|
|
6879
|
+
|
|
6880
|
+
export type UserControllerGetUserResponse = unknown;
|
|
6881
|
+
|
|
6882
|
+
export type UserControllerSignupUserData = {
|
|
6883
|
+
requestBody: SignupDto;
|
|
6884
|
+
};
|
|
6885
|
+
|
|
6886
|
+
export type UserControllerSignupUserResponse = SignupResponseDto;
|
|
6887
|
+
|
|
6888
|
+
export type UserControllerDeleteUserData = {
|
|
6889
|
+
/**
|
|
6890
|
+
* User ID to delete
|
|
6891
|
+
*/
|
|
6892
|
+
id: string;
|
|
6893
|
+
};
|
|
6894
|
+
|
|
6895
|
+
export type UserControllerDeleteUserResponse = void;
|
|
6896
|
+
|
|
6897
|
+
export type UserControllerGetUserInfoData = {
|
|
6898
|
+
/**
|
|
6899
|
+
* User ID
|
|
6900
|
+
*/
|
|
6901
|
+
id: string;
|
|
6902
|
+
};
|
|
6903
|
+
|
|
6904
|
+
export type UserControllerGetUserInfoResponse = unknown;
|
|
6905
|
+
|
|
6906
|
+
export type UserControllerUpdateUserSettingData = {
|
|
6907
|
+
requestBody: UpdateUserSettingDto;
|
|
6908
|
+
};
|
|
6909
|
+
|
|
6910
|
+
export type UserControllerUpdateUserSettingResponse = unknown;
|
|
6911
|
+
|
|
6912
|
+
export type UserControllerGetAllUserSettingsByPageData = {
|
|
6913
|
+
/**
|
|
6914
|
+
* Page number
|
|
6915
|
+
*/
|
|
6916
|
+
pageNo: number;
|
|
6917
|
+
/**
|
|
6918
|
+
* Page size
|
|
6919
|
+
*/
|
|
6920
|
+
pageSize: number;
|
|
6921
|
+
};
|
|
6922
|
+
|
|
6923
|
+
export type UserControllerGetAllUserSettingsByPageResponse = unknown;
|
|
6924
|
+
|
|
6925
|
+
export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
|
|
6926
|
+
|
|
6927
|
+
export type PropertyControllerGetAllResponse = unknown;
|
|
6928
|
+
|
|
6929
|
+
export type PropertyControllerGetByKeyData = {
|
|
6930
|
+
/**
|
|
6931
|
+
* Property key
|
|
6932
|
+
*/
|
|
6933
|
+
key: string;
|
|
6934
|
+
};
|
|
6935
|
+
|
|
6936
|
+
export type PropertyControllerGetByKeyResponse = unknown;
|
|
6937
|
+
|
|
6938
|
+
export type PropertyControllerUpdateData = {
|
|
6939
|
+
/**
|
|
6940
|
+
* Property key
|
|
6941
|
+
*/
|
|
6942
|
+
key: string;
|
|
6943
|
+
requestBody: UpdatePropertyDto;
|
|
6944
|
+
};
|
|
6945
|
+
|
|
6946
|
+
export type PropertyControllerUpdateResponse = unknown;
|
|
6947
|
+
|
|
6948
|
+
export type PropertyControllerDeleteData = {
|
|
6453
6949
|
/**
|
|
6454
|
-
*
|
|
6950
|
+
* Property key
|
|
6455
6951
|
*/
|
|
6456
|
-
|
|
6952
|
+
key: string;
|
|
6457
6953
|
};
|
|
6458
6954
|
|
|
6459
|
-
export type
|
|
6955
|
+
export type PropertyControllerDeleteResponse = void;
|
|
6460
6956
|
|
|
6461
6957
|
export type TransactionRuleControllerCreateData = {
|
|
6462
6958
|
/**
|
|
@@ -6603,93 +7099,6 @@ export type TransactionRuleControllerTestData = {
|
|
|
6603
7099
|
|
|
6604
7100
|
export type TransactionRuleControllerTestResponse = TestRuleResponseDto;
|
|
6605
7101
|
|
|
6606
|
-
export type UserControllerDeleteOwnUserData = {
|
|
6607
|
-
requestBody: DeleteOwnUserDto;
|
|
6608
|
-
};
|
|
6609
|
-
|
|
6610
|
-
export type UserControllerDeleteOwnUserResponse = void;
|
|
6611
|
-
|
|
6612
|
-
export type UserControllerGetUserData = {
|
|
6613
|
-
acceptLanguage: string;
|
|
6614
|
-
};
|
|
6615
|
-
|
|
6616
|
-
export type UserControllerGetUserResponse = unknown;
|
|
6617
|
-
|
|
6618
|
-
export type UserControllerSignupUserData = {
|
|
6619
|
-
requestBody: SignupDto;
|
|
6620
|
-
};
|
|
6621
|
-
|
|
6622
|
-
export type UserControllerSignupUserResponse = unknown;
|
|
6623
|
-
|
|
6624
|
-
export type UserControllerDeleteUserData = {
|
|
6625
|
-
/**
|
|
6626
|
-
* User ID to delete
|
|
6627
|
-
*/
|
|
6628
|
-
id: string;
|
|
6629
|
-
};
|
|
6630
|
-
|
|
6631
|
-
export type UserControllerDeleteUserResponse = void;
|
|
6632
|
-
|
|
6633
|
-
export type UserControllerGetUserInfoData = {
|
|
6634
|
-
/**
|
|
6635
|
-
* User ID
|
|
6636
|
-
*/
|
|
6637
|
-
id: string;
|
|
6638
|
-
};
|
|
6639
|
-
|
|
6640
|
-
export type UserControllerGetUserInfoResponse = unknown;
|
|
6641
|
-
|
|
6642
|
-
export type UserControllerUpdateUserSettingData = {
|
|
6643
|
-
requestBody: UpdateUserSettingDto;
|
|
6644
|
-
};
|
|
6645
|
-
|
|
6646
|
-
export type UserControllerUpdateUserSettingResponse = unknown;
|
|
6647
|
-
|
|
6648
|
-
export type UserControllerGetAllUserSettingsByPageData = {
|
|
6649
|
-
/**
|
|
6650
|
-
* Page number
|
|
6651
|
-
*/
|
|
6652
|
-
pageNo: number;
|
|
6653
|
-
/**
|
|
6654
|
-
* Page size
|
|
6655
|
-
*/
|
|
6656
|
-
pageSize: number;
|
|
6657
|
-
};
|
|
6658
|
-
|
|
6659
|
-
export type UserControllerGetAllUserSettingsByPageResponse = unknown;
|
|
6660
|
-
|
|
6661
|
-
export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
|
|
6662
|
-
|
|
6663
|
-
export type PropertyControllerGetAllResponse = unknown;
|
|
6664
|
-
|
|
6665
|
-
export type PropertyControllerGetByKeyData = {
|
|
6666
|
-
/**
|
|
6667
|
-
* Property key
|
|
6668
|
-
*/
|
|
6669
|
-
key: string;
|
|
6670
|
-
};
|
|
6671
|
-
|
|
6672
|
-
export type PropertyControllerGetByKeyResponse = unknown;
|
|
6673
|
-
|
|
6674
|
-
export type PropertyControllerUpdateData = {
|
|
6675
|
-
/**
|
|
6676
|
-
* Property key
|
|
6677
|
-
*/
|
|
6678
|
-
key: string;
|
|
6679
|
-
requestBody: UpdatePropertyDto;
|
|
6680
|
-
};
|
|
6681
|
-
|
|
6682
|
-
export type PropertyControllerUpdateResponse = unknown;
|
|
6683
|
-
|
|
6684
|
-
export type PropertyControllerDeleteData = {
|
|
6685
|
-
/**
|
|
6686
|
-
* Property key
|
|
6687
|
-
*/
|
|
6688
|
-
key: string;
|
|
6689
|
-
};
|
|
6690
|
-
|
|
6691
|
-
export type PropertyControllerDeleteResponse = void;
|
|
6692
|
-
|
|
6693
7102
|
export type EventControllerCreateData = {
|
|
6694
7103
|
/**
|
|
6695
7104
|
* Region code for tenant context (decorative for life events)
|
|
@@ -7103,7 +7512,8 @@ export type PlatformControllerCreateData = {
|
|
|
7103
7512
|
|
|
7104
7513
|
export type PlatformControllerCreateResponse = unknown;
|
|
7105
7514
|
|
|
7106
|
-
export type PlatformControllerGetPlatformListResponse =
|
|
7515
|
+
export type PlatformControllerGetPlatformListResponse =
|
|
7516
|
+
Array<PlatformListItemDto>;
|
|
7107
7517
|
|
|
7108
7518
|
export type PlatformControllerMatchPlatformsData = {
|
|
7109
7519
|
/**
|
|
@@ -7116,7 +7526,7 @@ export type PlatformControllerMatchPlatformsData = {
|
|
|
7116
7526
|
region?: string;
|
|
7117
7527
|
};
|
|
7118
7528
|
|
|
7119
|
-
export type PlatformControllerMatchPlatformsResponse =
|
|
7529
|
+
export type PlatformControllerMatchPlatformsResponse = PlatformMatchResponseDto;
|
|
7120
7530
|
|
|
7121
7531
|
export type PlatformControllerUpdateData = {
|
|
7122
7532
|
/**
|
|
@@ -7234,74 +7644,13 @@ export type HoldingPnlControllerGetHoldingPnlData = {
|
|
|
7234
7644
|
|
|
7235
7645
|
export type HoldingPnlControllerGetHoldingPnlResponse = HoldingPnlResponseDto;
|
|
7236
7646
|
|
|
7237
|
-
export type ReportingControllerGetPortfolioTrendsData = {
|
|
7238
|
-
/**
|
|
7239
|
-
* Data granularity
|
|
7240
|
-
*/
|
|
7241
|
-
granularity?: 'day' | 'week' | 'month';
|
|
7242
|
-
/**
|
|
7243
|
-
* Time period
|
|
7244
|
-
*/
|
|
7245
|
-
period?: '1m' | '3m' | '6m' | '1y';
|
|
7246
|
-
/**
|
|
7247
|
-
* Region code for tenant context
|
|
7248
|
-
*/
|
|
7249
|
-
region: 'cn' | 'us' | 'de' | 'gb';
|
|
7250
|
-
};
|
|
7251
|
-
|
|
7252
|
-
export type ReportingControllerGetPortfolioTrendsResponse =
|
|
7253
|
-
PortfolioTrendsResponseDto;
|
|
7254
|
-
|
|
7255
|
-
export type ReportingControllerGetCashFlowTrendsData = {
|
|
7256
|
-
/**
|
|
7257
|
-
* Data granularity (accepted for API symmetry; v1 returns month buckets)
|
|
7258
|
-
*/
|
|
7259
|
-
granularity?: 'day' | 'week' | 'month';
|
|
7260
|
-
/**
|
|
7261
|
-
* Time period
|
|
7262
|
-
*/
|
|
7263
|
-
period?: '1m' | '3m' | '6m' | '1y';
|
|
7264
|
-
/**
|
|
7265
|
-
* Region code for tenant context
|
|
7266
|
-
*/
|
|
7267
|
-
region: 'cn' | 'us' | 'de' | 'gb';
|
|
7268
|
-
};
|
|
7269
|
-
|
|
7270
|
-
export type ReportingControllerGetCashFlowTrendsResponse =
|
|
7271
|
-
CashFlowTrendsResponseDto;
|
|
7272
|
-
|
|
7273
|
-
export type ReportingControllerGenerateSnapshotData = {
|
|
7274
|
-
/**
|
|
7275
|
-
* Region code for tenant context
|
|
7276
|
-
*/
|
|
7277
|
-
region: 'cn' | 'us' | 'de' | 'gb';
|
|
7278
|
-
/**
|
|
7279
|
-
* Optional date (defaults to today)
|
|
7280
|
-
*/
|
|
7281
|
-
requestBody: GenerateSnapshotBody;
|
|
7282
|
-
};
|
|
7283
|
-
|
|
7284
|
-
export type ReportingControllerGenerateSnapshotResponse =
|
|
7285
|
-
GenerateSnapshotResponse;
|
|
7286
|
-
|
|
7287
|
-
export type ReportingControllerBackfillSnapshotsData = {
|
|
7288
|
-
/**
|
|
7289
|
-
* Region code for tenant context
|
|
7290
|
-
*/
|
|
7291
|
-
region: 'cn' | 'us' | 'de' | 'gb';
|
|
7292
|
-
requestBody: BackfillSnapshotsBody;
|
|
7293
|
-
};
|
|
7294
|
-
|
|
7295
|
-
export type ReportingControllerBackfillSnapshotsResponse =
|
|
7296
|
-
BackfillSnapshotsResponse;
|
|
7297
|
-
|
|
7298
7647
|
export type ApiKeysControllerCreateApiKeyResponse = unknown;
|
|
7299
7648
|
|
|
7300
7649
|
export type AuthControllerAccessTokenLoginData = {
|
|
7301
7650
|
requestBody: AnonymousLoginDto;
|
|
7302
7651
|
};
|
|
7303
7652
|
|
|
7304
|
-
export type AuthControllerAccessTokenLoginResponse =
|
|
7653
|
+
export type AuthControllerAccessTokenLoginResponse = AnonymousLoginResponseDto;
|
|
7305
7654
|
|
|
7306
7655
|
export type CacheControllerFlushCacheResponse = unknown;
|
|
7307
7656
|
|
|
@@ -7341,6 +7690,33 @@ export type HealthControllerGetMetricsResponse = unknown;
|
|
|
7341
7690
|
|
|
7342
7691
|
export type InfoControllerGetInfoResponse = unknown;
|
|
7343
7692
|
|
|
7693
|
+
export type SymbolControllerSearchData = {
|
|
7694
|
+
/**
|
|
7695
|
+
* Filter by OpenBB asset_type (e.g. stock, etf)
|
|
7696
|
+
*/
|
|
7697
|
+
assetType?: string;
|
|
7698
|
+
/**
|
|
7699
|
+
* Filter by exchange code (e.g. US, HK, SS, SZ)
|
|
7700
|
+
*/
|
|
7701
|
+
exchange?: string;
|
|
7702
|
+
/**
|
|
7703
|
+
* Maximum number of results (clamped 1..50)
|
|
7704
|
+
*/
|
|
7705
|
+
limit?: number;
|
|
7706
|
+
/**
|
|
7707
|
+
* Search term — matched against symbol and instrument name. Empty string returns [].
|
|
7708
|
+
*/
|
|
7709
|
+
q: string;
|
|
7710
|
+
};
|
|
7711
|
+
|
|
7712
|
+
export type SymbolControllerSearchResponse = Array<SymbolSearchResultDto>;
|
|
7713
|
+
|
|
7714
|
+
export type SymbolControllerGetQuoteData = {
|
|
7715
|
+
symbol: string;
|
|
7716
|
+
};
|
|
7717
|
+
|
|
7718
|
+
export type SymbolControllerGetQuoteResponse = SymbolQuoteDto;
|
|
7719
|
+
|
|
7344
7720
|
export type $OpenApiTs = {
|
|
7345
7721
|
'/api/v1/{region}/bean/accounts': {
|
|
7346
7722
|
post: {
|
|
@@ -7405,7 +7781,7 @@ export type $OpenApiTs = {
|
|
|
7405
7781
|
*/
|
|
7406
7782
|
404: unknown;
|
|
7407
7783
|
/**
|
|
7408
|
-
* Account has transactions and cannot be deleted
|
|
7784
|
+
* Account has active transactions and cannot be deleted
|
|
7409
7785
|
*/
|
|
7410
7786
|
409: unknown;
|
|
7411
7787
|
};
|
|
@@ -8382,425 +8758,497 @@ export type $OpenApiTs = {
|
|
|
8382
8758
|
};
|
|
8383
8759
|
'/api/v1/{region}/bean/expected-transactions/{id}/enter': {
|
|
8384
8760
|
post: {
|
|
8385
|
-
req: ExpectedTransactionControllerEnterNowData;
|
|
8761
|
+
req: ExpectedTransactionControllerEnterNowData;
|
|
8762
|
+
res: {
|
|
8763
|
+
/**
|
|
8764
|
+
* Transaction created successfully
|
|
8765
|
+
*/
|
|
8766
|
+
201: unknown;
|
|
8767
|
+
/**
|
|
8768
|
+
* Cannot enter - not in PENDING status or missing accounts
|
|
8769
|
+
*/
|
|
8770
|
+
400: unknown;
|
|
8771
|
+
/**
|
|
8772
|
+
* Expected transaction or accounts not found
|
|
8773
|
+
*/
|
|
8774
|
+
404: unknown;
|
|
8775
|
+
};
|
|
8776
|
+
};
|
|
8777
|
+
};
|
|
8778
|
+
'/api/v1/{region}/bean/recurring/forecast': {
|
|
8779
|
+
get: {
|
|
8780
|
+
req: ForecastControllerGetForecastData;
|
|
8781
|
+
res: {
|
|
8782
|
+
/**
|
|
8783
|
+
* Forecast retrieved successfully
|
|
8784
|
+
*/
|
|
8785
|
+
200: ForecastResponseDto;
|
|
8786
|
+
};
|
|
8787
|
+
};
|
|
8788
|
+
};
|
|
8789
|
+
'/api/v1/{region}/reporting/portfolio/trends': {
|
|
8790
|
+
get: {
|
|
8791
|
+
req: ReportingControllerGetPortfolioTrendsData;
|
|
8792
|
+
res: {
|
|
8793
|
+
/**
|
|
8794
|
+
* Trends retrieved successfully
|
|
8795
|
+
*/
|
|
8796
|
+
200: PortfolioTrendsResponseDto;
|
|
8797
|
+
/**
|
|
8798
|
+
* User not authenticated
|
|
8799
|
+
*/
|
|
8800
|
+
401: unknown;
|
|
8801
|
+
};
|
|
8802
|
+
};
|
|
8803
|
+
};
|
|
8804
|
+
'/api/v1/{region}/reporting/cash-flow/trends': {
|
|
8805
|
+
get: {
|
|
8806
|
+
req: ReportingControllerGetCashFlowTrendsData;
|
|
8807
|
+
res: {
|
|
8808
|
+
/**
|
|
8809
|
+
* Cash-flow trends retrieved successfully
|
|
8810
|
+
*/
|
|
8811
|
+
200: CashFlowTrendsResponseDto;
|
|
8812
|
+
/**
|
|
8813
|
+
* User not authenticated
|
|
8814
|
+
*/
|
|
8815
|
+
401: unknown;
|
|
8816
|
+
};
|
|
8817
|
+
};
|
|
8818
|
+
};
|
|
8819
|
+
'/api/v1/{region}/reporting/snapshots/generate': {
|
|
8820
|
+
post: {
|
|
8821
|
+
req: ReportingControllerGenerateSnapshotData;
|
|
8822
|
+
res: {
|
|
8823
|
+
/**
|
|
8824
|
+
* Snapshot generated successfully
|
|
8825
|
+
*/
|
|
8826
|
+
200: GenerateSnapshotResponse;
|
|
8827
|
+
/**
|
|
8828
|
+
* Invalid date format
|
|
8829
|
+
*/
|
|
8830
|
+
400: unknown;
|
|
8831
|
+
/**
|
|
8832
|
+
* User not authenticated
|
|
8833
|
+
*/
|
|
8834
|
+
401: unknown;
|
|
8835
|
+
};
|
|
8836
|
+
};
|
|
8837
|
+
};
|
|
8838
|
+
'/api/v1/{region}/reporting/snapshots/backfill': {
|
|
8839
|
+
post: {
|
|
8840
|
+
req: ReportingControllerBackfillSnapshotsData;
|
|
8386
8841
|
res: {
|
|
8387
8842
|
/**
|
|
8388
|
-
*
|
|
8843
|
+
* Backfill completed successfully
|
|
8389
8844
|
*/
|
|
8390
|
-
|
|
8845
|
+
200: BackfillSnapshotsResponse;
|
|
8391
8846
|
/**
|
|
8392
|
-
*
|
|
8847
|
+
* Invalid date format or range
|
|
8393
8848
|
*/
|
|
8394
8849
|
400: unknown;
|
|
8395
8850
|
/**
|
|
8396
|
-
*
|
|
8851
|
+
* User not authenticated
|
|
8397
8852
|
*/
|
|
8398
|
-
|
|
8399
|
-
};
|
|
8400
|
-
};
|
|
8401
|
-
};
|
|
8402
|
-
'/api/v1/{region}/bean/recurring/forecast': {
|
|
8403
|
-
get: {
|
|
8404
|
-
req: ForecastControllerGetForecastData;
|
|
8405
|
-
res: {
|
|
8853
|
+
401: unknown;
|
|
8406
8854
|
/**
|
|
8407
|
-
*
|
|
8855
|
+
* Backfill already in progress for this user
|
|
8408
8856
|
*/
|
|
8409
|
-
|
|
8857
|
+
409: unknown;
|
|
8410
8858
|
};
|
|
8411
8859
|
};
|
|
8412
8860
|
};
|
|
8413
|
-
'/api/v1/
|
|
8414
|
-
|
|
8415
|
-
req:
|
|
8861
|
+
'/api/v1/users': {
|
|
8862
|
+
delete: {
|
|
8863
|
+
req: UserControllerDeleteOwnUserData;
|
|
8416
8864
|
res: {
|
|
8417
8865
|
/**
|
|
8418
|
-
*
|
|
8419
|
-
*/
|
|
8420
|
-
200: TransactionRuleResponseDto;
|
|
8421
|
-
/**
|
|
8422
|
-
* Validation failed
|
|
8423
|
-
*/
|
|
8424
|
-
400: ApiProblemResponseDto;
|
|
8425
|
-
/**
|
|
8426
|
-
* Unauthorized
|
|
8866
|
+
* User deleted successfully
|
|
8427
8867
|
*/
|
|
8428
|
-
|
|
8868
|
+
204: void;
|
|
8429
8869
|
/**
|
|
8430
|
-
*
|
|
8870
|
+
* Invalid access token
|
|
8431
8871
|
*/
|
|
8432
|
-
|
|
8872
|
+
403: unknown;
|
|
8433
8873
|
};
|
|
8434
8874
|
};
|
|
8435
8875
|
get: {
|
|
8436
|
-
req:
|
|
8876
|
+
req: UserControllerGetUserData;
|
|
8437
8877
|
res: {
|
|
8438
8878
|
/**
|
|
8439
|
-
*
|
|
8440
|
-
*/
|
|
8441
|
-
200: TransactionRuleListResponseDto;
|
|
8442
|
-
/**
|
|
8443
|
-
* Unauthorized
|
|
8879
|
+
* User retrieved successfully
|
|
8444
8880
|
*/
|
|
8445
|
-
|
|
8881
|
+
200: unknown;
|
|
8446
8882
|
};
|
|
8447
8883
|
};
|
|
8448
|
-
};
|
|
8449
|
-
'/api/v1/{region}/bean/transaction-rules/validate': {
|
|
8450
8884
|
post: {
|
|
8451
|
-
req:
|
|
8885
|
+
req: UserControllerSignupUserData;
|
|
8452
8886
|
res: {
|
|
8453
8887
|
/**
|
|
8454
|
-
*
|
|
8888
|
+
* User created successfully
|
|
8455
8889
|
*/
|
|
8456
|
-
|
|
8890
|
+
201: SignupResponseDto;
|
|
8457
8891
|
/**
|
|
8458
|
-
*
|
|
8892
|
+
* Invalid Turnstile token (when Turnstile is enabled)
|
|
8459
8893
|
*/
|
|
8460
|
-
400:
|
|
8894
|
+
400: unknown;
|
|
8461
8895
|
/**
|
|
8462
|
-
*
|
|
8896
|
+
* User signup is disabled
|
|
8463
8897
|
*/
|
|
8464
|
-
|
|
8898
|
+
403: unknown;
|
|
8465
8899
|
};
|
|
8466
8900
|
};
|
|
8467
8901
|
};
|
|
8468
|
-
'/api/v1/{
|
|
8469
|
-
|
|
8470
|
-
req:
|
|
8902
|
+
'/api/v1/users/{id}': {
|
|
8903
|
+
delete: {
|
|
8904
|
+
req: UserControllerDeleteUserData;
|
|
8471
8905
|
res: {
|
|
8472
8906
|
/**
|
|
8473
|
-
*
|
|
8474
|
-
*/
|
|
8475
|
-
201: BulkCreateRulesResponseDto;
|
|
8476
|
-
/**
|
|
8477
|
-
* Invalid bulk create data
|
|
8907
|
+
* User deleted successfully
|
|
8478
8908
|
*/
|
|
8479
|
-
|
|
8909
|
+
204: void;
|
|
8480
8910
|
/**
|
|
8481
|
-
*
|
|
8911
|
+
* Cannot delete own account or insufficient permissions
|
|
8482
8912
|
*/
|
|
8483
|
-
|
|
8913
|
+
403: unknown;
|
|
8484
8914
|
};
|
|
8485
8915
|
};
|
|
8486
8916
|
};
|
|
8487
|
-
'/api/v1/{
|
|
8917
|
+
'/api/v1/users/{id}/info': {
|
|
8488
8918
|
get: {
|
|
8489
|
-
req:
|
|
8919
|
+
req: UserControllerGetUserInfoData;
|
|
8490
8920
|
res: {
|
|
8491
8921
|
/**
|
|
8492
|
-
*
|
|
8493
|
-
*/
|
|
8494
|
-
200: ExportRulesResponseDto;
|
|
8495
|
-
/**
|
|
8496
|
-
* Unsupported format
|
|
8922
|
+
* User info retrieved successfully
|
|
8497
8923
|
*/
|
|
8498
|
-
|
|
8924
|
+
200: unknown;
|
|
8499
8925
|
/**
|
|
8500
|
-
*
|
|
8926
|
+
* Cannot access other user info without admin permission
|
|
8501
8927
|
*/
|
|
8502
|
-
|
|
8928
|
+
403: unknown;
|
|
8503
8929
|
};
|
|
8504
8930
|
};
|
|
8505
8931
|
};
|
|
8506
|
-
'/api/v1/
|
|
8507
|
-
|
|
8508
|
-
req:
|
|
8932
|
+
'/api/v1/users/setting': {
|
|
8933
|
+
put: {
|
|
8934
|
+
req: UserControllerUpdateUserSettingData;
|
|
8509
8935
|
res: {
|
|
8510
8936
|
/**
|
|
8511
|
-
*
|
|
8937
|
+
* Settings updated successfully
|
|
8512
8938
|
*/
|
|
8513
|
-
200:
|
|
8939
|
+
200: unknown;
|
|
8514
8940
|
/**
|
|
8515
|
-
*
|
|
8941
|
+
* Insufficient permissions
|
|
8516
8942
|
*/
|
|
8517
|
-
|
|
8943
|
+
403: unknown;
|
|
8518
8944
|
};
|
|
8519
8945
|
};
|
|
8520
8946
|
};
|
|
8521
|
-
'/api/v1/
|
|
8947
|
+
'/api/v1/users/settings-by-page': {
|
|
8522
8948
|
get: {
|
|
8523
|
-
req:
|
|
8949
|
+
req: UserControllerGetAllUserSettingsByPageData;
|
|
8524
8950
|
res: {
|
|
8525
8951
|
/**
|
|
8526
|
-
*
|
|
8527
|
-
*/
|
|
8528
|
-
200: TransactionRuleResponseDto;
|
|
8529
|
-
/**
|
|
8530
|
-
* Unauthorized
|
|
8531
|
-
*/
|
|
8532
|
-
401: ApiProblemResponseDto;
|
|
8533
|
-
/**
|
|
8534
|
-
* Forbidden - not owner of rule
|
|
8535
|
-
*/
|
|
8536
|
-
403: ApiProblemResponseDto;
|
|
8537
|
-
/**
|
|
8538
|
-
* Rule not found
|
|
8952
|
+
* Settings list retrieved successfully
|
|
8539
8953
|
*/
|
|
8540
|
-
|
|
8954
|
+
200: unknown;
|
|
8541
8955
|
};
|
|
8542
8956
|
};
|
|
8543
|
-
|
|
8544
|
-
|
|
8957
|
+
};
|
|
8958
|
+
'/api/v1/users/asset-liability-summary': {
|
|
8959
|
+
get: {
|
|
8545
8960
|
res: {
|
|
8546
8961
|
/**
|
|
8547
|
-
*
|
|
8962
|
+
* Summary retrieved successfully
|
|
8548
8963
|
*/
|
|
8549
|
-
200:
|
|
8964
|
+
200: unknown;
|
|
8965
|
+
};
|
|
8966
|
+
};
|
|
8967
|
+
};
|
|
8968
|
+
'/api/v1/admin/properties': {
|
|
8969
|
+
get: {
|
|
8970
|
+
res: {
|
|
8550
8971
|
/**
|
|
8551
|
-
*
|
|
8972
|
+
* Properties retrieved successfully
|
|
8552
8973
|
*/
|
|
8553
|
-
|
|
8974
|
+
200: unknown;
|
|
8554
8975
|
/**
|
|
8555
8976
|
* Unauthorized
|
|
8556
8977
|
*/
|
|
8557
|
-
401:
|
|
8558
|
-
/**
|
|
8559
|
-
* Forbidden - not owner of rule
|
|
8560
|
-
*/
|
|
8561
|
-
403: ApiProblemResponseDto;
|
|
8562
|
-
/**
|
|
8563
|
-
* Rule not found
|
|
8564
|
-
*/
|
|
8565
|
-
404: ApiProblemResponseDto;
|
|
8978
|
+
401: unknown;
|
|
8566
8979
|
/**
|
|
8567
|
-
*
|
|
8980
|
+
* Forbidden - insufficient permissions
|
|
8568
8981
|
*/
|
|
8569
|
-
|
|
8982
|
+
403: unknown;
|
|
8570
8983
|
};
|
|
8571
8984
|
};
|
|
8572
|
-
|
|
8573
|
-
|
|
8985
|
+
};
|
|
8986
|
+
'/api/v1/admin/properties/{key}': {
|
|
8987
|
+
get: {
|
|
8988
|
+
req: PropertyControllerGetByKeyData;
|
|
8574
8989
|
res: {
|
|
8575
8990
|
/**
|
|
8576
|
-
*
|
|
8991
|
+
* Property retrieved successfully
|
|
8577
8992
|
*/
|
|
8578
|
-
|
|
8993
|
+
200: unknown;
|
|
8579
8994
|
/**
|
|
8580
8995
|
* Unauthorized
|
|
8581
8996
|
*/
|
|
8582
|
-
401:
|
|
8583
|
-
/**
|
|
8584
|
-
* Forbidden - not owner of rule
|
|
8585
|
-
*/
|
|
8586
|
-
403: ApiProblemResponseDto;
|
|
8997
|
+
401: unknown;
|
|
8587
8998
|
/**
|
|
8588
|
-
*
|
|
8999
|
+
* Forbidden - insufficient permissions
|
|
8589
9000
|
*/
|
|
8590
|
-
|
|
9001
|
+
403: unknown;
|
|
8591
9002
|
/**
|
|
8592
|
-
*
|
|
9003
|
+
* Property not found
|
|
8593
9004
|
*/
|
|
8594
|
-
|
|
9005
|
+
404: unknown;
|
|
8595
9006
|
};
|
|
8596
9007
|
};
|
|
8597
|
-
|
|
8598
|
-
|
|
8599
|
-
post: {
|
|
8600
|
-
req: TransactionRuleControllerTestData;
|
|
9008
|
+
put: {
|
|
9009
|
+
req: PropertyControllerUpdateData;
|
|
8601
9010
|
res: {
|
|
8602
9011
|
/**
|
|
8603
|
-
*
|
|
9012
|
+
* Property updated successfully
|
|
8604
9013
|
*/
|
|
8605
|
-
200:
|
|
9014
|
+
200: unknown;
|
|
8606
9015
|
/**
|
|
8607
9016
|
* Unauthorized
|
|
8608
9017
|
*/
|
|
8609
|
-
401:
|
|
8610
|
-
/**
|
|
8611
|
-
* Forbidden - not owner of rule
|
|
8612
|
-
*/
|
|
8613
|
-
403: ApiProblemResponseDto;
|
|
9018
|
+
401: unknown;
|
|
8614
9019
|
/**
|
|
8615
|
-
*
|
|
9020
|
+
* Forbidden - insufficient permissions
|
|
8616
9021
|
*/
|
|
8617
|
-
|
|
9022
|
+
403: unknown;
|
|
8618
9023
|
};
|
|
8619
9024
|
};
|
|
8620
|
-
};
|
|
8621
|
-
'/api/v1/users': {
|
|
8622
9025
|
delete: {
|
|
8623
|
-
req:
|
|
9026
|
+
req: PropertyControllerDeleteData;
|
|
8624
9027
|
res: {
|
|
8625
9028
|
/**
|
|
8626
|
-
*
|
|
9029
|
+
* Property deleted successfully
|
|
8627
9030
|
*/
|
|
8628
9031
|
204: void;
|
|
8629
9032
|
/**
|
|
8630
|
-
*
|
|
9033
|
+
* Unauthorized
|
|
9034
|
+
*/
|
|
9035
|
+
401: unknown;
|
|
9036
|
+
/**
|
|
9037
|
+
* Forbidden - insufficient permissions
|
|
8631
9038
|
*/
|
|
8632
9039
|
403: unknown;
|
|
8633
|
-
};
|
|
8634
|
-
};
|
|
8635
|
-
get: {
|
|
8636
|
-
req: UserControllerGetUserData;
|
|
8637
|
-
res: {
|
|
8638
9040
|
/**
|
|
8639
|
-
*
|
|
9041
|
+
* Property not found
|
|
8640
9042
|
*/
|
|
8641
|
-
|
|
9043
|
+
404: unknown;
|
|
8642
9044
|
};
|
|
8643
9045
|
};
|
|
9046
|
+
};
|
|
9047
|
+
'/api/v1/{region}/bean/transaction-rules': {
|
|
8644
9048
|
post: {
|
|
8645
|
-
req:
|
|
9049
|
+
req: TransactionRuleControllerCreateData;
|
|
8646
9050
|
res: {
|
|
8647
9051
|
/**
|
|
8648
|
-
*
|
|
9052
|
+
* Rule updated successfully (upsert mode)
|
|
8649
9053
|
*/
|
|
8650
|
-
|
|
9054
|
+
200: TransactionRuleResponseDto;
|
|
8651
9055
|
/**
|
|
8652
|
-
*
|
|
9056
|
+
* Validation failed
|
|
8653
9057
|
*/
|
|
8654
|
-
400:
|
|
9058
|
+
400: ApiProblemResponseDto;
|
|
8655
9059
|
/**
|
|
8656
|
-
*
|
|
9060
|
+
* Unauthorized
|
|
8657
9061
|
*/
|
|
8658
|
-
|
|
9062
|
+
401: ApiProblemResponseDto;
|
|
9063
|
+
/**
|
|
9064
|
+
* Resource conflict - another process is updating this rule
|
|
9065
|
+
*/
|
|
9066
|
+
409: ApiProblemResponseDto;
|
|
8659
9067
|
};
|
|
8660
9068
|
};
|
|
8661
|
-
|
|
8662
|
-
|
|
8663
|
-
delete: {
|
|
8664
|
-
req: UserControllerDeleteUserData;
|
|
9069
|
+
get: {
|
|
9070
|
+
req: TransactionRuleControllerListData;
|
|
8665
9071
|
res: {
|
|
8666
9072
|
/**
|
|
8667
|
-
*
|
|
9073
|
+
* List of rules
|
|
8668
9074
|
*/
|
|
8669
|
-
|
|
9075
|
+
200: TransactionRuleListResponseDto;
|
|
8670
9076
|
/**
|
|
8671
|
-
*
|
|
9077
|
+
* Unauthorized
|
|
8672
9078
|
*/
|
|
8673
|
-
|
|
9079
|
+
401: ApiProblemResponseDto;
|
|
8674
9080
|
};
|
|
8675
9081
|
};
|
|
8676
9082
|
};
|
|
8677
|
-
'/api/v1/
|
|
8678
|
-
|
|
8679
|
-
req:
|
|
9083
|
+
'/api/v1/{region}/bean/transaction-rules/validate': {
|
|
9084
|
+
post: {
|
|
9085
|
+
req: TransactionRuleControllerValidateData;
|
|
8680
9086
|
res: {
|
|
8681
9087
|
/**
|
|
8682
|
-
*
|
|
9088
|
+
* Validation result
|
|
8683
9089
|
*/
|
|
8684
|
-
200:
|
|
9090
|
+
200: ValidateRuleResponseDto;
|
|
8685
9091
|
/**
|
|
8686
|
-
*
|
|
9092
|
+
* Validation failed
|
|
8687
9093
|
*/
|
|
8688
|
-
|
|
9094
|
+
400: ApiProblemResponseDto;
|
|
9095
|
+
/**
|
|
9096
|
+
* Unauthorized
|
|
9097
|
+
*/
|
|
9098
|
+
401: ApiProblemResponseDto;
|
|
8689
9099
|
};
|
|
8690
9100
|
};
|
|
8691
9101
|
};
|
|
8692
|
-
'/api/v1/
|
|
8693
|
-
|
|
8694
|
-
req:
|
|
9102
|
+
'/api/v1/{region}/bean/transaction-rules/bulk': {
|
|
9103
|
+
post: {
|
|
9104
|
+
req: TransactionRuleControllerBulkCreateData;
|
|
8695
9105
|
res: {
|
|
8696
9106
|
/**
|
|
8697
|
-
*
|
|
9107
|
+
* Bulk create completed
|
|
8698
9108
|
*/
|
|
8699
|
-
|
|
9109
|
+
201: BulkCreateRulesResponseDto;
|
|
8700
9110
|
/**
|
|
8701
|
-
*
|
|
9111
|
+
* Invalid bulk create data
|
|
8702
9112
|
*/
|
|
8703
|
-
|
|
9113
|
+
400: ApiProblemResponseDto;
|
|
9114
|
+
/**
|
|
9115
|
+
* Unauthorized
|
|
9116
|
+
*/
|
|
9117
|
+
401: ApiProblemResponseDto;
|
|
8704
9118
|
};
|
|
8705
9119
|
};
|
|
8706
9120
|
};
|
|
8707
|
-
'/api/v1/
|
|
9121
|
+
'/api/v1/{region}/bean/transaction-rules/export/{format}': {
|
|
8708
9122
|
get: {
|
|
8709
|
-
req:
|
|
9123
|
+
req: TransactionRuleControllerExportData;
|
|
8710
9124
|
res: {
|
|
8711
9125
|
/**
|
|
8712
|
-
*
|
|
9126
|
+
* Exported rules
|
|
8713
9127
|
*/
|
|
8714
|
-
200:
|
|
9128
|
+
200: ExportRulesResponseDto;
|
|
9129
|
+
/**
|
|
9130
|
+
* Unsupported format
|
|
9131
|
+
*/
|
|
9132
|
+
400: ApiProblemResponseDto;
|
|
9133
|
+
/**
|
|
9134
|
+
* Unauthorized
|
|
9135
|
+
*/
|
|
9136
|
+
401: ApiProblemResponseDto;
|
|
8715
9137
|
};
|
|
8716
9138
|
};
|
|
8717
9139
|
};
|
|
8718
|
-
'/api/v1/
|
|
9140
|
+
'/api/v1/{region}/bean/transaction-rules/statistics/{period}': {
|
|
8719
9141
|
get: {
|
|
9142
|
+
req: TransactionRuleControllerGetStatisticsData;
|
|
8720
9143
|
res: {
|
|
8721
9144
|
/**
|
|
8722
|
-
*
|
|
9145
|
+
* Rule statistics
|
|
8723
9146
|
*/
|
|
8724
|
-
200:
|
|
9147
|
+
200: RuleStatisticsResponseDto;
|
|
9148
|
+
/**
|
|
9149
|
+
* Unauthorized
|
|
9150
|
+
*/
|
|
9151
|
+
401: ApiProblemResponseDto;
|
|
8725
9152
|
};
|
|
8726
9153
|
};
|
|
8727
9154
|
};
|
|
8728
|
-
'/api/v1/
|
|
9155
|
+
'/api/v1/{region}/bean/transaction-rules/{ruleId}': {
|
|
8729
9156
|
get: {
|
|
9157
|
+
req: TransactionRuleControllerGetDetailData;
|
|
8730
9158
|
res: {
|
|
8731
9159
|
/**
|
|
8732
|
-
*
|
|
9160
|
+
* Rule details
|
|
8733
9161
|
*/
|
|
8734
|
-
200:
|
|
9162
|
+
200: TransactionRuleResponseDto;
|
|
8735
9163
|
/**
|
|
8736
9164
|
* Unauthorized
|
|
8737
9165
|
*/
|
|
8738
|
-
401:
|
|
9166
|
+
401: ApiProblemResponseDto;
|
|
8739
9167
|
/**
|
|
8740
|
-
* Forbidden -
|
|
9168
|
+
* Forbidden - not owner of rule
|
|
8741
9169
|
*/
|
|
8742
|
-
403:
|
|
9170
|
+
403: ApiProblemResponseDto;
|
|
9171
|
+
/**
|
|
9172
|
+
* Rule not found
|
|
9173
|
+
*/
|
|
9174
|
+
404: ApiProblemResponseDto;
|
|
8743
9175
|
};
|
|
8744
9176
|
};
|
|
8745
|
-
|
|
8746
|
-
|
|
8747
|
-
get: {
|
|
8748
|
-
req: PropertyControllerGetByKeyData;
|
|
9177
|
+
put: {
|
|
9178
|
+
req: TransactionRuleControllerUpdateData;
|
|
8749
9179
|
res: {
|
|
8750
9180
|
/**
|
|
8751
|
-
*
|
|
9181
|
+
* Rule updated successfully
|
|
8752
9182
|
*/
|
|
8753
|
-
200:
|
|
9183
|
+
200: TransactionRuleResponseDto;
|
|
9184
|
+
/**
|
|
9185
|
+
* Validation failed
|
|
9186
|
+
*/
|
|
9187
|
+
400: ApiProblemResponseDto;
|
|
8754
9188
|
/**
|
|
8755
9189
|
* Unauthorized
|
|
8756
9190
|
*/
|
|
8757
|
-
401:
|
|
9191
|
+
401: ApiProblemResponseDto;
|
|
8758
9192
|
/**
|
|
8759
|
-
* Forbidden -
|
|
9193
|
+
* Forbidden - not owner of rule
|
|
8760
9194
|
*/
|
|
8761
|
-
403:
|
|
9195
|
+
403: ApiProblemResponseDto;
|
|
8762
9196
|
/**
|
|
8763
|
-
*
|
|
9197
|
+
* Rule not found
|
|
8764
9198
|
*/
|
|
8765
|
-
404:
|
|
9199
|
+
404: ApiProblemResponseDto;
|
|
9200
|
+
/**
|
|
9201
|
+
* Resource conflict - rule is being modified by another process
|
|
9202
|
+
*/
|
|
9203
|
+
409: ApiProblemResponseDto;
|
|
8766
9204
|
};
|
|
8767
9205
|
};
|
|
8768
|
-
|
|
8769
|
-
req:
|
|
9206
|
+
delete: {
|
|
9207
|
+
req: TransactionRuleControllerDeleteData;
|
|
8770
9208
|
res: {
|
|
8771
9209
|
/**
|
|
8772
|
-
*
|
|
9210
|
+
* Rule deleted successfully
|
|
8773
9211
|
*/
|
|
8774
|
-
|
|
9212
|
+
204: void;
|
|
8775
9213
|
/**
|
|
8776
9214
|
* Unauthorized
|
|
8777
9215
|
*/
|
|
8778
|
-
401:
|
|
9216
|
+
401: ApiProblemResponseDto;
|
|
8779
9217
|
/**
|
|
8780
|
-
* Forbidden -
|
|
9218
|
+
* Forbidden - not owner of rule
|
|
8781
9219
|
*/
|
|
8782
|
-
403:
|
|
9220
|
+
403: ApiProblemResponseDto;
|
|
9221
|
+
/**
|
|
9222
|
+
* Rule not found
|
|
9223
|
+
*/
|
|
9224
|
+
404: ApiProblemResponseDto;
|
|
9225
|
+
/**
|
|
9226
|
+
* Resource conflict - rule is being modified by another process
|
|
9227
|
+
*/
|
|
9228
|
+
409: ApiProblemResponseDto;
|
|
8783
9229
|
};
|
|
8784
9230
|
};
|
|
8785
|
-
|
|
8786
|
-
|
|
9231
|
+
};
|
|
9232
|
+
'/api/v1/{region}/bean/transaction-rules/{ruleId}/test': {
|
|
9233
|
+
post: {
|
|
9234
|
+
req: TransactionRuleControllerTestData;
|
|
8787
9235
|
res: {
|
|
8788
9236
|
/**
|
|
8789
|
-
*
|
|
9237
|
+
* Test result
|
|
8790
9238
|
*/
|
|
8791
|
-
|
|
9239
|
+
200: TestRuleResponseDto;
|
|
8792
9240
|
/**
|
|
8793
9241
|
* Unauthorized
|
|
8794
9242
|
*/
|
|
8795
|
-
401:
|
|
9243
|
+
401: ApiProblemResponseDto;
|
|
8796
9244
|
/**
|
|
8797
|
-
* Forbidden -
|
|
9245
|
+
* Forbidden - not owner of rule
|
|
8798
9246
|
*/
|
|
8799
|
-
403:
|
|
9247
|
+
403: ApiProblemResponseDto;
|
|
8800
9248
|
/**
|
|
8801
|
-
*
|
|
9249
|
+
* Rule not found
|
|
8802
9250
|
*/
|
|
8803
|
-
404:
|
|
9251
|
+
404: ApiProblemResponseDto;
|
|
8804
9252
|
};
|
|
8805
9253
|
};
|
|
8806
9254
|
};
|
|
@@ -9347,7 +9795,7 @@ export type $OpenApiTs = {
|
|
|
9347
9795
|
/**
|
|
9348
9796
|
* List of platforms with user binding status
|
|
9349
9797
|
*/
|
|
9350
|
-
200:
|
|
9798
|
+
200: Array<PlatformListItemDto>;
|
|
9351
9799
|
};
|
|
9352
9800
|
};
|
|
9353
9801
|
};
|
|
@@ -9356,9 +9804,9 @@ export type $OpenApiTs = {
|
|
|
9356
9804
|
req: PlatformControllerMatchPlatformsData;
|
|
9357
9805
|
res: {
|
|
9358
9806
|
/**
|
|
9359
|
-
*
|
|
9807
|
+
* Matching platforms with overall match type and truncation flag
|
|
9360
9808
|
*/
|
|
9361
|
-
200:
|
|
9809
|
+
200: PlatformMatchResponseDto;
|
|
9362
9810
|
};
|
|
9363
9811
|
};
|
|
9364
9812
|
};
|
|
@@ -9480,78 +9928,6 @@ export type $OpenApiTs = {
|
|
|
9480
9928
|
};
|
|
9481
9929
|
};
|
|
9482
9930
|
};
|
|
9483
|
-
'/api/v1/{region}/reporting/portfolio/trends': {
|
|
9484
|
-
get: {
|
|
9485
|
-
req: ReportingControllerGetPortfolioTrendsData;
|
|
9486
|
-
res: {
|
|
9487
|
-
/**
|
|
9488
|
-
* Trends retrieved successfully
|
|
9489
|
-
*/
|
|
9490
|
-
200: PortfolioTrendsResponseDto;
|
|
9491
|
-
/**
|
|
9492
|
-
* User not authenticated
|
|
9493
|
-
*/
|
|
9494
|
-
401: unknown;
|
|
9495
|
-
};
|
|
9496
|
-
};
|
|
9497
|
-
};
|
|
9498
|
-
'/api/v1/{region}/reporting/cash-flow/trends': {
|
|
9499
|
-
get: {
|
|
9500
|
-
req: ReportingControllerGetCashFlowTrendsData;
|
|
9501
|
-
res: {
|
|
9502
|
-
/**
|
|
9503
|
-
* Cash-flow trends retrieved successfully
|
|
9504
|
-
*/
|
|
9505
|
-
200: CashFlowTrendsResponseDto;
|
|
9506
|
-
/**
|
|
9507
|
-
* User not authenticated
|
|
9508
|
-
*/
|
|
9509
|
-
401: unknown;
|
|
9510
|
-
};
|
|
9511
|
-
};
|
|
9512
|
-
};
|
|
9513
|
-
'/api/v1/{region}/reporting/snapshots/generate': {
|
|
9514
|
-
post: {
|
|
9515
|
-
req: ReportingControllerGenerateSnapshotData;
|
|
9516
|
-
res: {
|
|
9517
|
-
/**
|
|
9518
|
-
* Snapshot generated successfully
|
|
9519
|
-
*/
|
|
9520
|
-
200: GenerateSnapshotResponse;
|
|
9521
|
-
/**
|
|
9522
|
-
* Invalid date format
|
|
9523
|
-
*/
|
|
9524
|
-
400: unknown;
|
|
9525
|
-
/**
|
|
9526
|
-
* User not authenticated
|
|
9527
|
-
*/
|
|
9528
|
-
401: unknown;
|
|
9529
|
-
};
|
|
9530
|
-
};
|
|
9531
|
-
};
|
|
9532
|
-
'/api/v1/{region}/reporting/snapshots/backfill': {
|
|
9533
|
-
post: {
|
|
9534
|
-
req: ReportingControllerBackfillSnapshotsData;
|
|
9535
|
-
res: {
|
|
9536
|
-
/**
|
|
9537
|
-
* Backfill completed successfully
|
|
9538
|
-
*/
|
|
9539
|
-
200: BackfillSnapshotsResponse;
|
|
9540
|
-
/**
|
|
9541
|
-
* Invalid date format or range
|
|
9542
|
-
*/
|
|
9543
|
-
400: unknown;
|
|
9544
|
-
/**
|
|
9545
|
-
* User not authenticated
|
|
9546
|
-
*/
|
|
9547
|
-
401: unknown;
|
|
9548
|
-
/**
|
|
9549
|
-
* Backfill already in progress for this user
|
|
9550
|
-
*/
|
|
9551
|
-
409: unknown;
|
|
9552
|
-
};
|
|
9553
|
-
};
|
|
9554
|
-
};
|
|
9555
9931
|
'/api/v1/auth/api-keys': {
|
|
9556
9932
|
post: {
|
|
9557
9933
|
res: {
|
|
@@ -9573,7 +9949,7 @@ export type $OpenApiTs = {
|
|
|
9573
9949
|
/**
|
|
9574
9950
|
* Login successful
|
|
9575
9951
|
*/
|
|
9576
|
-
200:
|
|
9952
|
+
200: AnonymousLoginResponseDto;
|
|
9577
9953
|
/**
|
|
9578
9954
|
* Invalid access token
|
|
9579
9955
|
*/
|
|
@@ -9720,4 +10096,30 @@ export type $OpenApiTs = {
|
|
|
9720
10096
|
};
|
|
9721
10097
|
};
|
|
9722
10098
|
};
|
|
10099
|
+
'/api/v1/market/symbols/search': {
|
|
10100
|
+
get: {
|
|
10101
|
+
req: SymbolControllerSearchData;
|
|
10102
|
+
res: {
|
|
10103
|
+
/**
|
|
10104
|
+
* Ranked search results
|
|
10105
|
+
*/
|
|
10106
|
+
200: Array<SymbolSearchResultDto>;
|
|
10107
|
+
};
|
|
10108
|
+
};
|
|
10109
|
+
};
|
|
10110
|
+
'/api/v1/market/symbols/{symbol}/quote': {
|
|
10111
|
+
get: {
|
|
10112
|
+
req: SymbolControllerGetQuoteData;
|
|
10113
|
+
res: {
|
|
10114
|
+
/**
|
|
10115
|
+
* Symbol quote
|
|
10116
|
+
*/
|
|
10117
|
+
200: SymbolQuoteDto;
|
|
10118
|
+
/**
|
|
10119
|
+
* Symbol not found in the openbb catalog
|
|
10120
|
+
*/
|
|
10121
|
+
404: unknown;
|
|
10122
|
+
};
|
|
10123
|
+
};
|
|
10124
|
+
};
|
|
9723
10125
|
};
|