gr4vy 1.1.29__py3-none-any.whl → 1.10.9__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.
- gr4vy/_version.py +3 -3
- gr4vy/account_updater.py +6 -3
- gr4vy/actions.py +307 -0
- gr4vy/all.py +4 -2
- gr4vy/audit_logs.py +6 -4
- gr4vy/balances.py +4 -2
- gr4vy/basesdk.py +17 -1
- gr4vy/buyers_gift_cards.py +4 -2
- gr4vy/buyers_payment_methods.py +4 -2
- gr4vy/buyers_sdk.py +43 -25
- gr4vy/buyers_shipping_details.py +26 -16
- gr4vy/card_scheme_definitions_sdk.py +4 -2
- gr4vy/checkout_sessions.py +40 -14
- gr4vy/digital_wallets_sdk.py +32 -20
- gr4vy/domains.py +14 -10
- gr4vy/errors/__init__.py +15 -3
- gr4vy/errors/apierror.py +2 -0
- gr4vy/errors/error400.py +4 -6
- gr4vy/errors/error401.py +4 -6
- gr4vy/errors/error403.py +4 -6
- gr4vy/errors/error404.py +4 -6
- gr4vy/errors/error405.py +4 -6
- gr4vy/errors/error409.py +4 -6
- gr4vy/errors/error425.py +4 -6
- gr4vy/errors/error429.py +4 -6
- gr4vy/errors/error500.py +4 -6
- gr4vy/errors/error502.py +4 -6
- gr4vy/errors/error504.py +4 -6
- gr4vy/errors/gr4vyerror.py +11 -7
- gr4vy/errors/httpvalidationerror.py +4 -2
- gr4vy/errors/no_response_error.py +5 -1
- gr4vy/errors/responsevalidationerror.py +2 -0
- gr4vy/events.py +54 -7
- gr4vy/executions.py +38 -8
- gr4vy/gift_cards_sdk.py +29 -19
- gr4vy/httpclient.py +0 -1
- gr4vy/jobs.py +4 -2
- gr4vy/merchant_accounts_sdk.py +30 -10
- gr4vy/models/__init__.py +184 -30
- gr4vy/models/adyenautorescuesepascenariosenum.py +3 -1
- gr4vy/models/adyencardoptions.py +9 -6
- gr4vy/models/adyensepaoptions.py +1 -6
- gr4vy/models/adyensplitsoptions.py +57 -0
- gr4vy/models/airline.py +9 -8
- gr4vy/models/airlineleg.py +9 -7
- gr4vy/models/airlinepassenger.py +9 -7
- gr4vy/models/antifrauddecision.py +9 -1
- gr4vy/models/approvaltarget.py +7 -1
- gr4vy/models/auditlogaction.py +9 -1
- gr4vy/models/auditlogentry.py +3 -3
- gr4vy/models/auditlogentryuser.py +3 -3
- gr4vy/models/{billingdetails_input.py → billingdetails.py} +2 -2
- gr4vy/models/braintreedynamicdatafieldsoptions.py +33 -3
- gr4vy/models/browserinfo.py +9 -5
- gr4vy/models/buyer.py +3 -3
- gr4vy/models/buyercreate.py +3 -3
- gr4vy/models/buyerupdate.py +3 -3
- gr4vy/models/cancel_transactionop.py +43 -0
- gr4vy/models/cancelstatus.py +15 -0
- gr4vy/models/capturestatus.py +7 -1
- gr4vy/models/cardtype.py +8 -1
- gr4vy/models/cartitem.py +53 -8
- gr4vy/models/chaseoptions.py +46 -0
- gr4vy/models/checkoutsession.py +24 -3
- gr4vy/models/checkoutsessioncreate.py +39 -5
- gr4vy/models/checkoutsessionpaymentmethod.py +3 -5
- gr4vy/models/checkoutsessionpaymentmethoddetails.py +2 -6
- gr4vy/models/create_payment_methodop.py +6 -0
- gr4vy/models/create_report_execution_urlop.py +16 -1
- gr4vy/models/createsession.py +3 -3
- gr4vy/models/createsessionstatus.py +7 -1
- gr4vy/models/cvvresponsecode.py +7 -1
- gr4vy/models/cybersourceoptions.py +7 -0
- gr4vy/models/definitionfield.py +1 -6
- gr4vy/models/definitionfieldformat.py +8 -1
- gr4vy/models/digitalwallet.py +3 -5
- gr4vy/models/digitalwalletcreate.py +2 -6
- gr4vy/models/digitalwalletprovider.py +6 -1
- gr4vy/models/dlocalupioptions.py +50 -0
- gr4vy/models/dlocalupirecurringinfooptions.py +47 -0
- gr4vy/models/dlocalupiwalletoptions.py +89 -0
- gr4vy/models/errordetail.py +2 -4
- gr4vy/models/errorlocation.py +8 -1
- gr4vy/models/flow.py +16 -0
- gr4vy/models/flowaction.py +16 -0
- gr4vy/models/forterantifraudoptions.py +8 -8
- gr4vy/models/forterantifraudoptionscartitembasicitemdata.py +10 -8
- gr4vy/models/forterantifraudoptionscartitemdeliverydetails.py +9 -7
- gr4vy/models/giftcardredemption.py +4 -8
- gr4vy/models/giftcardredemptionstatus.py +7 -1
- gr4vy/models/giftcardservice.py +3 -5
- gr4vy/models/giftcardserviceprovider.py +5 -1
- gr4vy/models/giftcardsummary.py +3 -5
- gr4vy/models/{guestbuyer_input.py → guestbuyer.py} +5 -5
- gr4vy/models/instrumenttype.py +1 -0
- gr4vy/models/integrationclient.py +16 -0
- gr4vy/models/internal/__init__.py +14 -1
- gr4vy/models/list_all_report_executionsop.py +2 -14
- gr4vy/models/list_audit_logsop.py +2 -10
- gr4vy/models/list_buyer_payment_methodsop.py +9 -4
- gr4vy/models/list_payment_methodsop.py +2 -14
- gr4vy/models/list_payment_servicesop.py +2 -8
- gr4vy/models/list_reportsop.py +2 -10
- gr4vy/models/list_transaction_actionsop.py +43 -0
- gr4vy/models/list_transaction_eventsop.py +12 -1
- gr4vy/models/list_transactionsop.py +14 -22
- gr4vy/models/merchantaccount.py +9 -5
- gr4vy/models/merchantaccountcreate.py +8 -6
- gr4vy/models/merchantaccountupdate.py +8 -6
- gr4vy/models/merchantprofilescheme.py +7 -7
- gr4vy/models/merchantprofileschemesummary.py +7 -7
- gr4vy/models/method.py +4 -0
- gr4vy/models/mockcardoptions.py +7 -2
- gr4vy/models/mode.py +1 -0
- gr4vy/models/monatospeioptions.py +15 -0
- gr4vy/models/networktoken.py +3 -3
- gr4vy/models/networktokenpaymentmethodcreate.py +11 -9
- gr4vy/models/networktokenstatus.py +7 -1
- gr4vy/models/nuveiidealoptions.py +49 -0
- gr4vy/models/nuveipseoptions.py +70 -0
- gr4vy/models/paymentlink.py +25 -7
- gr4vy/models/paymentlinkcreate.py +23 -28
- gr4vy/models/paymentlinkstatus.py +7 -1
- gr4vy/models/paymentmethod.py +7 -13
- gr4vy/models/paymentmethodcard.py +3 -5
- gr4vy/models/paymentmethoddetailscard.py +2 -6
- gr4vy/models/paymentmethodstatus.py +7 -1
- gr4vy/models/paymentmethodsummary.py +6 -12
- gr4vy/models/paymentoption.py +3 -3
- gr4vy/models/paymentservice.py +4 -6
- gr4vy/models/paymentserviceconfiguration.py +2 -6
- gr4vy/models/paymentservicedefinition.py +11 -5
- gr4vy/models/paymentservicestatus.py +8 -1
- gr4vy/models/paymentservicetoken.py +3 -3
- gr4vy/models/payoutcategory.py +1 -1
- gr4vy/models/payoutcreate.py +5 -9
- gr4vy/models/payoutstatus.py +7 -1
- gr4vy/models/payoutsummary.py +4 -6
- gr4vy/models/paypaloptions.py +8 -2
- gr4vy/models/paypalshippingoptions.py +51 -0
- gr4vy/models/paypalshippingoptionsitem.py +89 -0
- gr4vy/models/paypalshippingoptionsitemamount.py +20 -0
- gr4vy/models/plaidpaymentmethodcreate.py +106 -0
- gr4vy/models/redirectpaymentmethodcreate.py +4 -6
- gr4vy/models/refund.py +4 -4
- gr4vy/models/refundstatus.py +8 -1
- gr4vy/models/refundtargettype.py +5 -1
- gr4vy/models/report.py +4 -6
- gr4vy/models/reportcreate.py +2 -3
- gr4vy/models/reportcreatortype.py +7 -1
- gr4vy/models/reportexecution.py +3 -3
- gr4vy/models/reportexecutionstatus.py +7 -1
- gr4vy/models/reportexecutionsummary.py +3 -3
- gr4vy/models/reportexecutionurlgenerate.py +16 -0
- gr4vy/models/reportschedule.py +9 -1
- gr4vy/models/reportspec.py +2 -4
- gr4vy/models/reportsummary.py +3 -5
- gr4vy/models/settlement.py +32 -32
- gr4vy/models/statementdescriptor.py +7 -0
- gr4vy/models/stripeconnectoptions.py +7 -0
- gr4vy/models/taxid.py +2 -4
- gr4vy/models/taxidkind.py +7 -0
- gr4vy/models/threedsecuredatav1.py +2 -6
- gr4vy/models/threedsecuredatav2.py +2 -6
- gr4vy/models/threedsecuremethod.py +7 -1
- gr4vy/models/threedsecurestatus.py +7 -1
- gr4vy/models/transaction.py +86 -25
- gr4vy/models/transactionaction.py +48 -0
- gr4vy/models/transactionactions.py +17 -0
- gr4vy/models/transactionbuyer.py +3 -3
- gr4vy/models/transactioncancel.py +81 -0
- gr4vy/models/transactioncapture.py +3 -3
- gr4vy/models/transactionconnectionoptions.py +50 -0
- gr4vy/models/transactioncreate.py +76 -12
- gr4vy/models/transactionevent.py +10 -3
- gr4vy/models/transactionintent.py +7 -1
- gr4vy/models/transactionintentoutcome.py +6 -1
- gr4vy/models/transactionpaymentmethod.py +6 -12
- gr4vy/models/transactionpaymentservice.py +3 -3
- gr4vy/models/transactionpaymentsource.py +7 -1
- gr4vy/models/transactionrefundcreate.py +2 -6
- gr4vy/models/transactionsummary.py +11 -10
- gr4vy/models/transactionthreedsecuresummary.py +3 -9
- gr4vy/models/transactionvoid.py +3 -3
- gr4vy/models/userstatus.py +8 -1
- gr4vy/models/voidstatus.py +7 -1
- gr4vy/network_tokens_cryptogram.py +4 -2
- gr4vy/payment_links_sdk.py +36 -16
- gr4vy/payment_methods_network_tokens.py +27 -13
- gr4vy/payment_methods_payment_service_tokens.py +12 -6
- gr4vy/payment_methods_sdk.py +26 -14
- gr4vy/payment_options_sdk.py +4 -2
- gr4vy/payment_service_definitions_sdk.py +14 -8
- gr4vy/payment_services_sdk.py +36 -22
- gr4vy/payouts.py +18 -12
- gr4vy/refunds_sdk.py +4 -2
- gr4vy/report_executions_sdk.py +6 -4
- gr4vy/reports_sdk.py +23 -13
- gr4vy/sdk.py +17 -4
- gr4vy/sessions.py +12 -6
- gr4vy/transactions.py +446 -33
- gr4vy/transactions_refunds.py +17 -9
- gr4vy/transactions_settlements.py +8 -4
- gr4vy/types/basemodel.py +41 -3
- gr4vy/utils/__init__.py +15 -6
- gr4vy/utils/annotations.py +32 -8
- gr4vy/utils/enums.py +60 -0
- gr4vy/utils/eventstreaming.py +10 -0
- gr4vy/utils/forms.py +21 -10
- gr4vy/utils/queryparams.py +14 -2
- gr4vy/utils/requestbodies.py +1 -1
- gr4vy/utils/retries.py +69 -5
- gr4vy/utils/serializers.py +0 -20
- gr4vy/utils/unmarshal_json_response.py +15 -1
- {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/METADATA +43 -41
- {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/RECORD +217 -196
- {gr4vy-1.1.29.dist-info → gr4vy-1.10.9.dist-info}/WHEEL +1 -1
- gr4vy/models/billingdetails_output.py +0 -87
- gr4vy/models/guestbuyer_output.py +0 -80
gr4vy/models/reportspec.py
CHANGED
|
@@ -3,10 +3,8 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .reportspecmodel import ReportSpecModel
|
|
5
5
|
from gr4vy.types import BaseModel
|
|
6
|
-
from gr4vy.utils import validate_open_enum
|
|
7
|
-
from pydantic.functional_validators import PlainValidator
|
|
8
6
|
from typing import Any, Dict
|
|
9
|
-
from typing_extensions import
|
|
7
|
+
from typing_extensions import TypedDict
|
|
10
8
|
|
|
11
9
|
|
|
12
10
|
class ReportSpecTypedDict(TypedDict):
|
|
@@ -16,7 +14,7 @@ class ReportSpecTypedDict(TypedDict):
|
|
|
16
14
|
|
|
17
15
|
|
|
18
16
|
class ReportSpec(BaseModel):
|
|
19
|
-
model:
|
|
17
|
+
model: ReportSpecModel
|
|
20
18
|
|
|
21
19
|
params: Dict[str, Any]
|
|
22
20
|
r"""The parameters for the report model."""
|
gr4vy/models/reportsummary.py
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .reportcreatortype import ReportCreatorType
|
|
5
5
|
from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
6
|
-
from gr4vy.utils import validate_const
|
|
6
|
+
from gr4vy.utils import validate_const
|
|
7
7
|
import pydantic
|
|
8
8
|
from pydantic import model_serializer
|
|
9
|
-
from pydantic.functional_validators import AfterValidator
|
|
9
|
+
from pydantic.functional_validators import AfterValidator
|
|
10
10
|
from typing import Literal, Optional
|
|
11
11
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
12
12
|
|
|
@@ -52,9 +52,7 @@ class ReportSummary(BaseModel):
|
|
|
52
52
|
creator_display_name: OptionalNullable[str] = UNSET
|
|
53
53
|
r"""The display name of the report creator."""
|
|
54
54
|
|
|
55
|
-
creator_type:
|
|
56
|
-
OptionalNullable[ReportCreatorType], PlainValidator(validate_open_enum(False))
|
|
57
|
-
] = UNSET
|
|
55
|
+
creator_type: OptionalNullable[ReportCreatorType] = UNSET
|
|
58
56
|
r"""The type of the report creator."""
|
|
59
57
|
|
|
60
58
|
@model_serializer(mode="wrap")
|
gr4vy/models/settlement.py
CHANGED
|
@@ -15,21 +15,21 @@ class SettlementTypedDict(TypedDict):
|
|
|
15
15
|
r"""A settlement record for a transaction."""
|
|
16
16
|
|
|
17
17
|
id: str
|
|
18
|
-
r"""The unique identifier for the
|
|
18
|
+
r"""The unique identifier for the record."""
|
|
19
19
|
merchant_account_id: str
|
|
20
|
-
r"""The merchant account this
|
|
20
|
+
r"""The merchant account this record belongs to."""
|
|
21
21
|
created_at: datetime
|
|
22
|
-
r"""The date and time the
|
|
22
|
+
r"""The date and time the record was created, in ISO 8601 format."""
|
|
23
23
|
updated_at: datetime
|
|
24
|
-
r"""The date and time the
|
|
24
|
+
r"""The date and time the record was last updated, in ISO 8601 format."""
|
|
25
25
|
posted_at: datetime
|
|
26
|
-
r"""The date and time the
|
|
26
|
+
r"""The date and time the record was posted, in ISO 8601 format."""
|
|
27
27
|
ingested_at: datetime
|
|
28
|
-
r"""The date and time the
|
|
28
|
+
r"""The date and time the record was ingested, in ISO 8601 format."""
|
|
29
29
|
currency: str
|
|
30
|
-
r"""ISO 4217 currency code
|
|
30
|
+
r"""ISO 4217 currency code."""
|
|
31
31
|
amount: int
|
|
32
|
-
r"""The total
|
|
32
|
+
r"""The total amount in the smallest currency unit (e.g. cents)."""
|
|
33
33
|
commission: int
|
|
34
34
|
r"""The commission amount deducted in the smallest currency unit."""
|
|
35
35
|
payment_service_report_id: str
|
|
@@ -37,45 +37,45 @@ class SettlementTypedDict(TypedDict):
|
|
|
37
37
|
payment_service_report_file_ids: List[str]
|
|
38
38
|
r"""List of file IDs for the payment service report."""
|
|
39
39
|
transaction_id: str
|
|
40
|
-
r"""The transaction this
|
|
41
|
-
type: Literal["settlement"]
|
|
42
|
-
r"""Always 'settlement'."""
|
|
40
|
+
r"""The transaction this record is associated with."""
|
|
43
41
|
exchange_rate: NotRequired[Nullable[float]]
|
|
44
|
-
r"""The exchange rate
|
|
42
|
+
r"""The exchange rate, if applicable."""
|
|
45
43
|
interchange: NotRequired[Nullable[int]]
|
|
46
44
|
r"""The interchange fee, if applicable, in the smallest currency unit."""
|
|
47
45
|
markup: NotRequired[Nullable[int]]
|
|
48
46
|
r"""The markup fee, if applicable, in the smallest currency unit."""
|
|
49
47
|
scheme_fee: NotRequired[Nullable[int]]
|
|
50
48
|
r"""The scheme fee, if applicable, in the smallest currency unit."""
|
|
49
|
+
type: Literal["settlement"]
|
|
50
|
+
r"""Always `settlement`."""
|
|
51
51
|
|
|
52
52
|
|
|
53
53
|
class Settlement(BaseModel):
|
|
54
54
|
r"""A settlement record for a transaction."""
|
|
55
55
|
|
|
56
56
|
id: str
|
|
57
|
-
r"""The unique identifier for the
|
|
57
|
+
r"""The unique identifier for the record."""
|
|
58
58
|
|
|
59
59
|
merchant_account_id: str
|
|
60
|
-
r"""The merchant account this
|
|
60
|
+
r"""The merchant account this record belongs to."""
|
|
61
61
|
|
|
62
62
|
created_at: datetime
|
|
63
|
-
r"""The date and time the
|
|
63
|
+
r"""The date and time the record was created, in ISO 8601 format."""
|
|
64
64
|
|
|
65
65
|
updated_at: datetime
|
|
66
|
-
r"""The date and time the
|
|
66
|
+
r"""The date and time the record was last updated, in ISO 8601 format."""
|
|
67
67
|
|
|
68
68
|
posted_at: datetime
|
|
69
|
-
r"""The date and time the
|
|
69
|
+
r"""The date and time the record was posted, in ISO 8601 format."""
|
|
70
70
|
|
|
71
71
|
ingested_at: datetime
|
|
72
|
-
r"""The date and time the
|
|
72
|
+
r"""The date and time the record was ingested, in ISO 8601 format."""
|
|
73
73
|
|
|
74
74
|
currency: str
|
|
75
|
-
r"""ISO 4217 currency code
|
|
75
|
+
r"""ISO 4217 currency code."""
|
|
76
76
|
|
|
77
77
|
amount: int
|
|
78
|
-
r"""The total
|
|
78
|
+
r"""The total amount in the smallest currency unit (e.g. cents)."""
|
|
79
79
|
|
|
80
80
|
commission: int
|
|
81
81
|
r"""The commission amount deducted in the smallest currency unit."""
|
|
@@ -87,19 +87,10 @@ class Settlement(BaseModel):
|
|
|
87
87
|
r"""List of file IDs for the payment service report."""
|
|
88
88
|
|
|
89
89
|
transaction_id: str
|
|
90
|
-
r"""The transaction this
|
|
91
|
-
|
|
92
|
-
TYPE: Annotated[
|
|
93
|
-
Annotated[
|
|
94
|
-
Optional[Literal["settlement"]],
|
|
95
|
-
AfterValidator(validate_const("settlement")),
|
|
96
|
-
],
|
|
97
|
-
pydantic.Field(alias="type"),
|
|
98
|
-
] = "settlement"
|
|
99
|
-
r"""Always 'settlement'."""
|
|
90
|
+
r"""The transaction this record is associated with."""
|
|
100
91
|
|
|
101
92
|
exchange_rate: OptionalNullable[float] = UNSET
|
|
102
|
-
r"""The exchange rate
|
|
93
|
+
r"""The exchange rate, if applicable."""
|
|
103
94
|
|
|
104
95
|
interchange: OptionalNullable[int] = UNSET
|
|
105
96
|
r"""The interchange fee, if applicable, in the smallest currency unit."""
|
|
@@ -110,14 +101,23 @@ class Settlement(BaseModel):
|
|
|
110
101
|
scheme_fee: OptionalNullable[int] = UNSET
|
|
111
102
|
r"""The scheme fee, if applicable, in the smallest currency unit."""
|
|
112
103
|
|
|
104
|
+
TYPE: Annotated[
|
|
105
|
+
Annotated[
|
|
106
|
+
Optional[Literal["settlement"]],
|
|
107
|
+
AfterValidator(validate_const("settlement")),
|
|
108
|
+
],
|
|
109
|
+
pydantic.Field(alias="type"),
|
|
110
|
+
] = "settlement"
|
|
111
|
+
r"""Always `settlement`."""
|
|
112
|
+
|
|
113
113
|
@model_serializer(mode="wrap")
|
|
114
114
|
def serialize_model(self, handler):
|
|
115
115
|
optional_fields = [
|
|
116
|
-
"type",
|
|
117
116
|
"exchange_rate",
|
|
118
117
|
"interchange",
|
|
119
118
|
"markup",
|
|
120
119
|
"scheme_fee",
|
|
120
|
+
"type",
|
|
121
121
|
]
|
|
122
122
|
nullable_fields = ["exchange_rate", "interchange", "markup", "scheme_fee"]
|
|
123
123
|
null_default_fields = []
|
|
@@ -21,6 +21,8 @@ class StatementDescriptorTypedDict(TypedDict):
|
|
|
21
21
|
r"""The value in the phone number field of a customer's statement which should be formatted according to the E164 number standard."""
|
|
22
22
|
url: NotRequired[Nullable[str]]
|
|
23
23
|
r"""The merchant's URL to be displayed in a statement descriptor."""
|
|
24
|
+
postal_code: NotRequired[Nullable[str]]
|
|
25
|
+
r"""The merchant's postal code or zip code."""
|
|
24
26
|
|
|
25
27
|
|
|
26
28
|
class StatementDescriptor(BaseModel):
|
|
@@ -44,6 +46,9 @@ class StatementDescriptor(BaseModel):
|
|
|
44
46
|
url: OptionalNullable[str] = UNSET
|
|
45
47
|
r"""The merchant's URL to be displayed in a statement descriptor."""
|
|
46
48
|
|
|
49
|
+
postal_code: OptionalNullable[str] = UNSET
|
|
50
|
+
r"""The merchant's postal code or zip code."""
|
|
51
|
+
|
|
47
52
|
@model_serializer(mode="wrap")
|
|
48
53
|
def serialize_model(self, handler):
|
|
49
54
|
optional_fields = [
|
|
@@ -53,6 +58,7 @@ class StatementDescriptor(BaseModel):
|
|
|
53
58
|
"country",
|
|
54
59
|
"phone_number",
|
|
55
60
|
"url",
|
|
61
|
+
"postal_code",
|
|
56
62
|
]
|
|
57
63
|
nullable_fields = [
|
|
58
64
|
"name",
|
|
@@ -61,6 +67,7 @@ class StatementDescriptor(BaseModel):
|
|
|
61
67
|
"country",
|
|
62
68
|
"phone_number",
|
|
63
69
|
"url",
|
|
70
|
+
"postal_code",
|
|
64
71
|
]
|
|
65
72
|
null_default_fields = []
|
|
66
73
|
|
|
@@ -15,6 +15,8 @@ class StripeConnectOptionsTypedDict(TypedDict):
|
|
|
15
15
|
r"""The Stripe Connect account to target using the `on_behalf_of` request parameter."""
|
|
16
16
|
transfer_data_destination: NotRequired[Nullable[str]]
|
|
17
17
|
r"""The Stripe Connect account to target using the `transfer_data.destination` request parameter."""
|
|
18
|
+
transfer_group: NotRequired[Nullable[str]]
|
|
19
|
+
r"""A string that identifies the payment as part of a group."""
|
|
18
20
|
|
|
19
21
|
|
|
20
22
|
class StripeConnectOptions(BaseModel):
|
|
@@ -30,6 +32,9 @@ class StripeConnectOptions(BaseModel):
|
|
|
30
32
|
transfer_data_destination: OptionalNullable[str] = UNSET
|
|
31
33
|
r"""The Stripe Connect account to target using the `transfer_data.destination` request parameter."""
|
|
32
34
|
|
|
35
|
+
transfer_group: OptionalNullable[str] = UNSET
|
|
36
|
+
r"""A string that identifies the payment as part of a group."""
|
|
37
|
+
|
|
33
38
|
@model_serializer(mode="wrap")
|
|
34
39
|
def serialize_model(self, handler):
|
|
35
40
|
optional_fields = [
|
|
@@ -37,12 +42,14 @@ class StripeConnectOptions(BaseModel):
|
|
|
37
42
|
"application_fee_amount",
|
|
38
43
|
"on_behalf_of",
|
|
39
44
|
"transfer_data_destination",
|
|
45
|
+
"transfer_group",
|
|
40
46
|
]
|
|
41
47
|
nullable_fields = [
|
|
42
48
|
"stripe_account",
|
|
43
49
|
"application_fee_amount",
|
|
44
50
|
"on_behalf_of",
|
|
45
51
|
"transfer_data_destination",
|
|
52
|
+
"transfer_group",
|
|
46
53
|
]
|
|
47
54
|
null_default_fields = []
|
|
48
55
|
|
gr4vy/models/taxid.py
CHANGED
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .taxidkind import TaxIDKind
|
|
5
5
|
from gr4vy.types import BaseModel
|
|
6
|
-
from
|
|
7
|
-
from pydantic.functional_validators import PlainValidator
|
|
8
|
-
from typing_extensions import Annotated, TypedDict
|
|
6
|
+
from typing_extensions import TypedDict
|
|
9
7
|
|
|
10
8
|
|
|
11
9
|
class TaxIDTypedDict(TypedDict):
|
|
@@ -18,4 +16,4 @@ class TaxID(BaseModel):
|
|
|
18
16
|
value: str
|
|
19
17
|
r"""The tax ID for the buyer."""
|
|
20
18
|
|
|
21
|
-
kind:
|
|
19
|
+
kind: TaxIDKind
|
gr4vy/models/taxidkind.py
CHANGED
|
@@ -24,6 +24,12 @@ TaxIDKind = Union[
|
|
|
24
24
|
"cl.tin",
|
|
25
25
|
"co.itin",
|
|
26
26
|
"co.nit",
|
|
27
|
+
"co.cc",
|
|
28
|
+
"co.ce",
|
|
29
|
+
"co.de",
|
|
30
|
+
"co.rc",
|
|
31
|
+
"co.ti",
|
|
32
|
+
"co.passport",
|
|
27
33
|
"es.cif",
|
|
28
34
|
"eu.vat",
|
|
29
35
|
"gb.vat",
|
|
@@ -31,6 +37,7 @@ TaxIDKind = Union[
|
|
|
31
37
|
"id.nik",
|
|
32
38
|
"id.npwp",
|
|
33
39
|
"in.gst",
|
|
40
|
+
"in.pan",
|
|
34
41
|
"jp.cn",
|
|
35
42
|
"jp.rn",
|
|
36
43
|
"kr.brn",
|
|
@@ -3,10 +3,8 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .cardscheme import CardScheme
|
|
5
5
|
from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
6
|
-
from gr4vy.utils import validate_open_enum
|
|
7
6
|
from pydantic import model_serializer
|
|
8
|
-
from
|
|
9
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
7
|
+
from typing_extensions import NotRequired, TypedDict
|
|
10
8
|
|
|
11
9
|
|
|
12
10
|
class ThreeDSecureDataV1TypedDict(TypedDict):
|
|
@@ -50,9 +48,7 @@ class ThreeDSecureDataV1(BaseModel):
|
|
|
50
48
|
xid: str
|
|
51
49
|
r"""The transaction identifier."""
|
|
52
50
|
|
|
53
|
-
scheme:
|
|
54
|
-
OptionalNullable[CardScheme], PlainValidator(validate_open_enum(False))
|
|
55
|
-
] = UNSET
|
|
51
|
+
scheme: OptionalNullable[CardScheme] = UNSET
|
|
56
52
|
r"""The scheme/brand of the card that is used for 3-D Secure."""
|
|
57
53
|
|
|
58
54
|
@model_serializer(mode="wrap")
|
|
@@ -3,10 +3,8 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
from .cardscheme import CardScheme
|
|
5
5
|
from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
6
|
-
from gr4vy.utils import validate_open_enum
|
|
7
6
|
from pydantic import model_serializer
|
|
8
|
-
from
|
|
9
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
7
|
+
from typing_extensions import NotRequired, TypedDict
|
|
10
8
|
|
|
11
9
|
|
|
12
10
|
class ThreeDSecureDataV2TypedDict(TypedDict):
|
|
@@ -42,9 +40,7 @@ class ThreeDSecureDataV2(BaseModel):
|
|
|
42
40
|
directory_transaction_id: str
|
|
43
41
|
r"""The transaction identifier."""
|
|
44
42
|
|
|
45
|
-
scheme:
|
|
46
|
-
OptionalNullable[CardScheme], PlainValidator(validate_open_enum(False))
|
|
47
|
-
] = UNSET
|
|
43
|
+
scheme: OptionalNullable[CardScheme] = UNSET
|
|
48
44
|
r"""The scheme/brand of the card that is used for 3-D Secure."""
|
|
49
45
|
|
|
50
46
|
authentication_response: OptionalNullable[str] = UNSET
|
|
@@ -5,4 +5,10 @@ from gr4vy.types import UnrecognizedStr
|
|
|
5
5
|
from typing import Literal, Union
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
ThreeDSecureMethod = Union[
|
|
8
|
+
ThreeDSecureMethod = Union[
|
|
9
|
+
Literal[
|
|
10
|
+
"challenge",
|
|
11
|
+
"frictionless",
|
|
12
|
+
],
|
|
13
|
+
UnrecognizedStr,
|
|
14
|
+
]
|
|
@@ -6,6 +6,12 @@ from typing import Literal, Union
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
ThreeDSecureStatus = Union[
|
|
9
|
-
Literal[
|
|
9
|
+
Literal[
|
|
10
|
+
"setup_error",
|
|
11
|
+
"error",
|
|
12
|
+
"declined",
|
|
13
|
+
"cancelled",
|
|
14
|
+
"complete",
|
|
15
|
+
],
|
|
10
16
|
UnrecognizedStr,
|
|
11
17
|
]
|
gr4vy/models/transaction.py
CHANGED
|
@@ -32,10 +32,10 @@ from .transactionthreedsecuresummary import (
|
|
|
32
32
|
)
|
|
33
33
|
from datetime import datetime
|
|
34
34
|
from gr4vy.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
35
|
-
from gr4vy.utils import validate_const
|
|
35
|
+
from gr4vy.utils import validate_const
|
|
36
36
|
import pydantic
|
|
37
37
|
from pydantic import model_serializer
|
|
38
|
-
from pydantic.functional_validators import AfterValidator
|
|
38
|
+
from pydantic.functional_validators import AfterValidator
|
|
39
39
|
from typing import Dict, List, Literal, Optional
|
|
40
40
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
41
41
|
|
|
@@ -71,6 +71,8 @@ class TransactionTypedDict(TypedDict):
|
|
|
71
71
|
r"""The date and time when the transaction was created, in ISO 8601 format."""
|
|
72
72
|
updated_at: datetime
|
|
73
73
|
r"""The date and time when the transaction was last updated, in ISO 8601 format."""
|
|
74
|
+
disputed: bool
|
|
75
|
+
r"""Indicates whether this transaction has been disputed."""
|
|
74
76
|
payment_source: TransactionPaymentSource
|
|
75
77
|
r"""The way payment method information made it to this transaction."""
|
|
76
78
|
merchant_initiated: bool
|
|
@@ -144,6 +146,8 @@ class TransactionTypedDict(TypedDict):
|
|
|
144
146
|
r"""The date this transaction was captured at."""
|
|
145
147
|
voided_at: NotRequired[Nullable[datetime]]
|
|
146
148
|
r"""The date this transaction was voided at."""
|
|
149
|
+
canceled_at: NotRequired[Nullable[datetime]]
|
|
150
|
+
r"""The date this transaction was canceled at."""
|
|
147
151
|
approval_expires_at: NotRequired[Nullable[datetime]]
|
|
148
152
|
r"""The date this transaction's approval URL will expire at."""
|
|
149
153
|
buyer_approval_timedout_at: NotRequired[Nullable[datetime]]
|
|
@@ -154,6 +158,24 @@ class TransactionTypedDict(TypedDict):
|
|
|
154
158
|
r"""An optional merchant advice code which provides insight into the type of transaction or reason why the payment failed."""
|
|
155
159
|
installment_count: NotRequired[Nullable[int]]
|
|
156
160
|
r"""The number of installments for this transaction, if applicable."""
|
|
161
|
+
session_token: NotRequired[Nullable[str]]
|
|
162
|
+
r"""A session token that can be used to fetch session data for direct client integrations."""
|
|
163
|
+
tax_amount: NotRequired[Nullable[int]]
|
|
164
|
+
r"""The sales tax amount for this transaction, represented as a monetary amount in the smallest currency unit for the given currency, for example `1299` cents to create an authorization for `$12.99`"""
|
|
165
|
+
merchant_tax_id: NotRequired[Nullable[str]]
|
|
166
|
+
r"""Merchant tax ID (for example, EIN or VAT number)."""
|
|
167
|
+
purchase_order_number: NotRequired[Nullable[str]]
|
|
168
|
+
r"""Invoice number or Purchase Order number."""
|
|
169
|
+
customer_reference_number: NotRequired[Nullable[str]]
|
|
170
|
+
r"""Customer code or reference."""
|
|
171
|
+
amount_includes_tax: NotRequired[Nullable[bool]]
|
|
172
|
+
r"""Whether the tax is included in the amount."""
|
|
173
|
+
supplier_order_number: NotRequired[Nullable[str]]
|
|
174
|
+
r"""The merchant's unique identifier for the sales order or invoice."""
|
|
175
|
+
duty_amount: NotRequired[Nullable[int]]
|
|
176
|
+
r"""Total charges for import/export duties."""
|
|
177
|
+
shipping_amount: NotRequired[Nullable[int]]
|
|
178
|
+
r"""Total shipping amount."""
|
|
157
179
|
|
|
158
180
|
|
|
159
181
|
class Transaction(BaseModel):
|
|
@@ -174,7 +196,7 @@ class Transaction(BaseModel):
|
|
|
174
196
|
amount: int
|
|
175
197
|
r"""The total amount for this transaction across all funding sources including gift cards."""
|
|
176
198
|
|
|
177
|
-
status:
|
|
199
|
+
status: TransactionStatus
|
|
178
200
|
|
|
179
201
|
authorized_amount: int
|
|
180
202
|
r"""The amount for this transaction that has been authorized for the `payment_method`. This can be less than the `amount` if gift cards were used."""
|
|
@@ -191,7 +213,7 @@ class Transaction(BaseModel):
|
|
|
191
213
|
settled: bool
|
|
192
214
|
r"""Indicates whether this transaction has been settled."""
|
|
193
215
|
|
|
194
|
-
intent:
|
|
216
|
+
intent: TransactionIntent
|
|
195
217
|
|
|
196
218
|
gift_card_redemptions: List[GiftCardRedemption]
|
|
197
219
|
r"""The gift cards redeemed for this transaction."""
|
|
@@ -202,9 +224,10 @@ class Transaction(BaseModel):
|
|
|
202
224
|
updated_at: datetime
|
|
203
225
|
r"""The date and time when the transaction was last updated, in ISO 8601 format."""
|
|
204
226
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
227
|
+
disputed: bool
|
|
228
|
+
r"""Indicates whether this transaction has been disputed."""
|
|
229
|
+
|
|
230
|
+
payment_source: TransactionPaymentSource
|
|
208
231
|
r"""The way payment method information made it to this transaction."""
|
|
209
232
|
|
|
210
233
|
merchant_initiated: bool
|
|
@@ -213,9 +236,7 @@ class Transaction(BaseModel):
|
|
|
213
236
|
is_subsequent_payment: bool
|
|
214
237
|
r"""Indicates whether the transaction represents a subsequent payment or an initial one."""
|
|
215
238
|
|
|
216
|
-
intent_outcome:
|
|
217
|
-
TransactionIntentOutcome, PlainValidator(validate_open_enum(False))
|
|
218
|
-
]
|
|
239
|
+
intent_outcome: TransactionIntentOutcome
|
|
219
240
|
|
|
220
241
|
multi_tender: bool
|
|
221
242
|
r"""The outcome of the original intent of a transaction. This allows you to understand if the intent of the transaction (e.g. `capture` or `authorize`) has been achieved when dealing with multiple payment instruments."""
|
|
@@ -244,14 +265,10 @@ class Transaction(BaseModel):
|
|
|
244
265
|
payment_method: OptionalNullable[TransactionPaymentMethod] = UNSET
|
|
245
266
|
r"""The payment method used for this transaction."""
|
|
246
267
|
|
|
247
|
-
method:
|
|
248
|
-
OptionalNullable[Method], PlainValidator(validate_open_enum(False))
|
|
249
|
-
] = UNSET
|
|
268
|
+
method: OptionalNullable[Method] = UNSET
|
|
250
269
|
r"""The method used for the transaction."""
|
|
251
270
|
|
|
252
|
-
instrument_type:
|
|
253
|
-
OptionalNullable[InstrumentType], PlainValidator(validate_open_enum(False))
|
|
254
|
-
] = UNSET
|
|
271
|
+
instrument_type: OptionalNullable[InstrumentType] = UNSET
|
|
255
272
|
r"""The name of the instrument used to process the transaction."""
|
|
256
273
|
|
|
257
274
|
error_code: OptionalNullable[str] = UNSET
|
|
@@ -287,19 +304,13 @@ class Transaction(BaseModel):
|
|
|
287
304
|
auth_response_code: OptionalNullable[str] = UNSET
|
|
288
305
|
r"""This is the response description received from the processor."""
|
|
289
306
|
|
|
290
|
-
avs_response_code:
|
|
291
|
-
OptionalNullable[AVSResponseCode], PlainValidator(validate_open_enum(False))
|
|
292
|
-
] = UNSET
|
|
307
|
+
avs_response_code: OptionalNullable[AVSResponseCode] = UNSET
|
|
293
308
|
r"""The response code received from the payment service for the Address Verification Check (AVS). This code is mapped to a standardized Gr4vy AVS response code."""
|
|
294
309
|
|
|
295
|
-
cvv_response_code:
|
|
296
|
-
OptionalNullable[CVVResponseCode], PlainValidator(validate_open_enum(False))
|
|
297
|
-
] = UNSET
|
|
310
|
+
cvv_response_code: OptionalNullable[CVVResponseCode] = UNSET
|
|
298
311
|
r"""The response code received from the payment service for the Card Verification Value (CVV). This code is mapped to a standardized Gr4vy CVV response code."""
|
|
299
312
|
|
|
300
|
-
anti_fraud_decision:
|
|
301
|
-
OptionalNullable[AntiFraudDecision], PlainValidator(validate_open_enum(False))
|
|
302
|
-
] = UNSET
|
|
313
|
+
anti_fraud_decision: OptionalNullable[AntiFraudDecision] = UNSET
|
|
303
314
|
r"""The mapped decision received from the anti-fraud service. In case of a review decision this field is not updated once the review is resolved."""
|
|
304
315
|
|
|
305
316
|
cart_items: OptionalNullable[List[CartItem]] = UNSET
|
|
@@ -332,6 +343,9 @@ class Transaction(BaseModel):
|
|
|
332
343
|
voided_at: OptionalNullable[datetime] = UNSET
|
|
333
344
|
r"""The date this transaction was voided at."""
|
|
334
345
|
|
|
346
|
+
canceled_at: OptionalNullable[datetime] = UNSET
|
|
347
|
+
r"""The date this transaction was canceled at."""
|
|
348
|
+
|
|
335
349
|
approval_expires_at: OptionalNullable[datetime] = UNSET
|
|
336
350
|
r"""The date this transaction's approval URL will expire at."""
|
|
337
351
|
|
|
@@ -347,6 +361,33 @@ class Transaction(BaseModel):
|
|
|
347
361
|
installment_count: OptionalNullable[int] = UNSET
|
|
348
362
|
r"""The number of installments for this transaction, if applicable."""
|
|
349
363
|
|
|
364
|
+
session_token: OptionalNullable[str] = UNSET
|
|
365
|
+
r"""A session token that can be used to fetch session data for direct client integrations."""
|
|
366
|
+
|
|
367
|
+
tax_amount: OptionalNullable[int] = UNSET
|
|
368
|
+
r"""The sales tax amount for this transaction, represented as a monetary amount in the smallest currency unit for the given currency, for example `1299` cents to create an authorization for `$12.99`"""
|
|
369
|
+
|
|
370
|
+
merchant_tax_id: OptionalNullable[str] = UNSET
|
|
371
|
+
r"""Merchant tax ID (for example, EIN or VAT number)."""
|
|
372
|
+
|
|
373
|
+
purchase_order_number: OptionalNullable[str] = UNSET
|
|
374
|
+
r"""Invoice number or Purchase Order number."""
|
|
375
|
+
|
|
376
|
+
customer_reference_number: OptionalNullable[str] = UNSET
|
|
377
|
+
r"""Customer code or reference."""
|
|
378
|
+
|
|
379
|
+
amount_includes_tax: OptionalNullable[bool] = UNSET
|
|
380
|
+
r"""Whether the tax is included in the amount."""
|
|
381
|
+
|
|
382
|
+
supplier_order_number: OptionalNullable[str] = UNSET
|
|
383
|
+
r"""The merchant's unique identifier for the sales order or invoice."""
|
|
384
|
+
|
|
385
|
+
duty_amount: OptionalNullable[int] = UNSET
|
|
386
|
+
r"""Total charges for import/export duties."""
|
|
387
|
+
|
|
388
|
+
shipping_amount: OptionalNullable[int] = UNSET
|
|
389
|
+
r"""Total shipping amount."""
|
|
390
|
+
|
|
350
391
|
@model_serializer(mode="wrap")
|
|
351
392
|
def serialize_model(self, handler):
|
|
352
393
|
optional_fields = [
|
|
@@ -381,11 +422,21 @@ class Transaction(BaseModel):
|
|
|
381
422
|
"authorized_at",
|
|
382
423
|
"captured_at",
|
|
383
424
|
"voided_at",
|
|
425
|
+
"canceled_at",
|
|
384
426
|
"approval_expires_at",
|
|
385
427
|
"buyer_approval_timedout_at",
|
|
386
428
|
"recipient",
|
|
387
429
|
"merchant_advice_code",
|
|
388
430
|
"installment_count",
|
|
431
|
+
"session_token",
|
|
432
|
+
"tax_amount",
|
|
433
|
+
"merchant_tax_id",
|
|
434
|
+
"purchase_order_number",
|
|
435
|
+
"customer_reference_number",
|
|
436
|
+
"amount_includes_tax",
|
|
437
|
+
"supplier_order_number",
|
|
438
|
+
"duty_amount",
|
|
439
|
+
"shipping_amount",
|
|
389
440
|
]
|
|
390
441
|
nullable_fields = [
|
|
391
442
|
"settled_currency",
|
|
@@ -416,11 +467,21 @@ class Transaction(BaseModel):
|
|
|
416
467
|
"authorized_at",
|
|
417
468
|
"captured_at",
|
|
418
469
|
"voided_at",
|
|
470
|
+
"canceled_at",
|
|
419
471
|
"approval_expires_at",
|
|
420
472
|
"buyer_approval_timedout_at",
|
|
421
473
|
"recipient",
|
|
422
474
|
"merchant_advice_code",
|
|
423
475
|
"installment_count",
|
|
476
|
+
"session_token",
|
|
477
|
+
"tax_amount",
|
|
478
|
+
"merchant_tax_id",
|
|
479
|
+
"purchase_order_number",
|
|
480
|
+
"customer_reference_number",
|
|
481
|
+
"amount_includes_tax",
|
|
482
|
+
"supplier_order_number",
|
|
483
|
+
"duty_amount",
|
|
484
|
+
"shipping_amount",
|
|
424
485
|
]
|
|
425
486
|
null_default_fields = []
|
|
426
487
|
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .flow import Flow
|
|
5
|
+
from .flowaction import FlowAction
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
from gr4vy.types import BaseModel
|
|
8
|
+
from gr4vy.utils import validate_const
|
|
9
|
+
import pydantic
|
|
10
|
+
from pydantic.functional_validators import AfterValidator
|
|
11
|
+
from typing import Any, Dict, Literal, Optional
|
|
12
|
+
from typing_extensions import Annotated, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class TransactionActionTypedDict(TypedDict):
|
|
16
|
+
id: FlowAction
|
|
17
|
+
flow: Flow
|
|
18
|
+
rule_id: str
|
|
19
|
+
r"""The ID of the rule that triggered this action."""
|
|
20
|
+
created_at: datetime
|
|
21
|
+
r"""The date this action was created at."""
|
|
22
|
+
outcome: Dict[str, Any]
|
|
23
|
+
r"""The outcome of the action."""
|
|
24
|
+
type: Literal["action"]
|
|
25
|
+
r"""Always `action`."""
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class TransactionAction(BaseModel):
|
|
29
|
+
id: FlowAction
|
|
30
|
+
|
|
31
|
+
flow: Flow
|
|
32
|
+
|
|
33
|
+
rule_id: str
|
|
34
|
+
r"""The ID of the rule that triggered this action."""
|
|
35
|
+
|
|
36
|
+
created_at: datetime
|
|
37
|
+
r"""The date this action was created at."""
|
|
38
|
+
|
|
39
|
+
outcome: Dict[str, Any]
|
|
40
|
+
r"""The outcome of the action."""
|
|
41
|
+
|
|
42
|
+
TYPE: Annotated[
|
|
43
|
+
Annotated[
|
|
44
|
+
Optional[Literal["action"]], AfterValidator(validate_const("action"))
|
|
45
|
+
],
|
|
46
|
+
pydantic.Field(alias="type"),
|
|
47
|
+
] = "action"
|
|
48
|
+
r"""Always `action`."""
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .transactionaction import TransactionAction, TransactionActionTypedDict
|
|
5
|
+
from gr4vy.types import BaseModel
|
|
6
|
+
from typing import List
|
|
7
|
+
from typing_extensions import TypedDict
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class TransactionActionsTypedDict(TypedDict):
|
|
11
|
+
items: List[TransactionActionTypedDict]
|
|
12
|
+
r"""The list of actions triggered for a transaction."""
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class TransactionActions(BaseModel):
|
|
16
|
+
items: List[TransactionAction]
|
|
17
|
+
r"""The list of actions triggered for a transaction."""
|