ynab-api-cli 0.1.0__py3-none-any.whl

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 (225) hide show
  1. ynab_api_cli/__init__.py +3 -0
  2. ynab_api_cli/__main__.py +266 -0
  3. ynab_api_cli/cli.py +171 -0
  4. ynab_api_cli/compat.py +120 -0
  5. ynab_api_cli/config.py +110 -0
  6. ynab_api_cli/contract.py +197 -0
  7. ynab_api_cli/contract_testing.py +141 -0
  8. ynab_api_cli/development.py +269 -0
  9. ynab_api_cli/distribution.py +123 -0
  10. ynab_api_cli/exceptions.py +7 -0
  11. ynab_api_cli/generated/__init__.py +3 -0
  12. ynab_api_cli/generated/api/__init__.py +3 -0
  13. ynab_api_cli/generated/api/accounts/__init__.py +3 -0
  14. ynab_api_cli/generated/api/accounts/create_account.py +54 -0
  15. ynab_api_cli/generated/api/accounts/get_account_by_id.py +53 -0
  16. ynab_api_cli/generated/api/accounts/get_accounts.py +57 -0
  17. ynab_api_cli/generated/api/categories/__init__.py +3 -0
  18. ynab_api_cli/generated/api/categories/create_category.py +54 -0
  19. ynab_api_cli/generated/api/categories/create_category_group.py +58 -0
  20. ynab_api_cli/generated/api/categories/get_categories.py +57 -0
  21. ynab_api_cli/generated/api/categories/get_category_by_id.py +52 -0
  22. ynab_api_cli/generated/api/categories/get_month_category_by_id.py +58 -0
  23. ynab_api_cli/generated/api/categories/update_category.py +57 -0
  24. ynab_api_cli/generated/api/categories/update_category_group.py +63 -0
  25. ynab_api_cli/generated/api/categories/update_month_category.py +65 -0
  26. ynab_api_cli/generated/api/money_movements/__init__.py +3 -0
  27. ynab_api_cli/generated/api/money_movements/get_money_movement_groups.py +51 -0
  28. ynab_api_cli/generated/api/money_movements/get_money_movement_groups_by_month.py +57 -0
  29. ynab_api_cli/generated/api/money_movements/get_money_movements.py +51 -0
  30. ynab_api_cli/generated/api/money_movements/get_money_movements_by_month.py +57 -0
  31. ynab_api_cli/generated/api/months/__init__.py +3 -0
  32. ynab_api_cli/generated/api/months/get_plan_month.py +55 -0
  33. ynab_api_cli/generated/api/months/get_plan_months.py +59 -0
  34. ynab_api_cli/generated/api/payee_locations/__init__.py +3 -0
  35. ynab_api_cli/generated/api/payee_locations/get_payee_location_by_id.py +54 -0
  36. ynab_api_cli/generated/api/payee_locations/get_payee_locations.py +51 -0
  37. ynab_api_cli/generated/api/payee_locations/get_payee_locations_by_payee.py +54 -0
  38. ynab_api_cli/generated/api/payees/__init__.py +3 -0
  39. ynab_api_cli/generated/api/payees/create_payee.py +54 -0
  40. ynab_api_cli/generated/api/payees/get_payee_by_id.py +52 -0
  41. ynab_api_cli/generated/api/payees/get_payees.py +57 -0
  42. ynab_api_cli/generated/api/payees/update_payee.py +57 -0
  43. ynab_api_cli/generated/api/plans/__init__.py +3 -0
  44. ynab_api_cli/generated/api/plans/get_plan_by_id.py +57 -0
  45. ynab_api_cli/generated/api/plans/get_plan_settings_by_id.py +49 -0
  46. ynab_api_cli/generated/api/plans/get_plans.py +51 -0
  47. ynab_api_cli/generated/api/scheduled_transactions/__init__.py +3 -0
  48. ynab_api_cli/generated/api/scheduled_transactions/create_scheduled_transaction.py +58 -0
  49. ynab_api_cli/generated/api/scheduled_transactions/delete_scheduled_transaction.py +56 -0
  50. ynab_api_cli/generated/api/scheduled_transactions/get_scheduled_transaction_by_id.py +56 -0
  51. ynab_api_cli/generated/api/scheduled_transactions/get_scheduled_transactions.py +59 -0
  52. ynab_api_cli/generated/api/scheduled_transactions/update_scheduled_transaction.py +63 -0
  53. ynab_api_cli/generated/api/transactions/__init__.py +3 -0
  54. ynab_api_cli/generated/api/transactions/create_transaction.py +58 -0
  55. ynab_api_cli/generated/api/transactions/delete_transaction.py +54 -0
  56. ynab_api_cli/generated/api/transactions/get_transaction_by_id.py +54 -0
  57. ynab_api_cli/generated/api/transactions/get_transactions.py +80 -0
  58. ynab_api_cli/generated/api/transactions/get_transactions_by_account.py +87 -0
  59. ynab_api_cli/generated/api/transactions/get_transactions_by_category.py +89 -0
  60. ynab_api_cli/generated/api/transactions/get_transactions_by_month.py +87 -0
  61. ynab_api_cli/generated/api/transactions/get_transactions_by_payee.py +89 -0
  62. ynab_api_cli/generated/api/transactions/import_transactions.py +54 -0
  63. ynab_api_cli/generated/api/transactions/update_transaction.py +59 -0
  64. ynab_api_cli/generated/api/transactions/update_transactions.py +58 -0
  65. ynab_api_cli/generated/api/user/__init__.py +3 -0
  66. ynab_api_cli/generated/api/user/get_user.py +42 -0
  67. ynab_api_cli/generated/bindings.py +141 -0
  68. ynab_api_cli/generated/models/__init__.py +416 -0
  69. ynab_api_cli/generated/models/account.py +71 -0
  70. ynab_api_cli/generated/models/account_base.py +57 -0
  71. ynab_api_cli/generated/models/account_response.py +19 -0
  72. ynab_api_cli/generated/models/account_response_data.py +19 -0
  73. ynab_api_cli/generated/models/account_type.py +23 -0
  74. ynab_api_cli/generated/models/accounts_response.py +21 -0
  75. ynab_api_cli/generated/models/accounts_response_data.py +20 -0
  76. ynab_api_cli/generated/models/bulk_response.py +19 -0
  77. ynab_api_cli/generated/models/bulk_response_data.py +21 -0
  78. ynab_api_cli/generated/models/bulk_response_data_bulk.py +15 -0
  79. ynab_api_cli/generated/models/bulk_transactions.py +21 -0
  80. ynab_api_cli/generated/models/categories_response.py +21 -0
  81. ynab_api_cli/generated/models/categories_response_data.py +22 -0
  82. ynab_api_cli/generated/models/category.py +104 -0
  83. ynab_api_cli/generated/models/category_base.py +74 -0
  84. ynab_api_cli/generated/models/category_group.py +20 -0
  85. ynab_api_cli/generated/models/category_group_with_categories.py +25 -0
  86. ynab_api_cli/generated/models/category_response.py +21 -0
  87. ynab_api_cli/generated/models/category_response_data.py +19 -0
  88. ynab_api_cli/generated/models/currency_format_type_0.py +21 -0
  89. ynab_api_cli/generated/models/date_format_type_0.py +14 -0
  90. ynab_api_cli/generated/models/debt_1.py +18 -0
  91. ynab_api_cli/generated/models/debt_2.py +18 -0
  92. ynab_api_cli/generated/models/debt_3.py +18 -0
  93. ynab_api_cli/generated/models/error_detail.py +16 -0
  94. ynab_api_cli/generated/models/error_response.py +19 -0
  95. ynab_api_cli/generated/models/existing_category.py +34 -0
  96. ynab_api_cli/generated/models/existing_transaction.py +43 -0
  97. ynab_api_cli/generated/models/flag_1.py +17 -0
  98. ynab_api_cli/generated/models/flag_2.py +17 -0
  99. ynab_api_cli/generated/models/flag_3.py +17 -0
  100. ynab_api_cli/generated/models/get_transactions_by_account_type.py +12 -0
  101. ynab_api_cli/generated/models/get_transactions_by_category_type.py +12 -0
  102. ynab_api_cli/generated/models/get_transactions_by_month_type.py +12 -0
  103. ynab_api_cli/generated/models/get_transactions_by_payee_type.py +12 -0
  104. ynab_api_cli/generated/models/get_transactions_type.py +12 -0
  105. ynab_api_cli/generated/models/goal_1.py +15 -0
  106. ynab_api_cli/generated/models/goal_2.py +15 -0
  107. ynab_api_cli/generated/models/goal_3.py +15 -0
  108. ynab_api_cli/generated/models/hybrid_transaction.py +70 -0
  109. ynab_api_cli/generated/models/hybrid_transaction_type.py +12 -0
  110. ynab_api_cli/generated/models/hybrid_transactions_response.py +21 -0
  111. ynab_api_cli/generated/models/hybrid_transactions_response_data.py +22 -0
  112. ynab_api_cli/generated/models/loan_account_periodic_value_type_0.py +33 -0
  113. ynab_api_cli/generated/models/money_movement.py +35 -0
  114. ynab_api_cli/generated/models/money_movement_base.py +33 -0
  115. ynab_api_cli/generated/models/money_movement_group.py +25 -0
  116. ynab_api_cli/generated/models/money_movement_groups_response.py +21 -0
  117. ynab_api_cli/generated/models/money_movement_groups_response_data.py +22 -0
  118. ynab_api_cli/generated/models/money_movements_response.py +21 -0
  119. ynab_api_cli/generated/models/money_movements_response_data.py +20 -0
  120. ynab_api_cli/generated/models/month_detail.py +42 -0
  121. ynab_api_cli/generated/models/month_detail_base.py +30 -0
  122. ynab_api_cli/generated/models/month_detail_response.py +21 -0
  123. ynab_api_cli/generated/models/month_detail_response_data.py +19 -0
  124. ynab_api_cli/generated/models/month_summaries_response.py +21 -0
  125. ynab_api_cli/generated/models/month_summaries_response_data.py +20 -0
  126. ynab_api_cli/generated/models/month_summary.py +37 -0
  127. ynab_api_cli/generated/models/month_summary_base.py +25 -0
  128. ynab_api_cli/generated/models/new_category.py +34 -0
  129. ynab_api_cli/generated/models/new_transaction.py +44 -0
  130. ynab_api_cli/generated/models/patch_category_group_wrapper.py +19 -0
  131. ynab_api_cli/generated/models/patch_category_wrapper.py +19 -0
  132. ynab_api_cli/generated/models/patch_month_category_wrapper.py +19 -0
  133. ynab_api_cli/generated/models/patch_payee_wrapper.py +19 -0
  134. ynab_api_cli/generated/models/patch_transactions_wrapper.py +21 -0
  135. ynab_api_cli/generated/models/payee.py +23 -0
  136. ynab_api_cli/generated/models/payee_location.py +20 -0
  137. ynab_api_cli/generated/models/payee_location_response.py +21 -0
  138. ynab_api_cli/generated/models/payee_location_response_data.py +19 -0
  139. ynab_api_cli/generated/models/payee_locations_response.py +21 -0
  140. ynab_api_cli/generated/models/payee_locations_response_data.py +19 -0
  141. ynab_api_cli/generated/models/payee_response.py +19 -0
  142. ynab_api_cli/generated/models/payee_response_data.py +19 -0
  143. ynab_api_cli/generated/models/payees_response.py +19 -0
  144. ynab_api_cli/generated/models/payees_response_data.py +20 -0
  145. ynab_api_cli/generated/models/plan_detail.py +74 -0
  146. ynab_api_cli/generated/models/plan_detail_response.py +21 -0
  147. ynab_api_cli/generated/models/plan_detail_response_data.py +20 -0
  148. ynab_api_cli/generated/models/plan_settings.py +21 -0
  149. ynab_api_cli/generated/models/plan_settings_response.py +21 -0
  150. ynab_api_cli/generated/models/plan_settings_response_data.py +19 -0
  151. ynab_api_cli/generated/models/plan_summary.py +38 -0
  152. ynab_api_cli/generated/models/plan_summary_response.py +21 -0
  153. ynab_api_cli/generated/models/plan_summary_response_data.py +24 -0
  154. ynab_api_cli/generated/models/post_account_wrapper.py +19 -0
  155. ynab_api_cli/generated/models/post_category_group_wrapper.py +19 -0
  156. ynab_api_cli/generated/models/post_category_wrapper.py +19 -0
  157. ynab_api_cli/generated/models/post_payee.py +14 -0
  158. ynab_api_cli/generated/models/post_payee_wrapper.py +19 -0
  159. ynab_api_cli/generated/models/post_scheduled_transaction_wrapper.py +23 -0
  160. ynab_api_cli/generated/models/post_transactions_wrapper.py +24 -0
  161. ynab_api_cli/generated/models/put_scheduled_transaction_wrapper.py +23 -0
  162. ynab_api_cli/generated/models/put_transaction_wrapper.py +19 -0
  163. ynab_api_cli/generated/models/save_account.py +18 -0
  164. ynab_api_cli/generated/models/save_account_type.py +16 -0
  165. ynab_api_cli/generated/models/save_category.py +34 -0
  166. ynab_api_cli/generated/models/save_category_goal_frequency.py +13 -0
  167. ynab_api_cli/generated/models/save_category_group.py +14 -0
  168. ynab_api_cli/generated/models/save_category_group_response.py +21 -0
  169. ynab_api_cli/generated/models/save_category_group_response_data.py +20 -0
  170. ynab_api_cli/generated/models/save_category_response.py +21 -0
  171. ynab_api_cli/generated/models/save_category_response_data.py +20 -0
  172. ynab_api_cli/generated/models/save_month_category.py +14 -0
  173. ynab_api_cli/generated/models/save_payee.py +16 -0
  174. ynab_api_cli/generated/models/save_payee_response.py +21 -0
  175. ynab_api_cli/generated/models/save_payee_response_data.py +20 -0
  176. ynab_api_cli/generated/models/save_scheduled_transaction.py +37 -0
  177. ynab_api_cli/generated/models/save_sub_transaction.py +22 -0
  178. ynab_api_cli/generated/models/save_transaction_with_id_or_import_id.py +45 -0
  179. ynab_api_cli/generated/models/save_transaction_with_optional_fields.py +43 -0
  180. ynab_api_cli/generated/models/save_transactions_response.py +21 -0
  181. ynab_api_cli/generated/models/save_transactions_response_data.py +29 -0
  182. ynab_api_cli/generated/models/scheduled_sub_transaction.py +31 -0
  183. ynab_api_cli/generated/models/scheduled_sub_transaction_base.py +29 -0
  184. ynab_api_cli/generated/models/scheduled_transaction_detail.py +53 -0
  185. ynab_api_cli/generated/models/scheduled_transaction_frequency.py +23 -0
  186. ynab_api_cli/generated/models/scheduled_transaction_response.py +21 -0
  187. ynab_api_cli/generated/models/scheduled_transaction_response_data.py +23 -0
  188. ynab_api_cli/generated/models/scheduled_transaction_summary.py +43 -0
  189. ynab_api_cli/generated/models/scheduled_transaction_summary_base.py +41 -0
  190. ynab_api_cli/generated/models/scheduled_transaction_summary_base_frequency.py +23 -0
  191. ynab_api_cli/generated/models/scheduled_transactions_response.py +21 -0
  192. ynab_api_cli/generated/models/scheduled_transactions_response_data.py +24 -0
  193. ynab_api_cli/generated/models/sub_transaction.py +34 -0
  194. ynab_api_cli/generated/models/sub_transaction_base.py +32 -0
  195. ynab_api_cli/generated/models/transaction_cleared_status.py +13 -0
  196. ynab_api_cli/generated/models/transaction_detail.py +70 -0
  197. ynab_api_cli/generated/models/transaction_response.py +21 -0
  198. ynab_api_cli/generated/models/transaction_response_data.py +20 -0
  199. ynab_api_cli/generated/models/transaction_summary.py +62 -0
  200. ynab_api_cli/generated/models/transaction_summary_base.py +60 -0
  201. ynab_api_cli/generated/models/transactions_import_response.py +21 -0
  202. ynab_api_cli/generated/models/transactions_import_response_data.py +14 -0
  203. ynab_api_cli/generated/models/transactions_response.py +21 -0
  204. ynab_api_cli/generated/models/transactions_response_data.py +20 -0
  205. ynab_api_cli/generated/models/user.py +16 -0
  206. ynab_api_cli/generated/models/user_response.py +19 -0
  207. ynab_api_cli/generated/models/user_response_data.py +19 -0
  208. ynab_api_cli/live.py +449 -0
  209. ynab_api_cli/py.typed +0 -0
  210. ynab_api_cli/resources/__init__.py +3 -0
  211. ynab_api_cli/resources/catalog.json +178 -0
  212. ynab_api_cli/resources/openapi.yaml +4035 -0
  213. ynab_api_cli/resources/provenance.json +9 -0
  214. ynab_api_cli/resources/schema_features.json +913 -0
  215. ynab_api_cli/resources/skill/SKILL.md +21 -0
  216. ynab_api_cli/resources/skill/references/operations.md +36 -0
  217. ynab_api_cli/resources/skill/references/setup.md +32 -0
  218. ynab_api_cli/security.py +83 -0
  219. ynab_api_cli/transport.py +133 -0
  220. ynab_api_cli/types.py +110 -0
  221. ynab_api_cli/verification.py +167 -0
  222. ynab_api_cli-0.1.0.dist-info/METADATA +90 -0
  223. ynab_api_cli-0.1.0.dist-info/RECORD +225 -0
  224. ynab_api_cli-0.1.0.dist-info/WHEEL +4 -0
  225. ynab_api_cli-0.1.0.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,31 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from uuid import UUID
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ from ynab_api_cli.types import UNSET, Unset
10
+
11
+
12
+ class ScheduledSubTransaction(BaseModel):
13
+ """Typed ScheduledSubTransaction contract representation."""
14
+
15
+ model_config = ConfigDict(
16
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
17
+ )
18
+ id: UUID = Field(alias="id")
19
+ scheduled_transaction_id: UUID = Field(alias="scheduled_transaction_id")
20
+ amount: int = Field(alias="amount")
21
+ deleted: bool = Field(alias="deleted")
22
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
23
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
24
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
25
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
26
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
27
+ transfer_account_id: Unset | UUID | None = Field(
28
+ alias="transfer_account_id", default=UNSET
29
+ )
30
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
31
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
@@ -0,0 +1,29 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from uuid import UUID
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ from ynab_api_cli.types import UNSET, Unset
10
+
11
+
12
+ class ScheduledSubTransactionBase(BaseModel):
13
+ """Typed ScheduledSubTransactionBase contract representation."""
14
+
15
+ model_config = ConfigDict(
16
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
17
+ )
18
+ id: UUID = Field(alias="id")
19
+ scheduled_transaction_id: UUID = Field(alias="scheduled_transaction_id")
20
+ amount: int = Field(alias="amount")
21
+ deleted: bool = Field(alias="deleted")
22
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
23
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
24
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
25
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
26
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
27
+ transfer_account_id: Unset | UUID | None = Field(
28
+ alias="transfer_account_id", default=UNSET
29
+ )
@@ -0,0 +1,53 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from typing import TYPE_CHECKING
7
+ from uuid import UUID
8
+
9
+ from pydantic import BaseModel, ConfigDict, Field
10
+
11
+ from ynab_api_cli.generated.models.flag_1 import Flag1
12
+ from ynab_api_cli.generated.models.flag_2 import Flag2
13
+ from ynab_api_cli.generated.models.flag_3 import Flag3
14
+ from ynab_api_cli.generated.models.scheduled_transaction_summary_base_frequency import (
15
+ ScheduledTransactionSummaryBaseFrequency,
16
+ )
17
+ from ynab_api_cli.types import UNSET, Unset
18
+
19
+ if TYPE_CHECKING:
20
+ from ynab_api_cli.generated.models.scheduled_sub_transaction import (
21
+ ScheduledSubTransaction,
22
+ )
23
+
24
+
25
+ class ScheduledTransactionDetail(BaseModel):
26
+ """Typed ScheduledTransactionDetail contract representation."""
27
+
28
+ model_config = ConfigDict(
29
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
30
+ )
31
+ id: UUID = Field(alias="id")
32
+ date_first: datetime.date = Field(alias="date_first")
33
+ date_next: datetime.date = Field(alias="date_next")
34
+ frequency: ScheduledTransactionSummaryBaseFrequency = Field(alias="frequency")
35
+ amount: int = Field(alias="amount")
36
+ account_id: UUID = Field(alias="account_id")
37
+ deleted: bool = Field(alias="deleted")
38
+ account_name: str = Field(alias="account_name")
39
+ subtransactions: list[ScheduledSubTransaction] = Field(alias="subtransactions")
40
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
41
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
42
+ alias="flag_color", default=UNSET
43
+ )
44
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
45
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
46
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
47
+ transfer_account_id: Unset | UUID | None = Field(
48
+ alias="transfer_account_id", default=UNSET
49
+ )
50
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
51
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
52
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
53
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
@@ -0,0 +1,23 @@
1
+ """Generated declarations; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from enum import StrEnum
6
+
7
+
8
+ class ScheduledTransactionFrequency(StrEnum):
9
+ """Generated contract enumeration."""
10
+
11
+ DAILY = "daily"
12
+ EVERY3MONTHS = "every3Months"
13
+ EVERY4MONTHS = "every4Months"
14
+ EVERY4WEEKS = "every4Weeks"
15
+ EVERYOTHERMONTH = "everyOtherMonth"
16
+ EVERYOTHERWEEK = "everyOtherWeek"
17
+ EVERYOTHERYEAR = "everyOtherYear"
18
+ MONTHLY = "monthly"
19
+ NEVER = "never"
20
+ TWICEAMONTH = "twiceAMonth"
21
+ TWICEAYEAR = "twiceAYear"
22
+ WEEKLY = "weekly"
23
+ YEARLY = "yearly"
@@ -0,0 +1,21 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.scheduled_transaction_response_data import (
11
+ ScheduledTransactionResponseData,
12
+ )
13
+
14
+
15
+ class ScheduledTransactionResponse(BaseModel):
16
+ """Typed ScheduledTransactionResponse contract representation."""
17
+
18
+ model_config = ConfigDict(
19
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
20
+ )
21
+ data: ScheduledTransactionResponseData = Field(alias="data")
@@ -0,0 +1,23 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.scheduled_transaction_detail import (
11
+ ScheduledTransactionDetail,
12
+ )
13
+
14
+
15
+ class ScheduledTransactionResponseData(BaseModel):
16
+ """Typed ScheduledTransactionResponseData contract representation."""
17
+
18
+ model_config = ConfigDict(
19
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
20
+ )
21
+ scheduled_transaction: ScheduledTransactionDetail = Field(
22
+ alias="scheduled_transaction"
23
+ )
@@ -0,0 +1,43 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from uuid import UUID
7
+
8
+ from pydantic import BaseModel, ConfigDict, Field
9
+
10
+ from ynab_api_cli.generated.models.flag_1 import Flag1
11
+ from ynab_api_cli.generated.models.flag_2 import Flag2
12
+ from ynab_api_cli.generated.models.flag_3 import Flag3
13
+ from ynab_api_cli.generated.models.scheduled_transaction_summary_base_frequency import (
14
+ ScheduledTransactionSummaryBaseFrequency,
15
+ )
16
+ from ynab_api_cli.types import UNSET, Unset
17
+
18
+
19
+ class ScheduledTransactionSummary(BaseModel):
20
+ """Typed ScheduledTransactionSummary contract representation."""
21
+
22
+ model_config = ConfigDict(
23
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
24
+ )
25
+ id: UUID = Field(alias="id")
26
+ date_first: datetime.date = Field(alias="date_first")
27
+ date_next: datetime.date = Field(alias="date_next")
28
+ frequency: ScheduledTransactionSummaryBaseFrequency = Field(alias="frequency")
29
+ amount: int = Field(alias="amount")
30
+ account_id: UUID = Field(alias="account_id")
31
+ deleted: bool = Field(alias="deleted")
32
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
33
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
34
+ alias="flag_color", default=UNSET
35
+ )
36
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
37
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
38
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
39
+ transfer_account_id: Unset | UUID | None = Field(
40
+ alias="transfer_account_id", default=UNSET
41
+ )
42
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
43
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
@@ -0,0 +1,41 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from uuid import UUID
7
+
8
+ from pydantic import BaseModel, ConfigDict, Field
9
+
10
+ from ynab_api_cli.generated.models.flag_1 import Flag1
11
+ from ynab_api_cli.generated.models.flag_2 import Flag2
12
+ from ynab_api_cli.generated.models.flag_3 import Flag3
13
+ from ynab_api_cli.generated.models.scheduled_transaction_summary_base_frequency import (
14
+ ScheduledTransactionSummaryBaseFrequency,
15
+ )
16
+ from ynab_api_cli.types import UNSET, Unset
17
+
18
+
19
+ class ScheduledTransactionSummaryBase(BaseModel):
20
+ """Typed ScheduledTransactionSummaryBase contract representation."""
21
+
22
+ model_config = ConfigDict(
23
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
24
+ )
25
+ id: UUID = Field(alias="id")
26
+ date_first: datetime.date = Field(alias="date_first")
27
+ date_next: datetime.date = Field(alias="date_next")
28
+ frequency: ScheduledTransactionSummaryBaseFrequency = Field(alias="frequency")
29
+ amount: int = Field(alias="amount")
30
+ account_id: UUID = Field(alias="account_id")
31
+ deleted: bool = Field(alias="deleted")
32
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
33
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
34
+ alias="flag_color", default=UNSET
35
+ )
36
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
37
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
38
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
39
+ transfer_account_id: Unset | UUID | None = Field(
40
+ alias="transfer_account_id", default=UNSET
41
+ )
@@ -0,0 +1,23 @@
1
+ """Generated declarations; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from enum import StrEnum
6
+
7
+
8
+ class ScheduledTransactionSummaryBaseFrequency(StrEnum):
9
+ """Generated contract enumeration."""
10
+
11
+ DAILY = "daily"
12
+ EVERY3MONTHS = "every3Months"
13
+ EVERY4MONTHS = "every4Months"
14
+ EVERY4WEEKS = "every4Weeks"
15
+ EVERYOTHERMONTH = "everyOtherMonth"
16
+ EVERYOTHERWEEK = "everyOtherWeek"
17
+ EVERYOTHERYEAR = "everyOtherYear"
18
+ MONTHLY = "monthly"
19
+ NEVER = "never"
20
+ TWICEAMONTH = "twiceAMonth"
21
+ TWICEAYEAR = "twiceAYear"
22
+ WEEKLY = "weekly"
23
+ YEARLY = "yearly"
@@ -0,0 +1,21 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.scheduled_transactions_response_data import (
11
+ ScheduledTransactionsResponseData,
12
+ )
13
+
14
+
15
+ class ScheduledTransactionsResponse(BaseModel):
16
+ """Typed ScheduledTransactionsResponse contract representation."""
17
+
18
+ model_config = ConfigDict(
19
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
20
+ )
21
+ data: ScheduledTransactionsResponseData = Field(alias="data")
@@ -0,0 +1,24 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.scheduled_transaction_detail import (
11
+ ScheduledTransactionDetail,
12
+ )
13
+
14
+
15
+ class ScheduledTransactionsResponseData(BaseModel):
16
+ """Typed ScheduledTransactionsResponseData contract representation."""
17
+
18
+ model_config = ConfigDict(
19
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
20
+ )
21
+ scheduled_transactions: list[ScheduledTransactionDetail] = Field(
22
+ alias="scheduled_transactions"
23
+ )
24
+ server_knowledge: int = Field(alias="server_knowledge")
@@ -0,0 +1,34 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from uuid import UUID
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ from ynab_api_cli.types import UNSET, Unset
10
+
11
+
12
+ class SubTransaction(BaseModel):
13
+ """Typed SubTransaction contract representation."""
14
+
15
+ model_config = ConfigDict(
16
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
17
+ )
18
+ id: str = Field(alias="id")
19
+ transaction_id: str = Field(alias="transaction_id")
20
+ amount: int = Field(alias="amount")
21
+ deleted: bool = Field(alias="deleted")
22
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
23
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
24
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
25
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
26
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
27
+ transfer_account_id: Unset | UUID | None = Field(
28
+ alias="transfer_account_id", default=UNSET
29
+ )
30
+ transfer_transaction_id: str | Unset | None = Field(
31
+ alias="transfer_transaction_id", default=UNSET
32
+ )
33
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
34
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
@@ -0,0 +1,32 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from uuid import UUID
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ from ynab_api_cli.types import UNSET, Unset
10
+
11
+
12
+ class SubTransactionBase(BaseModel):
13
+ """Typed SubTransactionBase contract representation."""
14
+
15
+ model_config = ConfigDict(
16
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
17
+ )
18
+ id: str = Field(alias="id")
19
+ transaction_id: str = Field(alias="transaction_id")
20
+ amount: int = Field(alias="amount")
21
+ deleted: bool = Field(alias="deleted")
22
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
23
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
24
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
25
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
26
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
27
+ transfer_account_id: Unset | UUID | None = Field(
28
+ alias="transfer_account_id", default=UNSET
29
+ )
30
+ transfer_transaction_id: str | Unset | None = Field(
31
+ alias="transfer_transaction_id", default=UNSET
32
+ )
@@ -0,0 +1,13 @@
1
+ """Generated declarations; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from enum import StrEnum
6
+
7
+
8
+ class TransactionClearedStatus(StrEnum):
9
+ """Generated contract enumeration."""
10
+
11
+ CLEARED = "cleared"
12
+ RECONCILED = "reconciled"
13
+ UNCLEARED = "uncleared"
@@ -0,0 +1,70 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from typing import TYPE_CHECKING
7
+ from uuid import UUID
8
+
9
+ from pydantic import BaseModel, ConfigDict, Field
10
+
11
+ from ynab_api_cli.generated.models.debt_1 import Debt1
12
+ from ynab_api_cli.generated.models.debt_2 import Debt2
13
+ from ynab_api_cli.generated.models.debt_3 import Debt3
14
+ from ynab_api_cli.generated.models.flag_1 import Flag1
15
+ from ynab_api_cli.generated.models.flag_2 import Flag2
16
+ from ynab_api_cli.generated.models.flag_3 import Flag3
17
+ from ynab_api_cli.generated.models.transaction_cleared_status import (
18
+ TransactionClearedStatus,
19
+ )
20
+ from ynab_api_cli.types import UNSET, Unset
21
+
22
+ if TYPE_CHECKING:
23
+ from ynab_api_cli.generated.models.sub_transaction import SubTransaction
24
+
25
+
26
+ class TransactionDetail(BaseModel):
27
+ """Typed TransactionDetail contract representation."""
28
+
29
+ model_config = ConfigDict(
30
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
31
+ )
32
+ id: str = Field(alias="id")
33
+ date: datetime.date = Field(alias="date")
34
+ amount: int = Field(alias="amount")
35
+ cleared: TransactionClearedStatus = Field(alias="cleared")
36
+ approved: bool = Field(alias="approved")
37
+ account_id: UUID = Field(alias="account_id")
38
+ deleted: bool = Field(alias="deleted")
39
+ account_name: str = Field(alias="account_name")
40
+ subtransactions: list[SubTransaction] = Field(alias="subtransactions")
41
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
42
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
43
+ alias="flag_color", default=UNSET
44
+ )
45
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
46
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
47
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
48
+ transfer_account_id: Unset | UUID | None = Field(
49
+ alias="transfer_account_id", default=UNSET
50
+ )
51
+ transfer_transaction_id: str | Unset | None = Field(
52
+ alias="transfer_transaction_id", default=UNSET
53
+ )
54
+ matched_transaction_id: str | Unset | None = Field(
55
+ alias="matched_transaction_id", default=UNSET
56
+ )
57
+ import_id: str | Unset | None = Field(alias="import_id", default=UNSET)
58
+ import_payee_name: str | Unset | None = Field(
59
+ alias="import_payee_name", default=UNSET
60
+ )
61
+ import_payee_name_original: str | Unset | None = Field(
62
+ alias="import_payee_name_original", default=UNSET
63
+ )
64
+ debt_transaction_type: Debt1 | Debt2 | Debt3 | Unset | None = Field(
65
+ alias="debt_transaction_type", default=UNSET
66
+ )
67
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
68
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
69
+ payee_name: str | Unset | None = Field(alias="payee_name", default=UNSET)
70
+ category_name: str | Unset | None = Field(alias="category_name", default=UNSET)
@@ -0,0 +1,21 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.transaction_response_data import (
11
+ TransactionResponseData,
12
+ )
13
+
14
+
15
+ class TransactionResponse(BaseModel):
16
+ """Typed TransactionResponse contract representation."""
17
+
18
+ model_config = ConfigDict(
19
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
20
+ )
21
+ data: TransactionResponseData = Field(alias="data")
@@ -0,0 +1,20 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING
6
+
7
+ from pydantic import BaseModel, ConfigDict, Field
8
+
9
+ if TYPE_CHECKING:
10
+ from ynab_api_cli.generated.models.transaction_detail import TransactionDetail
11
+
12
+
13
+ class TransactionResponseData(BaseModel):
14
+ """Typed TransactionResponseData contract representation."""
15
+
16
+ model_config = ConfigDict(
17
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
18
+ )
19
+ transaction: TransactionDetail = Field(alias="transaction")
20
+ server_knowledge: int = Field(alias="server_knowledge")
@@ -0,0 +1,62 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from uuid import UUID
7
+
8
+ from pydantic import BaseModel, ConfigDict, Field
9
+
10
+ from ynab_api_cli.generated.models.debt_1 import Debt1
11
+ from ynab_api_cli.generated.models.debt_2 import Debt2
12
+ from ynab_api_cli.generated.models.debt_3 import Debt3
13
+ from ynab_api_cli.generated.models.flag_1 import Flag1
14
+ from ynab_api_cli.generated.models.flag_2 import Flag2
15
+ from ynab_api_cli.generated.models.flag_3 import Flag3
16
+ from ynab_api_cli.generated.models.transaction_cleared_status import (
17
+ TransactionClearedStatus,
18
+ )
19
+ from ynab_api_cli.types import UNSET, Unset
20
+
21
+
22
+ class TransactionSummary(BaseModel):
23
+ """Typed TransactionSummary contract representation."""
24
+
25
+ model_config = ConfigDict(
26
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
27
+ )
28
+ id: str = Field(alias="id")
29
+ date: datetime.date = Field(alias="date")
30
+ amount: int = Field(alias="amount")
31
+ cleared: TransactionClearedStatus = Field(alias="cleared")
32
+ approved: bool = Field(alias="approved")
33
+ account_id: UUID = Field(alias="account_id")
34
+ deleted: bool = Field(alias="deleted")
35
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
36
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
37
+ alias="flag_color", default=UNSET
38
+ )
39
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
40
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
41
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
42
+ transfer_account_id: Unset | UUID | None = Field(
43
+ alias="transfer_account_id", default=UNSET
44
+ )
45
+ transfer_transaction_id: str | Unset | None = Field(
46
+ alias="transfer_transaction_id", default=UNSET
47
+ )
48
+ matched_transaction_id: str | Unset | None = Field(
49
+ alias="matched_transaction_id", default=UNSET
50
+ )
51
+ import_id: str | Unset | None = Field(alias="import_id", default=UNSET)
52
+ import_payee_name: str | Unset | None = Field(
53
+ alias="import_payee_name", default=UNSET
54
+ )
55
+ import_payee_name_original: str | Unset | None = Field(
56
+ alias="import_payee_name_original", default=UNSET
57
+ )
58
+ debt_transaction_type: Debt1 | Debt2 | Debt3 | Unset | None = Field(
59
+ alias="debt_transaction_type", default=UNSET
60
+ )
61
+ amount_formatted: str | Unset = Field(alias="amount_formatted", default=UNSET)
62
+ amount_currency: float | Unset = Field(alias="amount_currency", default=UNSET)
@@ -0,0 +1,60 @@
1
+ """Generated contract model; regenerate rather than editing."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import datetime
6
+ from uuid import UUID
7
+
8
+ from pydantic import BaseModel, ConfigDict, Field
9
+
10
+ from ynab_api_cli.generated.models.debt_1 import Debt1
11
+ from ynab_api_cli.generated.models.debt_2 import Debt2
12
+ from ynab_api_cli.generated.models.debt_3 import Debt3
13
+ from ynab_api_cli.generated.models.flag_1 import Flag1
14
+ from ynab_api_cli.generated.models.flag_2 import Flag2
15
+ from ynab_api_cli.generated.models.flag_3 import Flag3
16
+ from ynab_api_cli.generated.models.transaction_cleared_status import (
17
+ TransactionClearedStatus,
18
+ )
19
+ from ynab_api_cli.types import UNSET, Unset
20
+
21
+
22
+ class TransactionSummaryBase(BaseModel):
23
+ """Typed TransactionSummaryBase contract representation."""
24
+
25
+ model_config = ConfigDict(
26
+ extra="allow", arbitrary_types_allowed=True, populate_by_name=True
27
+ )
28
+ id: str = Field(alias="id")
29
+ date: datetime.date = Field(alias="date")
30
+ amount: int = Field(alias="amount")
31
+ cleared: TransactionClearedStatus = Field(alias="cleared")
32
+ approved: bool = Field(alias="approved")
33
+ account_id: UUID = Field(alias="account_id")
34
+ deleted: bool = Field(alias="deleted")
35
+ memo: str | Unset | None = Field(alias="memo", default=UNSET)
36
+ flag_color: Flag1 | Flag2 | Flag3 | Unset | None = Field(
37
+ alias="flag_color", default=UNSET
38
+ )
39
+ flag_name: str | Unset | None = Field(alias="flag_name", default=UNSET)
40
+ payee_id: Unset | UUID | None = Field(alias="payee_id", default=UNSET)
41
+ category_id: Unset | UUID | None = Field(alias="category_id", default=UNSET)
42
+ transfer_account_id: Unset | UUID | None = Field(
43
+ alias="transfer_account_id", default=UNSET
44
+ )
45
+ transfer_transaction_id: str | Unset | None = Field(
46
+ alias="transfer_transaction_id", default=UNSET
47
+ )
48
+ matched_transaction_id: str | Unset | None = Field(
49
+ alias="matched_transaction_id", default=UNSET
50
+ )
51
+ import_id: str | Unset | None = Field(alias="import_id", default=UNSET)
52
+ import_payee_name: str | Unset | None = Field(
53
+ alias="import_payee_name", default=UNSET
54
+ )
55
+ import_payee_name_original: str | Unset | None = Field(
56
+ alias="import_payee_name_original", default=UNSET
57
+ )
58
+ debt_transaction_type: Debt1 | Debt2 | Debt3 | Unset | None = Field(
59
+ alias="debt_transaction_type", default=UNSET
60
+ )