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.
- mollie/__init__.py +18 -0
- mollie/_hooks/__init__.py +5 -0
- mollie/_hooks/mollie_hooks.py +165 -0
- mollie/_hooks/registration.py +18 -0
- mollie/_hooks/sdkhooks.py +76 -0
- mollie/_hooks/types.py +113 -0
- mollie/_version.py +15 -0
- mollie/balance_transfers.py +651 -0
- mollie/balances.py +1105 -0
- mollie/basesdk.py +360 -0
- mollie/capabilities.py +209 -0
- mollie/captures.py +677 -0
- mollie/chargebacks_sdk.py +675 -0
- mollie/client_links.py +325 -0
- mollie/clients.py +409 -0
- mollie/customers.py +1563 -0
- mollie/delayed_routing.py +421 -0
- mollie/httpclient.py +125 -0
- mollie/invoices.py +429 -0
- mollie/mandates.py +895 -0
- mollie/methods.py +789 -0
- mollie/models/__init__.py +4002 -0
- mollie/models/address.py +29 -0
- mollie/models/amount.py +25 -0
- mollie/models/amount_nullable.py +24 -0
- mollie/models/apierror.py +40 -0
- mollie/models/balance_card_audience.py +10 -0
- mollie/models/balance_card_issuer.py +12 -0
- mollie/models/balance_card_region.py +12 -0
- mollie/models/balance_fee_type.py +43 -0
- mollie/models/balance_prepayment_part_type.py +13 -0
- mollie/models/balance_report_grouping.py +10 -0
- mollie/models/balance_transaction_type.py +47 -0
- mollie/models/balance_transfer_category.py +17 -0
- mollie/models/balance_transfer_category_response.py +18 -0
- mollie/models/balance_transfer_destination_type.py +14 -0
- mollie/models/balance_transfer_party_type.py +10 -0
- mollie/models/balance_transfer_party_type_response.py +11 -0
- mollie/models/balance_transfer_status.py +13 -0
- mollie/models/balance_transfer_status_reason_response.py +19 -0
- mollie/models/billingaddress.py +154 -0
- mollie/models/cancel_paymentop.py +93 -0
- mollie/models/cancel_refundop.py +86 -0
- mollie/models/cancel_subscriptionop.py +100 -0
- mollie/models/capability_requirement_status.py +15 -0
- mollie/models/capability_status.py +12 -0
- mollie/models/capability_status_reason.py +10 -0
- mollie/models/capture_mode.py +15 -0
- mollie/models/capture_mode_response.py +16 -0
- mollie/models/capture_response.py +265 -0
- mollie/models/client_link_request.py +210 -0
- mollie/models/client_link_response.py +56 -0
- mollie/models/clienterror.py +30 -0
- mollie/models/components_sub_totals.py +127 -0
- mollie/models/create_captureop.py +43 -0
- mollie/models/create_client_linkop.py +29 -0
- mollie/models/create_connect_balance_transferop.py +32 -0
- mollie/models/create_customer_paymentop.py +43 -0
- mollie/models/create_customerop.py +29 -0
- mollie/models/create_mandateop.py +43 -0
- mollie/models/create_payment_linkop.py +325 -0
- mollie/models/create_paymentop.py +73 -0
- mollie/models/create_profileop.py +29 -0
- mollie/models/create_refundop.py +43 -0
- mollie/models/create_sales_invoiceop.py +29 -0
- mollie/models/create_subscriptionop.py +43 -0
- mollie/models/create_webhook.py +123 -0
- mollie/models/create_webhookop.py +69 -0
- mollie/models/currencies.py +20 -0
- mollie/models/customer_response.py +169 -0
- mollie/models/delete_customerop.py +91 -0
- mollie/models/delete_payment_linkop.py +91 -0
- mollie/models/delete_profileop.py +29 -0
- mollie/models/delete_sales_invoiceop.py +44 -0
- mollie/models/delete_values_sales_invoice.py +54 -0
- mollie/models/delete_webhookop.py +56 -0
- mollie/models/entity_balance.py +325 -0
- mollie/models/entity_balance_report.py +541 -0
- mollie/models/entity_balance_transaction.py +1068 -0
- mollie/models/entity_balance_transfer.py +62 -0
- mollie/models/entity_balance_transfer_party.py +28 -0
- mollie/models/entity_balance_transfer_party_response.py +32 -0
- mollie/models/entity_balance_transfer_response.py +159 -0
- mollie/models/entity_capability.py +75 -0
- mollie/models/entity_capability_requirement.py +87 -0
- mollie/models/entity_capture.py +63 -0
- mollie/models/entity_chargeback.py +247 -0
- mollie/models/entity_customer.py +86 -0
- mollie/models/entity_event.py +46 -0
- mollie/models/entity_invoice.py +247 -0
- mollie/models/entity_method_get.py +329 -0
- mollie/models/entity_onboarding_status.py +95 -0
- mollie/models/entity_organization.py +178 -0
- mollie/models/entity_payment_route.py +111 -0
- mollie/models/entity_payment_route_response.py +140 -0
- mollie/models/entity_permission.py +61 -0
- mollie/models/entity_refund_response.py +361 -0
- mollie/models/entity_route.py +96 -0
- mollie/models/entity_settlement.py +467 -0
- mollie/models/entity_terminal.py +160 -0
- mollie/models/entity_webhook.py +122 -0
- mollie/models/entity_webhook_event.py +149 -0
- mollie/models/error_response.py +70 -0
- mollie/models/get_balance_reportop.py +126 -0
- mollie/models/get_balanceop.py +71 -0
- mollie/models/get_captureop.py +129 -0
- mollie/models/get_chargebackop.py +129 -0
- mollie/models/get_clientop.py +216 -0
- mollie/models/get_connect_balance_transferop.py +71 -0
- mollie/models/get_current_organizationop.py +22 -0
- mollie/models/get_current_profileop.py +22 -0
- mollie/models/get_customerop.py +286 -0
- mollie/models/get_invoiceop.py +29 -0
- mollie/models/get_mandateop.py +86 -0
- mollie/models/get_methodop.py +199 -0
- mollie/models/get_next_settlementop.py +22 -0
- mollie/models/get_onboarding_statusop.py +22 -0
- mollie/models/get_open_settlementop.py +22 -0
- mollie/models/get_organizationop.py +71 -0
- mollie/models/get_partner_statusop.py +231 -0
- mollie/models/get_payment_link_paymentsop.py +188 -0
- mollie/models/get_payment_linkop.py +77 -0
- mollie/models/get_paymentop.py +128 -0
- mollie/models/get_permissionop.py +73 -0
- mollie/models/get_primary_balanceop.py +22 -0
- mollie/models/get_profileop.py +71 -0
- mollie/models/get_refundop.py +129 -0
- mollie/models/get_sales_invoiceop.py +75 -0
- mollie/models/get_settlementop.py +29 -0
- mollie/models/get_subscriptionop.py +86 -0
- mollie/models/get_terminalop.py +77 -0
- mollie/models/get_webhook_eventop.py +71 -0
- mollie/models/get_webhookop.py +71 -0
- mollie/models/internal/__init__.py +54 -0
- mollie/models/internal/globals.py +59 -0
- mollie/models/line_categories.py +13 -0
- mollie/models/line_categories_response.py +14 -0
- mollie/models/list_all_chargebacksop.py +236 -0
- mollie/models/list_all_methodsop.py +249 -0
- mollie/models/list_all_refundsop.py +230 -0
- mollie/models/list_all_subscriptionsop.py +202 -0
- mollie/models/list_balance_transactionsop.py +174 -0
- mollie/models/list_balancesop.py +171 -0
- mollie/models/list_capabilitiesop.py +62 -0
- mollie/models/list_capture_response.py +264 -0
- mollie/models/list_capturesop.py +185 -0
- mollie/models/list_chargebacksop.py +185 -0
- mollie/models/list_clientsop.py +269 -0
- mollie/models/list_connect_balance_transfersop.py +177 -0
- mollie/models/list_customer_paymentsop.py +231 -0
- mollie/models/list_customer_response.py +164 -0
- mollie/models/list_customersop.py +172 -0
- mollie/models/list_entity_balance.py +322 -0
- mollie/models/list_entity_chargeback.py +244 -0
- mollie/models/list_entity_invoice.py +244 -0
- mollie/models/list_entity_method.py +315 -0
- mollie/models/list_entity_method_all.py +391 -0
- mollie/models/list_entity_permission.py +56 -0
- mollie/models/list_entity_refund.py +352 -0
- mollie/models/list_entity_settlement.py +457 -0
- mollie/models/list_entity_terminal.py +157 -0
- mollie/models/list_entity_webhook.py +117 -0
- mollie/models/list_invoicesop.py +175 -0
- mollie/models/list_links.py +68 -0
- mollie/models/list_mandate_response.py +261 -0
- mollie/models/list_mandatesop.py +186 -0
- mollie/models/list_methodsop.py +332 -0
- mollie/models/list_payment_linksop.py +159 -0
- mollie/models/list_payment_response.py +1953 -0
- mollie/models/list_paymentsop.py +217 -0
- mollie/models/list_permissionsop.py +85 -0
- mollie/models/list_profile_response.py +194 -0
- mollie/models/list_profilesop.py +118 -0
- mollie/models/list_refundsop.py +189 -0
- mollie/models/list_route_get_response.py +97 -0
- mollie/models/list_sales_invoice_response.py +505 -0
- mollie/models/list_sales_invoicesop.py +172 -0
- mollie/models/list_settlement_capturesop.py +187 -0
- mollie/models/list_settlement_chargebacksop.py +187 -0
- mollie/models/list_settlement_paymentsop.py +233 -0
- mollie/models/list_settlement_refundsop.py +191 -0
- mollie/models/list_settlementsop.py +178 -0
- mollie/models/list_subscription_paymentsop.py +242 -0
- mollie/models/list_subscription_response.py +344 -0
- mollie/models/list_subscriptionsop.py +189 -0
- mollie/models/list_terminalsop.py +172 -0
- mollie/models/list_webhooksop.py +189 -0
- mollie/models/locale.py +32 -0
- mollie/models/locale_response.py +33 -0
- mollie/models/mandate_details_card_label_response.py +22 -0
- mollie/models/mandate_method.py +15 -0
- mollie/models/mandate_method_response.py +16 -0
- mollie/models/mandate_request.py +160 -0
- mollie/models/mandate_response.py +264 -0
- mollie/models/metadata.py +19 -0
- mollie/models/method.py +50 -0
- mollie/models/method_include_wallets_parameter.py +8 -0
- mollie/models/method_resource_parameter.py +9 -0
- mollie/models/method_response.py +59 -0
- mollie/models/method_status.py +15 -0
- mollie/models/mode.py +12 -0
- mollie/models/no_response_error.py +17 -0
- mollie/models/onboarding_vat_regulation.py +16 -0
- mollie/models/organization_vat_regulation.py +17 -0
- mollie/models/payment_address.py +130 -0
- mollie/models/payment_create_routeop.py +43 -0
- mollie/models/payment_details_card_audition_response.py +12 -0
- mollie/models/payment_details_card_funding_response.py +14 -0
- mollie/models/payment_details_card_label_response.py +23 -0
- mollie/models/payment_details_card_security_response.py +12 -0
- mollie/models/payment_details_failure_reason_response.py +25 -0
- mollie/models/payment_details_fee_region_response.py +20 -0
- mollie/models/payment_details_receipt_card_read_method_response.py +17 -0
- mollie/models/payment_details_receipt_card_verification_method_response.py +21 -0
- mollie/models/payment_details_seller_protection_response.py +20 -0
- mollie/models/payment_details_wallet_response.py +11 -0
- mollie/models/payment_line_item.py +96 -0
- mollie/models/payment_line_item_response.py +104 -0
- mollie/models/payment_line_type.py +20 -0
- mollie/models/payment_line_type_response.py +21 -0
- mollie/models/payment_link_method.py +36 -0
- mollie/models/payment_link_method_response.py +37 -0
- mollie/models/payment_link_response.py +348 -0
- mollie/models/payment_link_sequence_type.py +9 -0
- mollie/models/payment_link_sequence_type_response.py +10 -0
- mollie/models/payment_list_routesop.py +140 -0
- mollie/models/payment_method.py +53 -0
- mollie/models/payment_request.py +919 -0
- mollie/models/payment_response.py +1953 -0
- mollie/models/profile_request.py +67 -0
- mollie/models/profile_response.py +197 -0
- mollie/models/profile_review_status_response.py +12 -0
- mollie/models/recurring_line_item.py +77 -0
- mollie/models/refund_external_reference_type.py +10 -0
- mollie/models/refund_external_reference_type_response.py +11 -0
- mollie/models/refund_request.py +200 -0
- mollie/models/release_authorizationop.py +108 -0
- mollie/models/request_apple_pay_payment_sessionop.py +76 -0
- mollie/models/responsevalidationerror.py +27 -0
- mollie/models/revoke_mandateop.py +100 -0
- mollie/models/route_create_response.py +97 -0
- mollie/models/route_destination_type.py +10 -0
- mollie/models/route_destination_type_response.py +11 -0
- mollie/models/sales_invoice_discount.py +21 -0
- mollie/models/sales_invoice_discount_response.py +25 -0
- mollie/models/sales_invoice_discount_type.py +11 -0
- mollie/models/sales_invoice_discount_type_response.py +12 -0
- mollie/models/sales_invoice_email_details.py +20 -0
- mollie/models/sales_invoice_line_item.py +67 -0
- mollie/models/sales_invoice_line_item_response.py +70 -0
- mollie/models/sales_invoice_payment_details.py +59 -0
- mollie/models/sales_invoice_payment_details_response.py +66 -0
- mollie/models/sales_invoice_payment_details_source.py +12 -0
- mollie/models/sales_invoice_payment_details_source_response.py +13 -0
- mollie/models/sales_invoice_payment_term.py +16 -0
- mollie/models/sales_invoice_payment_term_response.py +17 -0
- mollie/models/sales_invoice_recipient.py +176 -0
- mollie/models/sales_invoice_recipient_locale.py +18 -0
- mollie/models/sales_invoice_recipient_locale_response.py +19 -0
- mollie/models/sales_invoice_recipient_response.py +182 -0
- mollie/models/sales_invoice_recipient_type.py +13 -0
- mollie/models/sales_invoice_recipient_type_response.py +14 -0
- mollie/models/sales_invoice_request.py +256 -0
- mollie/models/sales_invoice_response.py +509 -0
- mollie/models/sales_invoice_status.py +25 -0
- mollie/models/sales_invoice_status_response.py +26 -0
- mollie/models/sales_invoice_vat_mode.py +13 -0
- mollie/models/sales_invoice_vat_mode_response.py +14 -0
- mollie/models/sales_invoice_vat_scheme.py +11 -0
- mollie/models/sales_invoice_vat_scheme_response.py +12 -0
- mollie/models/security.py +35 -0
- mollie/models/sequence_type.py +10 -0
- mollie/models/sequence_type_response.py +11 -0
- mollie/models/sorting.py +9 -0
- mollie/models/status_reason.py +168 -0
- mollie/models/sub_group.py +52 -0
- mollie/models/sub_totals.py +120 -0
- mollie/models/submit_onboarding_dataop.py +214 -0
- mollie/models/subscription_method.py +12 -0
- mollie/models/subscription_method_response.py +13 -0
- mollie/models/subscription_request.py +213 -0
- mollie/models/subscription_response.py +349 -0
- mollie/models/terminal_brand.py +12 -0
- mollie/models/terminal_model.py +16 -0
- mollie/models/test_webhookop.py +64 -0
- mollie/models/update_customerop.py +43 -0
- mollie/models/update_payment_linkop.py +172 -0
- mollie/models/update_paymentop.py +332 -0
- mollie/models/update_profileop.py +147 -0
- mollie/models/update_sales_invoiceop.py +44 -0
- mollie/models/update_subscriptionop.py +188 -0
- mollie/models/update_values_sales_invoice.py +176 -0
- mollie/models/update_webhookop.py +83 -0
- mollie/models/url.py +24 -0
- mollie/models/url_nullable.py +25 -0
- mollie/models/webhook_event_types.py +18 -0
- mollie/models/webhook_status.py +14 -0
- mollie/onboarding.py +403 -0
- mollie/organizations.py +579 -0
- mollie/payment_links.py +1323 -0
- mollie/payments_sdk.py +1385 -0
- mollie/permissions.py +397 -0
- mollie/profiles.py +1209 -0
- mollie/py.typed +1 -0
- mollie/refunds_sdk.py +1111 -0
- mollie/sales_invoices.py +1121 -0
- mollie/sdk.py +265 -0
- mollie/sdkconfiguration.py +50 -0
- mollie/settlements.py +1735 -0
- mollie/subscriptions.py +1617 -0
- mollie/terminals.py +427 -0
- mollie/types/__init__.py +21 -0
- mollie/types/basemodel.py +39 -0
- mollie/utils/__init__.py +200 -0
- mollie/utils/annotations.py +79 -0
- mollie/utils/datetimes.py +23 -0
- mollie/utils/enums.py +74 -0
- mollie/utils/eventstreaming.py +248 -0
- mollie/utils/forms.py +223 -0
- mollie/utils/headers.py +136 -0
- mollie/utils/logger.py +27 -0
- mollie/utils/metadata.py +118 -0
- mollie/utils/queryparams.py +205 -0
- mollie/utils/requestbodies.py +66 -0
- mollie/utils/retries.py +217 -0
- mollie/utils/security.py +195 -0
- mollie/utils/serializers.py +249 -0
- mollie/utils/unmarshal_json_response.py +24 -0
- mollie/utils/url.py +155 -0
- mollie/utils/values.py +137 -0
- mollie/wallets.py +263 -0
- mollie/webhook_events.py +211 -0
- mollie/webhooks.py +1305 -0
- mollie_api_py-1.0.0.dist-info/METADATA +834 -0
- mollie_api_py-1.0.0.dist-info/RECORD +337 -0
- mollie_api_py-1.0.0.dist-info/WHEEL +4 -0
- mollie_api_py-1.0.0.dist-info/licenses/LICENSE.md +24 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
5
|
+
from mollie.utils import (
|
|
6
|
+
FieldMetadata,
|
|
7
|
+
HeaderMetadata,
|
|
8
|
+
PathParamMetadata,
|
|
9
|
+
RequestMetadata,
|
|
10
|
+
)
|
|
11
|
+
import pydantic
|
|
12
|
+
from pydantic import model_serializer
|
|
13
|
+
from typing import List, Optional
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class UpdateProfileRequestBodyTypedDict(TypedDict):
|
|
18
|
+
name: NotRequired[Nullable[str]]
|
|
19
|
+
r"""The profile's name, this will usually reflect the trade name or brand name of the profile's website or
|
|
20
|
+
application.
|
|
21
|
+
"""
|
|
22
|
+
website: NotRequired[Nullable[str]]
|
|
23
|
+
r"""The URL to the profile's website or application. Only `https` or `http` URLs are allowed. No `@` signs
|
|
24
|
+
are allowed.
|
|
25
|
+
"""
|
|
26
|
+
email: NotRequired[Nullable[str]]
|
|
27
|
+
r"""The email address associated with the profile's trade name or brand."""
|
|
28
|
+
phone: NotRequired[Nullable[str]]
|
|
29
|
+
r"""The phone number associated with the profile's trade name or brand."""
|
|
30
|
+
description: NotRequired[Nullable[str]]
|
|
31
|
+
r"""The products or services offered by the profile's website or application."""
|
|
32
|
+
countries_of_activity: NotRequired[Nullable[List[str]]]
|
|
33
|
+
r"""A list of countries where you expect that the majority of the profile's customers reside,
|
|
34
|
+
in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
35
|
+
"""
|
|
36
|
+
business_category: NotRequired[Nullable[str]]
|
|
37
|
+
r"""The industry associated with the profile's trade name or brand. Please refer to the
|
|
38
|
+
[business category list](common-data-types) for all possible options.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class UpdateProfileRequestBody(BaseModel):
|
|
43
|
+
name: OptionalNullable[str] = UNSET
|
|
44
|
+
r"""The profile's name, this will usually reflect the trade name or brand name of the profile's website or
|
|
45
|
+
application.
|
|
46
|
+
"""
|
|
47
|
+
|
|
48
|
+
website: OptionalNullable[str] = UNSET
|
|
49
|
+
r"""The URL to the profile's website or application. Only `https` or `http` URLs are allowed. No `@` signs
|
|
50
|
+
are allowed.
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
email: OptionalNullable[str] = UNSET
|
|
54
|
+
r"""The email address associated with the profile's trade name or brand."""
|
|
55
|
+
|
|
56
|
+
phone: OptionalNullable[str] = UNSET
|
|
57
|
+
r"""The phone number associated with the profile's trade name or brand."""
|
|
58
|
+
|
|
59
|
+
description: OptionalNullable[str] = UNSET
|
|
60
|
+
r"""The products or services offered by the profile's website or application."""
|
|
61
|
+
|
|
62
|
+
countries_of_activity: Annotated[
|
|
63
|
+
OptionalNullable[List[str]], pydantic.Field(alias="countriesOfActivity")
|
|
64
|
+
] = UNSET
|
|
65
|
+
r"""A list of countries where you expect that the majority of the profile's customers reside,
|
|
66
|
+
in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
business_category: Annotated[
|
|
70
|
+
OptionalNullable[str], pydantic.Field(alias="businessCategory")
|
|
71
|
+
] = UNSET
|
|
72
|
+
r"""The industry associated with the profile's trade name or brand. Please refer to the
|
|
73
|
+
[business category list](common-data-types) for all possible options.
|
|
74
|
+
"""
|
|
75
|
+
|
|
76
|
+
@model_serializer(mode="wrap")
|
|
77
|
+
def serialize_model(self, handler):
|
|
78
|
+
optional_fields = [
|
|
79
|
+
"name",
|
|
80
|
+
"website",
|
|
81
|
+
"email",
|
|
82
|
+
"phone",
|
|
83
|
+
"description",
|
|
84
|
+
"countriesOfActivity",
|
|
85
|
+
"businessCategory",
|
|
86
|
+
]
|
|
87
|
+
nullable_fields = [
|
|
88
|
+
"name",
|
|
89
|
+
"website",
|
|
90
|
+
"email",
|
|
91
|
+
"phone",
|
|
92
|
+
"description",
|
|
93
|
+
"countriesOfActivity",
|
|
94
|
+
"businessCategory",
|
|
95
|
+
]
|
|
96
|
+
null_default_fields = []
|
|
97
|
+
|
|
98
|
+
serialized = handler(self)
|
|
99
|
+
|
|
100
|
+
m = {}
|
|
101
|
+
|
|
102
|
+
for n, f in type(self).model_fields.items():
|
|
103
|
+
k = f.alias or n
|
|
104
|
+
val = serialized.get(k)
|
|
105
|
+
serialized.pop(k, None)
|
|
106
|
+
|
|
107
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
108
|
+
is_set = (
|
|
109
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
110
|
+
or k in null_default_fields
|
|
111
|
+
) # pylint: disable=no-member
|
|
112
|
+
|
|
113
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
114
|
+
m[k] = val
|
|
115
|
+
elif val != UNSET_SENTINEL and (
|
|
116
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
117
|
+
):
|
|
118
|
+
m[k] = val
|
|
119
|
+
|
|
120
|
+
return m
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
class UpdateProfileRequestTypedDict(TypedDict):
|
|
124
|
+
id: str
|
|
125
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
126
|
+
request_body: UpdateProfileRequestBodyTypedDict
|
|
127
|
+
idempotency_key: NotRequired[str]
|
|
128
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
class UpdateProfileRequest(BaseModel):
|
|
132
|
+
id: Annotated[
|
|
133
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
134
|
+
]
|
|
135
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
136
|
+
|
|
137
|
+
request_body: Annotated[
|
|
138
|
+
UpdateProfileRequestBody,
|
|
139
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
140
|
+
]
|
|
141
|
+
|
|
142
|
+
idempotency_key: Annotated[
|
|
143
|
+
Optional[str],
|
|
144
|
+
pydantic.Field(alias="idempotency-key"),
|
|
145
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
146
|
+
] = None
|
|
147
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .update_values_sales_invoice import (
|
|
5
|
+
UpdateValuesSalesInvoice,
|
|
6
|
+
UpdateValuesSalesInvoiceTypedDict,
|
|
7
|
+
)
|
|
8
|
+
from mollie.types import BaseModel
|
|
9
|
+
from mollie.utils import (
|
|
10
|
+
FieldMetadata,
|
|
11
|
+
HeaderMetadata,
|
|
12
|
+
PathParamMetadata,
|
|
13
|
+
RequestMetadata,
|
|
14
|
+
)
|
|
15
|
+
import pydantic
|
|
16
|
+
from typing import Optional
|
|
17
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class UpdateSalesInvoiceRequestTypedDict(TypedDict):
|
|
21
|
+
id: str
|
|
22
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
23
|
+
idempotency_key: NotRequired[str]
|
|
24
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
25
|
+
update_values_sales_invoice: NotRequired[UpdateValuesSalesInvoiceTypedDict]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class UpdateSalesInvoiceRequest(BaseModel):
|
|
29
|
+
id: Annotated[
|
|
30
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
31
|
+
]
|
|
32
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
33
|
+
|
|
34
|
+
idempotency_key: Annotated[
|
|
35
|
+
Optional[str],
|
|
36
|
+
pydantic.Field(alias="idempotency-key"),
|
|
37
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
38
|
+
] = None
|
|
39
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
40
|
+
|
|
41
|
+
update_values_sales_invoice: Annotated[
|
|
42
|
+
Optional[UpdateValuesSalesInvoice],
|
|
43
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
44
|
+
] = None
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .amount import Amount, AmountTypedDict
|
|
5
|
+
from .metadata import Metadata, MetadataTypedDict
|
|
6
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
7
|
+
from mollie.utils import (
|
|
8
|
+
FieldMetadata,
|
|
9
|
+
HeaderMetadata,
|
|
10
|
+
PathParamMetadata,
|
|
11
|
+
RequestMetadata,
|
|
12
|
+
)
|
|
13
|
+
import pydantic
|
|
14
|
+
from pydantic import model_serializer
|
|
15
|
+
from typing import Optional
|
|
16
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class UpdateSubscriptionRequestBodyTypedDict(TypedDict):
|
|
20
|
+
amount: NotRequired[AmountTypedDict]
|
|
21
|
+
r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
|
|
22
|
+
description: NotRequired[str]
|
|
23
|
+
r"""The subscription's description will be used as the description of the resulting individual payments and so showing
|
|
24
|
+
up on the bank statement of the consumer.
|
|
25
|
+
|
|
26
|
+
**Please note:** the description needs to be unique for the Customer in case it has multiple active subscriptions.
|
|
27
|
+
"""
|
|
28
|
+
interval: NotRequired[str]
|
|
29
|
+
r"""Interval to wait between payments, for example `1 month` or `14 days`.
|
|
30
|
+
|
|
31
|
+
The maximum interval is one year (`12 months`, `52 weeks`, or `365 days`).
|
|
32
|
+
|
|
33
|
+
Possible values: `... days`, `... weeks`, `... months`.
|
|
34
|
+
"""
|
|
35
|
+
start_date: NotRequired[str]
|
|
36
|
+
r"""The start date of the subscription in `YYYY-MM-DD` format."""
|
|
37
|
+
times: NotRequired[int]
|
|
38
|
+
r"""Total number of payments for the subscription. Once this number of payments is reached, the subscription is
|
|
39
|
+
considered completed.
|
|
40
|
+
|
|
41
|
+
Test mode subscriptions will get canceled automatically after 10 payments.
|
|
42
|
+
"""
|
|
43
|
+
metadata: NotRequired[Nullable[MetadataTypedDict]]
|
|
44
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
45
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
46
|
+
"""
|
|
47
|
+
webhook_url: NotRequired[str]
|
|
48
|
+
r"""We will call this URL for any payment status changes of payments resulting from this subscription.
|
|
49
|
+
|
|
50
|
+
This webhook will receive **all** events for the subscription's payments. This may include payment
|
|
51
|
+
failures as well. Be sure to verify the payment's subscription ID and its status.
|
|
52
|
+
"""
|
|
53
|
+
mandate_id: NotRequired[str]
|
|
54
|
+
testmode: NotRequired[Nullable[bool]]
|
|
55
|
+
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
56
|
+
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
57
|
+
|
|
58
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
class UpdateSubscriptionRequestBody(BaseModel):
|
|
63
|
+
amount: Optional[Amount] = None
|
|
64
|
+
r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
|
|
65
|
+
|
|
66
|
+
description: Optional[str] = None
|
|
67
|
+
r"""The subscription's description will be used as the description of the resulting individual payments and so showing
|
|
68
|
+
up on the bank statement of the consumer.
|
|
69
|
+
|
|
70
|
+
**Please note:** the description needs to be unique for the Customer in case it has multiple active subscriptions.
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
interval: Optional[str] = None
|
|
74
|
+
r"""Interval to wait between payments, for example `1 month` or `14 days`.
|
|
75
|
+
|
|
76
|
+
The maximum interval is one year (`12 months`, `52 weeks`, or `365 days`).
|
|
77
|
+
|
|
78
|
+
Possible values: `... days`, `... weeks`, `... months`.
|
|
79
|
+
"""
|
|
80
|
+
|
|
81
|
+
start_date: Annotated[Optional[str], pydantic.Field(alias="startDate")] = None
|
|
82
|
+
r"""The start date of the subscription in `YYYY-MM-DD` format."""
|
|
83
|
+
|
|
84
|
+
times: Optional[int] = None
|
|
85
|
+
r"""Total number of payments for the subscription. Once this number of payments is reached, the subscription is
|
|
86
|
+
considered completed.
|
|
87
|
+
|
|
88
|
+
Test mode subscriptions will get canceled automatically after 10 payments.
|
|
89
|
+
"""
|
|
90
|
+
|
|
91
|
+
metadata: OptionalNullable[Metadata] = UNSET
|
|
92
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
93
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
94
|
+
"""
|
|
95
|
+
|
|
96
|
+
webhook_url: Annotated[Optional[str], pydantic.Field(alias="webhookUrl")] = None
|
|
97
|
+
r"""We will call this URL for any payment status changes of payments resulting from this subscription.
|
|
98
|
+
|
|
99
|
+
This webhook will receive **all** events for the subscription's payments. This may include payment
|
|
100
|
+
failures as well. Be sure to verify the payment's subscription ID and its status.
|
|
101
|
+
"""
|
|
102
|
+
|
|
103
|
+
mandate_id: Annotated[Optional[str], pydantic.Field(alias="mandateId")] = None
|
|
104
|
+
|
|
105
|
+
testmode: OptionalNullable[bool] = UNSET
|
|
106
|
+
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
107
|
+
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
108
|
+
|
|
109
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
110
|
+
"""
|
|
111
|
+
|
|
112
|
+
@model_serializer(mode="wrap")
|
|
113
|
+
def serialize_model(self, handler):
|
|
114
|
+
optional_fields = [
|
|
115
|
+
"amount",
|
|
116
|
+
"description",
|
|
117
|
+
"interval",
|
|
118
|
+
"startDate",
|
|
119
|
+
"times",
|
|
120
|
+
"metadata",
|
|
121
|
+
"webhookUrl",
|
|
122
|
+
"mandateId",
|
|
123
|
+
"testmode",
|
|
124
|
+
]
|
|
125
|
+
nullable_fields = ["metadata", "testmode"]
|
|
126
|
+
null_default_fields = []
|
|
127
|
+
|
|
128
|
+
serialized = handler(self)
|
|
129
|
+
|
|
130
|
+
m = {}
|
|
131
|
+
|
|
132
|
+
for n, f in type(self).model_fields.items():
|
|
133
|
+
k = f.alias or n
|
|
134
|
+
val = serialized.get(k)
|
|
135
|
+
serialized.pop(k, None)
|
|
136
|
+
|
|
137
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
138
|
+
is_set = (
|
|
139
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
140
|
+
or k in null_default_fields
|
|
141
|
+
) # pylint: disable=no-member
|
|
142
|
+
|
|
143
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
144
|
+
m[k] = val
|
|
145
|
+
elif val != UNSET_SENTINEL and (
|
|
146
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
147
|
+
):
|
|
148
|
+
m[k] = val
|
|
149
|
+
|
|
150
|
+
return m
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
class UpdateSubscriptionRequestTypedDict(TypedDict):
|
|
154
|
+
customer_id: str
|
|
155
|
+
r"""Provide the ID of the related customer."""
|
|
156
|
+
subscription_id: str
|
|
157
|
+
r"""Provide the ID of the related subscription."""
|
|
158
|
+
idempotency_key: NotRequired[str]
|
|
159
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
160
|
+
request_body: NotRequired[UpdateSubscriptionRequestBodyTypedDict]
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
class UpdateSubscriptionRequest(BaseModel):
|
|
164
|
+
customer_id: Annotated[
|
|
165
|
+
str,
|
|
166
|
+
pydantic.Field(alias="customerId"),
|
|
167
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
|
168
|
+
]
|
|
169
|
+
r"""Provide the ID of the related customer."""
|
|
170
|
+
|
|
171
|
+
subscription_id: Annotated[
|
|
172
|
+
str,
|
|
173
|
+
pydantic.Field(alias="subscriptionId"),
|
|
174
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
|
175
|
+
]
|
|
176
|
+
r"""Provide the ID of the related subscription."""
|
|
177
|
+
|
|
178
|
+
idempotency_key: Annotated[
|
|
179
|
+
Optional[str],
|
|
180
|
+
pydantic.Field(alias="idempotency-key"),
|
|
181
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
182
|
+
] = None
|
|
183
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
184
|
+
|
|
185
|
+
request_body: Annotated[
|
|
186
|
+
Optional[UpdateSubscriptionRequestBody],
|
|
187
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
188
|
+
] = None
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .sales_invoice_discount import SalesInvoiceDiscount, SalesInvoiceDiscountTypedDict
|
|
5
|
+
from .sales_invoice_email_details import (
|
|
6
|
+
SalesInvoiceEmailDetails,
|
|
7
|
+
SalesInvoiceEmailDetailsTypedDict,
|
|
8
|
+
)
|
|
9
|
+
from .sales_invoice_line_item import SalesInvoiceLineItem, SalesInvoiceLineItemTypedDict
|
|
10
|
+
from .sales_invoice_payment_details import (
|
|
11
|
+
SalesInvoicePaymentDetails,
|
|
12
|
+
SalesInvoicePaymentDetailsTypedDict,
|
|
13
|
+
)
|
|
14
|
+
from .sales_invoice_payment_term import SalesInvoicePaymentTerm
|
|
15
|
+
from .sales_invoice_recipient import (
|
|
16
|
+
SalesInvoiceRecipient,
|
|
17
|
+
SalesInvoiceRecipientTypedDict,
|
|
18
|
+
)
|
|
19
|
+
from .sales_invoice_status import SalesInvoiceStatus
|
|
20
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
21
|
+
import pydantic
|
|
22
|
+
from pydantic import model_serializer
|
|
23
|
+
from typing import List, Optional
|
|
24
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class UpdateValuesSalesInvoiceTypedDict(TypedDict):
|
|
28
|
+
testmode: NotRequired[Nullable[bool]]
|
|
29
|
+
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
30
|
+
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
31
|
+
|
|
32
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
33
|
+
"""
|
|
34
|
+
status: NotRequired[SalesInvoiceStatus]
|
|
35
|
+
r"""The status for the invoice to end up in.
|
|
36
|
+
|
|
37
|
+
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
38
|
+
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
39
|
+
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
40
|
+
|
|
41
|
+
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
42
|
+
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
43
|
+
|
|
44
|
+
Dependent parameters:
|
|
45
|
+
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
46
|
+
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
47
|
+
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
48
|
+
"""
|
|
49
|
+
memo: NotRequired[Nullable[str]]
|
|
50
|
+
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
51
|
+
payment_term: NotRequired[Nullable[SalesInvoicePaymentTerm]]
|
|
52
|
+
r"""The payment term to be set on the invoice."""
|
|
53
|
+
payment_details: NotRequired[SalesInvoicePaymentDetailsTypedDict]
|
|
54
|
+
email_details: NotRequired[Nullable[SalesInvoiceEmailDetailsTypedDict]]
|
|
55
|
+
recipient_identifier: NotRequired[str]
|
|
56
|
+
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
57
|
+
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
58
|
+
is not required to send a first invoice to a recipient.
|
|
59
|
+
"""
|
|
60
|
+
recipient: NotRequired[Nullable[SalesInvoiceRecipientTypedDict]]
|
|
61
|
+
lines: NotRequired[Nullable[List[SalesInvoiceLineItemTypedDict]]]
|
|
62
|
+
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
63
|
+
ordered and its price.
|
|
64
|
+
|
|
65
|
+
All lines must have the same currency as the invoice.
|
|
66
|
+
"""
|
|
67
|
+
discount: NotRequired[Nullable[SalesInvoiceDiscountTypedDict]]
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
class UpdateValuesSalesInvoice(BaseModel):
|
|
71
|
+
testmode: OptionalNullable[bool] = UNSET
|
|
72
|
+
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
73
|
+
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
74
|
+
|
|
75
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
76
|
+
"""
|
|
77
|
+
|
|
78
|
+
status: Optional[SalesInvoiceStatus] = None
|
|
79
|
+
r"""The status for the invoice to end up in.
|
|
80
|
+
|
|
81
|
+
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
82
|
+
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
83
|
+
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
84
|
+
|
|
85
|
+
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
86
|
+
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
87
|
+
|
|
88
|
+
Dependent parameters:
|
|
89
|
+
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
90
|
+
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
91
|
+
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
92
|
+
"""
|
|
93
|
+
|
|
94
|
+
memo: OptionalNullable[str] = UNSET
|
|
95
|
+
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
96
|
+
|
|
97
|
+
payment_term: Annotated[
|
|
98
|
+
OptionalNullable[SalesInvoicePaymentTerm], pydantic.Field(alias="paymentTerm")
|
|
99
|
+
] = UNSET
|
|
100
|
+
r"""The payment term to be set on the invoice."""
|
|
101
|
+
|
|
102
|
+
payment_details: Annotated[
|
|
103
|
+
Optional[SalesInvoicePaymentDetails], pydantic.Field(alias="paymentDetails")
|
|
104
|
+
] = None
|
|
105
|
+
|
|
106
|
+
email_details: Annotated[
|
|
107
|
+
OptionalNullable[SalesInvoiceEmailDetails], pydantic.Field(alias="emailDetails")
|
|
108
|
+
] = UNSET
|
|
109
|
+
|
|
110
|
+
recipient_identifier: Annotated[
|
|
111
|
+
Optional[str], pydantic.Field(alias="recipientIdentifier")
|
|
112
|
+
] = None
|
|
113
|
+
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
114
|
+
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
115
|
+
is not required to send a first invoice to a recipient.
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
recipient: OptionalNullable[SalesInvoiceRecipient] = UNSET
|
|
119
|
+
|
|
120
|
+
lines: OptionalNullable[List[SalesInvoiceLineItem]] = UNSET
|
|
121
|
+
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
122
|
+
ordered and its price.
|
|
123
|
+
|
|
124
|
+
All lines must have the same currency as the invoice.
|
|
125
|
+
"""
|
|
126
|
+
|
|
127
|
+
discount: OptionalNullable[SalesInvoiceDiscount] = UNSET
|
|
128
|
+
|
|
129
|
+
@model_serializer(mode="wrap")
|
|
130
|
+
def serialize_model(self, handler):
|
|
131
|
+
optional_fields = [
|
|
132
|
+
"testmode",
|
|
133
|
+
"status",
|
|
134
|
+
"memo",
|
|
135
|
+
"paymentTerm",
|
|
136
|
+
"paymentDetails",
|
|
137
|
+
"emailDetails",
|
|
138
|
+
"recipientIdentifier",
|
|
139
|
+
"recipient",
|
|
140
|
+
"lines",
|
|
141
|
+
"discount",
|
|
142
|
+
]
|
|
143
|
+
nullable_fields = [
|
|
144
|
+
"testmode",
|
|
145
|
+
"memo",
|
|
146
|
+
"paymentTerm",
|
|
147
|
+
"emailDetails",
|
|
148
|
+
"recipient",
|
|
149
|
+
"lines",
|
|
150
|
+
"discount",
|
|
151
|
+
]
|
|
152
|
+
null_default_fields = []
|
|
153
|
+
|
|
154
|
+
serialized = handler(self)
|
|
155
|
+
|
|
156
|
+
m = {}
|
|
157
|
+
|
|
158
|
+
for n, f in type(self).model_fields.items():
|
|
159
|
+
k = f.alias or n
|
|
160
|
+
val = serialized.get(k)
|
|
161
|
+
serialized.pop(k, None)
|
|
162
|
+
|
|
163
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
164
|
+
is_set = (
|
|
165
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
166
|
+
or k in null_default_fields
|
|
167
|
+
) # pylint: disable=no-member
|
|
168
|
+
|
|
169
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
170
|
+
m[k] = val
|
|
171
|
+
elif val != UNSET_SENTINEL and (
|
|
172
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
173
|
+
):
|
|
174
|
+
m[k] = val
|
|
175
|
+
|
|
176
|
+
return m
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .webhook_event_types import WebhookEventTypes
|
|
5
|
+
from mollie.types import BaseModel
|
|
6
|
+
from mollie.utils import (
|
|
7
|
+
FieldMetadata,
|
|
8
|
+
HeaderMetadata,
|
|
9
|
+
PathParamMetadata,
|
|
10
|
+
RequestMetadata,
|
|
11
|
+
)
|
|
12
|
+
import pydantic
|
|
13
|
+
from typing import List, Optional, Union
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
UpdateWebhookEventTypesTypedDict = TypeAliasType(
|
|
18
|
+
"UpdateWebhookEventTypesTypedDict",
|
|
19
|
+
Union[List[WebhookEventTypes], WebhookEventTypes],
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
UpdateWebhookEventTypes = TypeAliasType(
|
|
24
|
+
"UpdateWebhookEventTypes", Union[List[WebhookEventTypes], WebhookEventTypes]
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class UpdateWebhookRequestBodyTypedDict(TypedDict):
|
|
29
|
+
name: NotRequired[str]
|
|
30
|
+
r"""A name that identifies the webhook."""
|
|
31
|
+
url: NotRequired[str]
|
|
32
|
+
r"""The URL Mollie will send the events to. This URL must be publicly accessible."""
|
|
33
|
+
event_types: NotRequired[UpdateWebhookEventTypesTypedDict]
|
|
34
|
+
testmode: NotRequired[bool]
|
|
35
|
+
r"""You can enable test mode by setting `testmode` to `true`.
|
|
36
|
+
|
|
37
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class UpdateWebhookRequestBody(BaseModel):
|
|
42
|
+
name: Optional[str] = None
|
|
43
|
+
r"""A name that identifies the webhook."""
|
|
44
|
+
|
|
45
|
+
url: Optional[str] = None
|
|
46
|
+
r"""The URL Mollie will send the events to. This URL must be publicly accessible."""
|
|
47
|
+
|
|
48
|
+
event_types: Annotated[
|
|
49
|
+
Optional[UpdateWebhookEventTypes], pydantic.Field(alias="eventTypes")
|
|
50
|
+
] = None
|
|
51
|
+
|
|
52
|
+
testmode: Optional[bool] = None
|
|
53
|
+
r"""You can enable test mode by setting `testmode` to `true`.
|
|
54
|
+
|
|
55
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
56
|
+
"""
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
class UpdateWebhookRequestTypedDict(TypedDict):
|
|
60
|
+
id: str
|
|
61
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
62
|
+
idempotency_key: NotRequired[str]
|
|
63
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
64
|
+
request_body: NotRequired[UpdateWebhookRequestBodyTypedDict]
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class UpdateWebhookRequest(BaseModel):
|
|
68
|
+
id: Annotated[
|
|
69
|
+
str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
|
|
70
|
+
]
|
|
71
|
+
r"""Provide the ID of the item you want to perform this operation on."""
|
|
72
|
+
|
|
73
|
+
idempotency_key: Annotated[
|
|
74
|
+
Optional[str],
|
|
75
|
+
pydantic.Field(alias="idempotency-key"),
|
|
76
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
77
|
+
] = None
|
|
78
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
79
|
+
|
|
80
|
+
request_body: Annotated[
|
|
81
|
+
Optional[UpdateWebhookRequestBody],
|
|
82
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
83
|
+
] = None
|
mollie/models/url.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
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 typing_extensions import TypedDict
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class URLTypedDict(TypedDict):
|
|
9
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
10
|
+
|
|
11
|
+
href: str
|
|
12
|
+
r"""The actual URL string."""
|
|
13
|
+
type: str
|
|
14
|
+
r"""The content type of the page or endpoint the URL points to."""
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class URL(BaseModel):
|
|
18
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
19
|
+
|
|
20
|
+
href: str
|
|
21
|
+
r"""The actual URL string."""
|
|
22
|
+
|
|
23
|
+
type: str
|
|
24
|
+
r"""The content type of the page or endpoint the URL points to."""
|