From 3c46a098fe1079196e5f265b479eb1349993c0fe Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 9 Mar 2026 22:29:07 +0000 Subject: [PATCH 1/2] feat(api): api update --- .stats.yml | 4 +- src/increase/types/card_payment.py | 108 ++++++++++++++--------- src/increase/types/real_time_decision.py | 108 ++++++++++++++--------- 3 files changed, 136 insertions(+), 84 deletions(-) diff --git a/.stats.yml b/.stats.yml index aa5bad04..40873533 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 234 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-d73ee438cf15ca739d3ac64cc009b613f9e17ed76a31f8cc95f1a9968196bde1.yml -openapi_spec_hash: 933ce5facdc1d8a41ed063d925846de3 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/increase%2Fincrease-b42ffa447aa14da70d972676b1d5ad0c2720ff4e33a483037b2b1bb51190a69f.yml +openapi_spec_hash: f2a5c5e804880a8e8d13f5f32ca264a1 config_hash: b7ec7f54fa76c1f8bde7a548710a1d38 diff --git a/src/increase/types/card_payment.py b/src/increase/types/card_payment.py index bd077a26..22ce6f1d 100644 --- a/src/increase/types/card_payment.py +++ b/src/increase/types/card_payment.py @@ -17,6 +17,9 @@ "ElementCardAuthenticationDeviceChannel", "ElementCardAuthenticationDeviceChannelBrowser", "ElementCardAuthenticationDeviceChannelMerchantInitiated", + "ElementCardAuthenticationMessageCategory", + "ElementCardAuthenticationMessageCategoryNonPayment", + "ElementCardAuthenticationMessageCategoryPayment", "ElementCardAuthorization", "ElementCardAuthorizationAdditionalAmounts", "ElementCardAuthorizationAdditionalAmountsClinic", @@ -299,6 +302,67 @@ class ElementCardAuthenticationDeviceChannel(BaseModel): """Fields specific to merchant initiated transactions.""" +class ElementCardAuthenticationMessageCategoryNonPayment(BaseModel): + """Fields specific to non-payment authentication attempts.""" + + pass + + +class ElementCardAuthenticationMessageCategoryPayment(BaseModel): + """Fields specific to payment authentication attempts.""" + + purchase_amount: int + """The purchase amount in minor units.""" + + purchase_amount_cardholder_estimated: Optional[int] = None + """ + The purchase amount in the cardholder's currency (i.e., USD) estimated using + daily conversion rates from the card network. + """ + + purchase_currency: str + """ + The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the + authentication attempt's purchase currency. + """ + + transaction_type: Optional[ + Literal[ + "goods_service_purchase", + "check_acceptance", + "account_funding", + "quasi_cash_transaction", + "prepaid_activation_and_load", + ] + ] = None + """The type of transaction being authenticated. + + - `goods_service_purchase` - Purchase of goods or services. + - `check_acceptance` - Check acceptance. + - `account_funding` - Account funding. + - `quasi_cash_transaction` - Quasi-cash transaction. + - `prepaid_activation_and_load` - Prepaid activation and load. + """ + + +class ElementCardAuthenticationMessageCategory(BaseModel): + """The message category of the card authentication attempt.""" + + category: Literal["payment_authentication", "non_payment_authentication"] + """The category of the card authentication attempt. + + - `payment_authentication` - The authentication attempt is for a payment. + - `non_payment_authentication` - The authentication attempt is not for a + payment. + """ + + non_payment: Optional[ElementCardAuthenticationMessageCategoryNonPayment] = None + """Fields specific to non-payment authentication attempts.""" + + payment: Optional[ElementCardAuthenticationMessageCategoryPayment] = None + """Fields specific to payment authentication attempts.""" + + class ElementCardAuthentication(BaseModel): """A Card Authentication object. @@ -368,14 +432,6 @@ class ElementCardAuthentication(BaseModel): cardholder_name: Optional[str] = None """The name of the cardholder.""" - category: Optional[Literal["payment_authentication", "non_payment_authentication"]] = None - """The category of the card authentication attempt. - - - `payment_authentication` - The authentication attempt is for a payment. - - `non_payment_authentication` - The authentication attempt is not for a - payment. - """ - challenge: Optional[ElementCardAuthenticationChallenge] = None """Details about the challenge, if one was requested.""" @@ -432,27 +488,15 @@ class ElementCardAuthentication(BaseModel): merchant_name: Optional[str] = None """The name of the merchant.""" + message_category: ElementCardAuthenticationMessageCategory + """The message category of the card authentication attempt.""" + prior_authenticated_card_payment_id: Optional[str] = None """ The ID of a prior Card Authentication that the requestor used to authenticate this cardholder for a previous transaction. """ - purchase_amount: Optional[int] = None - """The purchase amount in minor units.""" - - purchase_amount_cardholder_estimated: Optional[int] = None - """ - The purchase amount in the cardholder's currency (i.e., USD) estimated using - daily conversion rates from the card network. - """ - - purchase_currency: Optional[str] = None - """ - The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the - authentication attempt's purchase currency. - """ - real_time_decision_id: Optional[str] = None """ The identifier of the Real-Time Decision sent to approve or decline this @@ -578,24 +622,6 @@ class ElementCardAuthentication(BaseModel): attempt for this transaction. """ - transaction_type: Optional[ - Literal[ - "goods_service_purchase", - "check_acceptance", - "account_funding", - "quasi_cash_transaction", - "prepaid_activation_and_load", - ] - ] = None - """The type of transaction being authenticated. - - - `goods_service_purchase` - Purchase of goods or services. - - `check_acceptance` - Check acceptance. - - `account_funding` - Account funding. - - `quasi_cash_transaction` - Quasi-cash transaction. - - `prepaid_activation_and_load` - Prepaid activation and load. - """ - type: Literal["card_authentication"] """A constant representing the object's type. diff --git a/src/increase/types/real_time_decision.py b/src/increase/types/real_time_decision.py index ca552fbc..59b05d2b 100644 --- a/src/increase/types/real_time_decision.py +++ b/src/increase/types/real_time_decision.py @@ -14,6 +14,9 @@ "CardAuthenticationDeviceChannel", "CardAuthenticationDeviceChannelBrowser", "CardAuthenticationDeviceChannelMerchantInitiated", + "CardAuthenticationMessageCategory", + "CardAuthenticationMessageCategoryNonPayment", + "CardAuthenticationMessageCategoryPayment", "CardAuthenticationChallenge", "CardAuthorization", "CardAuthorizationAdditionalAmounts", @@ -157,6 +160,67 @@ class CardAuthenticationDeviceChannel(BaseModel): """Fields specific to merchant initiated transactions.""" +class CardAuthenticationMessageCategoryNonPayment(BaseModel): + """Fields specific to non-payment authentication attempts.""" + + pass + + +class CardAuthenticationMessageCategoryPayment(BaseModel): + """Fields specific to payment authentication attempts.""" + + purchase_amount: int + """The purchase amount in minor units.""" + + purchase_amount_cardholder_estimated: Optional[int] = None + """ + The purchase amount in the cardholder's currency (i.e., USD) estimated using + daily conversion rates from the card network. + """ + + purchase_currency: str + """ + The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the + authentication attempt's purchase currency. + """ + + transaction_type: Optional[ + Literal[ + "goods_service_purchase", + "check_acceptance", + "account_funding", + "quasi_cash_transaction", + "prepaid_activation_and_load", + ] + ] = None + """The type of transaction being authenticated. + + - `goods_service_purchase` - Purchase of goods or services. + - `check_acceptance` - Check acceptance. + - `account_funding` - Account funding. + - `quasi_cash_transaction` - Quasi-cash transaction. + - `prepaid_activation_and_load` - Prepaid activation and load. + """ + + +class CardAuthenticationMessageCategory(BaseModel): + """The message category of the card authentication attempt.""" + + category: Literal["payment_authentication", "non_payment_authentication"] + """The category of the card authentication attempt. + + - `payment_authentication` - The authentication attempt is for a payment. + - `non_payment_authentication` - The authentication attempt is not for a + payment. + """ + + non_payment: Optional[CardAuthenticationMessageCategoryNonPayment] = None + """Fields specific to non-payment authentication attempts.""" + + payment: Optional[CardAuthenticationMessageCategoryPayment] = None + """Fields specific to payment authentication attempts.""" + + class CardAuthentication(BaseModel): """Fields related to a 3DS authentication attempt.""" @@ -220,14 +284,6 @@ class CardAuthentication(BaseModel): cardholder_name: Optional[str] = None """The name of the cardholder.""" - category: Optional[Literal["payment_authentication", "non_payment_authentication"]] = None - """The category of the card authentication attempt. - - - `payment_authentication` - The authentication attempt is for a payment. - - `non_payment_authentication` - The authentication attempt is not for a - payment. - """ - decision: Optional[Literal["approve", "challenge", "deny"]] = None """Whether or not the authentication attempt was approved. @@ -264,27 +320,15 @@ class CardAuthentication(BaseModel): merchant_name: Optional[str] = None """The name of the merchant.""" + message_category: CardAuthenticationMessageCategory + """The message category of the card authentication attempt.""" + prior_authenticated_card_payment_id: Optional[str] = None """ The ID of a prior Card Authentication that the requestor used to authenticate this cardholder for a previous transaction. """ - purchase_amount: Optional[int] = None - """The purchase amount in minor units.""" - - purchase_amount_cardholder_estimated: Optional[int] = None - """ - The purchase amount in the cardholder's currency (i.e., USD) estimated using - daily conversion rates from the card network. - """ - - purchase_currency: Optional[str] = None - """ - The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the - authentication attempt's purchase currency. - """ - requestor_authentication_indicator: Optional[ Literal[ "payment_transaction", @@ -376,24 +420,6 @@ class CardAuthentication(BaseModel): attempt for this transaction. """ - transaction_type: Optional[ - Literal[ - "goods_service_purchase", - "check_acceptance", - "account_funding", - "quasi_cash_transaction", - "prepaid_activation_and_load", - ] - ] = None - """The type of transaction being authenticated. - - - `goods_service_purchase` - Purchase of goods or services. - - `check_acceptance` - Check acceptance. - - `account_funding` - Account funding. - - `quasi_cash_transaction` - Quasi-cash transaction. - - `prepaid_activation_and_load` - Prepaid activation and load. - """ - upcoming_card_payment_id: str """The identifier of the Card Payment this authentication attempt will belong to. From 056f4333143a734f6499cd04c8a86116e9feb783 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 9 Mar 2026 22:29:32 +0000 Subject: [PATCH 2/2] release: 0.427.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ pyproject.toml | 2 +- src/increase/_version.py | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 304196ec..35197252 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.426.0" + ".": "0.427.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 41cc5299..13ee7286 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.427.0 (2026-03-09) + +Full Changelog: [v0.426.0...v0.427.0](https://github.com/Increase/increase-python/compare/v0.426.0...v0.427.0) + +### Features + +* **api:** api update ([3c46a09](https://github.com/Increase/increase-python/commit/3c46a098fe1079196e5f265b479eb1349993c0fe)) + ## 0.426.0 (2026-03-09) Full Changelog: [v0.425.0...v0.426.0](https://github.com/Increase/increase-python/compare/v0.425.0...v0.426.0) diff --git a/pyproject.toml b/pyproject.toml index d6c51e58..1d3d70e9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "increase" -version = "0.426.0" +version = "0.427.0" description = "The official Python library for the increase API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/increase/_version.py b/src/increase/_version.py index 569add88..2a0086a3 100644 --- a/src/increase/_version.py +++ b/src/increase/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "increase" -__version__ = "0.426.0" # x-release-please-version +__version__ = "0.427.0" # x-release-please-version