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,217 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .list_links import ListLinks, ListLinksTypedDict
|
|
5
|
+
from .list_payment_response import ListPaymentResponse, ListPaymentResponseTypedDict
|
|
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 ListPaymentsGlobalsTypedDict(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 ListPaymentsGlobals(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 ListPaymentsRequestTypedDict(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
|
|
60
|
+
the result set.
|
|
61
|
+
"""
|
|
62
|
+
limit: NotRequired[Nullable[int]]
|
|
63
|
+
r"""The maximum number of items to return. Defaults to 50 items."""
|
|
64
|
+
sort: NotRequired[Sorting]
|
|
65
|
+
r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
|
|
66
|
+
newest to oldest.
|
|
67
|
+
"""
|
|
68
|
+
profile_id: NotRequired[str]
|
|
69
|
+
r"""The identifier referring to the [profile](get-profile) you wish to
|
|
70
|
+
retrieve the resources for.
|
|
71
|
+
|
|
72
|
+
Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
|
|
73
|
+
organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
|
|
74
|
+
"""
|
|
75
|
+
testmode: NotRequired[bool]
|
|
76
|
+
r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
|
|
77
|
+
parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
|
|
78
|
+
setting the `testmode` query parameter to `true`.
|
|
79
|
+
|
|
80
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
81
|
+
"""
|
|
82
|
+
idempotency_key: NotRequired[str]
|
|
83
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class ListPaymentsRequest(BaseModel):
|
|
87
|
+
from_: Annotated[
|
|
88
|
+
Optional[str],
|
|
89
|
+
pydantic.Field(alias="from"),
|
|
90
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
91
|
+
] = None
|
|
92
|
+
r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate
|
|
93
|
+
the result set.
|
|
94
|
+
"""
|
|
95
|
+
|
|
96
|
+
limit: Annotated[
|
|
97
|
+
OptionalNullable[int],
|
|
98
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
99
|
+
] = UNSET
|
|
100
|
+
r"""The maximum number of items to return. Defaults to 50 items."""
|
|
101
|
+
|
|
102
|
+
sort: Annotated[
|
|
103
|
+
Optional[Sorting],
|
|
104
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
105
|
+
] = None
|
|
106
|
+
r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
|
|
107
|
+
newest to oldest.
|
|
108
|
+
"""
|
|
109
|
+
|
|
110
|
+
profile_id: Annotated[
|
|
111
|
+
Optional[str],
|
|
112
|
+
pydantic.Field(alias="profileId"),
|
|
113
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
114
|
+
] = None
|
|
115
|
+
r"""The identifier referring to the [profile](get-profile) you wish to
|
|
116
|
+
retrieve the resources for.
|
|
117
|
+
|
|
118
|
+
Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
|
|
119
|
+
organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
|
|
120
|
+
"""
|
|
121
|
+
|
|
122
|
+
testmode: Annotated[
|
|
123
|
+
Optional[bool],
|
|
124
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
125
|
+
] = None
|
|
126
|
+
r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
|
|
127
|
+
parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
|
|
128
|
+
setting the `testmode` query parameter to `true`.
|
|
129
|
+
|
|
130
|
+
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
131
|
+
"""
|
|
132
|
+
|
|
133
|
+
idempotency_key: Annotated[
|
|
134
|
+
Optional[str],
|
|
135
|
+
pydantic.Field(alias="idempotency-key"),
|
|
136
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
137
|
+
] = None
|
|
138
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
139
|
+
|
|
140
|
+
@model_serializer(mode="wrap")
|
|
141
|
+
def serialize_model(self, handler):
|
|
142
|
+
optional_fields = [
|
|
143
|
+
"from",
|
|
144
|
+
"limit",
|
|
145
|
+
"sort",
|
|
146
|
+
"profileId",
|
|
147
|
+
"testmode",
|
|
148
|
+
"idempotency-key",
|
|
149
|
+
]
|
|
150
|
+
nullable_fields = ["limit"]
|
|
151
|
+
null_default_fields = []
|
|
152
|
+
|
|
153
|
+
serialized = handler(self)
|
|
154
|
+
|
|
155
|
+
m = {}
|
|
156
|
+
|
|
157
|
+
for n, f in type(self).model_fields.items():
|
|
158
|
+
k = f.alias or n
|
|
159
|
+
val = serialized.get(k)
|
|
160
|
+
serialized.pop(k, None)
|
|
161
|
+
|
|
162
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
163
|
+
is_set = (
|
|
164
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
165
|
+
or k in null_default_fields
|
|
166
|
+
) # pylint: disable=no-member
|
|
167
|
+
|
|
168
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
169
|
+
m[k] = val
|
|
170
|
+
elif val != UNSET_SENTINEL and (
|
|
171
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
172
|
+
):
|
|
173
|
+
m[k] = val
|
|
174
|
+
|
|
175
|
+
return m
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
class ListPaymentsEmbeddedTypedDict(TypedDict):
|
|
179
|
+
payments: NotRequired[List[ListPaymentResponseTypedDict]]
|
|
180
|
+
r"""An array of payment objects."""
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
class ListPaymentsEmbedded(BaseModel):
|
|
184
|
+
payments: Optional[List[ListPaymentResponse]] = None
|
|
185
|
+
r"""An array of payment objects."""
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
class ListPaymentsResponseTypedDict(TypedDict):
|
|
189
|
+
r"""A list of payment objects."""
|
|
190
|
+
|
|
191
|
+
count: int
|
|
192
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
193
|
+
as well.
|
|
194
|
+
|
|
195
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
196
|
+
limit is 50 items.
|
|
197
|
+
"""
|
|
198
|
+
embedded: ListPaymentsEmbeddedTypedDict
|
|
199
|
+
links: ListLinksTypedDict
|
|
200
|
+
r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
class ListPaymentsResponse(BaseModel):
|
|
204
|
+
r"""A list of payment objects."""
|
|
205
|
+
|
|
206
|
+
count: int
|
|
207
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
208
|
+
as well.
|
|
209
|
+
|
|
210
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
211
|
+
limit is 50 items.
|
|
212
|
+
"""
|
|
213
|
+
|
|
214
|
+
embedded: Annotated[ListPaymentsEmbedded, pydantic.Field(alias="_embedded")]
|
|
215
|
+
|
|
216
|
+
links: Annotated[ListLinks, pydantic.Field(alias="_links")]
|
|
217
|
+
r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .list_entity_permission import ListEntityPermission, ListEntityPermissionTypedDict
|
|
5
|
+
from .url import URL, URLTypedDict
|
|
6
|
+
from mollie.types import BaseModel
|
|
7
|
+
from mollie.utils import FieldMetadata, HeaderMetadata
|
|
8
|
+
import pydantic
|
|
9
|
+
from typing import List, Optional
|
|
10
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class ListPermissionsRequestTypedDict(TypedDict):
|
|
14
|
+
idempotency_key: NotRequired[str]
|
|
15
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class ListPermissionsRequest(BaseModel):
|
|
19
|
+
idempotency_key: Annotated[
|
|
20
|
+
Optional[str],
|
|
21
|
+
pydantic.Field(alias="idempotency-key"),
|
|
22
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
23
|
+
] = None
|
|
24
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class ListPermissionsEmbeddedTypedDict(TypedDict):
|
|
28
|
+
permissions: List[ListEntityPermissionTypedDict]
|
|
29
|
+
r"""An array of permission objects."""
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class ListPermissionsEmbedded(BaseModel):
|
|
33
|
+
permissions: List[ListEntityPermission]
|
|
34
|
+
r"""An array of permission objects."""
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class ListPermissionsLinksTypedDict(TypedDict):
|
|
38
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
39
|
+
|
|
40
|
+
self_: NotRequired[URLTypedDict]
|
|
41
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
42
|
+
documentation: NotRequired[URLTypedDict]
|
|
43
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
class ListPermissionsLinks(BaseModel):
|
|
47
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
48
|
+
|
|
49
|
+
self_: Annotated[Optional[URL], pydantic.Field(alias="self")] = None
|
|
50
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
51
|
+
|
|
52
|
+
documentation: Optional[URL] = None
|
|
53
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
class ListPermissionsResponseTypedDict(TypedDict):
|
|
57
|
+
r"""A list of permission objects."""
|
|
58
|
+
|
|
59
|
+
count: int
|
|
60
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
61
|
+
as well.
|
|
62
|
+
|
|
63
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
64
|
+
limit is 50 items.
|
|
65
|
+
"""
|
|
66
|
+
embedded: ListPermissionsEmbeddedTypedDict
|
|
67
|
+
links: ListPermissionsLinksTypedDict
|
|
68
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class ListPermissionsResponse(BaseModel):
|
|
72
|
+
r"""A list of permission objects."""
|
|
73
|
+
|
|
74
|
+
count: int
|
|
75
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
76
|
+
as well.
|
|
77
|
+
|
|
78
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
79
|
+
limit is 50 items.
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
embedded: Annotated[ListPermissionsEmbedded, pydantic.Field(alias="_embedded")]
|
|
83
|
+
|
|
84
|
+
links: Annotated[ListPermissionsLinks, pydantic.Field(alias="_links")]
|
|
85
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .mode import Mode
|
|
5
|
+
from .profile_review_status_response import ProfileReviewStatusResponse
|
|
6
|
+
from .url import URL, URLTypedDict
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from mollie import utils
|
|
9
|
+
from mollie.types import BaseModel
|
|
10
|
+
from mollie.utils import validate_open_enum
|
|
11
|
+
import pydantic
|
|
12
|
+
from pydantic.functional_validators import PlainValidator
|
|
13
|
+
from typing import List, Optional
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class ListProfileResponseStatus(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
18
|
+
r"""The profile status determines whether the profile is able to receive live payments.
|
|
19
|
+
|
|
20
|
+
* `unverified`: The profile has not been verified yet and can only be used to create test payments.
|
|
21
|
+
* `verified`: The profile has been verified and can be used to create live payments and test payments.
|
|
22
|
+
* `blocked`: The profile is blocked and can no longer be used or changed.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
UNVERIFIED = "unverified"
|
|
26
|
+
VERIFIED = "verified"
|
|
27
|
+
BLOCKED = "blocked"
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class ListProfileResponseReviewTypedDict(TypedDict):
|
|
31
|
+
r"""Present if changes have been made that have not yet been approved by Mollie. Changes to test profiles are approved
|
|
32
|
+
automatically, unless a switch to a live profile has been requested. The review object will therefore usually be
|
|
33
|
+
`null` in test mode.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
status: NotRequired[ProfileReviewStatusResponse]
|
|
37
|
+
r"""The status of the requested changes."""
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class ListProfileResponseReview(BaseModel):
|
|
41
|
+
r"""Present if changes have been made that have not yet been approved by Mollie. Changes to test profiles are approved
|
|
42
|
+
automatically, unless a switch to a live profile has been requested. The review object will therefore usually be
|
|
43
|
+
`null` in test mode.
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
status: Annotated[
|
|
47
|
+
Optional[ProfileReviewStatusResponse], PlainValidator(validate_open_enum(False))
|
|
48
|
+
] = None
|
|
49
|
+
r"""The status of the requested changes."""
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class ListProfileResponseLinksTypedDict(TypedDict):
|
|
53
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
54
|
+
|
|
55
|
+
self_: NotRequired[URLTypedDict]
|
|
56
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
57
|
+
dashboard: NotRequired[URLTypedDict]
|
|
58
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
59
|
+
chargebacks: NotRequired[URLTypedDict]
|
|
60
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
61
|
+
methods: NotRequired[URLTypedDict]
|
|
62
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
63
|
+
payments: NotRequired[URLTypedDict]
|
|
64
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
65
|
+
refunds: NotRequired[URLTypedDict]
|
|
66
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
67
|
+
checkout_preview_url: NotRequired[URLTypedDict]
|
|
68
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class ListProfileResponseLinks(BaseModel):
|
|
72
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
73
|
+
|
|
74
|
+
self_: Annotated[Optional[URL], pydantic.Field(alias="self")] = None
|
|
75
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
76
|
+
|
|
77
|
+
dashboard: Optional[URL] = None
|
|
78
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
79
|
+
|
|
80
|
+
chargebacks: Optional[URL] = None
|
|
81
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
82
|
+
|
|
83
|
+
methods: Optional[URL] = None
|
|
84
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
85
|
+
|
|
86
|
+
payments: Optional[URL] = None
|
|
87
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
88
|
+
|
|
89
|
+
refunds: Optional[URL] = None
|
|
90
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
91
|
+
|
|
92
|
+
checkout_preview_url: Annotated[
|
|
93
|
+
Optional[URL], pydantic.Field(alias="checkoutPreviewUrl")
|
|
94
|
+
] = None
|
|
95
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
class ListProfileResponseTypedDict(TypedDict):
|
|
99
|
+
resource: str
|
|
100
|
+
r"""Indicates the response contains a profile object. Will always contain the string `profile` for this endpoint."""
|
|
101
|
+
id: str
|
|
102
|
+
r"""The identifier uniquely referring to this profile. Example: `pfl_v9hTwCvYqw`."""
|
|
103
|
+
mode: Mode
|
|
104
|
+
r"""Whether this entity was created in live mode or in test mode."""
|
|
105
|
+
name: str
|
|
106
|
+
r"""The profile's name, this will usually reflect the trade name or brand name of the profile's website or
|
|
107
|
+
application.
|
|
108
|
+
"""
|
|
109
|
+
website: str
|
|
110
|
+
r"""The URL to the profile's website or application. Only `https` or `http` URLs are allowed. No `@` signs are
|
|
111
|
+
allowed.
|
|
112
|
+
"""
|
|
113
|
+
email: str
|
|
114
|
+
r"""The email address associated with the profile's trade name or brand."""
|
|
115
|
+
phone: str
|
|
116
|
+
r"""The phone number associated with the profile's trade name or brand."""
|
|
117
|
+
business_category: str
|
|
118
|
+
r"""The industry associated with the profile's trade name or brand. Please refer to the
|
|
119
|
+
[business category list](common-data-types#business-category) for all possible options.
|
|
120
|
+
"""
|
|
121
|
+
status: ListProfileResponseStatus
|
|
122
|
+
created_at: str
|
|
123
|
+
r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
|
|
124
|
+
links: ListProfileResponseLinksTypedDict
|
|
125
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
126
|
+
description: NotRequired[str]
|
|
127
|
+
r"""The products or services offered by the profile's website or application."""
|
|
128
|
+
countries_of_activity: NotRequired[List[str]]
|
|
129
|
+
r"""A list of countries where you expect that the majority of the profile's customers reside,
|
|
130
|
+
in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
131
|
+
"""
|
|
132
|
+
review: NotRequired[ListProfileResponseReviewTypedDict]
|
|
133
|
+
r"""Present if changes have been made that have not yet been approved by Mollie. Changes to test profiles are approved
|
|
134
|
+
automatically, unless a switch to a live profile has been requested. The review object will therefore usually be
|
|
135
|
+
`null` in test mode.
|
|
136
|
+
"""
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
class ListProfileResponse(BaseModel):
|
|
140
|
+
resource: str
|
|
141
|
+
r"""Indicates the response contains a profile object. Will always contain the string `profile` for this endpoint."""
|
|
142
|
+
|
|
143
|
+
id: str
|
|
144
|
+
r"""The identifier uniquely referring to this profile. Example: `pfl_v9hTwCvYqw`."""
|
|
145
|
+
|
|
146
|
+
mode: Annotated[Mode, PlainValidator(validate_open_enum(False))]
|
|
147
|
+
r"""Whether this entity was created in live mode or in test mode."""
|
|
148
|
+
|
|
149
|
+
name: str
|
|
150
|
+
r"""The profile's name, this will usually reflect the trade name or brand name of the profile's website or
|
|
151
|
+
application.
|
|
152
|
+
"""
|
|
153
|
+
|
|
154
|
+
website: str
|
|
155
|
+
r"""The URL to the profile's website or application. Only `https` or `http` URLs are allowed. No `@` signs are
|
|
156
|
+
allowed.
|
|
157
|
+
"""
|
|
158
|
+
|
|
159
|
+
email: str
|
|
160
|
+
r"""The email address associated with the profile's trade name or brand."""
|
|
161
|
+
|
|
162
|
+
phone: str
|
|
163
|
+
r"""The phone number associated with the profile's trade name or brand."""
|
|
164
|
+
|
|
165
|
+
business_category: Annotated[str, pydantic.Field(alias="businessCategory")]
|
|
166
|
+
r"""The industry associated with the profile's trade name or brand. Please refer to the
|
|
167
|
+
[business category list](common-data-types#business-category) for all possible options.
|
|
168
|
+
"""
|
|
169
|
+
|
|
170
|
+
status: Annotated[
|
|
171
|
+
ListProfileResponseStatus, PlainValidator(validate_open_enum(False))
|
|
172
|
+
]
|
|
173
|
+
|
|
174
|
+
created_at: Annotated[str, pydantic.Field(alias="createdAt")]
|
|
175
|
+
r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
|
|
176
|
+
|
|
177
|
+
links: Annotated[ListProfileResponseLinks, pydantic.Field(alias="_links")]
|
|
178
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
179
|
+
|
|
180
|
+
description: Optional[str] = None
|
|
181
|
+
r"""The products or services offered by the profile's website or application."""
|
|
182
|
+
|
|
183
|
+
countries_of_activity: Annotated[
|
|
184
|
+
Optional[List[str]], pydantic.Field(alias="countriesOfActivity")
|
|
185
|
+
] = None
|
|
186
|
+
r"""A list of countries where you expect that the majority of the profile's customers reside,
|
|
187
|
+
in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
188
|
+
"""
|
|
189
|
+
|
|
190
|
+
review: Optional[ListProfileResponseReview] = None
|
|
191
|
+
r"""Present if changes have been made that have not yet been approved by Mollie. Changes to test profiles are approved
|
|
192
|
+
automatically, unless a switch to a live profile has been requested. The review object will therefore usually be
|
|
193
|
+
`null` in test mode.
|
|
194
|
+
"""
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .list_links import ListLinks, ListLinksTypedDict
|
|
5
|
+
from .list_profile_response import ListProfileResponse, ListProfileResponseTypedDict
|
|
6
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
7
|
+
from mollie.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata
|
|
8
|
+
import pydantic
|
|
9
|
+
from pydantic import model_serializer
|
|
10
|
+
from typing import List, Optional
|
|
11
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class ListProfilesRequestTypedDict(TypedDict):
|
|
15
|
+
from_: NotRequired[Nullable[str]]
|
|
16
|
+
r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
|
|
17
|
+
result set.
|
|
18
|
+
"""
|
|
19
|
+
limit: NotRequired[Nullable[int]]
|
|
20
|
+
r"""The maximum number of items to return. Defaults to 50 items."""
|
|
21
|
+
idempotency_key: NotRequired[str]
|
|
22
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class ListProfilesRequest(BaseModel):
|
|
26
|
+
from_: Annotated[
|
|
27
|
+
OptionalNullable[str],
|
|
28
|
+
pydantic.Field(alias="from"),
|
|
29
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
30
|
+
] = UNSET
|
|
31
|
+
r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
|
|
32
|
+
result set.
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
limit: Annotated[
|
|
36
|
+
OptionalNullable[int],
|
|
37
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
38
|
+
] = UNSET
|
|
39
|
+
r"""The maximum number of items to return. Defaults to 50 items."""
|
|
40
|
+
|
|
41
|
+
idempotency_key: Annotated[
|
|
42
|
+
Optional[str],
|
|
43
|
+
pydantic.Field(alias="idempotency-key"),
|
|
44
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
45
|
+
] = None
|
|
46
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
47
|
+
|
|
48
|
+
@model_serializer(mode="wrap")
|
|
49
|
+
def serialize_model(self, handler):
|
|
50
|
+
optional_fields = ["from", "limit", "idempotency-key"]
|
|
51
|
+
nullable_fields = ["from", "limit"]
|
|
52
|
+
null_default_fields = []
|
|
53
|
+
|
|
54
|
+
serialized = handler(self)
|
|
55
|
+
|
|
56
|
+
m = {}
|
|
57
|
+
|
|
58
|
+
for n, f in type(self).model_fields.items():
|
|
59
|
+
k = f.alias or n
|
|
60
|
+
val = serialized.get(k)
|
|
61
|
+
serialized.pop(k, None)
|
|
62
|
+
|
|
63
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
64
|
+
is_set = (
|
|
65
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
66
|
+
or k in null_default_fields
|
|
67
|
+
) # pylint: disable=no-member
|
|
68
|
+
|
|
69
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
70
|
+
m[k] = val
|
|
71
|
+
elif val != UNSET_SENTINEL and (
|
|
72
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
73
|
+
):
|
|
74
|
+
m[k] = val
|
|
75
|
+
|
|
76
|
+
return m
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class ListProfilesEmbeddedTypedDict(TypedDict):
|
|
80
|
+
profiles: List[ListProfileResponseTypedDict]
|
|
81
|
+
r"""An array of profile objects."""
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
class ListProfilesEmbedded(BaseModel):
|
|
85
|
+
profiles: List[ListProfileResponse]
|
|
86
|
+
r"""An array of profile objects."""
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
class ListProfilesResponseTypedDict(TypedDict):
|
|
90
|
+
r"""A list of profile objects."""
|
|
91
|
+
|
|
92
|
+
count: int
|
|
93
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
94
|
+
as well.
|
|
95
|
+
|
|
96
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
97
|
+
limit is 50 items.
|
|
98
|
+
"""
|
|
99
|
+
embedded: ListProfilesEmbeddedTypedDict
|
|
100
|
+
links: ListLinksTypedDict
|
|
101
|
+
r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
class ListProfilesResponse(BaseModel):
|
|
105
|
+
r"""A list of profile objects."""
|
|
106
|
+
|
|
107
|
+
count: int
|
|
108
|
+
r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
|
|
109
|
+
as well.
|
|
110
|
+
|
|
111
|
+
The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
|
|
112
|
+
limit is 50 items.
|
|
113
|
+
"""
|
|
114
|
+
|
|
115
|
+
embedded: Annotated[ListProfilesEmbedded, pydantic.Field(alias="_embedded")]
|
|
116
|
+
|
|
117
|
+
links: Annotated[ListLinks, pydantic.Field(alias="_links")]
|
|
118
|
+
r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
|