payi 0.1.0a94__py3-none-any.whl → 0.1.0a95__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 (38) hide show
  1. payi/_client.py +0 -9
  2. payi/_version.py +1 -1
  3. payi/lib/AnthropicInstrumentor.py +1 -2
  4. payi/lib/BedrockInstrumentor.py +3 -3
  5. payi/lib/instrument.py +2 -2
  6. payi/resources/__init__.py +0 -14
  7. payi/resources/ingest.py +14 -28
  8. payi/resources/limits/limits.py +8 -0
  9. payi/resources/use_cases/kpis.py +1 -177
  10. payi/resources/use_cases/properties.py +5 -5
  11. payi/resources/use_cases/use_cases.py +15 -13
  12. payi/types/__init__.py +3 -2
  13. payi/types/ingest_units_params.py +2 -4
  14. payi/types/limit_create_params.py +2 -2
  15. payi/types/{use_case_instance_response.py → use_case_create_response.py} +2 -2
  16. payi/types/{experience_instance_response.py → use_case_delete_response.py} +3 -3
  17. payi/types/use_case_retrieve_response.py +15 -0
  18. payi/types/use_cases/__init__.py +1 -1
  19. payi/types/use_cases/property_create_response.py +15 -0
  20. {payi-0.1.0a94.dist-info → payi-0.1.0a95.dist-info}/METADATA +1 -1
  21. {payi-0.1.0a94.dist-info → payi-0.1.0a95.dist-info}/RECORD +23 -36
  22. payi/resources/experiences/__init__.py +0 -47
  23. payi/resources/experiences/experiences.py +0 -383
  24. payi/resources/experiences/properties.py +0 -171
  25. payi/resources/experiences/types/__init__.py +0 -33
  26. payi/resources/experiences/types/limit_config.py +0 -272
  27. payi/resources/experiences/types/types.py +0 -581
  28. payi/types/experiences/__init__.py +0 -9
  29. payi/types/experiences/experience_type.py +0 -24
  30. payi/types/experiences/property_create_params.py +0 -12
  31. payi/types/experiences/type_create_params.py +0 -22
  32. payi/types/experiences/type_list_params.py +0 -17
  33. payi/types/experiences/type_update_params.py +0 -14
  34. payi/types/experiences/types/__init__.py +0 -5
  35. payi/types/experiences/types/limit_config_create_params.py +0 -18
  36. payi/types/use_cases/kpi_create_params.py +0 -13
  37. {payi-0.1.0a94.dist-info → payi-0.1.0a95.dist-info}/WHEEL +0 -0
  38. {payi-0.1.0a94.dist-info → payi-0.1.0a95.dist-info}/licenses/LICENSE +0 -0
payi/_client.py CHANGED
@@ -33,7 +33,6 @@ from .resources.limits import limits
33
33
  from .resources.requests import requests
34
34
  from .resources.use_cases import use_cases
35
35
  from .resources.categories import categories
36
- from .resources.experiences import experiences
37
36
 
38
37
  __all__ = ["Timeout", "Transport", "ProxiesTypes", "RequestOptions", "Payi", "AsyncPayi", "Client", "AsyncClient"]
39
38
 
@@ -42,7 +41,6 @@ class Payi(SyncAPIClient):
42
41
  limits: limits.LimitsResource
43
42
  ingest: ingest.IngestResource
44
43
  categories: categories.CategoriesResource
45
- experiences: experiences.ExperiencesResource
46
44
  use_cases: use_cases.UseCasesResource
47
45
  requests: requests.RequestsResource
48
46
  with_raw_response: PayiWithRawResponse
@@ -105,7 +103,6 @@ class Payi(SyncAPIClient):
105
103
  self.limits = limits.LimitsResource(self)
106
104
  self.ingest = ingest.IngestResource(self)
107
105
  self.categories = categories.CategoriesResource(self)
108
- self.experiences = experiences.ExperiencesResource(self)
109
106
  self.use_cases = use_cases.UseCasesResource(self)
110
107
  self.requests = requests.RequestsResource(self)
111
108
  self.with_raw_response = PayiWithRawResponse(self)
@@ -220,7 +217,6 @@ class AsyncPayi(AsyncAPIClient):
220
217
  limits: limits.AsyncLimitsResource
221
218
  ingest: ingest.AsyncIngestResource
222
219
  categories: categories.AsyncCategoriesResource
223
- experiences: experiences.AsyncExperiencesResource
224
220
  use_cases: use_cases.AsyncUseCasesResource
225
221
  requests: requests.AsyncRequestsResource
226
222
  with_raw_response: AsyncPayiWithRawResponse
@@ -283,7 +279,6 @@ class AsyncPayi(AsyncAPIClient):
283
279
  self.limits = limits.AsyncLimitsResource(self)
284
280
  self.ingest = ingest.AsyncIngestResource(self)
285
281
  self.categories = categories.AsyncCategoriesResource(self)
286
- self.experiences = experiences.AsyncExperiencesResource(self)
287
282
  self.use_cases = use_cases.AsyncUseCasesResource(self)
288
283
  self.requests = requests.AsyncRequestsResource(self)
289
284
  self.with_raw_response = AsyncPayiWithRawResponse(self)
@@ -399,7 +394,6 @@ class PayiWithRawResponse:
399
394
  self.limits = limits.LimitsResourceWithRawResponse(client.limits)
400
395
  self.ingest = ingest.IngestResourceWithRawResponse(client.ingest)
401
396
  self.categories = categories.CategoriesResourceWithRawResponse(client.categories)
402
- self.experiences = experiences.ExperiencesResourceWithRawResponse(client.experiences)
403
397
  self.use_cases = use_cases.UseCasesResourceWithRawResponse(client.use_cases)
404
398
  self.requests = requests.RequestsResourceWithRawResponse(client.requests)
405
399
 
@@ -409,7 +403,6 @@ class AsyncPayiWithRawResponse:
409
403
  self.limits = limits.AsyncLimitsResourceWithRawResponse(client.limits)
410
404
  self.ingest = ingest.AsyncIngestResourceWithRawResponse(client.ingest)
411
405
  self.categories = categories.AsyncCategoriesResourceWithRawResponse(client.categories)
412
- self.experiences = experiences.AsyncExperiencesResourceWithRawResponse(client.experiences)
413
406
  self.use_cases = use_cases.AsyncUseCasesResourceWithRawResponse(client.use_cases)
414
407
  self.requests = requests.AsyncRequestsResourceWithRawResponse(client.requests)
415
408
 
@@ -419,7 +412,6 @@ class PayiWithStreamedResponse:
419
412
  self.limits = limits.LimitsResourceWithStreamingResponse(client.limits)
420
413
  self.ingest = ingest.IngestResourceWithStreamingResponse(client.ingest)
421
414
  self.categories = categories.CategoriesResourceWithStreamingResponse(client.categories)
422
- self.experiences = experiences.ExperiencesResourceWithStreamingResponse(client.experiences)
423
415
  self.use_cases = use_cases.UseCasesResourceWithStreamingResponse(client.use_cases)
424
416
  self.requests = requests.RequestsResourceWithStreamingResponse(client.requests)
425
417
 
@@ -429,7 +421,6 @@ class AsyncPayiWithStreamedResponse:
429
421
  self.limits = limits.AsyncLimitsResourceWithStreamingResponse(client.limits)
430
422
  self.ingest = ingest.AsyncIngestResourceWithStreamingResponse(client.ingest)
431
423
  self.categories = categories.AsyncCategoriesResourceWithStreamingResponse(client.categories)
432
- self.experiences = experiences.AsyncExperiencesResourceWithStreamingResponse(client.experiences)
433
424
  self.use_cases = use_cases.AsyncUseCasesResourceWithStreamingResponse(client.use_cases)
434
425
  self.requests = requests.AsyncRequestsResourceWithStreamingResponse(client.requests)
435
426
 
payi/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "payi"
4
- __version__ = "0.1.0-alpha.94" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.95" # x-release-please-version
@@ -265,10 +265,9 @@ def anthropic_process_chunk(request: _ProviderRequest, chunk: 'dict[str, Any]',
265
265
  request._ingest["provider_response_id"] = message.get('id', None)
266
266
 
267
267
  model = message.get('model', None)
268
- if model:
268
+ if model and 'resource' in request._ingest:
269
269
  request._instrumentor._logger.debug(f"Anthropic streaming, reported model: {model}, instrumented model {request._ingest['resource']}")
270
270
 
271
-
272
271
  usage = message['usage']
273
272
  units = request._ingest["units"]
274
273
 
@@ -115,9 +115,9 @@ class InvokeResponseWrapper(ObjectProxy): # type: ignore
115
115
 
116
116
  ingest = self._request._ingest
117
117
 
118
- resource = ingest["resource"]
119
- if not resource:
120
- return
118
+ # resource = ingest["resource"]
119
+ # if not resource:
120
+ # return
121
121
 
122
122
  input: int = 0
123
123
  output: int = 0
payi/lib/instrument.py CHANGED
@@ -361,8 +361,8 @@ class _PayiInstrumentor:
361
361
  # convert the function call builder to a list of function calls
362
362
  ingest_units["provider_response_function_calls"] = list(request._function_call_builder.values())
363
363
 
364
- if 'resource' not in ingest_units or len(ingest_units['resource']) == 0:
365
- ingest_units['resource'] = "system.unknown_model" # type: ignore[unreachable]
364
+ if 'resource' not in ingest_units or ingest_units['resource'] == '':
365
+ ingest_units['resource'] = "system.unknown_model"
366
366
 
367
367
  request_json = ingest_units.get('provider_request_json', "")
368
368
  if request_json and self._instrument_inline_data is False:
@@ -40,14 +40,6 @@ from .categories import (
40
40
  CategoriesResourceWithStreamingResponse,
41
41
  AsyncCategoriesResourceWithStreamingResponse,
42
42
  )
43
- from .experiences import (
44
- ExperiencesResource,
45
- AsyncExperiencesResource,
46
- ExperiencesResourceWithRawResponse,
47
- AsyncExperiencesResourceWithRawResponse,
48
- ExperiencesResourceWithStreamingResponse,
49
- AsyncExperiencesResourceWithStreamingResponse,
50
- )
51
43
 
52
44
  __all__ = [
53
45
  "LimitsResource",
@@ -68,12 +60,6 @@ __all__ = [
68
60
  "AsyncCategoriesResourceWithRawResponse",
69
61
  "CategoriesResourceWithStreamingResponse",
70
62
  "AsyncCategoriesResourceWithStreamingResponse",
71
- "ExperiencesResource",
72
- "AsyncExperiencesResource",
73
- "ExperiencesResourceWithRawResponse",
74
- "AsyncExperiencesResourceWithRawResponse",
75
- "ExperiencesResourceWithStreamingResponse",
76
- "AsyncExperiencesResourceWithStreamingResponse",
77
63
  "UseCasesResource",
78
64
  "AsyncUseCasesResource",
79
65
  "UseCasesResourceWithRawResponse",
payi/resources/ingest.py CHANGED
@@ -107,14 +107,13 @@ class IngestResource(SyncAPIResource):
107
107
  use_case_properties: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
108
108
  limit_ids: Optional[list[str]] | NotGiven = NOT_GIVEN,
109
109
  request_tags: Optional[list[str]] | NotGiven = NOT_GIVEN,
110
- experience_id: Optional[str] | NotGiven = NOT_GIVEN,
111
- experience_name: Optional[str] | NotGiven = NOT_GIVEN,
112
110
  use_case_id: Optional[str] | NotGiven = NOT_GIVEN,
113
111
  use_case_name: Optional[str] | NotGiven = NOT_GIVEN,
114
112
  use_case_step: Optional[str] | NotGiven = NOT_GIVEN,
115
113
  use_case_version: Optional[int] | NotGiven = NOT_GIVEN,
116
114
  user_id: Optional[str] | NotGiven = NOT_GIVEN,
117
115
  resource_scope: Optional[str] | NotGiven = NOT_GIVEN,
116
+ account_name: Optional[str] | NotGiven = NOT_GIVEN,
118
117
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
119
118
  # The extra values given here take precedence over values defined on the client or passed to this method.
120
119
  extra_headers: Headers | None = None,
@@ -140,10 +139,6 @@ class IngestResource(SyncAPIResource):
140
139
 
141
140
  request_tags (list[str], optional): The request tags to associate with the request. Defaults to None.
142
141
 
143
- experience_name (str, optional): DEPRECATED, replaced with use_case_name.
144
-
145
- experience_id (str, optional): DEPRECATED, replaced with use_case_id.
146
-
147
142
  use_case_name (str, optional): The use case name
148
143
 
149
144
  use_case_id (str, optional): The use case instance id
@@ -156,6 +151,8 @@ class IngestResource(SyncAPIResource):
156
151
 
157
152
  resource_scope(str, optional): The scope of the resource
158
153
 
154
+ account_name (str, optional): The account name
155
+
159
156
  extra_headers (Dict[str, str], optional): Additional headers for the request. Defaults to None.
160
157
 
161
158
  extra_query (Dict[str, str], optional): Additional query parameters. Defaults to None.
@@ -186,12 +183,6 @@ class IngestResource(SyncAPIResource):
186
183
  valid_tags = [tag.strip() for tag in request_tags if tag.strip()]
187
184
  valid_tags_str = ",".join(valid_tags) if valid_tags else NOT_GIVEN
188
185
 
189
- if experience_name is None or isinstance(experience_name, NotGiven):
190
- experience_name = NOT_GIVEN
191
-
192
- if experience_id is None or isinstance(experience_id, NotGiven):
193
- experience_id = NOT_GIVEN
194
-
195
186
  if use_case_name is None or isinstance(use_case_name, NotGiven):
196
187
  use_case_name = NOT_GIVEN
197
188
 
@@ -212,11 +203,12 @@ class IngestResource(SyncAPIResource):
212
203
  if resource_scope is None or isinstance(resource_scope, NotGiven):
213
204
  resource_scope = NOT_GIVEN
214
205
 
206
+ if account_name is None or isinstance(account_name, NotGiven):
207
+ account_name = NOT_GIVEN
208
+
215
209
  extra_headers = {
216
210
  **strip_not_given(
217
211
  {
218
- "xProxy-Experience-ID": experience_id,
219
- "xProxy-Experience-Name": experience_name,
220
212
  "xProxy-Limit-IDs": valid_ids_str,
221
213
  "xProxy-Request-Tags": valid_tags_str,
222
214
  "xProxy-UseCase-ID": use_case_id,
@@ -227,6 +219,7 @@ class IngestResource(SyncAPIResource):
227
219
  else NOT_GIVEN,
228
220
  "xProxy-User-ID": user_id,
229
221
  "xProxy-Resource-Scope": resource_scope,
222
+ "xProxy-Account-Name": account_name,
230
223
  }
231
224
  ),
232
225
  **(extra_headers or {}),
@@ -342,14 +335,13 @@ class AsyncIngestResource(AsyncAPIResource):
342
335
  use_case_properties: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
343
336
  limit_ids: Optional[list[str]] | NotGiven = NOT_GIVEN,
344
337
  request_tags: Optional[list[str]] | NotGiven = NOT_GIVEN,
345
- experience_name: Optional[str] | NotGiven = NOT_GIVEN,
346
- experience_id: Optional[str] | NotGiven = NOT_GIVEN,
347
338
  use_case_id: Optional[str] | NotGiven = NOT_GIVEN,
348
339
  use_case_name: Optional[str] | NotGiven = NOT_GIVEN,
349
340
  use_case_step: Optional[str] | NotGiven = NOT_GIVEN,
350
341
  use_case_version: Optional[int] | NotGiven = NOT_GIVEN,
351
342
  user_id: Optional[str] | NotGiven = NOT_GIVEN,
352
343
  resource_scope: Union[str, None] | NotGiven = NOT_GIVEN,
344
+ account_name: Optional[str] | NotGiven = NOT_GIVEN,
353
345
  # The extra values given here take precedence over values defined on the client or passed to this method.
354
346
  extra_headers: Headers | None = None,
355
347
  extra_query: Query | None = None,
@@ -374,10 +366,6 @@ class AsyncIngestResource(AsyncAPIResource):
374
366
 
375
367
  request_tags (list[str], optional): The request tags to associate with the request. Defaults to None.
376
368
 
377
- experience_name (str, optional): DEPRECATED, replaced with use_case_name.
378
-
379
- experience_id (str, optional): DEPRECATED, replaced with use_case_id.
380
-
381
369
  use_case_name (str, optional): The use case name
382
370
 
383
371
  use_case_step (str, optional): The use case step
@@ -390,6 +378,8 @@ class AsyncIngestResource(AsyncAPIResource):
390
378
 
391
379
  resource_scope (str, optional): The scope of the resource
392
380
 
381
+ account_name (str, optional): The account name
382
+
393
383
  extra_headers (Dict[str, str], optional): Additional headers for the request. Defaults to None.
394
384
 
395
385
  extra_query (Dict[str, str], optional): Additional query parameters. Defaults to None.
@@ -420,12 +410,6 @@ class AsyncIngestResource(AsyncAPIResource):
420
410
  valid_tags = [tag.strip() for tag in request_tags if tag.strip()]
421
411
  valid_tags_str = ",".join(valid_tags) if valid_tags else NOT_GIVEN
422
412
 
423
- if experience_name is None or isinstance(experience_name, NotGiven):
424
- experience_name = NOT_GIVEN
425
-
426
- if experience_id is None or isinstance(experience_id, NotGiven):
427
- experience_id = NOT_GIVEN
428
-
429
413
  if use_case_name is None or isinstance(use_case_name, NotGiven):
430
414
  use_case_name = NOT_GIVEN
431
415
 
@@ -446,11 +430,13 @@ class AsyncIngestResource(AsyncAPIResource):
446
430
  if resource_scope is None or isinstance(resource_scope, NotGiven):
447
431
  resource_scope = NOT_GIVEN
448
432
 
433
+ if account_name is None or isinstance(account_name, NotGiven):
434
+ account_name = NOT_GIVEN
435
+
449
436
  extra_headers = {
450
437
  **strip_not_given(
451
438
  {
452
- "xProxy-Experience-ID": experience_id,
453
- "xProxy-Experience-Name": experience_name,
439
+ "xProxy-Account-Name": account_name,
454
440
  "xProxy-Limit-IDs": valid_ids_str,
455
441
  "xProxy-Request-Tags": valid_tags_str,
456
442
  "xProxy-UseCase-ID": use_case_id,
@@ -66,6 +66,8 @@ class LimitsResource(SyncAPIResource):
66
66
  *,
67
67
  limit_name: str,
68
68
  max: float,
69
+ billing_model_id: Optional[str] | NotGiven = NOT_GIVEN,
70
+ limit_basis: Literal["base", "billed"] | NotGiven = NOT_GIVEN,
69
71
  limit_id: Optional[str] | NotGiven = NOT_GIVEN,
70
72
  limit_tags: Optional[List[str]] | NotGiven = NOT_GIVEN,
71
73
  limit_type: Literal["block", "allow"] | NotGiven = NOT_GIVEN,
@@ -95,6 +97,8 @@ class LimitsResource(SyncAPIResource):
95
97
  {
96
98
  "limit_name": limit_name,
97
99
  "max": max,
100
+ "billing_model_id": billing_model_id,
101
+ "limit_basis": limit_basis,
98
102
  "limit_id": limit_id,
99
103
  "limit_tags": limit_tags,
100
104
  "limit_type": limit_type,
@@ -333,6 +337,8 @@ class AsyncLimitsResource(AsyncAPIResource):
333
337
  *,
334
338
  limit_name: str,
335
339
  max: float,
340
+ billing_model_id: Optional[str] | NotGiven = NOT_GIVEN,
341
+ limit_basis: Literal["base", "billed"] | NotGiven = NOT_GIVEN,
336
342
  limit_id: Optional[str] | NotGiven = NOT_GIVEN,
337
343
  limit_tags: Optional[List[str]] | NotGiven = NOT_GIVEN,
338
344
  limit_type: Literal["block", "allow"] | NotGiven = NOT_GIVEN,
@@ -362,6 +368,8 @@ class AsyncLimitsResource(AsyncAPIResource):
362
368
  {
363
369
  "limit_name": limit_name,
364
370
  "max": max,
371
+ "billing_model_id": billing_model_id,
372
+ "limit_basis": limit_basis,
365
373
  "limit_id": limit_id,
366
374
  "limit_tags": limit_tags,
367
375
  "limit_type": limit_type,
@@ -16,7 +16,7 @@ from ..._response import (
16
16
  )
17
17
  from ...pagination import SyncCursorPage, AsyncCursorPage
18
18
  from ..._base_client import AsyncPaginator, make_request_options
19
- from ...types.use_cases import kpi_list_params, kpi_create_params, kpi_update_params
19
+ from ...types.use_cases import kpi_list_params, kpi_update_params
20
20
  from ...types.use_cases.kpi_list_response import KpiListResponse
21
21
 
22
22
  __all__ = ["KpisResource", "AsyncKpisResource"]
@@ -42,45 +42,6 @@ class KpisResource(SyncAPIResource):
42
42
  """
43
43
  return KpisResourceWithStreamingResponse(self)
44
44
 
45
- def create(
46
- self,
47
- kpi_name: str,
48
- *,
49
- use_case_id: str,
50
- score: float | NotGiven = NOT_GIVEN,
51
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
52
- # The extra values given here take precedence over values defined on the client or passed to this method.
53
- extra_headers: Headers | None = None,
54
- extra_query: Query | None = None,
55
- extra_body: Body | None = None,
56
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
57
- ) -> None:
58
- """
59
- Add a KPI to a Use Case instance
60
-
61
- Args:
62
- extra_headers: Send extra headers
63
-
64
- extra_query: Add additional query parameters to the request
65
-
66
- extra_body: Add additional JSON properties to the request
67
-
68
- timeout: Override the client-level default timeout for this request, in seconds
69
- """
70
- if not use_case_id:
71
- raise ValueError(f"Expected a non-empty value for `use_case_id` but received {use_case_id!r}")
72
- if not kpi_name:
73
- raise ValueError(f"Expected a non-empty value for `kpi_name` but received {kpi_name!r}")
74
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
75
- return self._post(
76
- f"/api/v1/use_cases/instances/{use_case_id}/kpis/{kpi_name}",
77
- body=maybe_transform({"score": score}, kpi_create_params.KpiCreateParams),
78
- options=make_request_options(
79
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
80
- ),
81
- cast_to=NoneType,
82
- )
83
-
84
45
  def update(
85
46
  self,
86
47
  kpi_name: str,
@@ -170,43 +131,6 @@ class KpisResource(SyncAPIResource):
170
131
  model=KpiListResponse,
171
132
  )
172
133
 
173
- def delete(
174
- self,
175
- kpi_name: str,
176
- *,
177
- use_case_id: str,
178
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
179
- # The extra values given here take precedence over values defined on the client or passed to this method.
180
- extra_headers: Headers | None = None,
181
- extra_query: Query | None = None,
182
- extra_body: Body | None = None,
183
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
184
- ) -> None:
185
- """
186
- Delete a KPI from a Use Case instance
187
-
188
- Args:
189
- extra_headers: Send extra headers
190
-
191
- extra_query: Add additional query parameters to the request
192
-
193
- extra_body: Add additional JSON properties to the request
194
-
195
- timeout: Override the client-level default timeout for this request, in seconds
196
- """
197
- if not use_case_id:
198
- raise ValueError(f"Expected a non-empty value for `use_case_id` but received {use_case_id!r}")
199
- if not kpi_name:
200
- raise ValueError(f"Expected a non-empty value for `kpi_name` but received {kpi_name!r}")
201
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
202
- return self._delete(
203
- f"/api/v1/use_cases/instances/{use_case_id}/kpis/{kpi_name}",
204
- options=make_request_options(
205
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
206
- ),
207
- cast_to=NoneType,
208
- )
209
-
210
134
 
211
135
  class AsyncKpisResource(AsyncAPIResource):
212
136
  @cached_property
@@ -228,45 +152,6 @@ class AsyncKpisResource(AsyncAPIResource):
228
152
  """
229
153
  return AsyncKpisResourceWithStreamingResponse(self)
230
154
 
231
- async def create(
232
- self,
233
- kpi_name: str,
234
- *,
235
- use_case_id: str,
236
- score: float | NotGiven = NOT_GIVEN,
237
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
238
- # The extra values given here take precedence over values defined on the client or passed to this method.
239
- extra_headers: Headers | None = None,
240
- extra_query: Query | None = None,
241
- extra_body: Body | None = None,
242
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
243
- ) -> None:
244
- """
245
- Add a KPI to a Use Case instance
246
-
247
- Args:
248
- extra_headers: Send extra headers
249
-
250
- extra_query: Add additional query parameters to the request
251
-
252
- extra_body: Add additional JSON properties to the request
253
-
254
- timeout: Override the client-level default timeout for this request, in seconds
255
- """
256
- if not use_case_id:
257
- raise ValueError(f"Expected a non-empty value for `use_case_id` but received {use_case_id!r}")
258
- if not kpi_name:
259
- raise ValueError(f"Expected a non-empty value for `kpi_name` but received {kpi_name!r}")
260
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
261
- return await self._post(
262
- f"/api/v1/use_cases/instances/{use_case_id}/kpis/{kpi_name}",
263
- body=await async_maybe_transform({"score": score}, kpi_create_params.KpiCreateParams),
264
- options=make_request_options(
265
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
266
- ),
267
- cast_to=NoneType,
268
- )
269
-
270
155
  async def update(
271
156
  self,
272
157
  kpi_name: str,
@@ -356,111 +241,50 @@ class AsyncKpisResource(AsyncAPIResource):
356
241
  model=KpiListResponse,
357
242
  )
358
243
 
359
- async def delete(
360
- self,
361
- kpi_name: str,
362
- *,
363
- use_case_id: str,
364
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
365
- # The extra values given here take precedence over values defined on the client or passed to this method.
366
- extra_headers: Headers | None = None,
367
- extra_query: Query | None = None,
368
- extra_body: Body | None = None,
369
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
370
- ) -> None:
371
- """
372
- Delete a KPI from a Use Case instance
373
-
374
- Args:
375
- extra_headers: Send extra headers
376
-
377
- extra_query: Add additional query parameters to the request
378
-
379
- extra_body: Add additional JSON properties to the request
380
-
381
- timeout: Override the client-level default timeout for this request, in seconds
382
- """
383
- if not use_case_id:
384
- raise ValueError(f"Expected a non-empty value for `use_case_id` but received {use_case_id!r}")
385
- if not kpi_name:
386
- raise ValueError(f"Expected a non-empty value for `kpi_name` but received {kpi_name!r}")
387
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
388
- return await self._delete(
389
- f"/api/v1/use_cases/instances/{use_case_id}/kpis/{kpi_name}",
390
- options=make_request_options(
391
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
392
- ),
393
- cast_to=NoneType,
394
- )
395
-
396
244
 
397
245
  class KpisResourceWithRawResponse:
398
246
  def __init__(self, kpis: KpisResource) -> None:
399
247
  self._kpis = kpis
400
248
 
401
- self.create = to_raw_response_wrapper(
402
- kpis.create,
403
- )
404
249
  self.update = to_raw_response_wrapper(
405
250
  kpis.update,
406
251
  )
407
252
  self.list = to_raw_response_wrapper(
408
253
  kpis.list,
409
254
  )
410
- self.delete = to_raw_response_wrapper(
411
- kpis.delete,
412
- )
413
255
 
414
256
 
415
257
  class AsyncKpisResourceWithRawResponse:
416
258
  def __init__(self, kpis: AsyncKpisResource) -> None:
417
259
  self._kpis = kpis
418
260
 
419
- self.create = async_to_raw_response_wrapper(
420
- kpis.create,
421
- )
422
261
  self.update = async_to_raw_response_wrapper(
423
262
  kpis.update,
424
263
  )
425
264
  self.list = async_to_raw_response_wrapper(
426
265
  kpis.list,
427
266
  )
428
- self.delete = async_to_raw_response_wrapper(
429
- kpis.delete,
430
- )
431
267
 
432
268
 
433
269
  class KpisResourceWithStreamingResponse:
434
270
  def __init__(self, kpis: KpisResource) -> None:
435
271
  self._kpis = kpis
436
272
 
437
- self.create = to_streamed_response_wrapper(
438
- kpis.create,
439
- )
440
273
  self.update = to_streamed_response_wrapper(
441
274
  kpis.update,
442
275
  )
443
276
  self.list = to_streamed_response_wrapper(
444
277
  kpis.list,
445
278
  )
446
- self.delete = to_streamed_response_wrapper(
447
- kpis.delete,
448
- )
449
279
 
450
280
 
451
281
  class AsyncKpisResourceWithStreamingResponse:
452
282
  def __init__(self, kpis: AsyncKpisResource) -> None:
453
283
  self._kpis = kpis
454
284
 
455
- self.create = async_to_streamed_response_wrapper(
456
- kpis.create,
457
- )
458
285
  self.update = async_to_streamed_response_wrapper(
459
286
  kpis.update,
460
287
  )
461
288
  self.list = async_to_streamed_response_wrapper(
462
289
  kpis.list,
463
290
  )
464
- self.delete = async_to_streamed_response_wrapper(
465
- kpis.delete,
466
- )
@@ -18,7 +18,7 @@ from ..._response import (
18
18
  )
19
19
  from ..._base_client import make_request_options
20
20
  from ...types.use_cases import property_create_params
21
- from ...types.use_case_instance_response import UseCaseInstanceResponse
21
+ from ...types.use_cases.property_create_response import PropertyCreateResponse
22
22
 
23
23
  __all__ = ["PropertiesResource", "AsyncPropertiesResource"]
24
24
 
@@ -54,7 +54,7 @@ class PropertiesResource(SyncAPIResource):
54
54
  extra_query: Query | None = None,
55
55
  extra_body: Body | None = None,
56
56
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
57
- ) -> UseCaseInstanceResponse:
57
+ ) -> PropertyCreateResponse:
58
58
  """
59
59
  Update a Use Case instance properties
60
60
 
@@ -75,7 +75,7 @@ class PropertiesResource(SyncAPIResource):
75
75
  options=make_request_options(
76
76
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
77
77
  ),
78
- cast_to=UseCaseInstanceResponse,
78
+ cast_to=PropertyCreateResponse,
79
79
  )
80
80
 
81
81
 
@@ -110,7 +110,7 @@ class AsyncPropertiesResource(AsyncAPIResource):
110
110
  extra_query: Query | None = None,
111
111
  extra_body: Body | None = None,
112
112
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
113
- ) -> UseCaseInstanceResponse:
113
+ ) -> PropertyCreateResponse:
114
114
  """
115
115
  Update a Use Case instance properties
116
116
 
@@ -131,7 +131,7 @@ class AsyncPropertiesResource(AsyncAPIResource):
131
131
  options=make_request_options(
132
132
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
133
133
  ),
134
- cast_to=UseCaseInstanceResponse,
134
+ cast_to=PropertyCreateResponse,
135
135
  )
136
136
 
137
137