1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
|
# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from stripe._createable_api_resource import CreateableAPIResource
from stripe._deletable_api_resource import DeletableAPIResource
from stripe._request_options import RequestOptions
from stripe._util import class_method_variant, sanitize_id
from typing import ClassVar, List, Optional, cast, overload
from typing_extensions import Literal, NotRequired, Unpack
class EphemeralKey(
CreateableAPIResource["EphemeralKey"],
DeletableAPIResource["EphemeralKey"],
):
OBJECT_NAME: ClassVar[Literal["ephemeral_key"]] = "ephemeral_key"
class DeleteParams(RequestOptions):
expand: NotRequired[List[str]]
"""
Specifies which fields in the response should be expanded.
"""
created: int
"""
Time at which the object was created. Measured in seconds since the Unix epoch.
"""
expires: int
"""
Time at which the key will expire. Measured in seconds since the Unix epoch.
"""
id: str
"""
Unique identifier for the object.
"""
livemode: bool
"""
Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
"""
object: Literal["ephemeral_key"]
"""
String representing the object's type. Objects of the same type share the same value.
"""
secret: Optional[str]
"""
The key's secret. You can use this value to make authorized requests to the Stripe API.
"""
@classmethod
def _cls_delete(
cls, sid: str, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
url = "%s/%s" % (cls.class_url(), sanitize_id(sid))
return cast(
"EphemeralKey",
cls._static_request(
"delete",
url,
params=params,
),
)
@overload
@staticmethod
def delete(
sid: str, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
...
@overload
def delete(
self, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
...
@class_method_variant("_cls_delete")
def delete( # pyright: ignore[reportGeneralTypeIssues]
self, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
return self._request_and_refresh(
"delete",
self.instance_url(),
params=params,
)
@classmethod
async def _cls_delete_async(
cls, sid: str, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
url = "%s/%s" % (cls.class_url(), sanitize_id(sid))
return cast(
"EphemeralKey",
await cls._static_request_async(
"delete",
url,
params=params,
),
)
@overload
@staticmethod
async def delete_async(
sid: str, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
...
@overload
async def delete_async(
self, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
...
@class_method_variant("_cls_delete_async")
async def delete_async( # pyright: ignore[reportGeneralTypeIssues]
self, **params: Unpack["EphemeralKey.DeleteParams"]
) -> "EphemeralKey":
"""
Invalidates a short-lived API key for a given resource.
"""
return await self._request_and_refresh_async(
"delete",
self.instance_url(),
params=params,
)
@classmethod
def create(cls, **params):
if params.get("stripe_version") is None:
raise ValueError(
"stripe_version must be specified to create an ephemeral key"
)
url = cls.class_url()
return cls._static_request(
"post",
url,
params=params,
base_address="api",
)
|