payi 0.1.0a14__py3-none-any.whl → 0.1.0a16__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.

Files changed (50) hide show
  1. payi/_base_client.py +29 -42
  2. payi/_client.py +8 -0
  3. payi/_compat.py +12 -17
  4. payi/_files.py +4 -8
  5. payi/_response.py +9 -8
  6. payi/_types.py +3 -6
  7. payi/_utils/_proxy.py +1 -2
  8. payi/_utils/_reflection.py +1 -1
  9. payi/_utils/_utils.py +6 -12
  10. payi/_version.py +1 -1
  11. payi/resources/__init__.py +14 -0
  12. payi/resources/budgets/budgets.py +2 -2
  13. payi/resources/categories/resources.py +4 -4
  14. payi/resources/experiences/__init__.py +33 -0
  15. payi/resources/experiences/experiences.py +325 -0
  16. payi/resources/experiences/types.py +459 -0
  17. payi/resources/ingest.py +101 -8
  18. payi/types/__init__.py +5 -1
  19. payi/types/budget_create_params.py +1 -1
  20. payi/types/budget_history_response.py +3 -26
  21. payi/types/budget_list_params.py +7 -9
  22. payi/types/budget_response.py +3 -26
  23. payi/types/budgets/tag_create_response.py +2 -1
  24. payi/types/budgets/tag_delete_response.py +2 -1
  25. payi/types/budgets/tag_list_response.py +2 -1
  26. payi/types/budgets/tag_remove_response.py +2 -1
  27. payi/types/budgets/tag_update_response.py +2 -1
  28. payi/types/bulk_ingest_response.py +44 -0
  29. payi/types/categories/resource_create_params.py +2 -2
  30. payi/types/categories/resource_list_response.py +2 -1
  31. payi/types/category_delete_resource_response.py +2 -1
  32. payi/types/category_delete_response.py +2 -1
  33. payi/types/category_list_resources_response.py +2 -1
  34. payi/types/category_list_response.py +2 -1
  35. payi/types/category_resource_response.py +2 -2
  36. payi/types/experience_instance.py +13 -0
  37. payi/types/experiences/__init__.py +8 -0
  38. payi/types/experiences/experience_type.py +17 -0
  39. payi/types/experiences/type_create_params.py +14 -0
  40. payi/types/experiences/type_list_response.py +10 -0
  41. payi/types/experiences/type_update_params.py +14 -0
  42. payi/types/ingest_bulk_params.py +34 -0
  43. payi/types/{proxy_result.py → ingest_response.py} +17 -6
  44. payi/types/paged_budget_list.py +3 -26
  45. payi/types/total_cost_data.py +31 -0
  46. {payi-0.1.0a14.dist-info → payi-0.1.0a16.dist-info}/METADATA +1 -1
  47. payi-0.1.0a16.dist-info/RECORD +82 -0
  48. payi-0.1.0a14.dist-info/RECORD +0 -70
  49. {payi-0.1.0a14.dist-info → payi-0.1.0a16.dist-info}/WHEEL +0 -0
  50. {payi-0.1.0a14.dist-info → payi-0.1.0a16.dist-info}/licenses/LICENSE +0 -0
@@ -5,32 +5,9 @@ from datetime import datetime
5
5
  from typing_extensions import Literal
6
6
 
7
7
  from .._models import BaseModel
8
- from .cost_data import CostData
9
- from .requests_data import RequestsData
8
+ from .total_cost_data import TotalCostData
10
9
 
11
- __all__ = ["BudgetHistoryResponse", "BudgetHistory", "BudgetHistoryTotals", "BudgetHistoryTotalsBudgetTransactions"]
12
-
13
-
14
- class BudgetHistoryTotalsBudgetTransactions(BaseModel):
15
- blocked: int
16
-
17
- blocked_external: int
18
-
19
- exceeded: int
20
-
21
- successful: int
22
-
23
- error: Optional[int] = None
24
-
25
- total: Optional[int] = None
26
-
27
-
28
- class BudgetHistoryTotals(BaseModel):
29
- cost: CostData
30
-
31
- requests: RequestsData
32
-
33
- budget_transactions: Optional[BudgetHistoryTotalsBudgetTransactions] = None
10
+ __all__ = ["BudgetHistoryResponse", "BudgetHistory"]
34
11
 
35
12
 
36
13
  class BudgetHistory(BaseModel):
@@ -50,7 +27,7 @@ class BudgetHistory(BaseModel):
50
27
 
51
28
  max: Optional[float] = None
52
29
 
53
- totals: Optional[BudgetHistoryTotals] = None
30
+ totals: Optional[TotalCostData] = None
54
31
 
55
32
 
56
33
  class BudgetHistoryResponse(BaseModel):
@@ -2,22 +2,20 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing_extensions import Annotated, TypedDict
6
-
7
- from .._utils import PropertyInfo
5
+ from typing_extensions import TypedDict
8
6
 
9
7
  __all__ = ["BudgetListParams"]
10
8
 
11
9
 
12
10
  class BudgetListParams(TypedDict, total=False):
13
- budget_name: Annotated[str, PropertyInfo(alias="BudgetName")]
11
+ budget_name: str
14
12
 
15
- page_number: Annotated[int, PropertyInfo(alias="PageNumber")]
13
+ page_number: int
16
14
 
17
- page_size: Annotated[int, PropertyInfo(alias="PageSize")]
15
+ page_size: int
18
16
 
19
- sort_ascending: Annotated[bool, PropertyInfo(alias="SortAscending")]
17
+ sort_ascending: bool
20
18
 
21
- sort_by: Annotated[str, PropertyInfo(alias="SortBy")]
19
+ sort_by: str
22
20
 
23
- tags: Annotated[str, PropertyInfo(alias="Tags")]
21
+ tags: str
@@ -5,32 +5,9 @@ from datetime import datetime
5
5
  from typing_extensions import Literal
6
6
 
7
7
  from .._models import BaseModel
8
- from .cost_data import CostData
9
- from .requests_data import RequestsData
8
+ from .total_cost_data import TotalCostData
10
9
 
11
- __all__ = ["BudgetResponse", "Budget", "BudgetTotals", "BudgetTotalsBudgetTransactions"]
12
-
13
-
14
- class BudgetTotalsBudgetTransactions(BaseModel):
15
- blocked: int
16
-
17
- blocked_external: int
18
-
19
- exceeded: int
20
-
21
- successful: int
22
-
23
- error: Optional[int] = None
24
-
25
- total: Optional[int] = None
26
-
27
-
28
- class BudgetTotals(BaseModel):
29
- cost: CostData
30
-
31
- requests: RequestsData
32
-
33
- budget_transactions: Optional[BudgetTotalsBudgetTransactions] = None
10
+ __all__ = ["BudgetResponse", "Budget"]
34
11
 
35
12
 
36
13
  class Budget(BaseModel):
@@ -52,7 +29,7 @@ class Budget(BaseModel):
52
29
 
53
30
  max: float
54
31
 
55
- totals: BudgetTotals
32
+ totals: TotalCostData
56
33
 
57
34
  budget_tags: Optional[List[str]] = None
58
35
 
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .budget_tags import BudgetTags
6
7
 
7
8
  __all__ = ["TagCreateResponse"]
8
9
 
9
- TagCreateResponse = List[BudgetTags]
10
+ TagCreateResponse: TypeAlias = List[BudgetTags]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .budget_tags import BudgetTags
6
7
 
7
8
  __all__ = ["TagDeleteResponse"]
8
9
 
9
- TagDeleteResponse = List[BudgetTags]
10
+ TagDeleteResponse: TypeAlias = List[BudgetTags]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .budget_tags import BudgetTags
6
7
 
7
8
  __all__ = ["TagListResponse"]
8
9
 
9
- TagListResponse = List[BudgetTags]
10
+ TagListResponse: TypeAlias = List[BudgetTags]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .budget_tags import BudgetTags
6
7
 
7
8
  __all__ = ["TagRemoveResponse"]
8
9
 
9
- TagRemoveResponse = List[BudgetTags]
10
+ TagRemoveResponse: TypeAlias = List[BudgetTags]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .budget_tags import BudgetTags
6
7
 
7
8
  __all__ = ["TagUpdateResponse"]
8
9
 
9
- TagUpdateResponse = List[BudgetTags]
10
+ TagUpdateResponse: TypeAlias = List[BudgetTags]
@@ -0,0 +1,44 @@
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
+
6
+ from pydantic import Field as FieldInfo
7
+
8
+ from .._models import BaseModel
9
+
10
+ __all__ = ["BulkIngestResponse", "Error", "ErrorXproxyResult", "ErrorXproxyResultXproxyError"]
11
+
12
+
13
+ class ErrorXproxyResultXproxyError(BaseModel):
14
+ code: Optional[str] = None
15
+
16
+ message: Optional[str] = None
17
+
18
+
19
+ class ErrorXproxyResult(BaseModel):
20
+ message: str
21
+
22
+ status_code: int = FieldInfo(alias="statusCode")
23
+
24
+ xproxy_error: Optional[ErrorXproxyResultXproxyError] = None
25
+
26
+
27
+ class Error(BaseModel):
28
+ item_index: Optional[int] = None
29
+
30
+ xproxy_result: Optional[ErrorXproxyResult] = None
31
+
32
+
33
+ class BulkIngestResponse(BaseModel):
34
+ ingest_count: int
35
+
36
+ ingest_timestamp: datetime
37
+
38
+ request_id: str
39
+
40
+ error_count: Optional[int] = None
41
+
42
+ errors: Optional[List[Error]] = None
43
+
44
+ total_count: Optional[int] = None
@@ -14,8 +14,6 @@ __all__ = ["ResourceCreateParams"]
14
14
  class ResourceCreateParams(TypedDict, total=False):
15
15
  category: Required[str]
16
16
 
17
- start_timestamp: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
18
-
19
17
  input_price: float
20
18
 
21
19
  max_input_units: int
@@ -23,3 +21,5 @@ class ResourceCreateParams(TypedDict, total=False):
23
21
  max_output_units: int
24
22
 
25
23
  output_price: float
24
+
25
+ start_timestamp: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from ..category_resource_response import CategoryResourceResponse
6
7
 
7
8
  __all__ = ["ResourceListResponse"]
8
9
 
9
- ResourceListResponse = List[CategoryResourceResponse]
10
+ ResourceListResponse: TypeAlias = List[CategoryResourceResponse]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .category_resource_response import CategoryResourceResponse
6
7
 
7
8
  __all__ = ["CategoryDeleteResourceResponse"]
8
9
 
9
- CategoryDeleteResourceResponse = List[CategoryResourceResponse]
10
+ CategoryDeleteResourceResponse: TypeAlias = List[CategoryResourceResponse]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import Dict, List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .category_resource_response import CategoryResourceResponse
6
7
 
7
8
  __all__ = ["CategoryDeleteResponse"]
8
9
 
9
- CategoryDeleteResponse = Dict[str, List[CategoryResourceResponse]]
10
+ CategoryDeleteResponse: TypeAlias = Dict[str, List[CategoryResourceResponse]]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .category_resource_response import CategoryResourceResponse
6
7
 
7
8
  __all__ = ["CategoryListResourcesResponse"]
8
9
 
9
- CategoryListResourcesResponse = List[CategoryResourceResponse]
10
+ CategoryListResourcesResponse: TypeAlias = List[CategoryResourceResponse]
@@ -1,9 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from .category_response import CategoryResponse
6
7
 
7
8
  __all__ = ["CategoryListResponse"]
8
9
 
9
- CategoryListResponse = List[CategoryResponse]
10
+ CategoryListResponse: TypeAlias = List[CategoryResponse]
@@ -13,8 +13,6 @@ class CategoryResourceResponse(BaseModel):
13
13
 
14
14
  resource: str
15
15
 
16
- start_timestamp: datetime
17
-
18
16
  input_price: Optional[float] = None
19
17
 
20
18
  max_input_units: Optional[int] = None
@@ -22,3 +20,5 @@ class CategoryResourceResponse(BaseModel):
22
20
  max_output_units: Optional[int] = None
23
21
 
24
22
  output_price: Optional[float] = None
23
+
24
+ start_timestamp: Optional[datetime] = None
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+
4
+
5
+ from .._models import BaseModel
6
+
7
+ __all__ = ["ExperienceInstance"]
8
+
9
+
10
+ class ExperienceInstance(BaseModel):
11
+ experience_instance_id: str
12
+
13
+ request_id: str
@@ -0,0 +1,8 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .experience_type import ExperienceType as ExperienceType
6
+ from .type_create_params import TypeCreateParams as TypeCreateParams
7
+ from .type_list_response import TypeListResponse as TypeListResponse
8
+ from .type_update_params import TypeUpdateParams as TypeUpdateParams
@@ -0,0 +1,17 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["ExperienceType"]
8
+
9
+
10
+ class ExperienceType(BaseModel):
11
+ description: str
12
+
13
+ experience_type_id: str
14
+
15
+ name: str
16
+
17
+ request_id: str
@@ -0,0 +1,14 @@
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 Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ __all__ = ["TypeCreateParams"]
9
+
10
+
11
+ class TypeCreateParams(TypedDict, total=False):
12
+ description: Optional[str]
13
+
14
+ name: Optional[str]
@@ -0,0 +1,10 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .experience_type import ExperienceType
7
+
8
+ __all__ = ["TypeListResponse"]
9
+
10
+ TypeListResponse: TypeAlias = List[ExperienceType]
@@ -0,0 +1,14 @@
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 Optional
6
+ from typing_extensions import TypedDict
7
+
8
+ __all__ = ["TypeUpdateParams"]
9
+
10
+
11
+ class TypeUpdateParams(TypedDict, total=False):
12
+ description: Optional[str]
13
+
14
+ name: Optional[str]
@@ -0,0 +1,34 @@
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 List, Union, Iterable, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+
11
+ __all__ = ["IngestBulkParams", "Event"]
12
+
13
+
14
+ class IngestBulkParams(TypedDict, total=False):
15
+ events: Required[Iterable[Event]]
16
+
17
+ class Event(TypedDict, total=False):
18
+ category: Required[str]
19
+
20
+ input: Required[int]
21
+
22
+ output: Required[int]
23
+
24
+ resource: Required[str]
25
+
26
+ budget_ids: Optional[List[str]]
27
+
28
+ event_timestamp: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
29
+
30
+ experience_instance_id: Optional[str]
31
+
32
+ request_tags: Optional[List[str]]
33
+
34
+ user_id: Optional[str]
@@ -1,19 +1,20 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import Dict, List, Optional
4
+ from datetime import datetime
4
5
  from typing_extensions import Literal
5
6
 
6
7
  from .._models import BaseModel
7
8
  from .cost_details import CostDetails
8
9
 
9
- __all__ = ["ProxyResult", "Budgets", "Cost"]
10
+ __all__ = ["IngestResponse", "XproxyResult", "XproxyResultBudgets", "XproxyResultCost"]
10
11
 
11
12
 
12
- class Budgets(BaseModel):
13
+ class XproxyResultBudgets(BaseModel):
13
14
  state: Optional[Literal["ok", "blocked", "blocked_external", "exceeded", "failed"]] = None
14
15
 
15
16
 
16
- class Cost(BaseModel):
17
+ class XproxyResultCost(BaseModel):
17
18
  currency: Optional[Literal["usd"]] = None
18
19
 
19
20
  input: Optional[CostDetails] = None
@@ -23,11 +24,21 @@ class Cost(BaseModel):
23
24
  total: Optional[CostDetails] = None
24
25
 
25
26
 
26
- class ProxyResult(BaseModel):
27
- budgets: Optional[Dict[str, Budgets]] = None
27
+ class XproxyResult(BaseModel):
28
+ budgets: Optional[Dict[str, XproxyResultBudgets]] = None
28
29
 
29
- cost: Optional[Cost] = None
30
+ cost: Optional[XproxyResultCost] = None
30
31
 
31
32
  request_id: Optional[str] = None
32
33
 
33
34
  request_tags: Optional[List[str]] = None
35
+
36
+
37
+ class IngestResponse(BaseModel):
38
+ event_timestamp: datetime
39
+
40
+ ingest_timestamp: datetime
41
+
42
+ request_id: str
43
+
44
+ xproxy_result: XproxyResult
@@ -7,32 +7,9 @@ from typing_extensions import Literal
7
7
  from pydantic import Field as FieldInfo
8
8
 
9
9
  from .._models import BaseModel
10
- from .cost_data import CostData
11
- from .requests_data import RequestsData
10
+ from .total_cost_data import TotalCostData
12
11
 
13
- __all__ = ["PagedBudgetList", "Item", "ItemTotals", "ItemTotalsBudgetTransactions"]
14
-
15
-
16
- class ItemTotalsBudgetTransactions(BaseModel):
17
- blocked: int
18
-
19
- blocked_external: int
20
-
21
- exceeded: int
22
-
23
- successful: int
24
-
25
- error: Optional[int] = None
26
-
27
- total: Optional[int] = None
28
-
29
-
30
- class ItemTotals(BaseModel):
31
- cost: CostData
32
-
33
- requests: RequestsData
34
-
35
- budget_transactions: Optional[ItemTotalsBudgetTransactions] = None
12
+ __all__ = ["PagedBudgetList", "Item"]
36
13
 
37
14
 
38
15
  class Item(BaseModel):
@@ -54,7 +31,7 @@ class Item(BaseModel):
54
31
 
55
32
  max: float
56
33
 
57
- totals: ItemTotals
34
+ totals: TotalCostData
58
35
 
59
36
  budget_tags: Optional[List[str]] = None
60
37
 
@@ -0,0 +1,31 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from .._models import BaseModel
6
+ from .cost_data import CostData
7
+ from .requests_data import RequestsData
8
+
9
+ __all__ = ["TotalCostData", "BudgetTransactions"]
10
+
11
+
12
+ class BudgetTransactions(BaseModel):
13
+ blocked: int
14
+
15
+ blocked_external: int
16
+
17
+ exceeded: int
18
+
19
+ successful: int
20
+
21
+ error: Optional[int] = None
22
+
23
+ total: Optional[int] = None
24
+
25
+
26
+ class TotalCostData(BaseModel):
27
+ cost: CostData
28
+
29
+ requests: RequestsData
30
+
31
+ budget_transactions: Optional[BudgetTransactions] = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: payi
3
- Version: 0.1.0a14
3
+ Version: 0.1.0a16
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
@@ -0,0 +1,82 @@
1
+ payi/__init__.py,sha256=LWpfR6WSMPTnmmx3ToqqZ0A8CNduLcuxY1SSOqhPxuk,2381
2
+ payi/_base_client.py,sha256=ceMQR7sfWlJfFsA91UJzG4MT-QnPJ3jhqe-EpEmpRBo,66460
3
+ payi/_client.py,sha256=OfFRXT_V_aAuGNt75_HKQiVlIEr3kpYOSXoOTTKgOAM,16842
4
+ payi/_compat.py,sha256=FgGcnNlyW7uHKyGh_Wvo7qZi-zVPmHx7mhb3F1GEZSw,6430
5
+ payi/_constants.py,sha256=JE8kyZa2Q4NK_i4fO--8siEYTzeHnT0fYbOFDgDP4uk,464
6
+ payi/_exceptions.py,sha256=ItygKNrNXIVY0H6LsGVZvFuAHB3Vtm_VZXmWzCnpHy0,3216
7
+ payi/_files.py,sha256=mf4dOgL4b0ryyZlbqLhggD3GVgDf6XxdGFAgce01ugE,3549
8
+ payi/_models.py,sha256=3METTz2oSlPfVcHL0fZ-L5IPnvckZDkgEe1H58mRsFE,28210
9
+ payi/_qs.py,sha256=AOkSz4rHtK4YI3ZU_kzea-zpwBUgEY8WniGmTPyEimc,4846
10
+ payi/_resource.py,sha256=j2jIkTr8OIC8sU6-05nxSaCyj4MaFlbZrwlyg4_xJos,1088
11
+ payi/_response.py,sha256=SByCajzglbiy7lSG4F5enqb7R6jVQe1OQ9TBsaxWzE8,28508
12
+ payi/_streaming.py,sha256=Z_wIyo206T6Jqh2rolFg2VXZgX24PahLmpURp0-NssU,10092
13
+ payi/_types.py,sha256=mb6zn5qmTK5j0QMh0fevdShT091HBL4w0YCUfQ3u5VY,6101
14
+ payi/_version.py,sha256=8QW-puf9BOeotZtfzqOdE4YGI2YOqj5-yiZm5-MlUec,165
15
+ payi/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
+ payi/_utils/__init__.py,sha256=Uzq1-FIih_VUjzdNVWXks0sdC39KBKLMrZoz-_JOjJ4,1988
17
+ payi/_utils/_logs.py,sha256=fmnf5D9TOgkgZKfgYmSa3PiUc3SZgkchn6CzJUeo0SQ,768
18
+ payi/_utils/_proxy.py,sha256=z3zsateHtb0EARTWKk8QZNHfPkqJbqwd1lM993LBwGE,1902
19
+ payi/_utils/_reflection.py,sha256=ZmGkIgT_PuwedyNBrrKGbxoWtkpytJNU1uU4QHnmEMU,1364
20
+ payi/_utils/_streams.py,sha256=SMC90diFFecpEg_zgDRVbdR3hSEIgVVij4taD-noMLM,289
21
+ payi/_utils/_sync.py,sha256=9ex9pfOyd8xAF1LxpFx4IkqL8k0vk8srE2Ee-OTMQ0A,2840
22
+ payi/_utils/_transform.py,sha256=NCz3q9_O-vuj60xVe-qzhEQ8uJWlZWJTsM-GwHDccf8,12958
23
+ payi/_utils/_typing.py,sha256=tFbktdpdHCQliwzGsWysgn0P5H0JRdagkZdb_LegGkY,3838
24
+ payi/_utils/_utils.py,sha256=LMVTMZG8pfu8AkJNSfmv_z3guQlOfm2UxDTjTTXggfg,11411
25
+ payi/lib/.keep,sha256=wuNrz-5SXo3jJaJOJgz4vFHM41YH_g20F5cRQo0vLes,224
26
+ payi/lib/helpers.py,sha256=IdB_pi8dLtVh9b4DG-zasA1i9Yk-5xAayoUTNWBAFpc,1235
27
+ payi/resources/__init__.py,sha256=0bsV7zh4J03yh3W3MBoiiIT12uG2tdvsDrdqOeY0Cbc,2032
28
+ payi/resources/ingest.py,sha256=zyxQRN8feAsu-f6Kif7OcS18mNAdLMiLOkIqU810aWk,13436
29
+ payi/resources/budgets/__init__.py,sha256=w1UhOdDXtUH4A91ME5Tw2nr9bRvPJyJY1YWiVVy7jj0,989
30
+ payi/resources/budgets/budgets.py,sha256=VQiwsQIF6Rp7jlIUPQ5VpJbbVxFOxYHEPI-bWkiPt2k,26508
31
+ payi/resources/budgets/tags.py,sha256=N26Uc7N8N1egvujY4LZ7RDoQ7oWeTR9w1pPbbgKLLqc,17841
32
+ payi/resources/categories/__init__.py,sha256=w5gMiPdBSzJA_qfoVtFBElaoe8wGf_O63R7R1Spr6Gk,1093
33
+ payi/resources/categories/categories.py,sha256=hqJE4iSiMe5nvvsui4RjFJxFb8170iRbJfTafk2NzGw,15072
34
+ payi/resources/categories/resources.py,sha256=tEx1D3hrjgB_CDoGPIung-Ub3-jMFSYVnzmqZg-pr5g,17848
35
+ payi/resources/experiences/__init__.py,sha256=gguTTCoGlAWDyrDJh1CtZwIVsyBbzERX63vRtFtjxjI,1054
36
+ payi/resources/experiences/experiences.py,sha256=SQ3gTimtadD46OXjBl7oR1B0D9O2QKi6vfx8z4u69fc,11882
37
+ payi/resources/experiences/types.py,sha256=Hw9JB3v6nXraQqZEtfWqA_Zbo0hHAUMxUa9XV_bGsns,16660
38
+ payi/types/__init__.py,sha256=ehba3br8WKY-n-PYzi4AQiRy0_hbF1O0FMHtbz83MZY,1734
39
+ payi/types/budget_create_params.py,sha256=3PziVJT3_ll-6yv3i5EF8ERm19jFJAKbv9v-CvRW5ik,653
40
+ payi/types/budget_history_response.py,sha256=4SnisCLr1HImVecgonZK7HIm9WTmYl0YMaTbMP70qZY,934
41
+ payi/types/budget_list_params.py,sha256=KaJ0H4tfp6mpCyanpysVJBTAMa5aA2Kv73uO_EsBsKE,367
42
+ payi/types/budget_response.py,sha256=ZAZOvA5KLirARR92IuLkjGNWTLBUVJp5RwGI9Ow2Au0,827
43
+ payi/types/budget_update_params.py,sha256=foD5cPa1p2M2cpVUqlwkXwSEQlQcBLaigUQMUGkvcic,334
44
+ payi/types/bulk_ingest_response.py,sha256=uZO89-RjrckzM37LRXNifvRptyz_mqbyVP6zO2FlBiM,962
45
+ payi/types/category_delete_resource_response.py,sha256=PLz4wZA1XMpS9SUYB_j4hEw5EoZ0VVE9Ll-MQ26SAfc,339
46
+ payi/types/category_delete_response.py,sha256=5VYDbmQEHdMS01ysg9VeSbj0ckXYnoKrE47oa8VSM-I,340
47
+ payi/types/category_list_resources_response.py,sha256=n0DxY7N3Iftwfl0lUEx5v55V0kxbOX0EgjXlEfJtYRQ,337
48
+ payi/types/category_list_response.py,sha256=5i7BhQ7kVlx8_r2MLJqAJwIELGitKE0uR63kIloLATI,294
49
+ payi/types/category_resource_response.py,sha256=GL3SjVawwzxQCTTHw5CyF4jajBKx5j7dirBmBHGoya0,518
50
+ payi/types/category_response.py,sha256=43i8bii20Sb-z9R5M1Ia6RGfRZmdQqsWPlv4Bl1XQf0,293
51
+ payi/types/cost_data.py,sha256=jZtju_3WWNXh4wCu77XnyvxZkvewcvXBS_V0z07BizA,284
52
+ payi/types/cost_details.py,sha256=3ldvnYILAG6Sz9wGWMs1SZvIfdGEbn5i4-CauWEXMPA,265
53
+ payi/types/default_response.py,sha256=o617LpRsCIZHCZxAc5nVI2JQ3HPGZo4gCDvSDkxkIJ8,270
54
+ payi/types/experience_instance.py,sha256=r6WYuGqMEnIi_dAlQyTEfDO5SlwzjRZfXek4lEEov4U,247
55
+ payi/types/ingest_bulk_params.py,sha256=-Y4ef_w-57dNojSSRdzikPkhc762UfhnOfAyc5iySmA,816
56
+ payi/types/ingest_response.py,sha256=o43RH25dS4S54OCr3vkipZvLeAmI-hru6LuL789iEnM,1071
57
+ payi/types/ingest_units_params.py,sha256=a3fEqwmrRNtGR9pqbTo50feTTjSmRGov6MYvXhBo1yc,748
58
+ payi/types/paged_budget_list.py,sha256=FqKlbAifEWY3sZqiJSny-XtS-XIfmj14AufNffNVmqM,1385
59
+ payi/types/requests_data.py,sha256=UniFVu9SgDQIbZupzrLSrvBKV487_iKFemLw9nRDhGo,296
60
+ payi/types/total_cost_data.py,sha256=Nu1LyV1NX4CsI02Yn3GbvNXVZPrXG8U4Fs55rZE9KJk,603
61
+ payi/types/budgets/__init__.py,sha256=5ByVuqOcgSYLHmGzhuj6-HG48mtQhC6oT5U5tNjQtxk,725
62
+ payi/types/budgets/budget_tags.py,sha256=nOYMf7YgRdTZgGdedJw0UbQ2uupCq9MHlevLJoXxWB4,348
63
+ payi/types/budgets/tag_create_params.py,sha256=_zEYfH2uKF44WenAdedx4TB9Az6RbIoAUMwqW8SAiuc,314
64
+ payi/types/budgets/tag_create_response.py,sha256=qg51bbGKGl2RL6BKQSzwBHxIW7H2oxUq45afe35PCdA,270
65
+ payi/types/budgets/tag_delete_response.py,sha256=INYlE88mTjtdaa9kfTuqE0cP9__rbW5e4Xq36olYoeY,270
66
+ payi/types/budgets/tag_list_response.py,sha256=-4q6_BOr2Nyov-noCI1TInOewADjWc0MUf0P1kRhxWo,266
67
+ payi/types/budgets/tag_remove_params.py,sha256=fNiHex1U11o_B0bfJDkpGARkEf99J-bd-wbzKkZ9mVM,314
68
+ payi/types/budgets/tag_remove_response.py,sha256=v7ysGVZ-54dKurvMA-3ySKco4LgTz3MqwC2VcJ-veeE,270
69
+ payi/types/budgets/tag_update_params.py,sha256=bWWeDqfySt7CZ6HDsZzENREOWGWGWFgnAtyleNMwUsE,314
70
+ payi/types/budgets/tag_update_response.py,sha256=0L-0k2pGw9GndpwArjKhHwOOJgOTOTY4mM7ukUM3Pwc,270
71
+ payi/types/categories/__init__.py,sha256=HQScxfK3F_J9HYbphrhG6bYb7S6vtrwafLViar5pHcM,285
72
+ payi/types/categories/resource_create_params.py,sha256=mbLjAyRz9iuINs_KEWYCLLUZFq4GcRhs0vL2RxqBFwQ,587
73
+ payi/types/categories/resource_list_response.py,sha256=ODMelDlXvYcwxBsJwTX8miofywUY_JB0OvsFVCKJunU,320
74
+ payi/types/experiences/__init__.py,sha256=UeNpY1NmtbEZ0h4-onmMf_5mg0lCUvHMEQRlWXS07do,392
75
+ payi/types/experiences/experience_type.py,sha256=KKjkfI0eaoB1TmTlA4UpHKa2fB1q0zXeG_1M2LUgBsE,273
76
+ payi/types/experiences/type_create_params.py,sha256=8L-f6V2JyqJV90MS3lH-VN7igPuTJzBQSjw1D70SgxQ,329
77
+ payi/types/experiences/type_list_response.py,sha256=DgkPLw40oUqBETLePVMVenstMsGG12rZRU9w6kgQN28,280
78
+ payi/types/experiences/type_update_params.py,sha256=ziUJASn8QF_5nSp5lohT0HLK0tTOciT-X35CVH9dA5Q,329
79
+ payi-0.1.0a16.dist-info/METADATA,sha256=4S0la3OCB3uzSRoDS2BIa9yy1KshUu9apzIL-B6yowY,12030
80
+ payi-0.1.0a16.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
81
+ payi-0.1.0a16.dist-info/licenses/LICENSE,sha256=8vX1pjh3esb6D5DvXAf6NxiBcVyon8aHWNJCxmmHXeY,11334
82
+ payi-0.1.0a16.dist-info/RECORD,,