payi 0.1.0a125__py3-none-any.whl → 0.1.0a127__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 (31) hide show
  1. payi/_version.py +1 -1
  2. payi/lib/BedrockInstrumentor.py +35 -25
  3. payi/lib/helpers.py +12 -0
  4. payi/lib/instrument.py +136 -143
  5. payi/resources/categories/__init__.py +0 -14
  6. payi/resources/categories/categories.py +0 -32
  7. payi/resources/categories/resources.py +4 -0
  8. payi/resources/ingest.py +20 -8
  9. payi/resources/requests/request_id/properties.py +3 -3
  10. payi/resources/requests/response_id/properties.py +3 -3
  11. payi/resources/use_cases/properties.py +3 -3
  12. payi/types/__init__.py +2 -0
  13. payi/types/bulk_ingest_response.py +3 -20
  14. payi/types/categories/__init__.py +0 -1
  15. payi/types/categories/resource_list_params.py +5 -1
  16. payi/types/category_resource_response.py +31 -1
  17. payi/types/ingest_event_param.py +2 -2
  18. payi/types/ingest_units_params.py +2 -2
  19. payi/types/requests/request_id/property_update_params.py +2 -2
  20. payi/types/requests/response_id/property_update_params.py +2 -2
  21. payi/types/shared/__init__.py +2 -0
  22. payi/types/shared/api_error.py +18 -0
  23. payi/types/shared/properties_request.py +11 -0
  24. payi/types/shared/xproxy_result.py +2 -0
  25. payi/types/use_cases/property_update_params.py +2 -2
  26. {payi-0.1.0a125.dist-info → payi-0.1.0a127.dist-info}/METADATA +1 -1
  27. {payi-0.1.0a125.dist-info → payi-0.1.0a127.dist-info}/RECORD +29 -29
  28. payi/resources/categories/fixed_cost_resources.py +0 -196
  29. payi/types/categories/fixed_cost_resource_create_params.py +0 -22
  30. {payi-0.1.0a125.dist-info → payi-0.1.0a127.dist-info}/WHEEL +0 -0
  31. {payi-0.1.0a125.dist-info → payi-0.1.0a127.dist-info}/licenses/LICENSE +0 -0
@@ -25,14 +25,6 @@ from ..._response import (
25
25
  )
26
26
  from ...pagination import SyncCursorPage, AsyncCursorPage
27
27
  from ..._base_client import AsyncPaginator, make_request_options
28
- from .fixed_cost_resources import (
29
- FixedCostResourcesResource,
30
- AsyncFixedCostResourcesResource,
31
- FixedCostResourcesResourceWithRawResponse,
32
- AsyncFixedCostResourcesResourceWithRawResponse,
33
- FixedCostResourcesResourceWithStreamingResponse,
34
- AsyncFixedCostResourcesResourceWithStreamingResponse,
35
- )
36
28
  from ...types.category_response import CategoryResponse
37
29
  from ...types.category_delete_response import CategoryDeleteResponse
38
30
  from ...types.category_resource_response import CategoryResourceResponse
@@ -46,10 +38,6 @@ class CategoriesResource(SyncAPIResource):
46
38
  def resources(self) -> ResourcesResource:
47
39
  return ResourcesResource(self._client)
48
40
 
49
- @cached_property
50
- def fixed_cost_resources(self) -> FixedCostResourcesResource:
51
- return FixedCostResourcesResource(self._client)
52
-
53
41
  @cached_property
54
42
  def with_raw_response(self) -> CategoriesResourceWithRawResponse:
55
43
  """
@@ -237,10 +225,6 @@ class AsyncCategoriesResource(AsyncAPIResource):
237
225
  def resources(self) -> AsyncResourcesResource:
238
226
  return AsyncResourcesResource(self._client)
239
227
 
240
- @cached_property
241
- def fixed_cost_resources(self) -> AsyncFixedCostResourcesResource:
242
- return AsyncFixedCostResourcesResource(self._client)
243
-
244
228
  @cached_property
245
229
  def with_raw_response(self) -> AsyncCategoriesResourceWithRawResponse:
246
230
  """
@@ -444,10 +428,6 @@ class CategoriesResourceWithRawResponse:
444
428
  def resources(self) -> ResourcesResourceWithRawResponse:
445
429
  return ResourcesResourceWithRawResponse(self._categories.resources)
446
430
 
447
- @cached_property
448
- def fixed_cost_resources(self) -> FixedCostResourcesResourceWithRawResponse:
449
- return FixedCostResourcesResourceWithRawResponse(self._categories.fixed_cost_resources)
450
-
451
431
 
452
432
  class AsyncCategoriesResourceWithRawResponse:
453
433
  def __init__(self, categories: AsyncCategoriesResource) -> None:
@@ -470,10 +450,6 @@ class AsyncCategoriesResourceWithRawResponse:
470
450
  def resources(self) -> AsyncResourcesResourceWithRawResponse:
471
451
  return AsyncResourcesResourceWithRawResponse(self._categories.resources)
472
452
 
473
- @cached_property
474
- def fixed_cost_resources(self) -> AsyncFixedCostResourcesResourceWithRawResponse:
475
- return AsyncFixedCostResourcesResourceWithRawResponse(self._categories.fixed_cost_resources)
476
-
477
453
 
478
454
  class CategoriesResourceWithStreamingResponse:
479
455
  def __init__(self, categories: CategoriesResource) -> None:
@@ -496,10 +472,6 @@ class CategoriesResourceWithStreamingResponse:
496
472
  def resources(self) -> ResourcesResourceWithStreamingResponse:
497
473
  return ResourcesResourceWithStreamingResponse(self._categories.resources)
498
474
 
499
- @cached_property
500
- def fixed_cost_resources(self) -> FixedCostResourcesResourceWithStreamingResponse:
501
- return FixedCostResourcesResourceWithStreamingResponse(self._categories.fixed_cost_resources)
502
-
503
475
 
504
476
  class AsyncCategoriesResourceWithStreamingResponse:
505
477
  def __init__(self, categories: AsyncCategoriesResource) -> None:
@@ -521,7 +493,3 @@ class AsyncCategoriesResourceWithStreamingResponse:
521
493
  @cached_property
522
494
  def resources(self) -> AsyncResourcesResourceWithStreamingResponse:
523
495
  return AsyncResourcesResourceWithStreamingResponse(self._categories.resources)
524
-
525
- @cached_property
526
- def fixed_cost_resources(self) -> AsyncFixedCostResourcesResourceWithStreamingResponse:
527
- return AsyncFixedCostResourcesResourceWithStreamingResponse(self._categories.fixed_cost_resources)
@@ -140,6 +140,7 @@ class ResourcesResource(SyncAPIResource):
140
140
  resource: str,
141
141
  *,
142
142
  category: str,
143
+ active: bool | Omit = omit,
143
144
  cursor: str | Omit = omit,
144
145
  limit: int | Omit = omit,
145
146
  sort_ascending: bool | Omit = omit,
@@ -176,6 +177,7 @@ class ResourcesResource(SyncAPIResource):
176
177
  timeout=timeout,
177
178
  query=maybe_transform(
178
179
  {
180
+ "active": active,
179
181
  "cursor": cursor,
180
182
  "limit": limit,
181
183
  "sort_ascending": sort_ascending,
@@ -341,6 +343,7 @@ class AsyncResourcesResource(AsyncAPIResource):
341
343
  resource: str,
342
344
  *,
343
345
  category: str,
346
+ active: bool | Omit = omit,
344
347
  cursor: str | Omit = omit,
345
348
  limit: int | Omit = omit,
346
349
  sort_ascending: bool | Omit = omit,
@@ -377,6 +380,7 @@ class AsyncResourcesResource(AsyncAPIResource):
377
380
  timeout=timeout,
378
381
  query=maybe_transform(
379
382
  {
383
+ "active": active,
380
384
  "cursor": cursor,
381
385
  "limit": limit,
382
386
  "sort_ascending": sort_ascending,
payi/resources/ingest.py CHANGED
@@ -90,7 +90,7 @@ class IngestResource(SyncAPIResource):
90
90
  end_to_end_latency_ms: Optional[int] | Omit = omit,
91
91
  event_timestamp: Union[str, datetime, None] | Omit = omit,
92
92
  http_status_code: Optional[int] | Omit = omit,
93
- properties: Optional[Dict[str, str]] | Omit = omit,
93
+ properties: Optional[Dict[str, Optional[str]]] | Omit = omit,
94
94
  provider_request_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]] | Omit = omit,
95
95
  provider_request_json: Optional[str] | Omit = omit,
96
96
  provider_request_reasoning_json: Optional[str] | Omit = omit,
@@ -103,8 +103,9 @@ class IngestResource(SyncAPIResource):
103
103
  resource: Optional[str] | Omit = omit,
104
104
  time_to_first_completion_token_ms: Optional[int] | Omit = omit,
105
105
  time_to_first_token_ms: Optional[int] | Omit = omit,
106
- use_case_properties: Optional[Dict[str, str]] | Omit = omit,
106
+ use_case_properties: Optional[Dict[str, Optional[str]]] | Omit = omit,
107
107
  limit_ids: Optional[list[str]] | Omit = omit,
108
+ disable_logging: Optional[bool] | Omit = omit,
108
109
  request_tags: Optional[list[str]] | Omit = omit,
109
110
  use_case_id: Optional[str] | Omit = omit,
110
111
  use_case_name: Optional[str] | Omit = omit,
@@ -134,9 +135,11 @@ class IngestResource(SyncAPIResource):
134
135
 
135
136
  event_timestamp: (str, datetime, None): The timestamp of the event
136
137
 
138
+ disable_logging (bool, optional): Disable logging for the request
139
+
137
140
  limit_ids (list[str], optional): The limit IDs to associate with the request
138
141
 
139
- properties (Dict[str, str], optional): Properties to associate with the request
142
+ properties (Dict[str, Optional[str]], optional): Properties to associate with the request
140
143
 
141
144
  request_tags (list[str], optional): The request tags to associate with the request
142
145
 
@@ -148,7 +151,7 @@ class IngestResource(SyncAPIResource):
148
151
 
149
152
  use_case_version (int, optional): The use case instance version
150
153
 
151
- use_case_properties (Dict[str, str], optional): The use case properties
154
+ use_case_properties (Dict[str, Optional[str]], optional): The use case properties
152
155
 
153
156
  user_id (str, optional): The user id
154
157
 
@@ -214,6 +217,9 @@ class IngestResource(SyncAPIResource):
214
217
  "xProxy-User-ID": user_id,
215
218
  "xProxy-Resource-Scope": resource_scope,
216
219
  "xProxy-Account-Name": account_name,
220
+ "xProxy-Logging-Disable": str(disable_logging)
221
+ if is_given(disable_logging)
222
+ else not_given,
217
223
  }
218
224
  ),
219
225
  **(extra_headers or {}),
@@ -311,7 +317,7 @@ class AsyncIngestResource(AsyncAPIResource):
311
317
  end_to_end_latency_ms: Optional[int] | Omit = omit,
312
318
  event_timestamp: Union[str, datetime, None] | Omit = omit,
313
319
  http_status_code: Optional[int] | Omit = omit,
314
- properties: Optional[Dict[str, str]] | Omit = omit,
320
+ properties: Optional[Dict[str, Optional[str]]] | Omit = omit,
315
321
  provider_request_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]] | Omit = omit,
316
322
  provider_request_json: Optional[str] | Omit = omit,
317
323
  provider_request_reasoning_json: Optional[str] | Omit = omit,
@@ -324,8 +330,9 @@ class AsyncIngestResource(AsyncAPIResource):
324
330
  resource: Optional[str] | Omit = omit,
325
331
  time_to_first_completion_token_ms: Optional[int] | Omit = omit,
326
332
  time_to_first_token_ms: Optional[int] | Omit = omit,
327
- use_case_properties: Optional[Dict[str, str]] | Omit = omit,
333
+ use_case_properties: Optional[Dict[str, Optional[str]]] | Omit = omit,
328
334
  limit_ids: Optional[list[str]] | Omit = omit,
335
+ disable_logging: Optional[bool] | Omit = omit,
329
336
  request_tags: Optional[list[str]] | Omit = omit,
330
337
  use_case_id: Optional[str] | Omit = omit,
331
338
  use_case_name: Optional[str] | Omit = omit,
@@ -354,9 +361,11 @@ class AsyncIngestResource(AsyncAPIResource):
354
361
 
355
362
  event_timestamp: (datetime, None): The timestamp of the event
356
363
 
364
+ disable_logging: (bool, optional): Disable logging for the request
365
+
357
366
  limit_ids (list[str], optional): The limit IDs to associate with the request
358
367
 
359
- properties (Dict[str, str], optional): Properties to associate with the request
368
+ properties (Dict[str, Optional[str]], optional): Properties to associate with the request
360
369
 
361
370
  request_tags (list[str], optional): The request tags to associate with the request
362
371
 
@@ -368,7 +377,7 @@ class AsyncIngestResource(AsyncAPIResource):
368
377
 
369
378
  use_case_version (int, optional): The use case instance version
370
379
 
371
- use_case_properties (Dict[str, str], optional): The use case properties
380
+ use_case_properties (Dict[str, Optional[str]], optional): The use case properties
372
381
 
373
382
  user_id (str, optional): The user id
374
383
 
@@ -434,6 +443,9 @@ class AsyncIngestResource(AsyncAPIResource):
434
443
  else not_given,
435
444
  "xProxy-User-ID": user_id,
436
445
  "xProxy-Resource-Scope": resource_scope,
446
+ "xProxy-Logging-Disable": str(disable_logging)
447
+ if is_given(disable_logging)
448
+ else not_given,
437
449
  }
438
450
  ),
439
451
  **(extra_headers or {}),
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict
5
+ from typing import Dict, Optional
6
6
 
7
7
  import httpx
8
8
 
@@ -47,7 +47,7 @@ class PropertiesResource(SyncAPIResource):
47
47
  self,
48
48
  request_id: str,
49
49
  *,
50
- properties: Dict[str, str],
50
+ properties: Dict[str, Optional[str]],
51
51
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
52
52
  # The extra values given here take precedence over values defined on the client or passed to this method.
53
53
  extra_headers: Headers | None = None,
@@ -103,7 +103,7 @@ class AsyncPropertiesResource(AsyncAPIResource):
103
103
  self,
104
104
  request_id: str,
105
105
  *,
106
- properties: Dict[str, str],
106
+ properties: Dict[str, Optional[str]],
107
107
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
108
108
  # The extra values given here take precedence over values defined on the client or passed to this method.
109
109
  extra_headers: Headers | None = None,
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict
5
+ from typing import Dict, Optional
6
6
 
7
7
  import httpx
8
8
 
@@ -48,7 +48,7 @@ class PropertiesResource(SyncAPIResource):
48
48
  provider_response_id: str,
49
49
  *,
50
50
  category: str,
51
- properties: Dict[str, str],
51
+ properties: Dict[str, Optional[str]],
52
52
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
53
53
  # The extra values given here take precedence over values defined on the client or passed to this method.
54
54
  extra_headers: Headers | None = None,
@@ -109,7 +109,7 @@ class AsyncPropertiesResource(AsyncAPIResource):
109
109
  provider_response_id: str,
110
110
  *,
111
111
  category: str,
112
- properties: Dict[str, str],
112
+ properties: Dict[str, Optional[str]],
113
113
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
114
114
  # The extra values given here take precedence over values defined on the client or passed to this method.
115
115
  extra_headers: Headers | None = None,
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict
5
+ from typing import Dict, Optional
6
6
 
7
7
  import httpx
8
8
 
@@ -47,7 +47,7 @@ class PropertiesResource(SyncAPIResource):
47
47
  self,
48
48
  use_case_id: str,
49
49
  *,
50
- properties: Dict[str, str],
50
+ properties: Dict[str, Optional[str]],
51
51
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
52
52
  # The extra values given here take precedence over values defined on the client or passed to this method.
53
53
  extra_headers: Headers | None = None,
@@ -103,7 +103,7 @@ class AsyncPropertiesResource(AsyncAPIResource):
103
103
  self,
104
104
  use_case_id: str,
105
105
  *,
106
- properties: Dict[str, str],
106
+ properties: Dict[str, Optional[str]],
107
107
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
108
108
  # The extra values given here take precedence over values defined on the client or passed to this method.
109
109
  extra_headers: Headers | None = None,
payi/types/__init__.py CHANGED
@@ -3,9 +3,11 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from .shared import (
6
+ APIError as APIError,
6
7
  IngestUnits as IngestUnits,
7
8
  XproxyError as XproxyError,
8
9
  XproxyResult as XproxyResult,
10
+ PropertiesRequest as PropertiesRequest,
9
11
  PropertiesResponse as PropertiesResponse,
10
12
  PayICommonModelsBudgetManagementCostDetailsBase as PayICommonModelsBudgetManagementCostDetailsBase,
11
13
  PayICommonModelsBudgetManagementCreateLimitBase as PayICommonModelsBudgetManagementCreateLimitBase,
@@ -3,33 +3,16 @@
3
3
  from typing import List, Optional
4
4
  from datetime import datetime
5
5
 
6
- from pydantic import Field as FieldInfo
7
-
8
6
  from .._models import BaseModel
9
- from .shared.xproxy_error import XproxyError
10
-
11
- __all__ = ["BulkIngestResponse", "Error", "ErrorXproxyResult"]
12
-
13
-
14
- class ErrorXproxyResult(BaseModel):
15
- message: str
16
-
17
- status_code: int = FieldInfo(alias="statusCode")
7
+ from .shared.api_error import APIError
18
8
 
19
- xproxy_error: Optional[XproxyError] = None
9
+ __all__ = ["BulkIngestResponse", "Error"]
20
10
 
21
11
 
22
12
  class Error(BaseModel):
23
13
  item_index: Optional[int] = None
24
14
 
25
- xproxy_result: Optional[ErrorXproxyResult] = None
26
- """
27
- Represents an generic error that occurred as a result of processing a request.
28
- APIM returns an (not customizable) error response body of { "statusCode",
29
- "message" } and this class matches this schema. Derived classes may add
30
- additional required fields if these classes are specified as produced as a
31
- return type specific endpoints.
32
- """
15
+ xproxy_result: Optional[APIError] = None
33
16
 
34
17
 
35
18
  class BulkIngestResponse(BaseModel):
@@ -4,4 +4,3 @@ from __future__ import annotations
4
4
 
5
5
  from .resource_list_params import ResourceListParams as ResourceListParams
6
6
  from .resource_create_params import ResourceCreateParams as ResourceCreateParams
7
- from .fixed_cost_resource_create_params import FixedCostResourceCreateParams as FixedCostResourceCreateParams
@@ -2,7 +2,9 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing_extensions import Required, TypedDict
5
+ from typing_extensions import Required, Annotated, TypedDict
6
+
7
+ from ..._utils import PropertyInfo
6
8
 
7
9
  __all__ = ["ResourceListParams"]
8
10
 
@@ -10,6 +12,8 @@ __all__ = ["ResourceListParams"]
10
12
  class ResourceListParams(TypedDict, total=False):
11
13
  category: Required[str]
12
14
 
15
+ active: Annotated[bool, PropertyInfo(alias="Active")]
16
+
13
17
  cursor: str
14
18
 
15
19
  limit: int
@@ -3,9 +3,11 @@
3
3
  from typing import Dict, Optional
4
4
  from datetime import datetime
5
5
 
6
+ from pydantic import Field as FieldInfo
7
+
6
8
  from .._models import BaseModel
7
9
 
8
- __all__ = ["CategoryResourceResponse", "Units"]
10
+ __all__ = ["CategoryResourceResponse", "Units", "AwsBedrockResource", "AzureResource", "GoogleVertexResource"]
9
11
 
10
12
 
11
13
  class Units(BaseModel):
@@ -14,7 +16,21 @@ class Units(BaseModel):
14
16
  output_price: Optional[float] = None
15
17
 
16
18
 
19
+ class AwsBedrockResource(BaseModel):
20
+ api_model_units: int = FieldInfo(alias="model_units")
21
+
22
+
23
+ class AzureResource(BaseModel):
24
+ ptus: int
25
+
26
+
27
+ class GoogleVertexResource(BaseModel):
28
+ gsus: int
29
+
30
+
17
31
  class CategoryResourceResponse(BaseModel):
32
+ active: bool
33
+
18
34
  category: str
19
35
 
20
36
  proxy_allowed: bool
@@ -27,12 +43,24 @@ class CategoryResourceResponse(BaseModel):
27
43
 
28
44
  units: Dict[str, Units]
29
45
 
46
+ aliased_resource: Optional[str] = None
47
+
48
+ aws_bedrock_resource: Optional[AwsBedrockResource] = None
49
+
50
+ azure_resource: Optional[AzureResource] = None
51
+
30
52
  character_billing: Optional[bool] = None
31
53
 
32
54
  cost_per_hour: Optional[float] = None
33
55
 
34
56
  deprecated_timestamp: Optional[datetime] = None
35
57
 
58
+ description: Optional[str] = None
59
+
60
+ end_timestamp: Optional[datetime] = None
61
+
62
+ google_vertex_resource: Optional[GoogleVertexResource] = None
63
+
36
64
  large_context_threshold: Optional[int] = None
37
65
 
38
66
  max_input_units: Optional[int] = None
@@ -40,3 +68,5 @@ class CategoryResourceResponse(BaseModel):
40
68
  max_output_units: Optional[int] = None
41
69
 
42
70
  max_total_units: Optional[int] = None
71
+
72
+ reservation_id: Optional[str] = None
@@ -35,7 +35,7 @@ class IngestEventParam(TypedDict, total=False):
35
35
 
36
36
  limit_ids: Optional[SequenceNotStr[str]]
37
37
 
38
- properties: Optional[Dict[str, str]]
38
+ properties: Optional[Dict[str, Optional[str]]]
39
39
 
40
40
  provider_request_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]]
41
41
 
@@ -65,7 +65,7 @@ class IngestEventParam(TypedDict, total=False):
65
65
 
66
66
  use_case_name: Optional[str]
67
67
 
68
- use_case_properties: Optional[Dict[str, str]]
68
+ use_case_properties: Optional[Dict[str, Optional[str]]]
69
69
 
70
70
  use_case_step: Optional[str]
71
71
 
@@ -25,7 +25,7 @@ class IngestUnitsParams(TypedDict, total=False):
25
25
 
26
26
  http_status_code: Optional[int]
27
27
 
28
- properties: Optional[Dict[str, str]]
28
+ properties: Optional[Dict[str, Optional[str]]]
29
29
 
30
30
  provider_request_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]]
31
31
 
@@ -49,7 +49,7 @@ class IngestUnitsParams(TypedDict, total=False):
49
49
 
50
50
  time_to_first_token_ms: Optional[int]
51
51
 
52
- use_case_properties: Optional[Dict[str, str]]
52
+ use_case_properties: Optional[Dict[str, Optional[str]]]
53
53
 
54
54
  limit_ids: Annotated[Union[list[str], None], PropertyInfo(alias="xProxy-Limit-IDs")]
55
55
 
@@ -2,11 +2,11 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Required, TypedDict
7
7
 
8
8
  __all__ = ["PropertyUpdateParams"]
9
9
 
10
10
 
11
11
  class PropertyUpdateParams(TypedDict, total=False):
12
- properties: Required[Dict[str, str]]
12
+ properties: Required[Dict[str, Optional[str]]]
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Required, TypedDict
7
7
 
8
8
  __all__ = ["PropertyUpdateParams"]
@@ -11,4 +11,4 @@ __all__ = ["PropertyUpdateParams"]
11
11
  class PropertyUpdateParams(TypedDict, total=False):
12
12
  category: Required[str]
13
13
 
14
- properties: Required[Dict[str, str]]
14
+ properties: Required[Dict[str, Optional[str]]]
@@ -1,8 +1,10 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from .api_error import APIError as APIError
3
4
  from .ingest_units import IngestUnits as IngestUnits
4
5
  from .xproxy_error import XproxyError as XproxyError
5
6
  from .xproxy_result import XproxyResult as XproxyResult
7
+ from .properties_request import PropertiesRequest as PropertiesRequest
6
8
  from .properties_response import PropertiesResponse as PropertiesResponse
7
9
  from .pay_i_common_models_budget_management_cost_details_base import (
8
10
  PayICommonModelsBudgetManagementCostDetailsBase as PayICommonModelsBudgetManagementCostDetailsBase,
@@ -0,0 +1,18 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from ..._models import BaseModel
8
+ from .xproxy_error import XproxyError
9
+
10
+ __all__ = ["APIError"]
11
+
12
+
13
+ class APIError(BaseModel):
14
+ message: str
15
+
16
+ status_code: int = FieldInfo(alias="statusCode")
17
+
18
+ xproxy_error: Optional[XproxyError] = None
@@ -0,0 +1,11 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, Optional
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["PropertiesRequest"]
8
+
9
+
10
+ class PropertiesRequest(BaseModel):
11
+ properties: Dict[str, Optional[str]]
@@ -32,6 +32,8 @@ class XproxyResult(BaseModel):
32
32
 
33
33
  cost: Optional[Cost] = None
34
34
 
35
+ duplicate_request: Optional[bool] = None
36
+
35
37
  limits: Optional[Dict[str, Limits]] = None
36
38
 
37
39
  request_id: Optional[str] = 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, Optional
6
6
  from typing_extensions import Required, TypedDict
7
7
 
8
8
  __all__ = ["PropertyUpdateParams"]
9
9
 
10
10
 
11
11
  class PropertyUpdateParams(TypedDict, total=False):
12
- properties: Required[Dict[str, str]]
12
+ properties: Required[Dict[str, Optional[str]]]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: payi
3
- Version: 0.1.0a125
3
+ Version: 0.1.0a127
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