Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Update generated code for beta #1066

Merged
merged 10 commits into from
Oct 5, 2023
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v569
v582
4 changes: 3 additions & 1 deletion stripe/api_resources/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,9 @@
from stripe.api_resources.quote_line import QuoteLine
from stripe.api_resources.quote_phase import QuotePhase
from stripe.api_resources.quote_preview_invoice import QuotePreviewInvoice
from stripe.api_resources.quote_preview_schedule import QuotePreviewSchedule
from stripe.api_resources.quote_preview_subscription_schedule import (
QuotePreviewSubscriptionSchedule,
)
from stripe.api_resources.refund import Refund
from stripe.api_resources.reserve_transaction import ReserveTransaction
from stripe.api_resources.reversal import Reversal
Expand Down
6 changes: 3 additions & 3 deletions stripe/api_resources/financial_connections/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
# flake8: noqa

from stripe.api_resources.financial_connections.account import Account
from stripe.api_resources.financial_connections.account_inferred_balance import (
AccountInferredBalance,
)
from stripe.api_resources.financial_connections.account_owner import (
AccountOwner,
)
from stripe.api_resources.financial_connections.account_ownership import (
AccountOwnership,
)
from stripe.api_resources.financial_connections.inferred_balance import (
InferredBalance,
)
from stripe.api_resources.financial_connections.session import Session
from stripe.api_resources.financial_connections.transaction import Transaction
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from typing_extensions import Literal


class InferredBalance(ListableAPIResource["InferredBalance"]):
class AccountInferredBalance(ListableAPIResource["AccountInferredBalance"]):
"""
A historical balance for the account on a particular day. It may be sourced from a balance snapshot provided by a financial institution, or inferred using transactions data.
"""
Expand All @@ -26,7 +26,7 @@ def list(
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
) -> ListObject["InferredBalance"]:
) -> ListObject["AccountInferredBalance"]:
result = cls._static_request(
"get",
cls.class_url(),
Expand Down
1 change: 1 addition & 0 deletions stripe/api_resources/issuing/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,5 @@
PersonalizationDesign,
)
from stripe.api_resources.issuing.physical_bundle import PhysicalBundle
from stripe.api_resources.issuing.token import Token
from stripe.api_resources.issuing.transaction import Transaction
2 changes: 2 additions & 0 deletions stripe/api_resources/issuing/authorization.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
from stripe.api_resources.balance_transaction import BalanceTransaction
from stripe.api_resources.issuing.card import Card
from stripe.api_resources.issuing.cardholder import Cardholder
from stripe.api_resources.issuing.token import Token
from stripe.api_resources.issuing.transaction import Transaction


Expand Down Expand Up @@ -59,6 +60,7 @@ class Authorization(
pending_request: Optional[StripeObject]
request_history: List[StripeObject]
status: Literal["closed", "pending", "reversed"]
token: Optional[ExpandableField["Token"]]
transactions: List["Transaction"]
treasury: Optional[StripeObject]
verification_data: StripeObject
Expand Down
82 changes: 82 additions & 0 deletions stripe/api_resources/issuing/token.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from __future__ import absolute_import, division, print_function

from stripe.api_resources.abstract import (
ListableAPIResource,
UpdateableAPIResource,
)
from stripe.api_resources.expandable_field import ExpandableField
from stripe.api_resources.list_object import ListObject
from stripe.stripe_object import StripeObject
from typing import Any, Optional, cast
from typing_extensions import Literal
from urllib.parse import quote_plus

from typing_extensions import TYPE_CHECKING

if TYPE_CHECKING:
from stripe.api_resources.issuing.card import Card


class Token(ListableAPIResource["Token"], UpdateableAPIResource["Token"]):
"""
An issuing token object is created when an issued card is added to a digital wallet. As a [card issuer](https://stripe.com/docs/issuing), you can view and manage these tokens through Stripe.
"""

OBJECT_NAME = "issuing.token"
card: ExpandableField["Card"]
created: int
device_fingerprint: Optional[str]
id: str
last4: Optional[str]
livemode: bool
network: Literal["mastercard", "visa"]
network_data: Optional[StripeObject]
network_updated_at: int
object: Literal["issuing.token"]
status: Literal["active", "deleted", "requested", "suspended"]
wallet_provider: Optional[
Literal["apple_pay", "google_pay", "samsung_pay"]
]

@classmethod
def list(
cls,
api_key: Optional[str] = None,
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
) -> ListObject["Token"]:
result = cls._static_request(
"get",
cls.class_url(),
api_key=api_key,
stripe_version=stripe_version,
stripe_account=stripe_account,
params=params,
)
if not isinstance(result, ListObject):

raise TypeError(
"Expected list object from API, got %s"
% (type(result).__name__)
)

return result

@classmethod
def modify(cls, id, **params: Any) -> "Token":
url = "%s/%s" % (cls.class_url(), quote_plus(id))
return cast(
"Token",
cls._static_request("post", url, params=params),
)

@classmethod
def retrieve(
cls, id: str, api_key: Optional[str] = None, **params: Any
) -> "Token":
instance = cls(id, api_key, **params)
instance.refresh()
return instance
2 changes: 2 additions & 0 deletions stripe/api_resources/issuing/transaction.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
from stripe.api_resources.issuing.card import Card
from stripe.api_resources.issuing.cardholder import Cardholder
from stripe.api_resources.issuing.dispute import Dispute
from stripe.api_resources.issuing.token import Token


class Transaction(
Expand Down Expand Up @@ -56,6 +57,7 @@ class Transaction(
network_data: Optional[StripeObject]
object: Literal["issuing.transaction"]
purchase_details: Optional[StripeObject]
token: Optional[ExpandableField["Token"]]
treasury: Optional[StripeObject]
type: Literal["capture", "refund"]
wallet: Optional[Literal["apple_pay", "google_pay", "samsung_pay"]]
Expand Down
15 changes: 14 additions & 1 deletion stripe/api_resources/payment_method_configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,20 @@ class PaymentMethodConfiguration(
UpdateableAPIResource["PaymentMethodConfiguration"],
):
"""
An object detailing payment method configurations.
PaymentMethodConfigurations control which payment methods are displayed to your customers when you don't explicitly specify payment method types. You can have multiple configurations with different sets of payment methods for different scenarios.

There are two types of PaymentMethodConfigurations. Which is used depends on the [charge type](https://stripe.com/docs/connect/charges):

**Direct** configurations apply to payments created on your account, including Connect destination charges, Connect separate charges and transfers, and payments not involving Connect.

**Child** configurations apply to payments created on your connected accounts using direct charges, and charges with the on_behalf_of parameter.

Child configurations have a `parent` that sets default values and controls which settings connected accounts may override. You can specify a parent ID at payment time, and Stripe will automatically resolve the connected account's associated child configuration. Parent configurations are [managed in the dashboard](https://dashboard.stripe.com/settings/payment_methods/connected_accounts) and are not available in this API.

Related guides:
- [Payment Method Configurations API](https://stripe.com/docs/connect/payment-method-configurations)
- [Multiple payment method configurations on dynamic payment methods](https://stripe.com/docs/payments/multiple-payment-method-configs)
- [Multiple configurations for your Connect accounts](https://stripe.com/docs/connect/multiple-payment-method-configurations)
"""

OBJECT_NAME = "payment_method_configuration"
Expand Down
127 changes: 62 additions & 65 deletions stripe/api_resources/quote.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ class Quote(
"""

OBJECT_NAME = "quote"
allow_backdated_lines: Optional[bool]
amount_subtotal: int
amount_total: int
application: Optional[ExpandableField["Application"]]
Expand Down Expand Up @@ -167,39 +168,6 @@ def create(
),
)

@classmethod
def _cls_draft_quote(
cls,
quote: str,
api_key: Optional[str] = None,
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
):
return cls._static_request(
"post",
"/v1/quotes/{quote}/mark_draft".format(
quote=util.sanitize_id(quote)
),
api_key=api_key,
stripe_version=stripe_version,
stripe_account=stripe_account,
params=params,
)

@util.class_method_variant("_cls_draft_quote")
def draft_quote(
self, idempotency_key: Optional[str] = None, **params: Any
):
return self._request(
"post",
"/v1/quotes/{quote}/mark_draft".format(
quote=util.sanitize_id(self.get("id"))
),
idempotency_key=idempotency_key,
params=params,
)

@classmethod
def _cls_finalize_quote(
cls,
Expand Down Expand Up @@ -354,85 +322,114 @@ def list_lines(self, idempotency_key: Optional[str] = None, **params: Any):
)

@classmethod
def _cls_mark_stale_quote(
def _cls_list_preview_invoice_lines(
cls,
quote: str,
preview_invoice: str,
api_key: Optional[str] = None,
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
):
return cls._static_request(
"post",
"/v1/quotes/{quote}/mark_stale".format(
quote=util.sanitize_id(quote)
"get",
"/v1/quotes/{quote}/preview_invoices/{preview_invoice}/lines".format(
quote=util.sanitize_id(quote),
preview_invoice=util.sanitize_id(preview_invoice),
),
api_key=api_key,
stripe_version=stripe_version,
stripe_account=stripe_account,
params=params,
)

@util.class_method_variant("_cls_mark_stale_quote")
def mark_stale_quote(
self, idempotency_key: Optional[str] = None, **params: Any
@util.class_method_variant("_cls_list_preview_invoice_lines")
def list_preview_invoice_lines(
self,
preview_invoice: str,
idempotency_key: Optional[str] = None,
**params: Any
):
return self._request(
"post",
"/v1/quotes/{quote}/mark_stale".format(
quote=util.sanitize_id(self.get("id"))
"get",
"/v1/quotes/{quote}/preview_invoices/{preview_invoice}/lines".format(
quote=util.sanitize_id(self.get("id")),
preview_invoice=util.sanitize_id(preview_invoice),
),
idempotency_key=idempotency_key,
params=params,
)

@classmethod
def modify(cls, id, **params: Any) -> "Quote":
url = "%s/%s" % (cls.class_url(), quote_plus(id))
return cast(
"Quote",
cls._static_request("post", url, params=params),
def _cls_mark_draft(
cls,
quote: str,
api_key: Optional[str] = None,
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
):
return cls._static_request(
"post",
"/v1/quotes/{quote}/mark_draft".format(
quote=util.sanitize_id(quote)
),
api_key=api_key,
stripe_version=stripe_version,
stripe_account=stripe_account,
params=params,
)

@util.class_method_variant("_cls_mark_draft")
def mark_draft(self, idempotency_key: Optional[str] = None, **params: Any):
return self._request(
"post",
"/v1/quotes/{quote}/mark_draft".format(
quote=util.sanitize_id(self.get("id"))
),
idempotency_key=idempotency_key,
params=params,
)

@classmethod
def _cls_preview_invoice_lines(
def _cls_mark_stale(
cls,
quote: str,
preview_invoice: str,
api_key: Optional[str] = None,
stripe_version: Optional[str] = None,
stripe_account: Optional[str] = None,
**params: Any
):
return cls._static_request(
"get",
"/v1/quotes/{quote}/preview_invoices/{preview_invoice}/lines".format(
quote=util.sanitize_id(quote),
preview_invoice=util.sanitize_id(preview_invoice),
"post",
"/v1/quotes/{quote}/mark_stale".format(
quote=util.sanitize_id(quote)
),
api_key=api_key,
stripe_version=stripe_version,
stripe_account=stripe_account,
params=params,
)

@util.class_method_variant("_cls_preview_invoice_lines")
def preview_invoice_lines(
self,
preview_invoice: str,
idempotency_key: Optional[str] = None,
**params: Any
):
@util.class_method_variant("_cls_mark_stale")
def mark_stale(self, idempotency_key: Optional[str] = None, **params: Any):
return self._request(
"get",
"/v1/quotes/{quote}/preview_invoices/{preview_invoice}/lines".format(
quote=util.sanitize_id(self.get("id")),
preview_invoice=util.sanitize_id(preview_invoice),
"post",
"/v1/quotes/{quote}/mark_stale".format(
quote=util.sanitize_id(self.get("id"))
),
idempotency_key=idempotency_key,
params=params,
)

@classmethod
def modify(cls, id, **params: Any) -> "Quote":
url = "%s/%s" % (cls.class_url(), quote_plus(id))
return cast(
"Quote",
cls._static_request("post", url, params=params),
)

@classmethod
def _cls_reestimate(
cls,
Expand Down
Loading