payi 0.1.0a32__py3-none-any.whl → 0.1.0a34__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.
Potentially problematic release.
This version of payi might be problematic. Click here for more details.
- payi/_client.py +63 -68
- payi/_models.py +3 -0
- payi/_response.py +10 -10
- payi/_utils/__init__.py +1 -0
- payi/_utils/_typing.py +30 -1
- payi/_version.py +1 -1
- payi/lib/helpers.py +8 -8
- payi/resources/__init__.py +13 -13
- payi/resources/billing_models.py +4 -4
- payi/resources/experiences/properties.py +3 -3
- payi/resources/ingest.py +47 -19
- payi/resources/{budgets → limits}/__init__.py +13 -13
- payi/resources/{budgets/budgets.py → limits/limits.py} +213 -196
- payi/resources/{budgets → limits}/tags.py +68 -68
- payi/resources/requests/properties.py +3 -3
- payi/types/__init__.py +8 -6
- payi/types/billing_model.py +1 -1
- payi/types/billing_model_create_params.py +1 -1
- payi/types/billing_model_update_params.py +1 -1
- payi/types/category_resource_response.py +4 -0
- payi/types/experiences/property_create_params.py +2 -2
- payi/types/ingest_event_param.py +16 -2
- payi/types/ingest_response.py +7 -7
- payi/types/ingest_units_params.py +16 -2
- payi/types/{budget_create_params.py → limit_create_params.py} +7 -9
- payi/types/limit_history_response.py +34 -0
- payi/types/{budget_list_params.py → limit_list_params.py} +3 -3
- payi/types/limit_reset_params.py +16 -0
- payi/types/{budget_response.py → limit_response.py} +11 -13
- payi/types/{budget_update_params.py → limit_update_params.py} +3 -3
- payi/types/{budgets → limits}/__init__.py +1 -1
- payi/types/{budgets/budget_tags.py → limits/limit_tags.py} +2 -2
- payi/types/{budgets → limits}/tag_create_params.py +1 -1
- payi/types/{budgets → limits}/tag_create_response.py +2 -2
- payi/types/{budgets → limits}/tag_delete_response.py +2 -2
- payi/types/{budgets → limits}/tag_list_response.py +2 -2
- payi/types/{budgets → limits}/tag_remove_params.py +1 -1
- payi/types/{budgets → limits}/tag_remove_response.py +2 -2
- payi/types/{budgets → limits}/tag_update_params.py +1 -1
- payi/types/{budgets → limits}/tag_update_response.py +2 -2
- payi/types/{paged_budget_list.py → paged_limit_list.py} +9 -11
- payi/types/requests/property_create_params.py +2 -2
- payi/types/shared/__init__.py +3 -0
- payi/types/shared/evaluation_response.py +11 -0
- {payi-0.1.0a32.dist-info → payi-0.1.0a34.dist-info}/METADATA +33 -22
- {payi-0.1.0a32.dist-info → payi-0.1.0a34.dist-info}/RECORD +48 -45
- {payi-0.1.0a32.dist-info → payi-0.1.0a34.dist-info}/WHEEL +1 -1
- {payi-0.1.0a32.dist-info → payi-0.1.0a34.dist-info}/licenses/LICENSE +1 -1
- payi/types/budget_history_response.py +0 -38
|
@@ -4,11 +4,11 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from typing_extensions import TypedDict
|
|
6
6
|
|
|
7
|
-
__all__ = ["
|
|
7
|
+
__all__ = ["LimitListParams"]
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
11
|
-
|
|
10
|
+
class LimitListParams(TypedDict, total=False):
|
|
11
|
+
limit_name: str
|
|
12
12
|
|
|
13
13
|
page_number: int
|
|
14
14
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Union
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
from typing_extensions import Annotated, TypedDict
|
|
8
|
+
|
|
9
|
+
from .._utils import PropertyInfo
|
|
10
|
+
|
|
11
|
+
__all__ = ["LimitResetParams"]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class LimitResetParams(TypedDict, total=False):
|
|
15
|
+
reset_date: Annotated[Union[str, datetime], PropertyInfo(alias="resetDate", format="iso8601")]
|
|
16
|
+
"""Effective reset date"""
|
|
@@ -7,35 +7,33 @@ from typing_extensions import Literal
|
|
|
7
7
|
from .._models import BaseModel
|
|
8
8
|
from .total_cost_data import TotalCostData
|
|
9
9
|
|
|
10
|
-
__all__ = ["
|
|
10
|
+
__all__ = ["LimitResponse", "Limit"]
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
class
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
budget_creation_timestamp: datetime
|
|
13
|
+
class Limit(BaseModel):
|
|
14
|
+
currency: Literal["usd"]
|
|
17
15
|
|
|
18
|
-
|
|
16
|
+
limit_creation_timestamp: datetime
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
limit_id: str
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
limit_name: str
|
|
23
21
|
|
|
24
|
-
|
|
22
|
+
limit_type: Literal["block", "allow"]
|
|
25
23
|
|
|
26
|
-
|
|
24
|
+
limit_update_timestamp: datetime
|
|
27
25
|
|
|
28
26
|
max: float
|
|
29
27
|
|
|
30
28
|
totals: TotalCostData
|
|
31
29
|
|
|
32
|
-
|
|
30
|
+
limit_tags: Optional[List[str]] = None
|
|
33
31
|
|
|
34
32
|
threshold: Optional[float] = None
|
|
35
33
|
|
|
36
34
|
|
|
37
|
-
class
|
|
38
|
-
|
|
35
|
+
class LimitResponse(BaseModel):
|
|
36
|
+
limit: Limit
|
|
39
37
|
|
|
40
38
|
request_id: str
|
|
41
39
|
|
|
@@ -5,10 +5,10 @@ from __future__ import annotations
|
|
|
5
5
|
from typing import Optional
|
|
6
6
|
from typing_extensions import TypedDict
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["LimitUpdateParams"]
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
12
|
-
|
|
11
|
+
class LimitUpdateParams(TypedDict, total=False):
|
|
12
|
+
limit_name: Optional[str]
|
|
13
13
|
|
|
14
14
|
max: Optional[float]
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from .
|
|
5
|
+
from .limit_tags import LimitTags as LimitTags
|
|
6
6
|
from .tag_create_params import TagCreateParams as TagCreateParams
|
|
7
7
|
from .tag_list_response import TagListResponse as TagListResponse
|
|
8
8
|
from .tag_remove_params import TagRemoveParams as TagRemoveParams
|
|
@@ -5,10 +5,10 @@ from datetime import datetime
|
|
|
5
5
|
|
|
6
6
|
from ..._models import BaseModel
|
|
7
7
|
|
|
8
|
-
__all__ = ["
|
|
8
|
+
__all__ = ["LimitTags"]
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class LimitTags(BaseModel):
|
|
12
12
|
created_on: Optional[datetime] = None
|
|
13
13
|
|
|
14
14
|
tag_id: Optional[int] = None
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from .
|
|
6
|
+
from .limit_tags import LimitTags
|
|
7
7
|
|
|
8
8
|
__all__ = ["TagCreateResponse"]
|
|
9
9
|
|
|
10
|
-
TagCreateResponse: TypeAlias = List[
|
|
10
|
+
TagCreateResponse: TypeAlias = List[LimitTags]
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from .
|
|
6
|
+
from .limit_tags import LimitTags
|
|
7
7
|
|
|
8
8
|
__all__ = ["TagDeleteResponse"]
|
|
9
9
|
|
|
10
|
-
TagDeleteResponse: TypeAlias = List[
|
|
10
|
+
TagDeleteResponse: TypeAlias = List[LimitTags]
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from .
|
|
6
|
+
from .limit_tags import LimitTags
|
|
7
7
|
|
|
8
8
|
__all__ = ["TagListResponse"]
|
|
9
9
|
|
|
10
|
-
TagListResponse: TypeAlias = List[
|
|
10
|
+
TagListResponse: TypeAlias = List[LimitTags]
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from .
|
|
6
|
+
from .limit_tags import LimitTags
|
|
7
7
|
|
|
8
8
|
__all__ = ["TagRemoveResponse"]
|
|
9
9
|
|
|
10
|
-
TagRemoveResponse: TypeAlias = List[
|
|
10
|
+
TagRemoveResponse: TypeAlias = List[LimitTags]
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
from typing import List
|
|
4
4
|
from typing_extensions import TypeAlias
|
|
5
5
|
|
|
6
|
-
from .
|
|
6
|
+
from .limit_tags import LimitTags
|
|
7
7
|
|
|
8
8
|
__all__ = ["TagUpdateResponse"]
|
|
9
9
|
|
|
10
|
-
TagUpdateResponse: TypeAlias = List[
|
|
10
|
+
TagUpdateResponse: TypeAlias = List[LimitTags]
|
|
@@ -9,34 +9,32 @@ from pydantic import Field as FieldInfo
|
|
|
9
9
|
from .._models import BaseModel
|
|
10
10
|
from .total_cost_data import TotalCostData
|
|
11
11
|
|
|
12
|
-
__all__ = ["
|
|
12
|
+
__all__ = ["PagedLimitList", "Item"]
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
class Item(BaseModel):
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
budget_creation_timestamp: datetime
|
|
16
|
+
currency: Literal["usd"]
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
limit_creation_timestamp: datetime
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
limit_id: str
|
|
23
21
|
|
|
24
|
-
|
|
22
|
+
limit_name: str
|
|
25
23
|
|
|
26
|
-
|
|
24
|
+
limit_type: Literal["block", "allow"]
|
|
27
25
|
|
|
28
|
-
|
|
26
|
+
limit_update_timestamp: datetime
|
|
29
27
|
|
|
30
28
|
max: float
|
|
31
29
|
|
|
32
30
|
totals: TotalCostData
|
|
33
31
|
|
|
34
|
-
|
|
32
|
+
limit_tags: Optional[List[str]] = None
|
|
35
33
|
|
|
36
34
|
threshold: Optional[float] = None
|
|
37
35
|
|
|
38
36
|
|
|
39
|
-
class
|
|
37
|
+
class PagedLimitList(BaseModel):
|
|
40
38
|
current_page: Optional[int] = FieldInfo(alias="currentPage", default=None)
|
|
41
39
|
|
|
42
40
|
has_next_page: Optional[bool] = FieldInfo(alias="hasNextPage", default=None)
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Dict
|
|
5
|
+
from typing import Dict
|
|
6
6
|
from typing_extensions import Required, TypedDict
|
|
7
7
|
|
|
8
8
|
__all__ = ["PropertyCreateParams"]
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class PropertyCreateParams(TypedDict, total=False):
|
|
12
|
-
properties: Required[
|
|
12
|
+
properties: Required[Dict[str, str]]
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: payi
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.0a34
|
|
4
4
|
Summary: The official Python library for the payi API
|
|
5
5
|
Project-URL: Homepage, https://github.com/Pay-i/pay-i-python
|
|
6
6
|
Project-URL: Repository, https://github.com/Pay-i/pay-i-python
|
|
7
7
|
Author-email: Payi <support@payi.com>
|
|
8
|
-
License: Apache-2.0
|
|
8
|
+
License-Expression: Apache-2.0
|
|
9
|
+
License-File: LICENSE
|
|
9
10
|
Classifier: Intended Audience :: Developers
|
|
10
11
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
11
12
|
Classifier: Operating System :: MacOS
|
|
@@ -26,7 +27,7 @@ Requires-Dist: distro<2,>=1.7.0
|
|
|
26
27
|
Requires-Dist: httpx<1,>=0.23.0
|
|
27
28
|
Requires-Dist: pydantic<3,>=1.9.0
|
|
28
29
|
Requires-Dist: sniffio
|
|
29
|
-
Requires-Dist: typing-extensions<5,>=4.
|
|
30
|
+
Requires-Dist: typing-extensions<5,>=4.10
|
|
30
31
|
Description-Content-Type: text/markdown
|
|
31
32
|
|
|
32
33
|
# Payi Python API library
|
|
@@ -62,11 +63,11 @@ client = Payi(
|
|
|
62
63
|
api_key=os.environ.get("PAYI_API_KEY"), # This is the default and can be omitted
|
|
63
64
|
)
|
|
64
65
|
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
limit_response = client.limits.create(
|
|
67
|
+
limit_name="x",
|
|
67
68
|
max=0,
|
|
68
69
|
)
|
|
69
|
-
print(
|
|
70
|
+
print(limit_response.request_id)
|
|
70
71
|
```
|
|
71
72
|
|
|
72
73
|
While you can provide an `api_key` keyword argument,
|
|
@@ -89,11 +90,11 @@ client = AsyncPayi(
|
|
|
89
90
|
|
|
90
91
|
|
|
91
92
|
async def main() -> None:
|
|
92
|
-
|
|
93
|
-
|
|
93
|
+
limit_response = await client.limits.create(
|
|
94
|
+
limit_name="x",
|
|
94
95
|
max=0,
|
|
95
96
|
)
|
|
96
|
-
print(
|
|
97
|
+
print(limit_response.request_id)
|
|
97
98
|
|
|
98
99
|
|
|
99
100
|
asyncio.run(main())
|
|
@@ -126,8 +127,8 @@ from payi import Payi
|
|
|
126
127
|
client = Payi()
|
|
127
128
|
|
|
128
129
|
try:
|
|
129
|
-
client.
|
|
130
|
-
|
|
130
|
+
client.limits.create(
|
|
131
|
+
limit_name="x",
|
|
131
132
|
max=0,
|
|
132
133
|
)
|
|
133
134
|
except payi.APIConnectionError as e:
|
|
@@ -172,8 +173,8 @@ client = Payi(
|
|
|
172
173
|
)
|
|
173
174
|
|
|
174
175
|
# Or, configure per-request:
|
|
175
|
-
client.with_options(max_retries=5).
|
|
176
|
-
|
|
176
|
+
client.with_options(max_retries=5).limits.create(
|
|
177
|
+
limit_name="x",
|
|
177
178
|
max=0,
|
|
178
179
|
)
|
|
179
180
|
```
|
|
@@ -198,8 +199,8 @@ client = Payi(
|
|
|
198
199
|
)
|
|
199
200
|
|
|
200
201
|
# Override per-request:
|
|
201
|
-
client.with_options(timeout=5.0).
|
|
202
|
-
|
|
202
|
+
client.with_options(timeout=5.0).limits.create(
|
|
203
|
+
limit_name="x",
|
|
203
204
|
max=0,
|
|
204
205
|
)
|
|
205
206
|
```
|
|
@@ -242,14 +243,14 @@ The "raw" Response object can be accessed by prefixing `.with_raw_response.` to
|
|
|
242
243
|
from payi import Payi
|
|
243
244
|
|
|
244
245
|
client = Payi()
|
|
245
|
-
response = client.
|
|
246
|
-
|
|
246
|
+
response = client.limits.with_raw_response.create(
|
|
247
|
+
limit_name="x",
|
|
247
248
|
max=0,
|
|
248
249
|
)
|
|
249
250
|
print(response.headers.get('X-My-Header'))
|
|
250
251
|
|
|
251
|
-
|
|
252
|
-
print(
|
|
252
|
+
limit = response.parse() # get the object that `limits.create()` would have returned
|
|
253
|
+
print(limit.request_id)
|
|
253
254
|
```
|
|
254
255
|
|
|
255
256
|
These methods return an [`APIResponse`](https://github.com/Pay-i/pay-i-python/tree/main/src/payi/_response.py) object.
|
|
@@ -263,8 +264,8 @@ The above interface eagerly reads the full response body when you make the reque
|
|
|
263
264
|
To stream the response body, use `.with_streaming_response` instead, which requires a context manager and only reads the response body once you call `.read()`, `.text()`, `.json()`, `.iter_bytes()`, `.iter_text()`, `.iter_lines()` or `.parse()`. In the async client, these are async methods.
|
|
264
265
|
|
|
265
266
|
```python
|
|
266
|
-
with client.
|
|
267
|
-
|
|
267
|
+
with client.limits.with_streaming_response.create(
|
|
268
|
+
limit_name="x",
|
|
268
269
|
max=0,
|
|
269
270
|
) as response:
|
|
270
271
|
print(response.headers.get("X-My-Header"))
|
|
@@ -342,6 +343,16 @@ client.with_options(http_client=DefaultHttpxClient(...))
|
|
|
342
343
|
|
|
343
344
|
By default the library closes underlying HTTP connections whenever the client is [garbage collected](https://docs.python.org/3/reference/datamodel.html#object.__del__). You can manually close the client using the `.close()` method if desired, or with a context manager that closes when exiting.
|
|
344
345
|
|
|
346
|
+
```py
|
|
347
|
+
from payi import Payi
|
|
348
|
+
|
|
349
|
+
with Payi() as client:
|
|
350
|
+
# make requests here
|
|
351
|
+
...
|
|
352
|
+
|
|
353
|
+
# HTTP client is now closed
|
|
354
|
+
```
|
|
355
|
+
|
|
345
356
|
## Versioning
|
|
346
357
|
|
|
347
358
|
This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backwards-incompatible changes may be released as minor versions:
|
|
@@ -1,89 +1,80 @@
|
|
|
1
1
|
payi/__init__.py,sha256=_eeZx9fx2Wp81adXh7qrpkmXCso7TiRSvIlLkQ0sQhY,2399
|
|
2
2
|
payi/_base_client.py,sha256=s3JMTpYuiwtp-jn6iB79v4iuCc29C1Rr38el1IXMtHs,68034
|
|
3
|
-
payi/_client.py,sha256=
|
|
3
|
+
payi/_client.py,sha256=aUtMEmV02nTs3_pYYAR-OchCkofUHeXhhRs43tyDHLE,18760
|
|
4
4
|
payi/_compat.py,sha256=VWemUKbj6DDkQ-O4baSpHVLJafotzeXmCQGJugfVTIw,6580
|
|
5
5
|
payi/_constants.py,sha256=JE8kyZa2Q4NK_i4fO--8siEYTzeHnT0fYbOFDgDP4uk,464
|
|
6
6
|
payi/_exceptions.py,sha256=ItygKNrNXIVY0H6LsGVZvFuAHB3Vtm_VZXmWzCnpHy0,3216
|
|
7
7
|
payi/_files.py,sha256=mf4dOgL4b0ryyZlbqLhggD3GVgDf6XxdGFAgce01ugE,3549
|
|
8
|
-
payi/_models.py,sha256=
|
|
8
|
+
payi/_models.py,sha256=iumFIitiWZTGITgF2nwOmEPIJGIEeJaUXhDlpaSN9Wg,28589
|
|
9
9
|
payi/_qs.py,sha256=AOkSz4rHtK4YI3ZU_kzea-zpwBUgEY8WniGmTPyEimc,4846
|
|
10
10
|
payi/_resource.py,sha256=j2jIkTr8OIC8sU6-05nxSaCyj4MaFlbZrwlyg4_xJos,1088
|
|
11
|
-
payi/_response.py,sha256=
|
|
11
|
+
payi/_response.py,sha256=FnusjH7NI-PDlV8Tzwho9X71ua7kSfJbtio3WET4hQQ,28653
|
|
12
12
|
payi/_streaming.py,sha256=Z_wIyo206T6Jqh2rolFg2VXZgX24PahLmpURp0-NssU,10092
|
|
13
13
|
payi/_types.py,sha256=2mbMK86K3W1aMTW7sOGQ-VND6-A2IuXKm8p4sYFztBU,6141
|
|
14
|
-
payi/_version.py,sha256=
|
|
14
|
+
payi/_version.py,sha256=M4dvaz5wNwzNWCou3S_apqSjbmVYxS-72bf6CzU6-84,165
|
|
15
15
|
payi/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
payi/_utils/__init__.py,sha256=
|
|
16
|
+
payi/_utils/__init__.py,sha256=PNZ_QJuzZEgyYXqkO1HVhGkj5IU9bglVUcw7H-Knjzw,2062
|
|
17
17
|
payi/_utils/_logs.py,sha256=fmnf5D9TOgkgZKfgYmSa3PiUc3SZgkchn6CzJUeo0SQ,768
|
|
18
18
|
payi/_utils/_proxy.py,sha256=z3zsateHtb0EARTWKk8QZNHfPkqJbqwd1lM993LBwGE,1902
|
|
19
19
|
payi/_utils/_reflection.py,sha256=ZmGkIgT_PuwedyNBrrKGbxoWtkpytJNU1uU4QHnmEMU,1364
|
|
20
20
|
payi/_utils/_streams.py,sha256=SMC90diFFecpEg_zgDRVbdR3hSEIgVVij4taD-noMLM,289
|
|
21
21
|
payi/_utils/_sync.py,sha256=jJl-iCEaZZUAkq4IUtzN1-aMsKTUFaNoNbeYnnpQjIQ,2438
|
|
22
22
|
payi/_utils/_transform.py,sha256=Dkkyr7OveGmOolepcvXmVJWE3kqim4b0nM0h7yWbgeY,13468
|
|
23
|
-
payi/_utils/_typing.py,sha256=
|
|
23
|
+
payi/_utils/_typing.py,sha256=nTJz0jcrQbEgxwy4TtAkNxuU0QHHlmc6mQtA6vIR8tg,4501
|
|
24
24
|
payi/_utils/_utils.py,sha256=8UmbPOy_AAr2uUjjFui-VZSrVBHRj6bfNEKRp5YZP2A,12004
|
|
25
25
|
payi/lib/.keep,sha256=wuNrz-5SXo3jJaJOJgz4vFHM41YH_g20F5cRQo0vLes,224
|
|
26
|
-
payi/lib/helpers.py,sha256=
|
|
27
|
-
payi/resources/__init__.py,sha256=
|
|
28
|
-
payi/resources/billing_models.py,sha256=
|
|
29
|
-
payi/resources/ingest.py,sha256=
|
|
26
|
+
payi/lib/helpers.py,sha256=mmebWb1pgHhUs61pRX4sc3uZuSjjOJKej5oNBxwptRM,1472
|
|
27
|
+
payi/resources/__init__.py,sha256=isHGXSl9kOrZDduKrX3UenTwrdTpuKJVBjw6NYSBV20,3592
|
|
28
|
+
payi/resources/billing_models.py,sha256=6gNDCHOujPkDdwuvm924IYTDiCMmhsPGQb2XgAg0vak,20160
|
|
29
|
+
payi/resources/ingest.py,sha256=un-8pANh1phPsPOJ9DuYC75v7lK6-dDuzTL8sWgNu5c,18797
|
|
30
30
|
payi/resources/price_modifiers.py,sha256=m9IX__C7_oPcZzGNpHJ2BsjMkGQ29JZrxLM1nFa8dL4,13483
|
|
31
|
-
payi/resources/budgets/__init__.py,sha256=w1UhOdDXtUH4A91ME5Tw2nr9bRvPJyJY1YWiVVy7jj0,989
|
|
32
|
-
payi/resources/budgets/budgets.py,sha256=GCTSojdFjDdWuJM2lO_-QKktFhncaA84xPx5C-RI7ks,27456
|
|
33
|
-
payi/resources/budgets/tags.py,sha256=akVs7lGBb7O697lv-_nXT_xlh6dgQuaj6pWqTenO86s,18827
|
|
34
31
|
payi/resources/categories/__init__.py,sha256=w5gMiPdBSzJA_qfoVtFBElaoe8wGf_O63R7R1Spr6Gk,1093
|
|
35
32
|
payi/resources/categories/categories.py,sha256=dGsAX313gZlLy5pSRo5_TexD1rPeWU666yHNwiUEFBA,16082
|
|
36
33
|
payi/resources/categories/resources.py,sha256=I38bjAvpsLg4LRwJEvnKX3yyr_ErTxkkv12y19sYd7E,18712
|
|
37
34
|
payi/resources/experiences/__init__.py,sha256=w7QTV5HMdPeOmmzUXzTefx9cqvzK8Tiqzv1sGUQLNVw,1980
|
|
38
35
|
payi/resources/experiences/csat.py,sha256=b56MzdJAII-rHjWTIqDUPS2MlgIVuqGXBOWq4SgBSRI,6611
|
|
39
36
|
payi/resources/experiences/experiences.py,sha256=Cbpp9T82Dqjb3TbF0nw53DtDhdbxwGhEWvT7dwohInM,15613
|
|
40
|
-
payi/resources/experiences/properties.py,sha256=
|
|
37
|
+
payi/resources/experiences/properties.py,sha256=duso5QRsbakhyCNtjYwaBUaGxSmN0ET4Di27Ojeyqvs,6582
|
|
41
38
|
payi/resources/experiences/types.py,sha256=hz5dtgmVD2eEOUU7Y29yA_UGefl77-oT4sAHFVkp-qk,19380
|
|
39
|
+
payi/resources/limits/__init__.py,sha256=URXh9vglDH-dqbVGk-XcrDa8H5Bg2pgFuVQQecgEtaA,976
|
|
40
|
+
payi/resources/limits/limits.py,sha256=wuk78wR2Jk4iqd0wKzteV5c4CwGEyMbu8isUU5iFIa8,25832
|
|
41
|
+
payi/resources/limits/tags.py,sha256=z8-ABZWbvL9M_LOPdL-1shhy8QkNFqwY8GKmNETWA7M,18733
|
|
42
42
|
payi/resources/requests/__init__.py,sha256=sWDD18RLuwPB2yzxA29HiwhFdmjZAxzy1qK_4abAZ9E,1080
|
|
43
|
-
payi/resources/requests/properties.py,sha256=
|
|
43
|
+
payi/resources/requests/properties.py,sha256=zLFdNsP-uu4DxYuJc1fX6uKRDmD2wsUp3bLekXw7xsQ,6486
|
|
44
44
|
payi/resources/requests/requests.py,sha256=tglPpryoEMbcz7nr1brk72Mi7-julmtmu3PfEhDYwoc,3771
|
|
45
|
-
payi/types/__init__.py,sha256=
|
|
46
|
-
payi/types/billing_model.py,sha256=
|
|
47
|
-
payi/types/billing_model_create_params.py,sha256=
|
|
45
|
+
payi/types/__init__.py,sha256=8qVzwUIYOJjsf9Ugl7no3vWuDYTOZx7qL7XU7TwuSkM,2640
|
|
46
|
+
payi/types/billing_model.py,sha256=zwpKldc0WvS3iGKtDb9KvfxCd3lkv8F4TwFy3ciGMXg,639
|
|
47
|
+
payi/types/billing_model_create_params.py,sha256=iVvmCcw0VxXGI_0YolknD3gmDH2lXVydU1dg2IY4dC4,547
|
|
48
48
|
payi/types/billing_model_list_response.py,sha256=hOFjJPQAKiWEArZeZwd8e1lDi5e41zbN6NvV_1rzJeM,290
|
|
49
|
-
payi/types/billing_model_update_params.py,sha256=
|
|
50
|
-
payi/types/budget_create_params.py,sha256=MDXUCZFK9SZHUTkB9OrQ8SeF1Xu7gmivuYSbcN9X-3w,632
|
|
51
|
-
payi/types/budget_history_response.py,sha256=4SnisCLr1HImVecgonZK7HIm9WTmYl0YMaTbMP70qZY,934
|
|
52
|
-
payi/types/budget_list_params.py,sha256=KaJ0H4tfp6mpCyanpysVJBTAMa5aA2Kv73uO_EsBsKE,367
|
|
53
|
-
payi/types/budget_response.py,sha256=Zh8rC7fNaN7lIfGB-cF911x1lL9wU0L161FjuFve6Qc,813
|
|
54
|
-
payi/types/budget_update_params.py,sha256=foD5cPa1p2M2cpVUqlwkXwSEQlQcBLaigUQMUGkvcic,334
|
|
49
|
+
payi/types/billing_model_update_params.py,sha256=NHNxDUZyYeYEroSyUx8eVh-kyY2YUo3jfRI-eMx2QAY,547
|
|
55
50
|
payi/types/bulk_ingest_response.py,sha256=78J3vlL7muZx9Z20H--UkvM8P19g0cDL9SZoHy7XM68,1330
|
|
56
51
|
payi/types/category_delete_resource_response.py,sha256=PLz4wZA1XMpS9SUYB_j4hEw5EoZ0VVE9Ll-MQ26SAfc,339
|
|
57
52
|
payi/types/category_delete_response.py,sha256=exq8rNDGoq2-YN528V8osdcmuptJ-k63rmCvPMm6hLA,323
|
|
58
53
|
payi/types/category_list_resources_response.py,sha256=n0DxY7N3Iftwfl0lUEx5v55V0kxbOX0EgjXlEfJtYRQ,337
|
|
59
54
|
payi/types/category_list_response.py,sha256=5i7BhQ7kVlx8_r2MLJqAJwIELGitKE0uR63kIloLATI,294
|
|
60
|
-
payi/types/category_resource_response.py,sha256=
|
|
55
|
+
payi/types/category_resource_response.py,sha256=dZTQCJVaPdFCObHe2zUg6kKaHDtsgVzrO7FeyozHOs0,679
|
|
61
56
|
payi/types/category_response.py,sha256=43i8bii20Sb-z9R5M1Ia6RGfRZmdQqsWPlv4Bl1XQf0,293
|
|
62
57
|
payi/types/cost_data.py,sha256=PDmleZu-HKKOIh_EZ5EgWvpGiTUSJQadsxedWhFVgEI,283
|
|
63
58
|
payi/types/cost_details.py,sha256=w9p79opEG3kcsjkRRP7niaMcUswdfB4Y7HCkVTcQ1zQ,307
|
|
64
59
|
payi/types/default_response.py,sha256=o617LpRsCIZHCZxAc5nVI2JQ3HPGZo4gCDvSDkxkIJ8,270
|
|
65
60
|
payi/types/experience_instance_response.py,sha256=YVWjFpCMAFXsXbU5tgMKrvXHC2F5MsTWdltzRiCUIQA,309
|
|
66
61
|
payi/types/ingest_bulk_params.py,sha256=aIsugHkiAe_DnGQ8JVpDUDYr1YNzR5cUY9mMPqusIP0,381
|
|
67
|
-
payi/types/ingest_event_param.py,sha256=
|
|
68
|
-
payi/types/ingest_response.py,sha256=
|
|
69
|
-
payi/types/ingest_units_params.py,sha256=
|
|
70
|
-
payi/types/
|
|
62
|
+
payi/types/ingest_event_param.py,sha256=dn2eImtw07ZuE1nE6zRIwfYIuCWw5BUUPucDMpdsp3w,1352
|
|
63
|
+
payi/types/ingest_response.py,sha256=14VWaX91XuVZth1JBHY1djw8nF-0o6EK4N_WPq_p-Wc,1193
|
|
64
|
+
payi/types/ingest_units_params.py,sha256=EgNGZfQyUKGO-v5S11JjQF_LkibXaAwbCIcSusb6MdA,1602
|
|
65
|
+
payi/types/limit_create_params.py,sha256=SbNoXHwy24kTTOxDhtcewtKxEkmXtTLYh4CTGysojys,578
|
|
66
|
+
payi/types/limit_history_response.py,sha256=VPylW3Y1-7ZQWAgkClLwbxB8C5kywgRm8DzrBKJli9Q,786
|
|
67
|
+
payi/types/limit_list_params.py,sha256=iWM67oL53y2IZ7D3Gyy8mdYv-B7vF-rbmRFn7SBUnJk,364
|
|
68
|
+
payi/types/limit_reset_params.py,sha256=vgqImSM89pRYY0Z2RNrJuQ6WeDX72ZPg3GWpL9EVEKs,476
|
|
69
|
+
payi/types/limit_response.py,sha256=wYNsbsm5oMtF7W1sTbxlZ5VE0XaS_UbP6y7ZXGKfwqk,752
|
|
70
|
+
payi/types/limit_update_params.py,sha256=crY4w75FWcEXbzysq1rPfD37qR5PTy_dwVRY4C_-T1w,331
|
|
71
|
+
payi/types/paged_limit_list.py,sha256=tUMj5FsxXHGfBubxxltwahwiTl4TaCiVHpv4zmrTb4Q,1314
|
|
71
72
|
payi/types/price_modifier.py,sha256=Sw_5tzCGnpjQzR5aZ70_ATpfBRQA_0ue2NRM3yMcvj0,531
|
|
72
73
|
payi/types/price_modifier_create_params.py,sha256=RpcYr2JYFu-pxzY4Dx1ESMp9-FBHfKt03Iw-3tlZvXQ,404
|
|
73
74
|
payi/types/price_modifier_retrieve_response.py,sha256=oFXWr38-O7KHItQlSsr7K8-Arpjq0yKexSUnbWqu62Q,303
|
|
74
75
|
payi/types/price_modifier_update_params.py,sha256=lqZW1J5akLSNv-6i4dGPCqwe1p3d7rM8JzzQ4Hofsbo,404
|
|
75
76
|
payi/types/requests_data.py,sha256=sGhAykQ5lh8iEwYfIsDRO5Tso139N8nlmQUL9hg3YSQ,308
|
|
76
77
|
payi/types/total_cost_data.py,sha256=FGh5XO5DwAIqkdmW9umyrJ7uD7U0w6CLDimzhP34Dmc,302
|
|
77
|
-
payi/types/budgets/__init__.py,sha256=5ByVuqOcgSYLHmGzhuj6-HG48mtQhC6oT5U5tNjQtxk,725
|
|
78
|
-
payi/types/budgets/budget_tags.py,sha256=nOYMf7YgRdTZgGdedJw0UbQ2uupCq9MHlevLJoXxWB4,348
|
|
79
|
-
payi/types/budgets/tag_create_params.py,sha256=_zEYfH2uKF44WenAdedx4TB9Az6RbIoAUMwqW8SAiuc,314
|
|
80
|
-
payi/types/budgets/tag_create_response.py,sha256=qg51bbGKGl2RL6BKQSzwBHxIW7H2oxUq45afe35PCdA,270
|
|
81
|
-
payi/types/budgets/tag_delete_response.py,sha256=INYlE88mTjtdaa9kfTuqE0cP9__rbW5e4Xq36olYoeY,270
|
|
82
|
-
payi/types/budgets/tag_list_response.py,sha256=-4q6_BOr2Nyov-noCI1TInOewADjWc0MUf0P1kRhxWo,266
|
|
83
|
-
payi/types/budgets/tag_remove_params.py,sha256=fNiHex1U11o_B0bfJDkpGARkEf99J-bd-wbzKkZ9mVM,314
|
|
84
|
-
payi/types/budgets/tag_remove_response.py,sha256=v7ysGVZ-54dKurvMA-3ySKco4LgTz3MqwC2VcJ-veeE,270
|
|
85
|
-
payi/types/budgets/tag_update_params.py,sha256=bWWeDqfySt7CZ6HDsZzENREOWGWGWFgnAtyleNMwUsE,314
|
|
86
|
-
payi/types/budgets/tag_update_response.py,sha256=0L-0k2pGw9GndpwArjKhHwOOJgOTOTY4mM7ukUM3Pwc,270
|
|
87
78
|
payi/types/categories/__init__.py,sha256=HQScxfK3F_J9HYbphrhG6bYb7S6vtrwafLViar5pHcM,285
|
|
88
79
|
payi/types/categories/resource_create_params.py,sha256=jEXNx_FvWA9D5170Gwf_YUcuAOaDq0RIGaGgPSEsheA,725
|
|
89
80
|
payi/types/categories/resource_list_response.py,sha256=ODMelDlXvYcwxBsJwTX8miofywUY_JB0OvsFVCKJunU,320
|
|
@@ -92,14 +83,26 @@ payi/types/experiences/csat_create_params.py,sha256=YK2M8yuqkZ7p-Z5S_6nSOeALX0Ox
|
|
|
92
83
|
payi/types/experiences/csat_response.py,sha256=tRJepzTgOPoeOEtm6leCCcbzwl8QJtL57mWlBk9ni3k,202
|
|
93
84
|
payi/types/experiences/experience_type.py,sha256=1L08GHoLAfdBwE691RidkHIukpyqqO2_toL5CcWxE4k,315
|
|
94
85
|
payi/types/experiences/properties_response.py,sha256=HpFNtxl_OjoMCs24xPVZLKe3FwCVcNkcRs0LsQKLrHM,259
|
|
95
|
-
payi/types/experiences/property_create_params.py,sha256=
|
|
86
|
+
payi/types/experiences/property_create_params.py,sha256=6v1L_4pj5N5k386cbtjSAWr2QJw---WUJ5lyshRnMwc,328
|
|
96
87
|
payi/types/experiences/type_create_params.py,sha256=56vS9kTHex1eU9QQ-DWjBMqoHNhOukPZUY4jgGhnJnQ,376
|
|
97
88
|
payi/types/experiences/type_list_params.py,sha256=VDZjHmK2tNAW_YLewcIzM-OG13iI2v-xCykokxkcgbs,286
|
|
98
89
|
payi/types/experiences/type_list_response.py,sha256=DgkPLw40oUqBETLePVMVenstMsGG12rZRU9w6kgQN28,280
|
|
99
90
|
payi/types/experiences/type_update_params.py,sha256=izwlElQB-jeFFX3K6S2TqVUMmhU0KTmwScQ5aoHZH0M,361
|
|
91
|
+
payi/types/limits/__init__.py,sha256=yohSla0l53OaxH9WdwaU1crY1FvzM3H6IRg20LUr-MU,722
|
|
92
|
+
payi/types/limits/limit_tags.py,sha256=O9I9IC7IkFBYRbiUWb4XXmIuXoHUlRLjW_4fbEF50Aw,346
|
|
93
|
+
payi/types/limits/tag_create_params.py,sha256=MPN1rXRJKCV_mZX8ZwrZD4yHpME7jI_SwAusz7ruvaE,313
|
|
94
|
+
payi/types/limits/tag_create_response.py,sha256=ZBU5vjGQQnsz5twkAs102TwXaZgRv9Z1nmvPHVYDTAY,267
|
|
95
|
+
payi/types/limits/tag_delete_response.py,sha256=CzkcQxggdAjakAPC1JqjK2L6h6YGxwnWU3bKRjkAfeM,267
|
|
96
|
+
payi/types/limits/tag_list_response.py,sha256=64Au13HA8Woch4gAgMb-XEd7Q9InJy9xdo9xPZyGxY4,263
|
|
97
|
+
payi/types/limits/tag_remove_params.py,sha256=wqRc8Y9ZYqOcnIuuFVQfbPRtX0ycp-z5fl7o42NhVpA,313
|
|
98
|
+
payi/types/limits/tag_remove_response.py,sha256=R-e-um-W1aqq8sEmTtnPMCDLGVRUmm5pVAvLCkgDVHI,267
|
|
99
|
+
payi/types/limits/tag_update_params.py,sha256=8-gP8OEY7xpBPLfS2uU71ew2WkWZ-WpVOy9fRA07omY,313
|
|
100
|
+
payi/types/limits/tag_update_response.py,sha256=xLa4aU4eVhNmIaQTsCyEDjx1vatBACFiJCwZOWLfrig,267
|
|
100
101
|
payi/types/requests/__init__.py,sha256=K4qfrWMIIg1-UNB0Vu5UdGEmf6TWoF-i3gPc_LT78D8,204
|
|
101
|
-
payi/types/requests/property_create_params.py,sha256=
|
|
102
|
-
payi
|
|
103
|
-
payi
|
|
104
|
-
payi-0.1.
|
|
105
|
-
payi-0.1.
|
|
102
|
+
payi/types/requests/property_create_params.py,sha256=6v1L_4pj5N5k386cbtjSAWr2QJw---WUJ5lyshRnMwc,328
|
|
103
|
+
payi/types/shared/__init__.py,sha256=zgBdtU5-a1ee8l5ABWyzuELwWRTKOCCcOx7gbCgdE4A,161
|
|
104
|
+
payi/types/shared/evaluation_response.py,sha256=V1HnUI1NeXdwZKJmlN_jhOC2nJPFTw1jjISWuqlIi0E,215
|
|
105
|
+
payi-0.1.0a34.dist-info/METADATA,sha256=_wqrA1-CPIE70zN6uu9k0gWzXo9lQhSzuCna6TLznzo,12584
|
|
106
|
+
payi-0.1.0a34.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
107
|
+
payi-0.1.0a34.dist-info/licenses/LICENSE,sha256=CQt03aM-P4a3Yg5qBg3JSLVoQS3smMyvx7tYg_6V7Gk,11334
|
|
108
|
+
payi-0.1.0a34.dist-info/RECORD,,
|
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
same "printed page" as the copyright notice for easier
|
|
187
187
|
identification within third-party archives.
|
|
188
188
|
|
|
189
|
-
Copyright
|
|
189
|
+
Copyright 2025 Payi
|
|
190
190
|
|
|
191
191
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
192
|
you may not use this file except in compliance with the License.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
-
|
|
3
|
-
from typing import List, Optional
|
|
4
|
-
from datetime import datetime
|
|
5
|
-
from typing_extensions import Literal
|
|
6
|
-
|
|
7
|
-
from .._models import BaseModel
|
|
8
|
-
from .total_cost_data import TotalCostData
|
|
9
|
-
|
|
10
|
-
__all__ = ["BudgetHistoryResponse", "BudgetHistory"]
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
class BudgetHistory(BaseModel):
|
|
14
|
-
budget_name: Optional[str] = None
|
|
15
|
-
|
|
16
|
-
base_cost_estimate: Optional[Literal["max"]] = None
|
|
17
|
-
|
|
18
|
-
budget_id: Optional[str] = None
|
|
19
|
-
|
|
20
|
-
budget_reset_timestamp: Optional[datetime] = None
|
|
21
|
-
|
|
22
|
-
budget_response_type: Optional[Literal["block", "allow"]] = None
|
|
23
|
-
|
|
24
|
-
budget_tags: Optional[List[str]] = None
|
|
25
|
-
|
|
26
|
-
budget_type: Optional[Literal["conservative", "liberal"]] = None
|
|
27
|
-
|
|
28
|
-
max: Optional[float] = None
|
|
29
|
-
|
|
30
|
-
totals: Optional[TotalCostData] = None
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
class BudgetHistoryResponse(BaseModel):
|
|
34
|
-
budget_history: BudgetHistory
|
|
35
|
-
|
|
36
|
-
request_id: str
|
|
37
|
-
|
|
38
|
-
message: Optional[str] = None
|