mollie-api-py 1.0.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 (337) hide show
  1. mollie/__init__.py +18 -0
  2. mollie/_hooks/__init__.py +5 -0
  3. mollie/_hooks/mollie_hooks.py +165 -0
  4. mollie/_hooks/registration.py +18 -0
  5. mollie/_hooks/sdkhooks.py +76 -0
  6. mollie/_hooks/types.py +113 -0
  7. mollie/_version.py +15 -0
  8. mollie/balance_transfers.py +651 -0
  9. mollie/balances.py +1105 -0
  10. mollie/basesdk.py +360 -0
  11. mollie/capabilities.py +209 -0
  12. mollie/captures.py +677 -0
  13. mollie/chargebacks_sdk.py +675 -0
  14. mollie/client_links.py +325 -0
  15. mollie/clients.py +409 -0
  16. mollie/customers.py +1563 -0
  17. mollie/delayed_routing.py +421 -0
  18. mollie/httpclient.py +125 -0
  19. mollie/invoices.py +429 -0
  20. mollie/mandates.py +895 -0
  21. mollie/methods.py +789 -0
  22. mollie/models/__init__.py +4002 -0
  23. mollie/models/address.py +29 -0
  24. mollie/models/amount.py +25 -0
  25. mollie/models/amount_nullable.py +24 -0
  26. mollie/models/apierror.py +40 -0
  27. mollie/models/balance_card_audience.py +10 -0
  28. mollie/models/balance_card_issuer.py +12 -0
  29. mollie/models/balance_card_region.py +12 -0
  30. mollie/models/balance_fee_type.py +43 -0
  31. mollie/models/balance_prepayment_part_type.py +13 -0
  32. mollie/models/balance_report_grouping.py +10 -0
  33. mollie/models/balance_transaction_type.py +47 -0
  34. mollie/models/balance_transfer_category.py +17 -0
  35. mollie/models/balance_transfer_category_response.py +18 -0
  36. mollie/models/balance_transfer_destination_type.py +14 -0
  37. mollie/models/balance_transfer_party_type.py +10 -0
  38. mollie/models/balance_transfer_party_type_response.py +11 -0
  39. mollie/models/balance_transfer_status.py +13 -0
  40. mollie/models/balance_transfer_status_reason_response.py +19 -0
  41. mollie/models/billingaddress.py +154 -0
  42. mollie/models/cancel_paymentop.py +93 -0
  43. mollie/models/cancel_refundop.py +86 -0
  44. mollie/models/cancel_subscriptionop.py +100 -0
  45. mollie/models/capability_requirement_status.py +15 -0
  46. mollie/models/capability_status.py +12 -0
  47. mollie/models/capability_status_reason.py +10 -0
  48. mollie/models/capture_mode.py +15 -0
  49. mollie/models/capture_mode_response.py +16 -0
  50. mollie/models/capture_response.py +265 -0
  51. mollie/models/client_link_request.py +210 -0
  52. mollie/models/client_link_response.py +56 -0
  53. mollie/models/clienterror.py +30 -0
  54. mollie/models/components_sub_totals.py +127 -0
  55. mollie/models/create_captureop.py +43 -0
  56. mollie/models/create_client_linkop.py +29 -0
  57. mollie/models/create_connect_balance_transferop.py +32 -0
  58. mollie/models/create_customer_paymentop.py +43 -0
  59. mollie/models/create_customerop.py +29 -0
  60. mollie/models/create_mandateop.py +43 -0
  61. mollie/models/create_payment_linkop.py +325 -0
  62. mollie/models/create_paymentop.py +73 -0
  63. mollie/models/create_profileop.py +29 -0
  64. mollie/models/create_refundop.py +43 -0
  65. mollie/models/create_sales_invoiceop.py +29 -0
  66. mollie/models/create_subscriptionop.py +43 -0
  67. mollie/models/create_webhook.py +123 -0
  68. mollie/models/create_webhookop.py +69 -0
  69. mollie/models/currencies.py +20 -0
  70. mollie/models/customer_response.py +169 -0
  71. mollie/models/delete_customerop.py +91 -0
  72. mollie/models/delete_payment_linkop.py +91 -0
  73. mollie/models/delete_profileop.py +29 -0
  74. mollie/models/delete_sales_invoiceop.py +44 -0
  75. mollie/models/delete_values_sales_invoice.py +54 -0
  76. mollie/models/delete_webhookop.py +56 -0
  77. mollie/models/entity_balance.py +325 -0
  78. mollie/models/entity_balance_report.py +541 -0
  79. mollie/models/entity_balance_transaction.py +1068 -0
  80. mollie/models/entity_balance_transfer.py +62 -0
  81. mollie/models/entity_balance_transfer_party.py +28 -0
  82. mollie/models/entity_balance_transfer_party_response.py +32 -0
  83. mollie/models/entity_balance_transfer_response.py +159 -0
  84. mollie/models/entity_capability.py +75 -0
  85. mollie/models/entity_capability_requirement.py +87 -0
  86. mollie/models/entity_capture.py +63 -0
  87. mollie/models/entity_chargeback.py +247 -0
  88. mollie/models/entity_customer.py +86 -0
  89. mollie/models/entity_event.py +46 -0
  90. mollie/models/entity_invoice.py +247 -0
  91. mollie/models/entity_method_get.py +329 -0
  92. mollie/models/entity_onboarding_status.py +95 -0
  93. mollie/models/entity_organization.py +178 -0
  94. mollie/models/entity_payment_route.py +111 -0
  95. mollie/models/entity_payment_route_response.py +140 -0
  96. mollie/models/entity_permission.py +61 -0
  97. mollie/models/entity_refund_response.py +361 -0
  98. mollie/models/entity_route.py +96 -0
  99. mollie/models/entity_settlement.py +467 -0
  100. mollie/models/entity_terminal.py +160 -0
  101. mollie/models/entity_webhook.py +122 -0
  102. mollie/models/entity_webhook_event.py +149 -0
  103. mollie/models/error_response.py +70 -0
  104. mollie/models/get_balance_reportop.py +126 -0
  105. mollie/models/get_balanceop.py +71 -0
  106. mollie/models/get_captureop.py +129 -0
  107. mollie/models/get_chargebackop.py +129 -0
  108. mollie/models/get_clientop.py +216 -0
  109. mollie/models/get_connect_balance_transferop.py +71 -0
  110. mollie/models/get_current_organizationop.py +22 -0
  111. mollie/models/get_current_profileop.py +22 -0
  112. mollie/models/get_customerop.py +286 -0
  113. mollie/models/get_invoiceop.py +29 -0
  114. mollie/models/get_mandateop.py +86 -0
  115. mollie/models/get_methodop.py +199 -0
  116. mollie/models/get_next_settlementop.py +22 -0
  117. mollie/models/get_onboarding_statusop.py +22 -0
  118. mollie/models/get_open_settlementop.py +22 -0
  119. mollie/models/get_organizationop.py +71 -0
  120. mollie/models/get_partner_statusop.py +231 -0
  121. mollie/models/get_payment_link_paymentsop.py +188 -0
  122. mollie/models/get_payment_linkop.py +77 -0
  123. mollie/models/get_paymentop.py +128 -0
  124. mollie/models/get_permissionop.py +73 -0
  125. mollie/models/get_primary_balanceop.py +22 -0
  126. mollie/models/get_profileop.py +71 -0
  127. mollie/models/get_refundop.py +129 -0
  128. mollie/models/get_sales_invoiceop.py +75 -0
  129. mollie/models/get_settlementop.py +29 -0
  130. mollie/models/get_subscriptionop.py +86 -0
  131. mollie/models/get_terminalop.py +77 -0
  132. mollie/models/get_webhook_eventop.py +71 -0
  133. mollie/models/get_webhookop.py +71 -0
  134. mollie/models/internal/__init__.py +54 -0
  135. mollie/models/internal/globals.py +59 -0
  136. mollie/models/line_categories.py +13 -0
  137. mollie/models/line_categories_response.py +14 -0
  138. mollie/models/list_all_chargebacksop.py +236 -0
  139. mollie/models/list_all_methodsop.py +249 -0
  140. mollie/models/list_all_refundsop.py +230 -0
  141. mollie/models/list_all_subscriptionsop.py +202 -0
  142. mollie/models/list_balance_transactionsop.py +174 -0
  143. mollie/models/list_balancesop.py +171 -0
  144. mollie/models/list_capabilitiesop.py +62 -0
  145. mollie/models/list_capture_response.py +264 -0
  146. mollie/models/list_capturesop.py +185 -0
  147. mollie/models/list_chargebacksop.py +185 -0
  148. mollie/models/list_clientsop.py +269 -0
  149. mollie/models/list_connect_balance_transfersop.py +177 -0
  150. mollie/models/list_customer_paymentsop.py +231 -0
  151. mollie/models/list_customer_response.py +164 -0
  152. mollie/models/list_customersop.py +172 -0
  153. mollie/models/list_entity_balance.py +322 -0
  154. mollie/models/list_entity_chargeback.py +244 -0
  155. mollie/models/list_entity_invoice.py +244 -0
  156. mollie/models/list_entity_method.py +315 -0
  157. mollie/models/list_entity_method_all.py +391 -0
  158. mollie/models/list_entity_permission.py +56 -0
  159. mollie/models/list_entity_refund.py +352 -0
  160. mollie/models/list_entity_settlement.py +457 -0
  161. mollie/models/list_entity_terminal.py +157 -0
  162. mollie/models/list_entity_webhook.py +117 -0
  163. mollie/models/list_invoicesop.py +175 -0
  164. mollie/models/list_links.py +68 -0
  165. mollie/models/list_mandate_response.py +261 -0
  166. mollie/models/list_mandatesop.py +186 -0
  167. mollie/models/list_methodsop.py +332 -0
  168. mollie/models/list_payment_linksop.py +159 -0
  169. mollie/models/list_payment_response.py +1953 -0
  170. mollie/models/list_paymentsop.py +217 -0
  171. mollie/models/list_permissionsop.py +85 -0
  172. mollie/models/list_profile_response.py +194 -0
  173. mollie/models/list_profilesop.py +118 -0
  174. mollie/models/list_refundsop.py +189 -0
  175. mollie/models/list_route_get_response.py +97 -0
  176. mollie/models/list_sales_invoice_response.py +505 -0
  177. mollie/models/list_sales_invoicesop.py +172 -0
  178. mollie/models/list_settlement_capturesop.py +187 -0
  179. mollie/models/list_settlement_chargebacksop.py +187 -0
  180. mollie/models/list_settlement_paymentsop.py +233 -0
  181. mollie/models/list_settlement_refundsop.py +191 -0
  182. mollie/models/list_settlementsop.py +178 -0
  183. mollie/models/list_subscription_paymentsop.py +242 -0
  184. mollie/models/list_subscription_response.py +344 -0
  185. mollie/models/list_subscriptionsop.py +189 -0
  186. mollie/models/list_terminalsop.py +172 -0
  187. mollie/models/list_webhooksop.py +189 -0
  188. mollie/models/locale.py +32 -0
  189. mollie/models/locale_response.py +33 -0
  190. mollie/models/mandate_details_card_label_response.py +22 -0
  191. mollie/models/mandate_method.py +15 -0
  192. mollie/models/mandate_method_response.py +16 -0
  193. mollie/models/mandate_request.py +160 -0
  194. mollie/models/mandate_response.py +264 -0
  195. mollie/models/metadata.py +19 -0
  196. mollie/models/method.py +50 -0
  197. mollie/models/method_include_wallets_parameter.py +8 -0
  198. mollie/models/method_resource_parameter.py +9 -0
  199. mollie/models/method_response.py +59 -0
  200. mollie/models/method_status.py +15 -0
  201. mollie/models/mode.py +12 -0
  202. mollie/models/no_response_error.py +17 -0
  203. mollie/models/onboarding_vat_regulation.py +16 -0
  204. mollie/models/organization_vat_regulation.py +17 -0
  205. mollie/models/payment_address.py +130 -0
  206. mollie/models/payment_create_routeop.py +43 -0
  207. mollie/models/payment_details_card_audition_response.py +12 -0
  208. mollie/models/payment_details_card_funding_response.py +14 -0
  209. mollie/models/payment_details_card_label_response.py +23 -0
  210. mollie/models/payment_details_card_security_response.py +12 -0
  211. mollie/models/payment_details_failure_reason_response.py +25 -0
  212. mollie/models/payment_details_fee_region_response.py +20 -0
  213. mollie/models/payment_details_receipt_card_read_method_response.py +17 -0
  214. mollie/models/payment_details_receipt_card_verification_method_response.py +21 -0
  215. mollie/models/payment_details_seller_protection_response.py +20 -0
  216. mollie/models/payment_details_wallet_response.py +11 -0
  217. mollie/models/payment_line_item.py +96 -0
  218. mollie/models/payment_line_item_response.py +104 -0
  219. mollie/models/payment_line_type.py +20 -0
  220. mollie/models/payment_line_type_response.py +21 -0
  221. mollie/models/payment_link_method.py +36 -0
  222. mollie/models/payment_link_method_response.py +37 -0
  223. mollie/models/payment_link_response.py +348 -0
  224. mollie/models/payment_link_sequence_type.py +9 -0
  225. mollie/models/payment_link_sequence_type_response.py +10 -0
  226. mollie/models/payment_list_routesop.py +140 -0
  227. mollie/models/payment_method.py +53 -0
  228. mollie/models/payment_request.py +919 -0
  229. mollie/models/payment_response.py +1953 -0
  230. mollie/models/profile_request.py +67 -0
  231. mollie/models/profile_response.py +197 -0
  232. mollie/models/profile_review_status_response.py +12 -0
  233. mollie/models/recurring_line_item.py +77 -0
  234. mollie/models/refund_external_reference_type.py +10 -0
  235. mollie/models/refund_external_reference_type_response.py +11 -0
  236. mollie/models/refund_request.py +200 -0
  237. mollie/models/release_authorizationop.py +108 -0
  238. mollie/models/request_apple_pay_payment_sessionop.py +76 -0
  239. mollie/models/responsevalidationerror.py +27 -0
  240. mollie/models/revoke_mandateop.py +100 -0
  241. mollie/models/route_create_response.py +97 -0
  242. mollie/models/route_destination_type.py +10 -0
  243. mollie/models/route_destination_type_response.py +11 -0
  244. mollie/models/sales_invoice_discount.py +21 -0
  245. mollie/models/sales_invoice_discount_response.py +25 -0
  246. mollie/models/sales_invoice_discount_type.py +11 -0
  247. mollie/models/sales_invoice_discount_type_response.py +12 -0
  248. mollie/models/sales_invoice_email_details.py +20 -0
  249. mollie/models/sales_invoice_line_item.py +67 -0
  250. mollie/models/sales_invoice_line_item_response.py +70 -0
  251. mollie/models/sales_invoice_payment_details.py +59 -0
  252. mollie/models/sales_invoice_payment_details_response.py +66 -0
  253. mollie/models/sales_invoice_payment_details_source.py +12 -0
  254. mollie/models/sales_invoice_payment_details_source_response.py +13 -0
  255. mollie/models/sales_invoice_payment_term.py +16 -0
  256. mollie/models/sales_invoice_payment_term_response.py +17 -0
  257. mollie/models/sales_invoice_recipient.py +176 -0
  258. mollie/models/sales_invoice_recipient_locale.py +18 -0
  259. mollie/models/sales_invoice_recipient_locale_response.py +19 -0
  260. mollie/models/sales_invoice_recipient_response.py +182 -0
  261. mollie/models/sales_invoice_recipient_type.py +13 -0
  262. mollie/models/sales_invoice_recipient_type_response.py +14 -0
  263. mollie/models/sales_invoice_request.py +256 -0
  264. mollie/models/sales_invoice_response.py +509 -0
  265. mollie/models/sales_invoice_status.py +25 -0
  266. mollie/models/sales_invoice_status_response.py +26 -0
  267. mollie/models/sales_invoice_vat_mode.py +13 -0
  268. mollie/models/sales_invoice_vat_mode_response.py +14 -0
  269. mollie/models/sales_invoice_vat_scheme.py +11 -0
  270. mollie/models/sales_invoice_vat_scheme_response.py +12 -0
  271. mollie/models/security.py +35 -0
  272. mollie/models/sequence_type.py +10 -0
  273. mollie/models/sequence_type_response.py +11 -0
  274. mollie/models/sorting.py +9 -0
  275. mollie/models/status_reason.py +168 -0
  276. mollie/models/sub_group.py +52 -0
  277. mollie/models/sub_totals.py +120 -0
  278. mollie/models/submit_onboarding_dataop.py +214 -0
  279. mollie/models/subscription_method.py +12 -0
  280. mollie/models/subscription_method_response.py +13 -0
  281. mollie/models/subscription_request.py +213 -0
  282. mollie/models/subscription_response.py +349 -0
  283. mollie/models/terminal_brand.py +12 -0
  284. mollie/models/terminal_model.py +16 -0
  285. mollie/models/test_webhookop.py +64 -0
  286. mollie/models/update_customerop.py +43 -0
  287. mollie/models/update_payment_linkop.py +172 -0
  288. mollie/models/update_paymentop.py +332 -0
  289. mollie/models/update_profileop.py +147 -0
  290. mollie/models/update_sales_invoiceop.py +44 -0
  291. mollie/models/update_subscriptionop.py +188 -0
  292. mollie/models/update_values_sales_invoice.py +176 -0
  293. mollie/models/update_webhookop.py +83 -0
  294. mollie/models/url.py +24 -0
  295. mollie/models/url_nullable.py +25 -0
  296. mollie/models/webhook_event_types.py +18 -0
  297. mollie/models/webhook_status.py +14 -0
  298. mollie/onboarding.py +403 -0
  299. mollie/organizations.py +579 -0
  300. mollie/payment_links.py +1323 -0
  301. mollie/payments_sdk.py +1385 -0
  302. mollie/permissions.py +397 -0
  303. mollie/profiles.py +1209 -0
  304. mollie/py.typed +1 -0
  305. mollie/refunds_sdk.py +1111 -0
  306. mollie/sales_invoices.py +1121 -0
  307. mollie/sdk.py +265 -0
  308. mollie/sdkconfiguration.py +50 -0
  309. mollie/settlements.py +1735 -0
  310. mollie/subscriptions.py +1617 -0
  311. mollie/terminals.py +427 -0
  312. mollie/types/__init__.py +21 -0
  313. mollie/types/basemodel.py +39 -0
  314. mollie/utils/__init__.py +200 -0
  315. mollie/utils/annotations.py +79 -0
  316. mollie/utils/datetimes.py +23 -0
  317. mollie/utils/enums.py +74 -0
  318. mollie/utils/eventstreaming.py +248 -0
  319. mollie/utils/forms.py +223 -0
  320. mollie/utils/headers.py +136 -0
  321. mollie/utils/logger.py +27 -0
  322. mollie/utils/metadata.py +118 -0
  323. mollie/utils/queryparams.py +205 -0
  324. mollie/utils/requestbodies.py +66 -0
  325. mollie/utils/retries.py +217 -0
  326. mollie/utils/security.py +195 -0
  327. mollie/utils/serializers.py +249 -0
  328. mollie/utils/unmarshal_json_response.py +24 -0
  329. mollie/utils/url.py +155 -0
  330. mollie/utils/values.py +137 -0
  331. mollie/wallets.py +263 -0
  332. mollie/webhook_events.py +211 -0
  333. mollie/webhooks.py +1305 -0
  334. mollie_api_py-1.0.0.dist-info/METADATA +834 -0
  335. mollie_api_py-1.0.0.dist-info/RECORD +337 -0
  336. mollie_api_py-1.0.0.dist-info/WHEEL +4 -0
  337. mollie_api_py-1.0.0.dist-info/licenses/LICENSE.md +24 -0
@@ -0,0 +1,77 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from mollie.utils import (
6
+ FieldMetadata,
7
+ HeaderMetadata,
8
+ PathParamMetadata,
9
+ QueryParamMetadata,
10
+ )
11
+ import pydantic
12
+ from typing import Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class GetTerminalGlobalsTypedDict(TypedDict):
17
+ testmode: NotRequired[bool]
18
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
19
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
20
+ setting the `testmode` query parameter to `true`.
21
+
22
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
23
+ """
24
+
25
+
26
+ class GetTerminalGlobals(BaseModel):
27
+ testmode: Annotated[
28
+ Optional[bool],
29
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
30
+ ] = None
31
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
32
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
33
+ setting the `testmode` query parameter to `true`.
34
+
35
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
36
+ """
37
+
38
+
39
+ class GetTerminalRequestTypedDict(TypedDict):
40
+ terminal_id: str
41
+ r"""Provide the ID of the related terminal."""
42
+ testmode: NotRequired[bool]
43
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
44
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
45
+ setting the `testmode` query parameter to `true`.
46
+
47
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
48
+ """
49
+ idempotency_key: NotRequired[str]
50
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
51
+
52
+
53
+ class GetTerminalRequest(BaseModel):
54
+ terminal_id: Annotated[
55
+ str,
56
+ pydantic.Field(alias="terminalId"),
57
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
58
+ ]
59
+ r"""Provide the ID of the related terminal."""
60
+
61
+ testmode: Annotated[
62
+ Optional[bool],
63
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
64
+ ] = None
65
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
66
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
67
+ setting the `testmode` query parameter to `true`.
68
+
69
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
70
+ """
71
+
72
+ idempotency_key: Annotated[
73
+ Optional[str],
74
+ pydantic.Field(alias="idempotency-key"),
75
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
76
+ ] = None
77
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
@@ -0,0 +1,71 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from mollie.utils import (
6
+ FieldMetadata,
7
+ HeaderMetadata,
8
+ PathParamMetadata,
9
+ QueryParamMetadata,
10
+ )
11
+ import pydantic
12
+ from typing import Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class GetWebhookEventGlobalsTypedDict(TypedDict):
17
+ testmode: NotRequired[bool]
18
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
19
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
20
+ setting the `testmode` query parameter to `true`.
21
+
22
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
23
+ """
24
+
25
+
26
+ class GetWebhookEventGlobals(BaseModel):
27
+ testmode: Annotated[
28
+ Optional[bool],
29
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
30
+ ] = None
31
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
32
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
33
+ setting the `testmode` query parameter to `true`.
34
+
35
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
36
+ """
37
+
38
+
39
+ class GetWebhookEventRequestTypedDict(TypedDict):
40
+ id: str
41
+ r"""Provide the ID of the item you want to perform this operation on."""
42
+ testmode: NotRequired[bool]
43
+ r"""You can enable test mode by setting the `testmode` query parameter to `true`.
44
+
45
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
46
+ """
47
+ idempotency_key: NotRequired[str]
48
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
49
+
50
+
51
+ class GetWebhookEventRequest(BaseModel):
52
+ id: Annotated[
53
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
54
+ ]
55
+ r"""Provide the ID of the item you want to perform this operation on."""
56
+
57
+ testmode: Annotated[
58
+ Optional[bool],
59
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
60
+ ] = None
61
+ r"""You can enable test mode by setting the `testmode` query parameter to `true`.
62
+
63
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
64
+ """
65
+
66
+ idempotency_key: Annotated[
67
+ Optional[str],
68
+ pydantic.Field(alias="idempotency-key"),
69
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
70
+ ] = None
71
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
@@ -0,0 +1,71 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from mollie.utils import (
6
+ FieldMetadata,
7
+ HeaderMetadata,
8
+ PathParamMetadata,
9
+ QueryParamMetadata,
10
+ )
11
+ import pydantic
12
+ from typing import Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class GetWebhookGlobalsTypedDict(TypedDict):
17
+ testmode: NotRequired[bool]
18
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
19
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
20
+ setting the `testmode` query parameter to `true`.
21
+
22
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
23
+ """
24
+
25
+
26
+ class GetWebhookGlobals(BaseModel):
27
+ testmode: Annotated[
28
+ Optional[bool],
29
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
30
+ ] = None
31
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
32
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
33
+ setting the `testmode` query parameter to `true`.
34
+
35
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
36
+ """
37
+
38
+
39
+ class GetWebhookRequestTypedDict(TypedDict):
40
+ id: str
41
+ r"""Provide the ID of the item you want to perform this operation on."""
42
+ testmode: NotRequired[bool]
43
+ r"""You can enable test mode by setting the `testmode` query parameter to `true`.
44
+
45
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
46
+ """
47
+ idempotency_key: NotRequired[str]
48
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
49
+
50
+
51
+ class GetWebhookRequest(BaseModel):
52
+ id: Annotated[
53
+ str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
54
+ ]
55
+ r"""Provide the ID of the item you want to perform this operation on."""
56
+
57
+ testmode: Annotated[
58
+ Optional[bool],
59
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
60
+ ] = None
61
+ r"""You can enable test mode by setting the `testmode` query parameter to `true`.
62
+
63
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
64
+ """
65
+
66
+ idempotency_key: Annotated[
67
+ Optional[str],
68
+ pydantic.Field(alias="idempotency-key"),
69
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
70
+ ] = None
71
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
@@ -0,0 +1,54 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from typing import TYPE_CHECKING
4
+ from importlib import import_module
5
+ import builtins
6
+ import sys
7
+
8
+ if TYPE_CHECKING:
9
+ from .globals import Globals, GlobalsTypedDict
10
+
11
+ __all__ = ["Globals", "GlobalsTypedDict"]
12
+
13
+ _dynamic_imports: dict[str, str] = {
14
+ "Globals": ".globals",
15
+ "GlobalsTypedDict": ".globals",
16
+ }
17
+
18
+
19
+ def dynamic_import(modname, retries=3):
20
+ for attempt in range(retries):
21
+ try:
22
+ return import_module(modname, __package__)
23
+ except KeyError:
24
+ # Clear any half-initialized module and retry
25
+ sys.modules.pop(modname, None)
26
+ if attempt == retries - 1:
27
+ break
28
+ raise KeyError(f"Failed to import module '{modname}' after {retries} attempts")
29
+
30
+
31
+ def __getattr__(attr_name: str) -> object:
32
+ module_name = _dynamic_imports.get(attr_name)
33
+ if module_name is None:
34
+ raise AttributeError(
35
+ f"No {attr_name} found in _dynamic_imports for module name -> {__name__} "
36
+ )
37
+
38
+ try:
39
+ module = dynamic_import(module_name)
40
+ result = getattr(module, attr_name)
41
+ return result
42
+ except ImportError as e:
43
+ raise ImportError(
44
+ f"Failed to import {attr_name} from {module_name}: {e}"
45
+ ) from e
46
+ except AttributeError as e:
47
+ raise AttributeError(
48
+ f"Failed to get {attr_name} from {module_name}: {e}"
49
+ ) from e
50
+
51
+
52
+ def __dir__():
53
+ lazy_attrs = builtins.list(_dynamic_imports.keys())
54
+ return builtins.sorted(lazy_attrs)
@@ -0,0 +1,59 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from mollie.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata
6
+ import pydantic
7
+ from typing import Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class GlobalsTypedDict(TypedDict):
12
+ profile_id: NotRequired[str]
13
+ r"""The identifier referring to the [profile](get-profile) you wish to
14
+ retrieve the resources for.
15
+
16
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
17
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
18
+ """
19
+ testmode: NotRequired[bool]
20
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
21
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
22
+ setting the `testmode` query parameter to `true`.
23
+
24
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
25
+ """
26
+ custom_user_agent: NotRequired[str]
27
+ r"""Custom user agent string to be appended to the default Mollie SDK user agent."""
28
+
29
+
30
+ class Globals(BaseModel):
31
+ profile_id: Annotated[
32
+ Optional[str],
33
+ pydantic.Field(alias="profileId"),
34
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
35
+ ] = None
36
+ r"""The identifier referring to the [profile](get-profile) you wish to
37
+ retrieve the resources for.
38
+
39
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
40
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
41
+ """
42
+
43
+ testmode: Annotated[
44
+ Optional[bool],
45
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
46
+ ] = None
47
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
48
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
49
+ setting the `testmode` query parameter to `true`.
50
+
51
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
52
+ """
53
+
54
+ custom_user_agent: Annotated[
55
+ Optional[str],
56
+ pydantic.Field(alias="customUserAgent"),
57
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
58
+ ] = None
59
+ r"""Custom user agent string to be appended to the default Mollie SDK user agent."""
@@ -0,0 +1,13 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+
6
+
7
+ class LineCategories(str, Enum):
8
+ ECO = "eco"
9
+ GIFT = "gift"
10
+ MEAL = "meal"
11
+ SPORT_CULTURE = "sport_culture"
12
+ ADDITIONAL = "additional"
13
+ CONSUME = "consume"
@@ -0,0 +1,14 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class LineCategoriesResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ ECO = "eco"
10
+ GIFT = "gift"
11
+ MEAL = "meal"
12
+ SPORT_CULTURE = "sport_culture"
13
+ ADDITIONAL = "additional"
14
+ CONSUME = "consume"
@@ -0,0 +1,236 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .list_entity_chargeback import ListEntityChargeback, ListEntityChargebackTypedDict
5
+ from .list_links import ListLinks, ListLinksTypedDict
6
+ from .sorting import Sorting
7
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
8
+ from mollie.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata
9
+ import pydantic
10
+ from pydantic import model_serializer
11
+ from typing import List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class ListAllChargebacksGlobalsTypedDict(TypedDict):
16
+ profile_id: NotRequired[str]
17
+ r"""The identifier referring to the [profile](get-profile) you wish to
18
+ retrieve the resources for.
19
+
20
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
21
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
22
+ """
23
+ testmode: NotRequired[bool]
24
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
25
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
26
+ setting the `testmode` query parameter to `true`.
27
+
28
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
29
+ """
30
+
31
+
32
+ class ListAllChargebacksGlobals(BaseModel):
33
+ profile_id: Annotated[
34
+ Optional[str],
35
+ pydantic.Field(alias="profileId"),
36
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
37
+ ] = None
38
+ r"""The identifier referring to the [profile](get-profile) you wish to
39
+ retrieve the resources for.
40
+
41
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
42
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
43
+ """
44
+
45
+ testmode: Annotated[
46
+ Optional[bool],
47
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
48
+ ] = None
49
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
50
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
51
+ setting the `testmode` query parameter to `true`.
52
+
53
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
54
+ """
55
+
56
+
57
+ class ListAllChargebacksRequestTypedDict(TypedDict):
58
+ from_: NotRequired[str]
59
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
60
+ result set.
61
+ """
62
+ limit: NotRequired[Nullable[int]]
63
+ r"""The maximum number of items to return. Defaults to 50 items."""
64
+ embed: NotRequired[Nullable[str]]
65
+ r"""This endpoint allows embedding related API items by appending the following values via the `embed` query string
66
+ parameter.
67
+ """
68
+ sort: NotRequired[Sorting]
69
+ r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
70
+ newest to oldest.
71
+ """
72
+ profile_id: NotRequired[str]
73
+ r"""The identifier referring to the [profile](get-profile) you wish to
74
+ retrieve chargebacks for.
75
+
76
+ Most API credentials are linked to a single profile. In these cases the
77
+ `profileId` is already implied.
78
+
79
+ To retrieve all chargebacks across the organization, use an
80
+ organization-level API credential and omit the `profileId` parameter.
81
+ """
82
+ testmode: NotRequired[bool]
83
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
84
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
85
+ setting the `testmode` query parameter to `true`.
86
+
87
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
88
+ """
89
+ idempotency_key: NotRequired[str]
90
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
91
+
92
+
93
+ class ListAllChargebacksRequest(BaseModel):
94
+ from_: Annotated[
95
+ Optional[str],
96
+ pydantic.Field(alias="from"),
97
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
98
+ ] = None
99
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
100
+ result set.
101
+ """
102
+
103
+ limit: Annotated[
104
+ OptionalNullable[int],
105
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
106
+ ] = UNSET
107
+ r"""The maximum number of items to return. Defaults to 50 items."""
108
+
109
+ embed: Annotated[
110
+ OptionalNullable[str],
111
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
112
+ ] = UNSET
113
+ r"""This endpoint allows embedding related API items by appending the following values via the `embed` query string
114
+ parameter.
115
+ """
116
+
117
+ sort: Annotated[
118
+ Optional[Sorting],
119
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
120
+ ] = None
121
+ r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
122
+ newest to oldest.
123
+ """
124
+
125
+ profile_id: Annotated[
126
+ Optional[str],
127
+ pydantic.Field(alias="profileId"),
128
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
129
+ ] = None
130
+ r"""The identifier referring to the [profile](get-profile) you wish to
131
+ retrieve chargebacks for.
132
+
133
+ Most API credentials are linked to a single profile. In these cases the
134
+ `profileId` is already implied.
135
+
136
+ To retrieve all chargebacks across the organization, use an
137
+ organization-level API credential and omit the `profileId` parameter.
138
+ """
139
+
140
+ testmode: Annotated[
141
+ Optional[bool],
142
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
143
+ ] = None
144
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
145
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
146
+ setting the `testmode` query parameter to `true`.
147
+
148
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
149
+ """
150
+
151
+ idempotency_key: Annotated[
152
+ Optional[str],
153
+ pydantic.Field(alias="idempotency-key"),
154
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
155
+ ] = None
156
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
157
+
158
+ @model_serializer(mode="wrap")
159
+ def serialize_model(self, handler):
160
+ optional_fields = [
161
+ "from",
162
+ "limit",
163
+ "embed",
164
+ "sort",
165
+ "profileId",
166
+ "testmode",
167
+ "idempotency-key",
168
+ ]
169
+ nullable_fields = ["limit", "embed"]
170
+ null_default_fields = []
171
+
172
+ serialized = handler(self)
173
+
174
+ m = {}
175
+
176
+ for n, f in type(self).model_fields.items():
177
+ k = f.alias or n
178
+ val = serialized.get(k)
179
+ serialized.pop(k, None)
180
+
181
+ optional_nullable = k in optional_fields and k in nullable_fields
182
+ is_set = (
183
+ self.__pydantic_fields_set__.intersection({n})
184
+ or k in null_default_fields
185
+ ) # pylint: disable=no-member
186
+
187
+ if val is not None and val != UNSET_SENTINEL:
188
+ m[k] = val
189
+ elif val != UNSET_SENTINEL and (
190
+ not k in optional_fields or (optional_nullable and is_set)
191
+ ):
192
+ m[k] = val
193
+
194
+ return m
195
+
196
+
197
+ class ListAllChargebacksEmbeddedTypedDict(TypedDict):
198
+ chargebacks: List[ListEntityChargebackTypedDict]
199
+ r"""A list of chargeback objects."""
200
+
201
+
202
+ class ListAllChargebacksEmbedded(BaseModel):
203
+ chargebacks: List[ListEntityChargeback]
204
+ r"""A list of chargeback objects."""
205
+
206
+
207
+ class ListAllChargebacksResponseTypedDict(TypedDict):
208
+ r"""A list of chargeback objects."""
209
+
210
+ count: int
211
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
212
+ as well.
213
+
214
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
215
+ limit is 50 items.
216
+ """
217
+ embedded: ListAllChargebacksEmbeddedTypedDict
218
+ links: ListLinksTypedDict
219
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
220
+
221
+
222
+ class ListAllChargebacksResponse(BaseModel):
223
+ r"""A list of chargeback objects."""
224
+
225
+ count: int
226
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
227
+ as well.
228
+
229
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
230
+ limit is 50 items.
231
+ """
232
+
233
+ embedded: Annotated[ListAllChargebacksEmbedded, pydantic.Field(alias="_embedded")]
234
+
235
+ links: Annotated[ListLinks, pydantic.Field(alias="_links")]
236
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""