@firela/api-types 0.0.0-canary.888f4d12 → 0.0.0-canary.8bf286b3
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 +239 -12
- package/dist/index.d.ts +239 -12
- package/dist/index.js +4 -2
- package/dist/index.mjs +4 -2
- package/package.json +1 -1
- package/src/generated/schemas.gen.ts +385 -5
- package/src/generated/services.gen.ts +38 -2
- package/src/generated/types.gen.ts +326 -10
|
@@ -776,7 +776,7 @@ export const $PostingResponseDto = {
|
|
|
776
776
|
units: {
|
|
777
777
|
type: 'string',
|
|
778
778
|
description:
|
|
779
|
-
'Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.',
|
|
779
|
+
'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.',
|
|
780
780
|
example: '100.50'
|
|
781
781
|
},
|
|
782
782
|
currency: {
|
|
@@ -1142,7 +1142,7 @@ export const $PostingDetailDto = {
|
|
|
1142
1142
|
units: {
|
|
1143
1143
|
type: 'string',
|
|
1144
1144
|
description:
|
|
1145
|
-
'Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.',
|
|
1145
|
+
'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.',
|
|
1146
1146
|
example: '100.50'
|
|
1147
1147
|
},
|
|
1148
1148
|
currency: {
|
|
@@ -1326,6 +1326,147 @@ export const $TransactionDetailDto = {
|
|
|
1326
1326
|
]
|
|
1327
1327
|
} as const;
|
|
1328
1328
|
|
|
1329
|
+
export const $TransactionListItemDto = {
|
|
1330
|
+
type: 'object',
|
|
1331
|
+
properties: {
|
|
1332
|
+
id: {
|
|
1333
|
+
type: 'string',
|
|
1334
|
+
description: 'Transaction ID',
|
|
1335
|
+
example: 'clh1234567890abcdef'
|
|
1336
|
+
},
|
|
1337
|
+
date: {
|
|
1338
|
+
type: 'string',
|
|
1339
|
+
description: 'Transaction date',
|
|
1340
|
+
example: '2024-11-28'
|
|
1341
|
+
},
|
|
1342
|
+
flag: {
|
|
1343
|
+
type: 'string',
|
|
1344
|
+
description: 'Transaction flag',
|
|
1345
|
+
enum: [
|
|
1346
|
+
'CLEARED',
|
|
1347
|
+
'PENDING',
|
|
1348
|
+
'PADDING',
|
|
1349
|
+
'SUMMARIZE',
|
|
1350
|
+
'TRANSFER',
|
|
1351
|
+
'CONVERSIONS'
|
|
1352
|
+
],
|
|
1353
|
+
example: 'CLEARED'
|
|
1354
|
+
},
|
|
1355
|
+
customFlag: {
|
|
1356
|
+
type: 'string',
|
|
1357
|
+
description: 'Custom flag (if not using standard flags)',
|
|
1358
|
+
example: 'R'
|
|
1359
|
+
},
|
|
1360
|
+
payee: {
|
|
1361
|
+
type: 'string',
|
|
1362
|
+
description: 'Payee name',
|
|
1363
|
+
example: 'Whole Foods Market'
|
|
1364
|
+
},
|
|
1365
|
+
narration: {
|
|
1366
|
+
type: 'string',
|
|
1367
|
+
description: 'Transaction narration',
|
|
1368
|
+
example: 'Grocery shopping'
|
|
1369
|
+
},
|
|
1370
|
+
tags: {
|
|
1371
|
+
description: 'Transaction tags',
|
|
1372
|
+
example: ['groceries'],
|
|
1373
|
+
type: 'array',
|
|
1374
|
+
items: {
|
|
1375
|
+
type: 'string'
|
|
1376
|
+
}
|
|
1377
|
+
},
|
|
1378
|
+
links: {
|
|
1379
|
+
description: 'Transaction links',
|
|
1380
|
+
example: ['invoice-2024-001'],
|
|
1381
|
+
type: 'array',
|
|
1382
|
+
items: {
|
|
1383
|
+
type: 'string'
|
|
1384
|
+
}
|
|
1385
|
+
},
|
|
1386
|
+
meta: {
|
|
1387
|
+
type: 'object',
|
|
1388
|
+
description: 'Transaction metadata'
|
|
1389
|
+
},
|
|
1390
|
+
status: {
|
|
1391
|
+
type: 'string',
|
|
1392
|
+
description: 'Transaction status',
|
|
1393
|
+
enum: ['ACTIVE', 'VOIDED', 'SUPERSEDED'],
|
|
1394
|
+
example: 'ACTIVE'
|
|
1395
|
+
},
|
|
1396
|
+
sourceType: {
|
|
1397
|
+
type: 'string',
|
|
1398
|
+
description:
|
|
1399
|
+
'Source type (free-form string from transaction metadata, e.g. import, api)'
|
|
1400
|
+
},
|
|
1401
|
+
sourcePlatform: {
|
|
1402
|
+
type: 'string',
|
|
1403
|
+
description: 'Source platform (e.g., alipay, wechat)',
|
|
1404
|
+
example: 'alipay'
|
|
1405
|
+
},
|
|
1406
|
+
postings: {
|
|
1407
|
+
description: 'Transaction postings',
|
|
1408
|
+
type: 'array',
|
|
1409
|
+
items: {
|
|
1410
|
+
$ref: '#/components/schemas/PostingDetailDto'
|
|
1411
|
+
}
|
|
1412
|
+
},
|
|
1413
|
+
createdAt: {
|
|
1414
|
+
type: 'string',
|
|
1415
|
+
description: 'Created at timestamp',
|
|
1416
|
+
example: '2024-11-28T10:30:00.000Z'
|
|
1417
|
+
},
|
|
1418
|
+
voidedAt: {
|
|
1419
|
+
type: 'string',
|
|
1420
|
+
description: 'Voided at timestamp (if voided)',
|
|
1421
|
+
example: '2024-11-29T15:00:00.000Z'
|
|
1422
|
+
},
|
|
1423
|
+
voidedBy: {
|
|
1424
|
+
type: 'string',
|
|
1425
|
+
description: 'User ID who voided this transaction',
|
|
1426
|
+
example: 'clh1234567890abcdef'
|
|
1427
|
+
},
|
|
1428
|
+
correctionReason: {
|
|
1429
|
+
type: 'string',
|
|
1430
|
+
description: 'Correction reason (if voided or superseded)',
|
|
1431
|
+
example: 'Duplicate entry'
|
|
1432
|
+
},
|
|
1433
|
+
supersededBy: {
|
|
1434
|
+
type: 'string',
|
|
1435
|
+
description:
|
|
1436
|
+
'ID of the transaction that supersedes this one (set when status=SUPERSEDED)',
|
|
1437
|
+
example: 'clh1234567890abcdef'
|
|
1438
|
+
},
|
|
1439
|
+
originalTxn: {
|
|
1440
|
+
type: 'string',
|
|
1441
|
+
description:
|
|
1442
|
+
'ID of the transaction this one corrected/replaced (back-link on the replacement)',
|
|
1443
|
+
example: 'clh1234567890abcdef'
|
|
1444
|
+
},
|
|
1445
|
+
viewpointAmount: {
|
|
1446
|
+
type: 'string',
|
|
1447
|
+
description:
|
|
1448
|
+
'Per-leg sign-normalized row amount for the category viewpoint (ADR-0126): each posting on the category account set contributes its unitsNumber with Income-root legs negated and Expenses-root legs identity. Positive under normal booking but NOT clamped (explicit negative expense legs and net-flip refund months stay negative). Omitted outside the category viewpoint.',
|
|
1449
|
+
example: '10000.00'
|
|
1450
|
+
},
|
|
1451
|
+
viewpointCurrency: {
|
|
1452
|
+
type: 'string',
|
|
1453
|
+
description:
|
|
1454
|
+
'Currency of viewpointAmount. A row spanning multiple currencies takes the largest-magnitude currency group (known simplification, ADR-0126). Omitted outside the category viewpoint.',
|
|
1455
|
+
example: 'CNY'
|
|
1456
|
+
}
|
|
1457
|
+
},
|
|
1458
|
+
required: [
|
|
1459
|
+
'id',
|
|
1460
|
+
'date',
|
|
1461
|
+
'narration',
|
|
1462
|
+
'tags',
|
|
1463
|
+
'links',
|
|
1464
|
+
'status',
|
|
1465
|
+
'postings',
|
|
1466
|
+
'createdAt'
|
|
1467
|
+
]
|
|
1468
|
+
} as const;
|
|
1469
|
+
|
|
1329
1470
|
export const $BalanceByCurrencyDto = {
|
|
1330
1471
|
type: 'object',
|
|
1331
1472
|
properties: {
|
|
@@ -1371,7 +1512,7 @@ export const $TransactionListSummaryDto = {
|
|
|
1371
1512
|
totalAmount: {
|
|
1372
1513
|
type: 'string',
|
|
1373
1514
|
description:
|
|
1374
|
-
'Partial converted total in base currency (rated currencies only
|
|
1515
|
+
'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.',
|
|
1375
1516
|
example: '-6000.00'
|
|
1376
1517
|
},
|
|
1377
1518
|
currency: {
|
|
@@ -1397,6 +1538,26 @@ export const $TransactionListSummaryDto = {
|
|
|
1397
1538
|
required: ['totalAmount', 'currency', 'balanceByCurrency']
|
|
1398
1539
|
} as const;
|
|
1399
1540
|
|
|
1541
|
+
export const $TransactionListViewpointDto = {
|
|
1542
|
+
type: 'object',
|
|
1543
|
+
properties: {
|
|
1544
|
+
type: {
|
|
1545
|
+
type: 'string',
|
|
1546
|
+
description:
|
|
1547
|
+
'Viewpoint type (only category drill-down carries a viewpoint today)',
|
|
1548
|
+
enum: ['category'],
|
|
1549
|
+
example: 'category'
|
|
1550
|
+
},
|
|
1551
|
+
flow: {
|
|
1552
|
+
type: 'string',
|
|
1553
|
+
description: 'Flow root the category account set is restricted to',
|
|
1554
|
+
enum: ['income', 'expense'],
|
|
1555
|
+
example: 'expense'
|
|
1556
|
+
}
|
|
1557
|
+
},
|
|
1558
|
+
required: ['type', 'flow']
|
|
1559
|
+
} as const;
|
|
1560
|
+
|
|
1400
1561
|
export const $TransactionListResponseDto = {
|
|
1401
1562
|
type: 'object',
|
|
1402
1563
|
properties: {
|
|
@@ -1404,7 +1565,7 @@ export const $TransactionListResponseDto = {
|
|
|
1404
1565
|
description: 'List of transactions',
|
|
1405
1566
|
type: 'array',
|
|
1406
1567
|
items: {
|
|
1407
|
-
$ref: '#/components/schemas/
|
|
1568
|
+
$ref: '#/components/schemas/TransactionListItemDto'
|
|
1408
1569
|
}
|
|
1409
1570
|
},
|
|
1410
1571
|
total: {
|
|
@@ -1430,6 +1591,15 @@ export const $TransactionListResponseDto = {
|
|
|
1430
1591
|
$ref: '#/components/schemas/TransactionListSummaryDto'
|
|
1431
1592
|
}
|
|
1432
1593
|
]
|
|
1594
|
+
},
|
|
1595
|
+
viewpoint: {
|
|
1596
|
+
description:
|
|
1597
|
+
'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).',
|
|
1598
|
+
allOf: [
|
|
1599
|
+
{
|
|
1600
|
+
$ref: '#/components/schemas/TransactionListViewpointDto'
|
|
1601
|
+
}
|
|
1602
|
+
]
|
|
1433
1603
|
}
|
|
1434
1604
|
},
|
|
1435
1605
|
required: ['data', 'total', 'limit', 'offset']
|
|
@@ -6838,7 +7008,7 @@ export const $NlpResponseDto = {
|
|
|
6838
7008
|
type: 'string',
|
|
6839
7009
|
description:
|
|
6840
7010
|
'Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.',
|
|
6841
|
-
enum: ['transfer', 'banking', 'investment'],
|
|
7011
|
+
enum: ['transfer', 'banking', 'investment', 'lend', 'lend_collect'],
|
|
6842
7012
|
example: 'investment'
|
|
6843
7013
|
},
|
|
6844
7014
|
liabilitySubType: {
|
|
@@ -8395,6 +8565,216 @@ export const $AnonymousLoginResponseDto = {
|
|
|
8395
8565
|
required: ['authToken']
|
|
8396
8566
|
} as const;
|
|
8397
8567
|
|
|
8568
|
+
export const $ParserContributionMetaDto = {
|
|
8569
|
+
type: 'object',
|
|
8570
|
+
properties: {
|
|
8571
|
+
institution: {
|
|
8572
|
+
type: 'string',
|
|
8573
|
+
description: 'Institution slug (lowercase kebab-case)',
|
|
8574
|
+
pattern: '^[a-z0-9]+(-[a-z0-9]+)*$',
|
|
8575
|
+
example: 'icbc'
|
|
8576
|
+
},
|
|
8577
|
+
region: {
|
|
8578
|
+
type: 'string',
|
|
8579
|
+
enum: [
|
|
8580
|
+
'cn',
|
|
8581
|
+
'us',
|
|
8582
|
+
'de',
|
|
8583
|
+
'fr',
|
|
8584
|
+
'gb',
|
|
8585
|
+
'hk',
|
|
8586
|
+
'jp',
|
|
8587
|
+
'sg',
|
|
8588
|
+
'au',
|
|
8589
|
+
'ca',
|
|
8590
|
+
'other'
|
|
8591
|
+
]
|
|
8592
|
+
},
|
|
8593
|
+
accountType: {
|
|
8594
|
+
type: 'string',
|
|
8595
|
+
enum: ['checking', 'savings', 'credit', 'debit', 'investment']
|
|
8596
|
+
},
|
|
8597
|
+
format: {
|
|
8598
|
+
type: 'string',
|
|
8599
|
+
enum: ['csv', 'xlsx', 'pdf', 'ofx', 'qif']
|
|
8600
|
+
},
|
|
8601
|
+
institutionDisplayName: {
|
|
8602
|
+
type: 'string',
|
|
8603
|
+
example: '中国工商银行'
|
|
8604
|
+
},
|
|
8605
|
+
encoding: {
|
|
8606
|
+
type: 'string',
|
|
8607
|
+
example: 'utf-8'
|
|
8608
|
+
},
|
|
8609
|
+
delimiter: {
|
|
8610
|
+
type: 'string',
|
|
8611
|
+
description: 'CSV delimiter character: ",", ";", "\\t" or "|"'
|
|
8612
|
+
},
|
|
8613
|
+
headerRows: {
|
|
8614
|
+
type: 'number',
|
|
8615
|
+
default: 1,
|
|
8616
|
+
description: 'Header row count; the client omits the field when it is 1'
|
|
8617
|
+
},
|
|
8618
|
+
notes: {
|
|
8619
|
+
type: 'string',
|
|
8620
|
+
maxLength: 2000
|
|
8621
|
+
}
|
|
8622
|
+
},
|
|
8623
|
+
required: ['institution', 'region', 'accountType', 'format']
|
|
8624
|
+
} as const;
|
|
8625
|
+
|
|
8626
|
+
export const $ParserContributionSamplesDto = {
|
|
8627
|
+
type: 'object',
|
|
8628
|
+
properties: {
|
|
8629
|
+
rows: {
|
|
8630
|
+
description:
|
|
8631
|
+
'Client-sanitized sample rows (key = column name, value = cell)',
|
|
8632
|
+
type: 'array',
|
|
8633
|
+
items: {
|
|
8634
|
+
type: 'string'
|
|
8635
|
+
}
|
|
8636
|
+
},
|
|
8637
|
+
rawHeaders: {
|
|
8638
|
+
type: 'array',
|
|
8639
|
+
items: {
|
|
8640
|
+
type: 'string'
|
|
8641
|
+
}
|
|
8642
|
+
}
|
|
8643
|
+
},
|
|
8644
|
+
required: ['rows']
|
|
8645
|
+
} as const;
|
|
8646
|
+
|
|
8647
|
+
export const $FieldHintDto = {
|
|
8648
|
+
type: 'object',
|
|
8649
|
+
properties: {
|
|
8650
|
+
columnName: {
|
|
8651
|
+
type: 'string',
|
|
8652
|
+
example: '交易日期'
|
|
8653
|
+
},
|
|
8654
|
+
format: {
|
|
8655
|
+
type: 'string',
|
|
8656
|
+
description: 'Date format, e.g. yyyy-MM-dd HH:mm',
|
|
8657
|
+
example: 'yyyy-MM-dd'
|
|
8658
|
+
},
|
|
8659
|
+
signConvention: {
|
|
8660
|
+
type: 'string',
|
|
8661
|
+
enum: ['negative-expense', 'positive-expense', 'separate-columns']
|
|
8662
|
+
},
|
|
8663
|
+
creditColumn: {
|
|
8664
|
+
type: 'string'
|
|
8665
|
+
},
|
|
8666
|
+
debitColumn: {
|
|
8667
|
+
type: 'string'
|
|
8668
|
+
}
|
|
8669
|
+
},
|
|
8670
|
+
required: ['columnName']
|
|
8671
|
+
} as const;
|
|
8672
|
+
|
|
8673
|
+
export const $ParserContributionFieldHintsDto = {
|
|
8674
|
+
type: 'object',
|
|
8675
|
+
properties: {
|
|
8676
|
+
date: {
|
|
8677
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8678
|
+
},
|
|
8679
|
+
amount: {
|
|
8680
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8681
|
+
},
|
|
8682
|
+
description: {
|
|
8683
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8684
|
+
},
|
|
8685
|
+
balance: {
|
|
8686
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8687
|
+
},
|
|
8688
|
+
payee: {
|
|
8689
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8690
|
+
},
|
|
8691
|
+
reference: {
|
|
8692
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8693
|
+
},
|
|
8694
|
+
category: {
|
|
8695
|
+
$ref: '#/components/schemas/FieldHintDto'
|
|
8696
|
+
}
|
|
8697
|
+
},
|
|
8698
|
+
required: ['date', 'amount']
|
|
8699
|
+
} as const;
|
|
8700
|
+
|
|
8701
|
+
export const $ExpectedTransactionDto = {
|
|
8702
|
+
type: 'object',
|
|
8703
|
+
properties: {
|
|
8704
|
+
date: {
|
|
8705
|
+
type: 'string',
|
|
8706
|
+
example: '2026-08-01'
|
|
8707
|
+
},
|
|
8708
|
+
amount: {
|
|
8709
|
+
type: 'number',
|
|
8710
|
+
example: -45.5
|
|
8711
|
+
},
|
|
8712
|
+
description: {
|
|
8713
|
+
type: 'string',
|
|
8714
|
+
example: '星巴克-***店'
|
|
8715
|
+
},
|
|
8716
|
+
payee: {
|
|
8717
|
+
type: 'string'
|
|
8718
|
+
},
|
|
8719
|
+
category: {
|
|
8720
|
+
type: 'string'
|
|
8721
|
+
}
|
|
8722
|
+
},
|
|
8723
|
+
required: ['date', 'amount', 'description']
|
|
8724
|
+
} as const;
|
|
8725
|
+
|
|
8726
|
+
export const $ParserContributionExamplesDto = {
|
|
8727
|
+
type: 'object',
|
|
8728
|
+
properties: {
|
|
8729
|
+
expectedTransactions: {
|
|
8730
|
+
type: 'array',
|
|
8731
|
+
items: {
|
|
8732
|
+
$ref: '#/components/schemas/ExpectedTransactionDto'
|
|
8733
|
+
}
|
|
8734
|
+
}
|
|
8735
|
+
},
|
|
8736
|
+
required: ['expectedTransactions']
|
|
8737
|
+
} as const;
|
|
8738
|
+
|
|
8739
|
+
export const $ParserContributionRequestDto = {
|
|
8740
|
+
type: 'object',
|
|
8741
|
+
properties: {
|
|
8742
|
+
meta: {
|
|
8743
|
+
$ref: '#/components/schemas/ParserContributionMetaDto'
|
|
8744
|
+
},
|
|
8745
|
+
samples: {
|
|
8746
|
+
$ref: '#/components/schemas/ParserContributionSamplesDto'
|
|
8747
|
+
},
|
|
8748
|
+
fieldHints: {
|
|
8749
|
+
$ref: '#/components/schemas/ParserContributionFieldHintsDto'
|
|
8750
|
+
},
|
|
8751
|
+
examples: {
|
|
8752
|
+
description: 'Omitted entirely by the client when empty',
|
|
8753
|
+
allOf: [
|
|
8754
|
+
{
|
|
8755
|
+
$ref: '#/components/schemas/ParserContributionExamplesDto'
|
|
8756
|
+
}
|
|
8757
|
+
]
|
|
8758
|
+
}
|
|
8759
|
+
},
|
|
8760
|
+
required: ['meta', 'samples', 'fieldHints']
|
|
8761
|
+
} as const;
|
|
8762
|
+
|
|
8763
|
+
export const $ParserContributionRelayResponseDto = {
|
|
8764
|
+
type: 'object',
|
|
8765
|
+
properties: {
|
|
8766
|
+
issueUrl: {
|
|
8767
|
+
type: 'string',
|
|
8768
|
+
example: 'https://github.com/fire-la/parsers/issues/42'
|
|
8769
|
+
},
|
|
8770
|
+
issueNumber: {
|
|
8771
|
+
type: 'number',
|
|
8772
|
+
example: 42
|
|
8773
|
+
}
|
|
8774
|
+
},
|
|
8775
|
+
required: ['issueUrl', 'issueNumber']
|
|
8776
|
+
} as const;
|
|
8777
|
+
|
|
8398
8778
|
export const $SymbolSearchResultDto = {
|
|
8399
8779
|
type: 'object',
|
|
8400
8780
|
properties: {
|
|
@@ -280,6 +280,8 @@ import type {
|
|
|
280
280
|
ApiKeysControllerCreateApiKeyResponse,
|
|
281
281
|
AuthControllerAccessTokenLoginData,
|
|
282
282
|
AuthControllerAccessTokenLoginResponse,
|
|
283
|
+
ParserContributionControllerCreateData,
|
|
284
|
+
ParserContributionControllerCreateResponse,
|
|
283
285
|
CacheControllerFlushCacheResponse,
|
|
284
286
|
ExchangeRateControllerGetExchangeRateData,
|
|
285
287
|
ExchangeRateControllerGetExchangeRateResponse,
|
|
@@ -641,7 +643,8 @@ export class BeanTransactionsService {
|
|
|
641
643
|
* @param data.status Filter by transaction status
|
|
642
644
|
* @param data.search Search in narration and payee fields (max 200 chars)
|
|
643
645
|
* @param data.accountId Filter by account ID (transactions with postings to this account)
|
|
644
|
-
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an
|
|
646
|
+
* @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
|
|
647
|
+
* @param data.flow Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
|
|
645
648
|
* @returns TransactionListResponseDto Transaction list
|
|
646
649
|
* @throws ApiError
|
|
647
650
|
*/
|
|
@@ -662,7 +665,8 @@ export class BeanTransactionsService {
|
|
|
662
665
|
status: data.status,
|
|
663
666
|
search: data.search,
|
|
664
667
|
accountId: data.accountId,
|
|
665
|
-
category: data.category
|
|
668
|
+
category: data.category,
|
|
669
|
+
flow: data.flow
|
|
666
670
|
},
|
|
667
671
|
errors: {
|
|
668
672
|
400: 'Validation failed',
|
|
@@ -4042,6 +4046,38 @@ export class AuthService {
|
|
|
4042
4046
|
}
|
|
4043
4047
|
}
|
|
4044
4048
|
|
|
4049
|
+
export class CommunityService {
|
|
4050
|
+
/**
|
|
4051
|
+
* Relay a sanitized parser-contribution payload
|
|
4052
|
+
* A server-side bot re-sanitizes the payload and opens an issue on the target repository; the issue URL is returned. The payload is never persisted or logged (forward-and-drop).
|
|
4053
|
+
* @param data The data for the request.
|
|
4054
|
+
* @param data.region Region code for tenant context (routing only; the institution region rides in the payload meta)
|
|
4055
|
+
* @param data.requestBody
|
|
4056
|
+
* @returns ParserContributionRelayResponseDto Issue created by the bot
|
|
4057
|
+
* @throws ApiError
|
|
4058
|
+
*/
|
|
4059
|
+
public static parserContributionControllerCreate(
|
|
4060
|
+
data: ParserContributionControllerCreateData
|
|
4061
|
+
): CancelablePromise<ParserContributionControllerCreateResponse> {
|
|
4062
|
+
return __request(OpenAPI, {
|
|
4063
|
+
method: 'POST',
|
|
4064
|
+
url: '/api/v1/{region}/community/parser-contributions',
|
|
4065
|
+
path: {
|
|
4066
|
+
region: data.region
|
|
4067
|
+
},
|
|
4068
|
+
body: data.requestBody,
|
|
4069
|
+
mediaType: 'application/json',
|
|
4070
|
+
errors: {
|
|
4071
|
+
401: 'Unauthorized',
|
|
4072
|
+
422: 'Validation failed (institution slug, empty samples, row/cell size limits)',
|
|
4073
|
+
429: 'Rate limited (5 submissions per user per hour)',
|
|
4074
|
+
501: 'Relay not configured on this deployment — clients fall back to the clipboard flow',
|
|
4075
|
+
502: 'GitHub bot failure (upstream), safe to retry'
|
|
4076
|
+
}
|
|
4077
|
+
});
|
|
4078
|
+
}
|
|
4079
|
+
}
|
|
4080
|
+
|
|
4045
4081
|
export class DefaultService {
|
|
4046
4082
|
/**
|
|
4047
4083
|
* @returns unknown
|