ynab 4.9.0 → 5.1.0

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.
Files changed (139) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/Rakefile +2 -2
  4. data/docs/Account.md +6 -0
  5. data/docs/AccountBase.md +25 -0
  6. data/docs/AccountsApi.md +3 -3
  7. data/docs/CategoriesApi.md +8 -8
  8. data/docs/Category.md +14 -0
  9. data/docs/CategoryBase.md +33 -0
  10. data/docs/ExistingCategory.md +2 -1
  11. data/docs/HybridTransaction.md +2 -0
  12. data/docs/MoneyMovement.md +2 -0
  13. data/docs/MoneyMovementBase.md +16 -0
  14. data/docs/MoneyMovementsApi.md +4 -4
  15. data/docs/MonthDetail.md +8 -0
  16. data/docs/MonthDetailBase.md +16 -0
  17. data/docs/MonthSummary.md +8 -0
  18. data/docs/MonthSummaryBase.md +15 -0
  19. data/docs/MonthsApi.md +2 -2
  20. data/docs/NewCategory.md +2 -1
  21. data/docs/PayeeLocationsApi.md +3 -3
  22. data/docs/PayeesApi.md +24 -3
  23. data/docs/PlanDetail.md +7 -7
  24. data/docs/PlanDetailResponseData.md +1 -1
  25. data/docs/PlanSummaryResponseData.md +2 -2
  26. data/docs/PlansApi.md +3 -3
  27. data/docs/PostPayee.md +8 -0
  28. data/docs/PostPayeeWrapper.md +8 -0
  29. data/docs/SaveAccount.md +1 -1
  30. data/docs/SaveAccountType.md +7 -0
  31. data/docs/SaveCategory.md +2 -1
  32. data/docs/SavePayee.md +1 -1
  33. data/docs/ScheduledSubTransaction.md +2 -0
  34. data/docs/ScheduledSubTransactionBase.md +17 -0
  35. data/docs/ScheduledTransactionDetail.md +2 -0
  36. data/docs/ScheduledTransactionSummary.md +2 -0
  37. data/docs/ScheduledTransactionSummaryBase.md +20 -0
  38. data/docs/ScheduledTransactionsApi.md +5 -5
  39. data/docs/SubTransaction.md +2 -0
  40. data/docs/SubTransactionBase.md +18 -0
  41. data/docs/TransactionDetail.md +2 -0
  42. data/docs/TransactionSummary.md +2 -0
  43. data/docs/TransactionSummaryBase.md +26 -0
  44. data/docs/TransactionsApi.md +11 -11
  45. data/lib/ynab/api/accounts_api.rb +3 -3
  46. data/lib/ynab/api/categories_api.rb +8 -8
  47. data/lib/ynab/api/deprecated_api.rb +3 -3
  48. data/lib/ynab/api/money_movements_api.rb +4 -4
  49. data/lib/ynab/api/months_api.rb +2 -2
  50. data/lib/ynab/api/payee_locations_api.rb +3 -3
  51. data/lib/ynab/api/payees_api.rb +77 -3
  52. data/lib/ynab/api/plans_api.rb +3 -3
  53. data/lib/ynab/api/scheduled_transactions_api.rb +5 -5
  54. data/lib/ynab/api/transactions_api.rb +11 -11
  55. data/lib/ynab/models/account.rb +72 -8
  56. data/lib/ynab/models/account_base.rb +340 -0
  57. data/lib/ynab/models/category.rb +159 -20
  58. data/lib/ynab/models/category_base.rb +436 -0
  59. data/lib/ynab/models/existing_category.rb +15 -5
  60. data/lib/ynab/models/hybrid_transaction.rb +21 -1
  61. data/lib/ynab/models/money_movement.rb +31 -11
  62. data/lib/ynab/models/money_movement_base.rb +223 -0
  63. data/lib/ynab/models/month_detail.rb +81 -1
  64. data/lib/ynab/models/month_detail_base.rb +230 -0
  65. data/lib/ynab/models/month_summary.rb +91 -6
  66. data/lib/ynab/models/month_summary_base.rb +212 -0
  67. data/lib/ynab/models/new_category.rb +15 -5
  68. data/lib/ynab/models/plan_detail.rb +7 -7
  69. data/lib/ynab/models/plan_detail_response_data.rb +8 -8
  70. data/lib/ynab/models/plan_summary_response_data.rb +15 -15
  71. data/lib/ynab/models/post_payee.rb +148 -0
  72. data/lib/ynab/models/post_payee_wrapper.rb +136 -0
  73. data/lib/ynab/models/save_account.rb +1 -1
  74. data/lib/ynab/models/save_account_type.rb +45 -0
  75. data/lib/ynab/models/save_category.rb +17 -6
  76. data/lib/ynab/models/save_payee.rb +1 -1
  77. data/lib/ynab/models/scheduled_sub_transaction.rb +31 -10
  78. data/lib/ynab/models/scheduled_sub_transaction_base.rb +229 -0
  79. data/lib/ynab/models/scheduled_transaction_detail.rb +21 -1
  80. data/lib/ynab/models/scheduled_transaction_summary.rb +31 -9
  81. data/lib/ynab/models/scheduled_transaction_summary_base.rb +292 -0
  82. data/lib/ynab/models/sub_transaction.rb +31 -11
  83. data/lib/ynab/models/sub_transaction_base.rb +240 -0
  84. data/lib/ynab/models/transaction_detail.rb +21 -1
  85. data/lib/ynab/models/transaction_summary.rb +31 -14
  86. data/lib/ynab/models/transaction_summary_base.rb +358 -0
  87. data/lib/ynab/version.rb +1 -1
  88. data/lib/ynab.rb +12 -0
  89. data/open_api_spec.yaml +330 -56
  90. data/spec/api/accounts_spec.rb +3 -3
  91. data/spec/api/categories_spec.rb +3 -3
  92. data/spec/api/months_spec.rb +2 -2
  93. data/spec/api/payee_locations_spec.rb +2 -2
  94. data/spec/api/payees_spec.rb +2 -2
  95. data/spec/api/plans_spec.rb +9 -9
  96. data/spec/api/scheduled_transactions_spec.rb +3 -3
  97. data/spec/api/transactions_spec.rb +11 -11
  98. data/spec/fixtures/vcr_cassettes/account.yml +2 -2
  99. data/spec/fixtures/vcr_cassettes/accounts.yml +2 -2
  100. data/spec/fixtures/vcr_cassettes/accounts_unauthorized.yml +2 -2
  101. data/spec/fixtures/vcr_cassettes/bulk_transactions.yml +2 -2
  102. data/spec/fixtures/vcr_cassettes/categories.yml +2 -2
  103. data/spec/fixtures/vcr_cassettes/categories_unauthorized.yml +2 -2
  104. data/spec/fixtures/vcr_cassettes/category.yml +2 -2
  105. data/spec/fixtures/vcr_cassettes/category_transactions.yml +2 -2
  106. data/spec/fixtures/vcr_cassettes/create_account.yml +2 -2
  107. data/spec/fixtures/vcr_cassettes/create_scheduled_transaction.yml +2 -2
  108. data/spec/fixtures/vcr_cassettes/create_transaction.yml +2 -2
  109. data/spec/fixtures/vcr_cassettes/create_transactions.yml +2 -2
  110. data/spec/fixtures/vcr_cassettes/import_transactions.yml +2 -2
  111. data/spec/fixtures/vcr_cassettes/month.yml +2 -2
  112. data/spec/fixtures/vcr_cassettes/month_transactions.yml +2 -2
  113. data/spec/fixtures/vcr_cassettes/months.yml +2 -2
  114. data/spec/fixtures/vcr_cassettes/months_unauthorized.yml +2 -2
  115. data/spec/fixtures/vcr_cassettes/multiple_transactions.yml +2 -2
  116. data/spec/fixtures/vcr_cassettes/patch_month_category.yml +2 -2
  117. data/spec/fixtures/vcr_cassettes/payee.yml +2 -2
  118. data/spec/fixtures/vcr_cassettes/payee_location.yml +2 -2
  119. data/spec/fixtures/vcr_cassettes/payee_locations.yml +2 -2
  120. data/spec/fixtures/vcr_cassettes/payee_locations_unauthorized.yml +2 -2
  121. data/spec/fixtures/vcr_cassettes/payee_transactions.yml +2 -2
  122. data/spec/fixtures/vcr_cassettes/payees.yml +2 -2
  123. data/spec/fixtures/vcr_cassettes/payees_unauthorized.yml +2 -2
  124. data/spec/fixtures/vcr_cassettes/{budget.yml → plan.yml} +3 -3
  125. data/spec/fixtures/vcr_cassettes/plans.yml +3 -3
  126. data/spec/fixtures/vcr_cassettes/plans_unauthorized.yml +2 -2
  127. data/spec/fixtures/vcr_cassettes/scheduled_transaction.yml +2 -2
  128. data/spec/fixtures/vcr_cassettes/scheduled_transactions.yml +2 -2
  129. data/spec/fixtures/vcr_cassettes/scheduled_transactions_unauthorized.yml +2 -2
  130. data/spec/fixtures/vcr_cassettes/transaction.yml +2 -2
  131. data/spec/fixtures/vcr_cassettes/transactions.yml +2 -2
  132. data/spec/fixtures/vcr_cassettes/transactions_invalid_flags.yml +2 -2
  133. data/spec/fixtures/vcr_cassettes/transactions_unauthorized.yml +2 -2
  134. data/spec/fixtures/vcr_cassettes/update_transaction.yml +2 -2
  135. data/spec/fixtures/vcr_cassettes/update_transactions.yml +2 -2
  136. data/ynab.gemspec +1 -1
  137. metadata +29 -9
  138. data/spec/fixtures/vcr_cassettes/budgets.yml +0 -49
  139. data/spec/fixtures/vcr_cassettes/budgets_unauthorized.yml +0 -49
data/open_api_spec.yaml CHANGED
@@ -5,7 +5,7 @@ info:
5
5
  and relies upon HTTPS for transport. We respond with meaningful HTTP
6
6
  response codes and if an error occurs, we include error details in the
7
7
  response body. API Documentation is at https://api.ynab.com
8
- version: 1.78.0
8
+ version: 1.83.0
9
9
  servers:
10
10
  - url: https://api.ynab.com/v1
11
11
  security:
@@ -51,7 +51,7 @@ paths:
51
51
  application/json:
52
52
  schema:
53
53
  $ref: "#/components/schemas/UserResponse"
54
- /budgets:
54
+ /plans:
55
55
  get:
56
56
  tags:
57
57
  - Plans
@@ -77,7 +77,7 @@ paths:
77
77
  application/json:
78
78
  schema:
79
79
  $ref: "#/components/schemas/ErrorResponse"
80
- /budgets/{plan_id}:
80
+ /plans/{plan_id}:
81
81
  get:
82
82
  tags:
83
83
  - Plans
@@ -114,7 +114,7 @@ paths:
114
114
  application/json:
115
115
  schema:
116
116
  $ref: "#/components/schemas/ErrorResponse"
117
- /budgets/{plan_id}/settings:
117
+ /plans/{plan_id}/settings:
118
118
  get:
119
119
  tags:
120
120
  - Plans
@@ -143,7 +143,7 @@ paths:
143
143
  application/json:
144
144
  schema:
145
145
  $ref: "#/components/schemas/ErrorResponse"
146
- /budgets/{plan_id}/accounts:
146
+ /plans/{plan_id}/accounts:
147
147
  get:
148
148
  tags:
149
149
  - Accounts
@@ -216,7 +216,7 @@ paths:
216
216
  schema:
217
217
  $ref: "#/components/schemas/ErrorResponse"
218
218
  x-codegen-request-body-name: data
219
- /budgets/{plan_id}/accounts/{account_id}:
219
+ /plans/{plan_id}/accounts/{account_id}:
220
220
  get:
221
221
  tags:
222
222
  - Accounts
@@ -252,7 +252,7 @@ paths:
252
252
  application/json:
253
253
  schema:
254
254
  $ref: "#/components/schemas/ErrorResponse"
255
- /budgets/{plan_id}/categories:
255
+ /plans/{plan_id}/categories:
256
256
  get:
257
257
  tags:
258
258
  - Categories
@@ -327,7 +327,7 @@ paths:
327
327
  schema:
328
328
  $ref: "#/components/schemas/ErrorResponse"
329
329
  x-codegen-request-body-name: data
330
- /budgets/{plan_id}/categories/{category_id}:
330
+ /plans/{plan_id}/categories/{category_id}:
331
331
  get:
332
332
  tags:
333
333
  - Categories
@@ -406,7 +406,7 @@ paths:
406
406
  schema:
407
407
  $ref: "#/components/schemas/ErrorResponse"
408
408
  x-codegen-request-body-name: data
409
- /budgets/{plan_id}/months/{month}/categories/{category_id}:
409
+ /plans/{plan_id}/months/{month}/categories/{category_id}:
410
410
  get:
411
411
  tags:
412
412
  - Categories
@@ -504,7 +504,7 @@ paths:
504
504
  schema:
505
505
  $ref: "#/components/schemas/ErrorResponse"
506
506
  x-codegen-request-body-name: data
507
- /budgets/{plan_id}/category_groups:
507
+ /plans/{plan_id}/category_groups:
508
508
  post:
509
509
  tags:
510
510
  - Categories
@@ -542,7 +542,7 @@ paths:
542
542
  schema:
543
543
  $ref: "#/components/schemas/ErrorResponse"
544
544
  x-codegen-request-body-name: data
545
- /budgets/{plan_id}/category_groups/{category_group_id}:
545
+ /plans/{plan_id}/category_groups/{category_group_id}:
546
546
  patch:
547
547
  tags:
548
548
  - Categories
@@ -586,7 +586,7 @@ paths:
586
586
  schema:
587
587
  $ref: "#/components/schemas/ErrorResponse"
588
588
  x-codegen-request-body-name: data
589
- /budgets/{plan_id}/payees:
589
+ /plans/{plan_id}/payees:
590
590
  get:
591
591
  tags:
592
592
  - Payees
@@ -622,7 +622,44 @@ paths:
622
622
  application/json:
623
623
  schema:
624
624
  $ref: "#/components/schemas/ErrorResponse"
625
- /budgets/{plan_id}/payees/{payee_id}:
625
+ post:
626
+ tags:
627
+ - Payees
628
+ summary: Create a payee
629
+ description: Creates a new payee
630
+ operationId: createPayee
631
+ parameters:
632
+ - name: plan_id
633
+ in: path
634
+ description: 'The id of the plan. "last-used" can be used to specify the last
635
+ used plan and "default" can be used if default plan selection is
636
+ enabled (see: https://api.ynab.com/#oauth-default-plan).'
637
+ required: true
638
+ schema:
639
+ type: string
640
+ requestBody:
641
+ description: The payee to create
642
+ content:
643
+ application/json:
644
+ schema:
645
+ $ref: "#/components/schemas/PostPayeeWrapper"
646
+ required: true
647
+ responses:
648
+ "201":
649
+ description: The payee was successfully created
650
+ content:
651
+ application/json:
652
+ schema:
653
+ $ref: "#/components/schemas/SavePayeeResponse"
654
+ "400":
655
+ description: The request could not be understood due to malformed syntax or
656
+ validation error(s)
657
+ content:
658
+ application/json:
659
+ schema:
660
+ $ref: "#/components/schemas/ErrorResponse"
661
+ x-codegen-request-body-name: data
662
+ /plans/{plan_id}/payees/{payee_id}:
626
663
  get:
627
664
  tags:
628
665
  - Payees
@@ -700,7 +737,7 @@ paths:
700
737
  schema:
701
738
  $ref: "#/components/schemas/ErrorResponse"
702
739
  x-codegen-request-body-name: data
703
- /budgets/{plan_id}/payee_locations:
740
+ /plans/{plan_id}/payee_locations:
704
741
  get:
705
742
  tags:
706
743
  - Payee Locations
@@ -729,7 +766,7 @@ paths:
729
766
  application/json:
730
767
  schema:
731
768
  $ref: "#/components/schemas/ErrorResponse"
732
- /budgets/{plan_id}/payee_locations/{payee_location_id}:
769
+ /plans/{plan_id}/payee_locations/{payee_location_id}:
733
770
  get:
734
771
  tags:
735
772
  - Payee Locations
@@ -764,7 +801,7 @@ paths:
764
801
  application/json:
765
802
  schema:
766
803
  $ref: "#/components/schemas/ErrorResponse"
767
- /budgets/{plan_id}/payees/{payee_id}/payee_locations:
804
+ /plans/{plan_id}/payees/{payee_id}/payee_locations:
768
805
  get:
769
806
  tags:
770
807
  - Payee Locations
@@ -799,7 +836,7 @@ paths:
799
836
  application/json:
800
837
  schema:
801
838
  $ref: "#/components/schemas/ErrorResponse"
802
- /budgets/{plan_id}/months:
839
+ /plans/{plan_id}/months:
803
840
  get:
804
841
  tags:
805
842
  - Months
@@ -835,7 +872,7 @@ paths:
835
872
  application/json:
836
873
  schema:
837
874
  $ref: "#/components/schemas/ErrorResponse"
838
- /budgets/{plan_id}/months/{month}:
875
+ /plans/{plan_id}/months/{month}:
839
876
  get:
840
877
  tags:
841
878
  - Months
@@ -872,7 +909,7 @@ paths:
872
909
  application/json:
873
910
  schema:
874
911
  $ref: "#/components/schemas/ErrorResponse"
875
- /budgets/{plan_id}/money_movements:
912
+ /plans/{plan_id}/money_movements:
876
913
  get:
877
914
  tags:
878
915
  - Money Movements
@@ -901,7 +938,7 @@ paths:
901
938
  application/json:
902
939
  schema:
903
940
  $ref: "#/components/schemas/ErrorResponse"
904
- /budgets/{plan_id}/months/{month}/money_movements:
941
+ /plans/{plan_id}/months/{month}/money_movements:
905
942
  get:
906
943
  tags:
907
944
  - Money Movements
@@ -938,7 +975,7 @@ paths:
938
975
  application/json:
939
976
  schema:
940
977
  $ref: "#/components/schemas/ErrorResponse"
941
- /budgets/{plan_id}/money_movement_groups:
978
+ /plans/{plan_id}/money_movement_groups:
942
979
  get:
943
980
  tags:
944
981
  - Money Movements
@@ -967,7 +1004,7 @@ paths:
967
1004
  application/json:
968
1005
  schema:
969
1006
  $ref: "#/components/schemas/ErrorResponse"
970
- /budgets/{plan_id}/months/{month}/money_movement_groups:
1007
+ /plans/{plan_id}/months/{month}/money_movement_groups:
971
1008
  get:
972
1009
  tags:
973
1010
  - Money Movements
@@ -1004,7 +1041,7 @@ paths:
1004
1041
  application/json:
1005
1042
  schema:
1006
1043
  $ref: "#/components/schemas/ErrorResponse"
1007
- /budgets/{plan_id}/transactions:
1044
+ /plans/{plan_id}/transactions:
1008
1045
  get:
1009
1046
  tags:
1010
1047
  - Transactions
@@ -1158,7 +1195,7 @@ paths:
1158
1195
  schema:
1159
1196
  $ref: "#/components/schemas/ErrorResponse"
1160
1197
  x-codegen-request-body-name: data
1161
- /budgets/{plan_id}/transactions/import:
1198
+ /plans/{plan_id}/transactions/import:
1162
1199
  post:
1163
1200
  tags:
1164
1201
  - Transactions
@@ -1200,7 +1237,7 @@ paths:
1200
1237
  application/json:
1201
1238
  schema:
1202
1239
  $ref: "#/components/schemas/ErrorResponse"
1203
- /budgets/{plan_id}/transactions/{transaction_id}:
1240
+ /plans/{plan_id}/transactions/{transaction_id}:
1204
1241
  get:
1205
1242
  tags:
1206
1243
  - Transactions
@@ -1312,7 +1349,7 @@ paths:
1312
1349
  application/json:
1313
1350
  schema:
1314
1351
  $ref: "#/components/schemas/ErrorResponse"
1315
- /budgets/{plan_id}/accounts/{account_id}/transactions:
1352
+ /plans/{plan_id}/accounts/{account_id}/transactions:
1316
1353
  get:
1317
1354
  tags:
1318
1355
  - Transactions
@@ -1371,7 +1408,7 @@ paths:
1371
1408
  application/json:
1372
1409
  schema:
1373
1410
  $ref: "#/components/schemas/ErrorResponse"
1374
- /budgets/{plan_id}/categories/{category_id}/transactions:
1411
+ /plans/{plan_id}/categories/{category_id}/transactions:
1375
1412
  get:
1376
1413
  tags:
1377
1414
  - Transactions
@@ -1430,7 +1467,7 @@ paths:
1430
1467
  application/json:
1431
1468
  schema:
1432
1469
  $ref: "#/components/schemas/ErrorResponse"
1433
- /budgets/{plan_id}/payees/{payee_id}/transactions:
1470
+ /plans/{plan_id}/payees/{payee_id}/transactions:
1434
1471
  get:
1435
1472
  tags:
1436
1473
  - Transactions
@@ -1489,7 +1526,7 @@ paths:
1489
1526
  application/json:
1490
1527
  schema:
1491
1528
  $ref: "#/components/schemas/ErrorResponse"
1492
- /budgets/{plan_id}/months/{month}/transactions:
1529
+ /plans/{plan_id}/months/{month}/transactions:
1493
1530
  get:
1494
1531
  tags:
1495
1532
  - Transactions
@@ -1549,7 +1586,7 @@ paths:
1549
1586
  application/json:
1550
1587
  schema:
1551
1588
  $ref: "#/components/schemas/ErrorResponse"
1552
- /budgets/{plan_id}/scheduled_transactions:
1589
+ /plans/{plan_id}/scheduled_transactions:
1553
1590
  get:
1554
1591
  tags:
1555
1592
  - Scheduled Transactions
@@ -1623,7 +1660,7 @@ paths:
1623
1660
  schema:
1624
1661
  $ref: "#/components/schemas/ErrorResponse"
1625
1662
  x-codegen-request-body-name: data
1626
- /budgets/{plan_id}/scheduled_transactions/{scheduled_transaction_id}:
1663
+ /plans/{plan_id}/scheduled_transactions/{scheduled_transaction_id}:
1627
1664
  get:
1628
1665
  tags:
1629
1666
  - Scheduled Transactions
@@ -1827,14 +1864,14 @@ components:
1827
1864
  properties:
1828
1865
  data:
1829
1866
  required:
1830
- - budgets
1867
+ - plans
1831
1868
  type: object
1832
1869
  properties:
1833
- budgets:
1870
+ plans:
1834
1871
  type: array
1835
1872
  items:
1836
1873
  $ref: "#/components/schemas/PlanSummary"
1837
- default_budget:
1874
+ default_plan:
1838
1875
  allOf:
1839
1876
  - $ref: "#/components/schemas/PlanSummary"
1840
1877
  nullable: true
@@ -1879,11 +1916,11 @@ components:
1879
1916
  properties:
1880
1917
  data:
1881
1918
  required:
1882
- - budget
1919
+ - plan
1883
1920
  - server_knowledge
1884
1921
  type: object
1885
1922
  properties:
1886
- budget:
1923
+ plan:
1887
1924
  $ref: "#/components/schemas/PlanDetail"
1888
1925
  server_knowledge:
1889
1926
  type: integer
@@ -1897,7 +1934,7 @@ components:
1897
1934
  accounts:
1898
1935
  type: array
1899
1936
  items:
1900
- $ref: "#/components/schemas/Account"
1937
+ $ref: "#/components/schemas/AccountBase"
1901
1938
  payees:
1902
1939
  type: array
1903
1940
  items:
@@ -1913,27 +1950,27 @@ components:
1913
1950
  categories:
1914
1951
  type: array
1915
1952
  items:
1916
- $ref: "#/components/schemas/Category"
1953
+ $ref: "#/components/schemas/CategoryBase"
1917
1954
  months:
1918
1955
  type: array
1919
1956
  items:
1920
- $ref: "#/components/schemas/MonthDetail"
1957
+ $ref: "#/components/schemas/MonthDetailBase"
1921
1958
  transactions:
1922
1959
  type: array
1923
1960
  items:
1924
- $ref: "#/components/schemas/TransactionSummary"
1961
+ $ref: "#/components/schemas/TransactionSummaryBase"
1925
1962
  subtransactions:
1926
1963
  type: array
1927
1964
  items:
1928
- $ref: "#/components/schemas/SubTransaction"
1965
+ $ref: "#/components/schemas/SubTransactionBase"
1929
1966
  scheduled_transactions:
1930
1967
  type: array
1931
1968
  items:
1932
- $ref: "#/components/schemas/ScheduledTransactionSummary"
1969
+ $ref: "#/components/schemas/ScheduledTransactionSummaryBase"
1933
1970
  scheduled_subtransactions:
1934
1971
  type: array
1935
1972
  items:
1936
- $ref: "#/components/schemas/ScheduledSubTransaction"
1973
+ $ref: "#/components/schemas/ScheduledSubTransactionBase"
1937
1974
  PlanSettingsResponse:
1938
1975
  required:
1939
1976
  - data
@@ -1987,7 +2024,7 @@ components:
1987
2024
  properties:
1988
2025
  account:
1989
2026
  $ref: "#/components/schemas/Account"
1990
- Account:
2027
+ AccountBase:
1991
2028
  required:
1992
2029
  - balance
1993
2030
  - cleared_balance
@@ -2067,6 +2104,32 @@ components:
2067
2104
  type: boolean
2068
2105
  description: Whether or not the account has been deleted. Deleted accounts will
2069
2106
  only be included in delta requests.
2107
+ Account:
2108
+ allOf:
2109
+ - $ref: "#/components/schemas/AccountBase"
2110
+ - type: object
2111
+ properties:
2112
+ balance_formatted:
2113
+ type: string
2114
+ description: The current available balance of the account formatted in the plan's currency format
2115
+ balance_currency:
2116
+ type: number
2117
+ format: double
2118
+ description: The current available balance of the account as a decimal currency amount
2119
+ cleared_balance_formatted:
2120
+ type: string
2121
+ description: The current cleared balance of the account formatted in the plan's currency format
2122
+ cleared_balance_currency:
2123
+ type: number
2124
+ format: double
2125
+ description: The current cleared balance of the account as a decimal currency amount
2126
+ uncleared_balance_formatted:
2127
+ type: string
2128
+ description: The current uncleared balance of the account formatted in the plan's currency format
2129
+ uncleared_balance_currency:
2130
+ type: number
2131
+ format: double
2132
+ description: The current uncleared balance of the account as a decimal currency amount
2070
2133
  PostAccountWrapper:
2071
2134
  required:
2072
2135
  - account
@@ -2085,7 +2148,7 @@ components:
2085
2148
  type: string
2086
2149
  description: The name of the account
2087
2150
  type:
2088
- $ref: "#/components/schemas/AccountType"
2151
+ $ref: "#/components/schemas/SaveAccountType"
2089
2152
  balance:
2090
2153
  type: integer
2091
2154
  description: The current balance of the account in milliunits format
@@ -2097,6 +2160,16 @@ components:
2097
2160
  additionalProperties:
2098
2161
  type: integer
2099
2162
  format: int64
2163
+ SaveAccountType:
2164
+ type: string
2165
+ description: The type of account to create or update
2166
+ enum:
2167
+ - checking
2168
+ - savings
2169
+ - cash
2170
+ - creditCard
2171
+ - otherAsset
2172
+ - otherLiability
2100
2173
  AccountType:
2101
2174
  type: string
2102
2175
  description: The type of account
@@ -2178,7 +2251,7 @@ components:
2178
2251
  type: boolean
2179
2252
  description: Whether or not the category group has been deleted. Deleted
2180
2253
  category groups will only be included in delta requests.
2181
- Category:
2254
+ CategoryBase:
2182
2255
  required:
2183
2256
  - activity
2184
2257
  - balance
@@ -2357,6 +2430,76 @@ components:
2357
2430
  type: boolean
2358
2431
  description: Whether or not the category has been deleted. Deleted categories
2359
2432
  will only be included in delta requests.
2433
+ Category:
2434
+ allOf:
2435
+ - $ref: "#/components/schemas/CategoryBase"
2436
+ - type: object
2437
+ properties:
2438
+ balance_formatted:
2439
+ type: string
2440
+ description: Available balance of the category formatted in the plan's currency format
2441
+ balance_currency:
2442
+ type: number
2443
+ format: double
2444
+ description: Available balance of the category as a decimal currency amount
2445
+ activity_formatted:
2446
+ type: string
2447
+ description: Activity of the category formatted in the plan's currency format
2448
+ activity_currency:
2449
+ type: number
2450
+ format: double
2451
+ description: Activity of the category as a decimal currency amount
2452
+ budgeted_formatted:
2453
+ type: string
2454
+ description: Assigned (budgeted) amount of the category formatted in the plan's currency format
2455
+ budgeted_currency:
2456
+ type: number
2457
+ format: double
2458
+ description: Assigned (budgeted) amount of the category as a decimal currency amount
2459
+ goal_target_formatted:
2460
+ type:
2461
+ - string
2462
+ - "null"
2463
+ description: The goal target amount formatted in the plan's currency format
2464
+ goal_target_currency:
2465
+ type:
2466
+ - number
2467
+ - "null"
2468
+ format: double
2469
+ description: The goal target amount as a decimal currency amount
2470
+ goal_under_funded_formatted:
2471
+ type:
2472
+ - string
2473
+ - "null"
2474
+ description: The goal underfunded amount formatted in the plan's currency format
2475
+ goal_under_funded_currency:
2476
+ type:
2477
+ - number
2478
+ - "null"
2479
+ format: double
2480
+ description: The goal underfunded amount as a decimal currency amount
2481
+ goal_overall_funded_formatted:
2482
+ type:
2483
+ - string
2484
+ - "null"
2485
+ description: The total amount funded towards the goal formatted in the plan's currency format
2486
+ goal_overall_funded_currency:
2487
+ type:
2488
+ - number
2489
+ - "null"
2490
+ format: double
2491
+ description: The total amount funded towards the goal as a decimal currency amount
2492
+ goal_overall_left_formatted:
2493
+ type:
2494
+ - string
2495
+ - "null"
2496
+ description: The amount of funding still needed to complete the goal formatted in the plan's currency format
2497
+ goal_overall_left_currency:
2498
+ type:
2499
+ - number
2500
+ - "null"
2501
+ format: double
2502
+ description: The amount of funding still needed to complete the goal as a decimal currency amount
2360
2503
  SaveCategoryResponse:
2361
2504
  required:
2362
2505
  - data
@@ -2784,7 +2927,7 @@ components:
2784
2927
  type: integer
2785
2928
  description: The knowledge of the server
2786
2929
  format: int64
2787
- TransactionSummary:
2930
+ TransactionSummaryBase:
2788
2931
  required:
2789
2932
  - account_id
2790
2933
  - amount
@@ -2894,6 +3037,19 @@ components:
2894
3037
  type: boolean
2895
3038
  description: Whether or not the transaction has been deleted. Deleted
2896
3039
  transactions will only be included in delta requests.
3040
+ TransactionSummary:
3041
+ allOf:
3042
+ - $ref: "#/components/schemas/TransactionSummaryBase"
3043
+ - type: object
3044
+ properties:
3045
+ amount_formatted:
3046
+ type: string
3047
+ description: The transaction amount formatted in the plan's currency format
3048
+ amount_currency:
3049
+ type: number
3050
+ format: double
3051
+ description: The transaction amount as a decimal currency amount
3052
+
2897
3053
  TransactionDetail:
2898
3054
  allOf:
2899
3055
  - $ref: "#/components/schemas/TransactionSummary"
@@ -2951,6 +3107,23 @@ components:
2951
3107
  type: string
2952
3108
  description: The name of the category. If a split transaction, this will be
2953
3109
  'Split'.
3110
+ PostPayeeWrapper:
3111
+ required:
3112
+ - payee
3113
+ type: object
3114
+ properties:
3115
+ payee:
3116
+ $ref: "#/components/schemas/PostPayee"
3117
+ PostPayee:
3118
+ required:
3119
+ - name
3120
+ type: object
3121
+ properties:
3122
+ name:
3123
+ type: string
3124
+ nullable: false
3125
+ maxLength: 500
3126
+ description: The name of the payee.
2954
3127
  PatchPayeeWrapper:
2955
3128
  required:
2956
3129
  - payee
@@ -2965,7 +3138,7 @@ components:
2965
3138
  type: string
2966
3139
  nullable: false
2967
3140
  maxLength: 500
2968
- description: The name of the payee. The name must be a maximum of 500 characters.
3141
+ description: The name of the payee.
2969
3142
  PostCategoryGroupWrapper:
2970
3143
  required:
2971
3144
  - category_group
@@ -3023,9 +3196,9 @@ components:
3023
3196
  - integer
3024
3197
  - "null"
3025
3198
  description: The goal target amount in milliunits format. If value is specified
3026
- and goal has not already been configured for category, a monthly
3027
- 'Needed for Spending' goal will be created for the category with
3028
- this target amount.
3199
+ and goal has not already been configured for category, a monthly goal
3200
+ will be created for the category with this target amount. If goal_type is
3201
+ not specified, it will default to 'NEED' or 'MF' for Credit Card Payment categories.
3029
3202
  format: int64
3030
3203
  goal_target_date:
3031
3204
  type:
@@ -3033,6 +3206,13 @@ components:
3033
3206
  - "null"
3034
3207
  description: The goal target date in ISO format (e.g. 2016-12-01).
3035
3208
  format: date
3209
+ goal_needs_whole_amount:
3210
+ type:
3211
+ - boolean
3212
+ - "null"
3213
+ description: Whether the goal requires the full target amount each period. Only supported for 'NEED' goals.
3214
+ When true, the goal is configured as 'Set aside another...'.
3215
+ When false, the goal is configured as 'Refill up to...'.
3036
3216
  ExistingCategory:
3037
3217
  allOf:
3038
3218
  - $ref: "#/components/schemas/SaveCategory"
@@ -3112,7 +3292,7 @@ components:
3112
3292
  type: array
3113
3293
  items:
3114
3294
  $ref: "#/components/schemas/SaveTransactionWithOptionalFields"
3115
- SubTransaction:
3295
+ SubTransactionBase:
3116
3296
  required:
3117
3297
  - amount
3118
3298
  - deleted
@@ -3166,6 +3346,18 @@ components:
3166
3346
  type: boolean
3167
3347
  description: Whether or not the subtransaction has been deleted. Deleted
3168
3348
  subtransactions will only be included in delta requests.
3349
+ SubTransaction:
3350
+ allOf:
3351
+ - $ref: "#/components/schemas/SubTransactionBase"
3352
+ - type: object
3353
+ properties:
3354
+ amount_formatted:
3355
+ type: string
3356
+ description: The subtransaction amount formatted in the plan's currency format
3357
+ amount_currency:
3358
+ type: number
3359
+ format: double
3360
+ description: The subtransaction amount as a decimal currency amount
3169
3361
  ScheduledTransactionsResponse:
3170
3362
  required:
3171
3363
  - data
@@ -3265,7 +3457,7 @@ components:
3265
3457
  $ref: "#/components/schemas/TransactionFlagColor"
3266
3458
  frequency:
3267
3459
  $ref: "#/components/schemas/ScheduledTransactionFrequency"
3268
- ScheduledTransactionSummary:
3460
+ ScheduledTransactionSummaryBase:
3269
3461
  required:
3270
3462
  - account_id
3271
3463
  - amount
@@ -3339,6 +3531,18 @@ components:
3339
3531
  type: boolean
3340
3532
  description: Whether or not the scheduled transaction has been deleted. Deleted
3341
3533
  scheduled transactions will only be included in delta requests.
3534
+ ScheduledTransactionSummary:
3535
+ allOf:
3536
+ - $ref: "#/components/schemas/ScheduledTransactionSummaryBase"
3537
+ - type: object
3538
+ properties:
3539
+ amount_formatted:
3540
+ type: string
3541
+ description: The scheduled transaction amount formatted in the plan's currency format
3542
+ amount_currency:
3543
+ type: number
3544
+ format: double
3545
+ description: The scheduled transaction amount as a decimal currency amount
3342
3546
  ScheduledTransactionDetail:
3343
3547
  allOf:
3344
3548
  - $ref: "#/components/schemas/ScheduledTransactionSummary"
@@ -3364,7 +3568,7 @@ components:
3364
3568
  description: If a split scheduled transaction, the subtransactions.
3365
3569
  items:
3366
3570
  $ref: "#/components/schemas/ScheduledSubTransaction"
3367
- ScheduledSubTransaction:
3571
+ ScheduledSubTransactionBase:
3368
3572
  required:
3369
3573
  - amount
3370
3574
  - deleted
@@ -3416,6 +3620,18 @@ components:
3416
3620
  description: Whether or not the scheduled subtransaction has been deleted.
3417
3621
  Deleted scheduled subtransactions will only be included in delta
3418
3622
  requests.
3623
+ ScheduledSubTransaction:
3624
+ allOf:
3625
+ - $ref: "#/components/schemas/ScheduledSubTransactionBase"
3626
+ - type: object
3627
+ properties:
3628
+ amount_formatted:
3629
+ type: string
3630
+ description: The scheduled subtransaction amount formatted in the plan's currency format
3631
+ amount_currency:
3632
+ type: number
3633
+ format: double
3634
+ description: The scheduled subtransaction amount as a decimal currency amount
3419
3635
  MonthSummariesResponse:
3420
3636
  required:
3421
3637
  - data
@@ -3447,7 +3663,7 @@ components:
3447
3663
  properties:
3448
3664
  month:
3449
3665
  $ref: "#/components/schemas/MonthDetail"
3450
- MonthSummary:
3666
+ MonthSummaryBase:
3451
3667
  required:
3452
3668
  - activity
3453
3669
  - budgeted
@@ -3492,6 +3708,52 @@ components:
3492
3708
  type: boolean
3493
3709
  description: Whether or not the month has been deleted. Deleted months will
3494
3710
  only be included in delta requests.
3711
+ MonthSummary:
3712
+ allOf:
3713
+ - $ref: "#/components/schemas/MonthSummaryBase"
3714
+ - type: object
3715
+ properties:
3716
+ income_formatted:
3717
+ type: string
3718
+ description: The total income formatted in the plan's currency format
3719
+ income_currency:
3720
+ type: number
3721
+ format: double
3722
+ description: The total income as a decimal currency amount
3723
+ budgeted_formatted:
3724
+ type: string
3725
+ description: The total amount assigned formatted in the plan's currency format
3726
+ budgeted_currency:
3727
+ type: number
3728
+ format: double
3729
+ description: The total amount assigned as a decimal currency amount
3730
+ activity_formatted:
3731
+ type: string
3732
+ description: The total activity amount formatted in the plan's currency format
3733
+ activity_currency:
3734
+ type: number
3735
+ format: double
3736
+ description: The total activity amount as a decimal currency amount
3737
+ to_be_budgeted_formatted:
3738
+ type: string
3739
+ description: The available amount for 'Ready to Assign' formatted in the plan's currency format
3740
+ to_be_budgeted_currency:
3741
+ type: number
3742
+ format: double
3743
+ description: The available amount for 'Ready to Assign' as a decimal currency amount
3744
+ MonthDetailBase:
3745
+ allOf:
3746
+ - $ref: "#/components/schemas/MonthSummaryBase"
3747
+ - required:
3748
+ - categories
3749
+ type: object
3750
+ properties:
3751
+ categories:
3752
+ type: array
3753
+ description: The plan month categories. Amounts (budgeted, activity, balance,
3754
+ etc.) are specific to the {month} parameter specified.
3755
+ items:
3756
+ $ref: "#/components/schemas/CategoryBase"
3495
3757
  MonthDetail:
3496
3758
  allOf:
3497
3759
  - $ref: "#/components/schemas/MonthSummary"
@@ -3567,7 +3829,7 @@ components:
3567
3829
  type: integer
3568
3830
  description: The knowledge of the server
3569
3831
  format: int64
3570
- MoneyMovement:
3832
+ MoneyMovementBase:
3571
3833
  required:
3572
3834
  - id
3573
3835
  - amount
@@ -3621,6 +3883,18 @@ components:
3621
3883
  type: integer
3622
3884
  description: The amount of the money movement in milliunits format
3623
3885
  format: int64
3886
+ MoneyMovement:
3887
+ allOf:
3888
+ - $ref: "#/components/schemas/MoneyMovementBase"
3889
+ - type: object
3890
+ properties:
3891
+ amount_formatted:
3892
+ type: string
3893
+ description: The money movement amount formatted in the plan's currency format
3894
+ amount_currency:
3895
+ type: number
3896
+ format: double
3897
+ description: The money movement amount as a decimal currency amount
3624
3898
  MoneyMovementGroupsResponse:
3625
3899
  required:
3626
3900
  - data