vellum-ai 1.5.4__py3-none-any.whl → 1.5.6__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.
- vellum/__init__.py +36 -0
- vellum/client/__init__.py +6 -0
- vellum/client/core/client_wrapper.py +2 -2
- vellum/client/reference.md +497 -11
- vellum/client/resources/__init__.py +4 -0
- vellum/client/resources/integration_auth_configs/__init__.py +4 -0
- vellum/client/resources/integration_auth_configs/client.py +186 -0
- vellum/client/resources/integration_auth_configs/raw_client.py +171 -0
- vellum/client/resources/integration_providers/__init__.py +4 -0
- vellum/client/resources/integration_providers/client.py +279 -0
- vellum/client/resources/integration_providers/raw_client.py +255 -0
- vellum/client/resources/integrations/client.py +226 -28
- vellum/client/resources/integrations/raw_client.py +257 -20
- vellum/client/resources/test_suite_runs/client.py +6 -6
- vellum/client/resources/test_suite_runs/raw_client.py +6 -6
- vellum/client/types/__init__.py +32 -0
- vellum/client/types/components_schemas_composio_integration_exec_config.py +5 -0
- vellum/client/types/components_schemas_slim_composio_tool_definition.py +5 -0
- vellum/client/types/composio_integration_exec_config.py +20 -0
- vellum/client/types/composio_tool_definition.py +4 -1
- vellum/client/types/integration_auth_config_integration.py +23 -0
- vellum/client/types/integration_auth_config_integration_credential.py +19 -0
- vellum/client/types/integration_credential_access_type.py +5 -0
- vellum/client/types/integration_name.py +20 -0
- vellum/client/types/integration_provider.py +5 -0
- vellum/client/types/integration_read.py +30 -0
- vellum/client/types/paginated_slim_integration_auth_config_read_list.py +23 -0
- vellum/client/types/paginated_slim_integration_read_list.py +23 -0
- vellum/client/types/paginated_slim_tool_definition_list.py +23 -0
- vellum/client/types/slim_composio_tool_definition.py +23 -0
- vellum/client/types/slim_integration_auth_config_read.py +29 -0
- vellum/client/types/slim_integration_read.py +25 -0
- vellum/client/types/tool_definition_integration.py +23 -0
- vellum/resources/integration_auth_configs/__init__.py +3 -0
- vellum/resources/integration_auth_configs/client.py +3 -0
- vellum/resources/integration_auth_configs/raw_client.py +3 -0
- vellum/resources/integration_providers/__init__.py +3 -0
- vellum/resources/integration_providers/client.py +3 -0
- vellum/resources/integration_providers/raw_client.py +3 -0
- vellum/types/components_schemas_composio_integration_exec_config.py +3 -0
- vellum/types/components_schemas_slim_composio_tool_definition.py +3 -0
- vellum/types/composio_integration_exec_config.py +3 -0
- vellum/types/integration_auth_config_integration.py +3 -0
- vellum/types/integration_auth_config_integration_credential.py +3 -0
- vellum/types/integration_credential_access_type.py +3 -0
- vellum/types/integration_name.py +3 -0
- vellum/types/integration_provider.py +3 -0
- vellum/types/integration_read.py +3 -0
- vellum/types/paginated_slim_integration_auth_config_read_list.py +3 -0
- vellum/types/paginated_slim_integration_read_list.py +3 -0
- vellum/types/paginated_slim_tool_definition_list.py +3 -0
- vellum/types/slim_composio_tool_definition.py +3 -0
- vellum/types/slim_integration_auth_config_read.py +3 -0
- vellum/types/slim_integration_read.py +3 -0
- vellum/types/tool_definition_integration.py +3 -0
- vellum/workflows/integrations/tests/test_vellum_integration_service.py +26 -19
- vellum/workflows/integrations/vellum_integration_service.py +5 -5
- vellum/workflows/nodes/displayable/tool_calling_node/node.py +2 -4
- vellum/workflows/types/definition.py +1 -1
- vellum/workflows/types/tests/test_definition.py +40 -2
- {vellum_ai-1.5.4.dist-info → vellum_ai-1.5.6.dist-info}/METADATA +1 -1
- {vellum_ai-1.5.4.dist-info → vellum_ai-1.5.6.dist-info}/RECORD +66 -21
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_vellum_integration_serialization.py +68 -0
- {vellum_ai-1.5.4.dist-info → vellum_ai-1.5.6.dist-info}/LICENSE +0 -0
- {vellum_ai-1.5.4.dist-info → vellum_ai-1.5.6.dist-info}/WHEEL +0 -0
- {vellum_ai-1.5.4.dist-info → vellum_ai-1.5.6.dist-info}/entry_points.txt +0 -0
@@ -10,8 +10,11 @@ from ...core.jsonable_encoder import jsonable_encoder
|
|
10
10
|
from ...core.pydantic_utilities import parse_obj_as
|
11
11
|
from ...core.request_options import RequestOptions
|
12
12
|
from ...errors.bad_request_error import BadRequestError
|
13
|
+
from ...errors.forbidden_error import ForbiddenError
|
13
14
|
from ...types.components_schemas_composio_execute_tool_response import ComponentsSchemasComposioExecuteToolResponse
|
14
15
|
from ...types.components_schemas_composio_tool_definition import ComponentsSchemasComposioToolDefinition
|
16
|
+
from ...types.integration_read import IntegrationRead
|
17
|
+
from ...types.paginated_slim_integration_read_list import PaginatedSlimIntegrationReadList
|
15
18
|
|
16
19
|
# this is used as the default value for optional parameters
|
17
20
|
OMIT = typing.cast(typing.Any, ...)
|
@@ -23,8 +26,8 @@ class RawIntegrationsClient:
|
|
23
26
|
|
24
27
|
def retrieve_integration_tool_definition(
|
25
28
|
self,
|
26
|
-
|
27
|
-
|
29
|
+
integration_name: str,
|
30
|
+
integration_provider: str,
|
28
31
|
tool_name: str,
|
29
32
|
*,
|
30
33
|
request_options: typing.Optional[RequestOptions] = None,
|
@@ -32,10 +35,10 @@ class RawIntegrationsClient:
|
|
32
35
|
"""
|
33
36
|
Parameters
|
34
37
|
----------
|
35
|
-
|
38
|
+
integration_name : str
|
36
39
|
The integration name
|
37
40
|
|
38
|
-
|
41
|
+
integration_provider : str
|
39
42
|
The integration provider name
|
40
43
|
|
41
44
|
tool_name : str
|
@@ -50,7 +53,7 @@ class RawIntegrationsClient:
|
|
50
53
|
|
51
54
|
"""
|
52
55
|
_response = self._client_wrapper.httpx_client.request(
|
53
|
-
f"integrations/v1/providers/{jsonable_encoder(
|
56
|
+
f"integrations/v1/providers/{jsonable_encoder(integration_provider)}/integrations/{jsonable_encoder(integration_name)}/tools/{jsonable_encoder(tool_name)}",
|
54
57
|
base_url=self._client_wrapper.get_environment().default,
|
55
58
|
method="GET",
|
56
59
|
request_options=request_options,
|
@@ -72,8 +75,8 @@ class RawIntegrationsClient:
|
|
72
75
|
|
73
76
|
def execute_integration_tool(
|
74
77
|
self,
|
75
|
-
|
76
|
-
|
78
|
+
integration_name: str,
|
79
|
+
integration_provider: str,
|
77
80
|
tool_name: str,
|
78
81
|
*,
|
79
82
|
arguments: typing.Dict[str, typing.Optional[typing.Any]],
|
@@ -82,10 +85,10 @@ class RawIntegrationsClient:
|
|
82
85
|
"""
|
83
86
|
Parameters
|
84
87
|
----------
|
85
|
-
|
88
|
+
integration_name : str
|
86
89
|
The integration name
|
87
90
|
|
88
|
-
|
91
|
+
integration_provider : str
|
89
92
|
The integration provider name
|
90
93
|
|
91
94
|
tool_name : str
|
@@ -102,7 +105,7 @@ class RawIntegrationsClient:
|
|
102
105
|
|
103
106
|
"""
|
104
107
|
_response = self._client_wrapper.httpx_client.request(
|
105
|
-
f"integrations/v1/providers/{jsonable_encoder(
|
108
|
+
f"integrations/v1/providers/{jsonable_encoder(integration_provider)}/integrations/{jsonable_encoder(integration_name)}/tools/{jsonable_encoder(tool_name)}/execute",
|
106
109
|
base_url=self._client_wrapper.get_environment().default,
|
107
110
|
method="POST",
|
108
111
|
json={
|
@@ -136,6 +139,123 @@ class RawIntegrationsClient:
|
|
136
139
|
),
|
137
140
|
),
|
138
141
|
)
|
142
|
+
if _response.status_code == 403:
|
143
|
+
raise ForbiddenError(
|
144
|
+
headers=dict(_response.headers),
|
145
|
+
body=typing.cast(
|
146
|
+
typing.Optional[typing.Any],
|
147
|
+
parse_obj_as(
|
148
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
149
|
+
object_=_response.json(),
|
150
|
+
),
|
151
|
+
),
|
152
|
+
)
|
153
|
+
_response_json = _response.json()
|
154
|
+
except JSONDecodeError:
|
155
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
156
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
157
|
+
|
158
|
+
def list(
|
159
|
+
self,
|
160
|
+
*,
|
161
|
+
integration_provider: typing.Optional[typing.Literal["COMPOSIO"]] = None,
|
162
|
+
limit: typing.Optional[int] = None,
|
163
|
+
offset: typing.Optional[int] = None,
|
164
|
+
ordering: typing.Optional[str] = None,
|
165
|
+
search: typing.Optional[str] = None,
|
166
|
+
request_options: typing.Optional[RequestOptions] = None,
|
167
|
+
) -> HttpResponse[PaginatedSlimIntegrationReadList]:
|
168
|
+
"""
|
169
|
+
List all integrations
|
170
|
+
|
171
|
+
Parameters
|
172
|
+
----------
|
173
|
+
integration_provider : typing.Optional[typing.Literal["COMPOSIO"]]
|
174
|
+
* `COMPOSIO` - Composio
|
175
|
+
|
176
|
+
limit : typing.Optional[int]
|
177
|
+
Number of results to return per page.
|
178
|
+
|
179
|
+
offset : typing.Optional[int]
|
180
|
+
The initial index from which to return the results.
|
181
|
+
|
182
|
+
ordering : typing.Optional[str]
|
183
|
+
Which field to use when ordering the results.
|
184
|
+
|
185
|
+
search : typing.Optional[str]
|
186
|
+
A search term.
|
187
|
+
|
188
|
+
request_options : typing.Optional[RequestOptions]
|
189
|
+
Request-specific configuration.
|
190
|
+
|
191
|
+
Returns
|
192
|
+
-------
|
193
|
+
HttpResponse[PaginatedSlimIntegrationReadList]
|
194
|
+
|
195
|
+
"""
|
196
|
+
_response = self._client_wrapper.httpx_client.request(
|
197
|
+
"v1/integrations",
|
198
|
+
base_url=self._client_wrapper.get_environment().default,
|
199
|
+
method="GET",
|
200
|
+
params={
|
201
|
+
"integration_provider": integration_provider,
|
202
|
+
"limit": limit,
|
203
|
+
"offset": offset,
|
204
|
+
"ordering": ordering,
|
205
|
+
"search": search,
|
206
|
+
},
|
207
|
+
request_options=request_options,
|
208
|
+
)
|
209
|
+
try:
|
210
|
+
if 200 <= _response.status_code < 300:
|
211
|
+
_data = typing.cast(
|
212
|
+
PaginatedSlimIntegrationReadList,
|
213
|
+
parse_obj_as(
|
214
|
+
type_=PaginatedSlimIntegrationReadList, # type: ignore
|
215
|
+
object_=_response.json(),
|
216
|
+
),
|
217
|
+
)
|
218
|
+
return HttpResponse(response=_response, data=_data)
|
219
|
+
_response_json = _response.json()
|
220
|
+
except JSONDecodeError:
|
221
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
222
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
223
|
+
|
224
|
+
def retrieve(
|
225
|
+
self, id: str, *, request_options: typing.Optional[RequestOptions] = None
|
226
|
+
) -> HttpResponse[IntegrationRead]:
|
227
|
+
"""
|
228
|
+
Retrieve an integration
|
229
|
+
|
230
|
+
Parameters
|
231
|
+
----------
|
232
|
+
id : str
|
233
|
+
A UUID string identifying this integration.
|
234
|
+
|
235
|
+
request_options : typing.Optional[RequestOptions]
|
236
|
+
Request-specific configuration.
|
237
|
+
|
238
|
+
Returns
|
239
|
+
-------
|
240
|
+
HttpResponse[IntegrationRead]
|
241
|
+
|
242
|
+
"""
|
243
|
+
_response = self._client_wrapper.httpx_client.request(
|
244
|
+
f"v1/integrations/{jsonable_encoder(id)}",
|
245
|
+
base_url=self._client_wrapper.get_environment().default,
|
246
|
+
method="GET",
|
247
|
+
request_options=request_options,
|
248
|
+
)
|
249
|
+
try:
|
250
|
+
if 200 <= _response.status_code < 300:
|
251
|
+
_data = typing.cast(
|
252
|
+
IntegrationRead,
|
253
|
+
parse_obj_as(
|
254
|
+
type_=IntegrationRead, # type: ignore
|
255
|
+
object_=_response.json(),
|
256
|
+
),
|
257
|
+
)
|
258
|
+
return HttpResponse(response=_response, data=_data)
|
139
259
|
_response_json = _response.json()
|
140
260
|
except JSONDecodeError:
|
141
261
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
@@ -148,8 +268,8 @@ class AsyncRawIntegrationsClient:
|
|
148
268
|
|
149
269
|
async def retrieve_integration_tool_definition(
|
150
270
|
self,
|
151
|
-
|
152
|
-
|
271
|
+
integration_name: str,
|
272
|
+
integration_provider: str,
|
153
273
|
tool_name: str,
|
154
274
|
*,
|
155
275
|
request_options: typing.Optional[RequestOptions] = None,
|
@@ -157,10 +277,10 @@ class AsyncRawIntegrationsClient:
|
|
157
277
|
"""
|
158
278
|
Parameters
|
159
279
|
----------
|
160
|
-
|
280
|
+
integration_name : str
|
161
281
|
The integration name
|
162
282
|
|
163
|
-
|
283
|
+
integration_provider : str
|
164
284
|
The integration provider name
|
165
285
|
|
166
286
|
tool_name : str
|
@@ -175,7 +295,7 @@ class AsyncRawIntegrationsClient:
|
|
175
295
|
|
176
296
|
"""
|
177
297
|
_response = await self._client_wrapper.httpx_client.request(
|
178
|
-
f"integrations/v1/providers/{jsonable_encoder(
|
298
|
+
f"integrations/v1/providers/{jsonable_encoder(integration_provider)}/integrations/{jsonable_encoder(integration_name)}/tools/{jsonable_encoder(tool_name)}",
|
179
299
|
base_url=self._client_wrapper.get_environment().default,
|
180
300
|
method="GET",
|
181
301
|
request_options=request_options,
|
@@ -197,8 +317,8 @@ class AsyncRawIntegrationsClient:
|
|
197
317
|
|
198
318
|
async def execute_integration_tool(
|
199
319
|
self,
|
200
|
-
|
201
|
-
|
320
|
+
integration_name: str,
|
321
|
+
integration_provider: str,
|
202
322
|
tool_name: str,
|
203
323
|
*,
|
204
324
|
arguments: typing.Dict[str, typing.Optional[typing.Any]],
|
@@ -207,10 +327,10 @@ class AsyncRawIntegrationsClient:
|
|
207
327
|
"""
|
208
328
|
Parameters
|
209
329
|
----------
|
210
|
-
|
330
|
+
integration_name : str
|
211
331
|
The integration name
|
212
332
|
|
213
|
-
|
333
|
+
integration_provider : str
|
214
334
|
The integration provider name
|
215
335
|
|
216
336
|
tool_name : str
|
@@ -227,7 +347,7 @@ class AsyncRawIntegrationsClient:
|
|
227
347
|
|
228
348
|
"""
|
229
349
|
_response = await self._client_wrapper.httpx_client.request(
|
230
|
-
f"integrations/v1/providers/{jsonable_encoder(
|
350
|
+
f"integrations/v1/providers/{jsonable_encoder(integration_provider)}/integrations/{jsonable_encoder(integration_name)}/tools/{jsonable_encoder(tool_name)}/execute",
|
231
351
|
base_url=self._client_wrapper.get_environment().default,
|
232
352
|
method="POST",
|
233
353
|
json={
|
@@ -261,6 +381,123 @@ class AsyncRawIntegrationsClient:
|
|
261
381
|
),
|
262
382
|
),
|
263
383
|
)
|
384
|
+
if _response.status_code == 403:
|
385
|
+
raise ForbiddenError(
|
386
|
+
headers=dict(_response.headers),
|
387
|
+
body=typing.cast(
|
388
|
+
typing.Optional[typing.Any],
|
389
|
+
parse_obj_as(
|
390
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
391
|
+
object_=_response.json(),
|
392
|
+
),
|
393
|
+
),
|
394
|
+
)
|
395
|
+
_response_json = _response.json()
|
396
|
+
except JSONDecodeError:
|
397
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
398
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
399
|
+
|
400
|
+
async def list(
|
401
|
+
self,
|
402
|
+
*,
|
403
|
+
integration_provider: typing.Optional[typing.Literal["COMPOSIO"]] = None,
|
404
|
+
limit: typing.Optional[int] = None,
|
405
|
+
offset: typing.Optional[int] = None,
|
406
|
+
ordering: typing.Optional[str] = None,
|
407
|
+
search: typing.Optional[str] = None,
|
408
|
+
request_options: typing.Optional[RequestOptions] = None,
|
409
|
+
) -> AsyncHttpResponse[PaginatedSlimIntegrationReadList]:
|
410
|
+
"""
|
411
|
+
List all integrations
|
412
|
+
|
413
|
+
Parameters
|
414
|
+
----------
|
415
|
+
integration_provider : typing.Optional[typing.Literal["COMPOSIO"]]
|
416
|
+
* `COMPOSIO` - Composio
|
417
|
+
|
418
|
+
limit : typing.Optional[int]
|
419
|
+
Number of results to return per page.
|
420
|
+
|
421
|
+
offset : typing.Optional[int]
|
422
|
+
The initial index from which to return the results.
|
423
|
+
|
424
|
+
ordering : typing.Optional[str]
|
425
|
+
Which field to use when ordering the results.
|
426
|
+
|
427
|
+
search : typing.Optional[str]
|
428
|
+
A search term.
|
429
|
+
|
430
|
+
request_options : typing.Optional[RequestOptions]
|
431
|
+
Request-specific configuration.
|
432
|
+
|
433
|
+
Returns
|
434
|
+
-------
|
435
|
+
AsyncHttpResponse[PaginatedSlimIntegrationReadList]
|
436
|
+
|
437
|
+
"""
|
438
|
+
_response = await self._client_wrapper.httpx_client.request(
|
439
|
+
"v1/integrations",
|
440
|
+
base_url=self._client_wrapper.get_environment().default,
|
441
|
+
method="GET",
|
442
|
+
params={
|
443
|
+
"integration_provider": integration_provider,
|
444
|
+
"limit": limit,
|
445
|
+
"offset": offset,
|
446
|
+
"ordering": ordering,
|
447
|
+
"search": search,
|
448
|
+
},
|
449
|
+
request_options=request_options,
|
450
|
+
)
|
451
|
+
try:
|
452
|
+
if 200 <= _response.status_code < 300:
|
453
|
+
_data = typing.cast(
|
454
|
+
PaginatedSlimIntegrationReadList,
|
455
|
+
parse_obj_as(
|
456
|
+
type_=PaginatedSlimIntegrationReadList, # type: ignore
|
457
|
+
object_=_response.json(),
|
458
|
+
),
|
459
|
+
)
|
460
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
461
|
+
_response_json = _response.json()
|
462
|
+
except JSONDecodeError:
|
463
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
464
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
465
|
+
|
466
|
+
async def retrieve(
|
467
|
+
self, id: str, *, request_options: typing.Optional[RequestOptions] = None
|
468
|
+
) -> AsyncHttpResponse[IntegrationRead]:
|
469
|
+
"""
|
470
|
+
Retrieve an integration
|
471
|
+
|
472
|
+
Parameters
|
473
|
+
----------
|
474
|
+
id : str
|
475
|
+
A UUID string identifying this integration.
|
476
|
+
|
477
|
+
request_options : typing.Optional[RequestOptions]
|
478
|
+
Request-specific configuration.
|
479
|
+
|
480
|
+
Returns
|
481
|
+
-------
|
482
|
+
AsyncHttpResponse[IntegrationRead]
|
483
|
+
|
484
|
+
"""
|
485
|
+
_response = await self._client_wrapper.httpx_client.request(
|
486
|
+
f"v1/integrations/{jsonable_encoder(id)}",
|
487
|
+
base_url=self._client_wrapper.get_environment().default,
|
488
|
+
method="GET",
|
489
|
+
request_options=request_options,
|
490
|
+
)
|
491
|
+
try:
|
492
|
+
if 200 <= _response.status_code < 300:
|
493
|
+
_data = typing.cast(
|
494
|
+
IntegrationRead,
|
495
|
+
parse_obj_as(
|
496
|
+
type_=IntegrationRead, # type: ignore
|
497
|
+
object_=_response.json(),
|
498
|
+
),
|
499
|
+
)
|
500
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
264
501
|
_response_json = _response.json()
|
265
502
|
except JSONDecodeError:
|
266
503
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
@@ -139,9 +139,9 @@ class TestSuiteRunsClient:
|
|
139
139
|
|
140
140
|
expand : typing.Optional[typing.Union[str, typing.Sequence[str]]]
|
141
141
|
The response fields to expand for more information.
|
142
|
-
- '
|
143
|
-
- '
|
144
|
-
- '
|
142
|
+
- 'metric_results.metric_label' expands the metric label for each metric result.
|
143
|
+
- 'metric_results.metric_definition' expands the metric definition for each metric result.
|
144
|
+
- 'metric_results.metric_definition.name' expands the metric definition name for each metric result.
|
145
145
|
|
146
146
|
limit : typing.Optional[int]
|
147
147
|
Number of results to return per page.
|
@@ -313,9 +313,9 @@ class AsyncTestSuiteRunsClient:
|
|
313
313
|
|
314
314
|
expand : typing.Optional[typing.Union[str, typing.Sequence[str]]]
|
315
315
|
The response fields to expand for more information.
|
316
|
-
- '
|
317
|
-
- '
|
318
|
-
- '
|
316
|
+
- 'metric_results.metric_label' expands the metric label for each metric result.
|
317
|
+
- 'metric_results.metric_definition' expands the metric definition for each metric result.
|
318
|
+
- 'metric_results.metric_definition.name' expands the metric definition name for each metric result.
|
319
319
|
|
320
320
|
limit : typing.Optional[int]
|
321
321
|
Number of results to return per page.
|
@@ -141,9 +141,9 @@ class RawTestSuiteRunsClient:
|
|
141
141
|
|
142
142
|
expand : typing.Optional[typing.Union[str, typing.Sequence[str]]]
|
143
143
|
The response fields to expand for more information.
|
144
|
-
- '
|
145
|
-
- '
|
146
|
-
- '
|
144
|
+
- 'metric_results.metric_label' expands the metric label for each metric result.
|
145
|
+
- 'metric_results.metric_definition' expands the metric definition for each metric result.
|
146
|
+
- 'metric_results.metric_definition.name' expands the metric definition name for each metric result.
|
147
147
|
|
148
148
|
limit : typing.Optional[int]
|
149
149
|
Number of results to return per page.
|
@@ -309,9 +309,9 @@ class AsyncRawTestSuiteRunsClient:
|
|
309
309
|
|
310
310
|
expand : typing.Optional[typing.Union[str, typing.Sequence[str]]]
|
311
311
|
The response fields to expand for more information.
|
312
|
-
- '
|
313
|
-
- '
|
314
|
-
- '
|
312
|
+
- 'metric_results.metric_label' expands the metric label for each metric result.
|
313
|
+
- 'metric_results.metric_definition' expands the metric definition for each metric result.
|
314
|
+
- 'metric_results.metric_definition.name' expands the metric definition name for each metric result.
|
315
315
|
|
316
316
|
limit : typing.Optional[int]
|
317
317
|
Number of results to return per page.
|
vellum/client/types/__init__.py
CHANGED
@@ -74,12 +74,15 @@ from .compile_prompt_deployment_expand_meta_request import CompilePromptDeployme
|
|
74
74
|
from .compile_prompt_meta import CompilePromptMeta
|
75
75
|
from .components_schemas_composio_execute_tool_request import ComponentsSchemasComposioExecuteToolRequest
|
76
76
|
from .components_schemas_composio_execute_tool_response import ComponentsSchemasComposioExecuteToolResponse
|
77
|
+
from .components_schemas_composio_integration_exec_config import ComponentsSchemasComposioIntegrationExecConfig
|
77
78
|
from .components_schemas_composio_tool_definition import ComponentsSchemasComposioToolDefinition
|
78
79
|
from .components_schemas_pdf_search_result_meta_source import ComponentsSchemasPdfSearchResultMetaSource
|
79
80
|
from .components_schemas_pdf_search_result_meta_source_request import ComponentsSchemasPdfSearchResultMetaSourceRequest
|
80
81
|
from .components_schemas_prompt_version_build_config_sandbox import ComponentsSchemasPromptVersionBuildConfigSandbox
|
82
|
+
from .components_schemas_slim_composio_tool_definition import ComponentsSchemasSlimComposioToolDefinition
|
81
83
|
from .composio_execute_tool_request import ComposioExecuteToolRequest
|
82
84
|
from .composio_execute_tool_response import ComposioExecuteToolResponse
|
85
|
+
from .composio_integration_exec_config import ComposioIntegrationExecConfig
|
83
86
|
from .composio_tool_definition import ComposioToolDefinition
|
84
87
|
from .condition_combinator import ConditionCombinator
|
85
88
|
from .conditional_node_result import ConditionalNodeResult
|
@@ -227,6 +230,12 @@ from .initiated_prompt_execution_meta import InitiatedPromptExecutionMeta
|
|
227
230
|
from .initiated_workflow_node_result_event import InitiatedWorkflowNodeResultEvent
|
228
231
|
from .instructor_vectorizer_config import InstructorVectorizerConfig
|
229
232
|
from .instructor_vectorizer_config_request import InstructorVectorizerConfigRequest
|
233
|
+
from .integration_auth_config_integration import IntegrationAuthConfigIntegration
|
234
|
+
from .integration_auth_config_integration_credential import IntegrationAuthConfigIntegrationCredential
|
235
|
+
from .integration_credential_access_type import IntegrationCredentialAccessType
|
236
|
+
from .integration_name import IntegrationName
|
237
|
+
from .integration_provider import IntegrationProvider
|
238
|
+
from .integration_read import IntegrationRead
|
230
239
|
from .invoked_port import InvokedPort
|
231
240
|
from .iteration_state_enum import IterationStateEnum
|
232
241
|
from .jinja_prompt_block import JinjaPromptBlock
|
@@ -346,6 +355,9 @@ from .paginated_document_index_read_list import PaginatedDocumentIndexReadList
|
|
346
355
|
from .paginated_folder_entity_list import PaginatedFolderEntityList
|
347
356
|
from .paginated_slim_deployment_read_list import PaginatedSlimDeploymentReadList
|
348
357
|
from .paginated_slim_document_list import PaginatedSlimDocumentList
|
358
|
+
from .paginated_slim_integration_auth_config_read_list import PaginatedSlimIntegrationAuthConfigReadList
|
359
|
+
from .paginated_slim_integration_read_list import PaginatedSlimIntegrationReadList
|
360
|
+
from .paginated_slim_tool_definition_list import PaginatedSlimToolDefinitionList
|
349
361
|
from .paginated_slim_workflow_deployment_list import PaginatedSlimWorkflowDeploymentList
|
350
362
|
from .paginated_test_suite_run_execution_list import PaginatedTestSuiteRunExecutionList
|
351
363
|
from .paginated_test_suite_test_case_list import PaginatedTestSuiteTestCaseList
|
@@ -436,9 +448,12 @@ from .sentence_chunker_config import SentenceChunkerConfig
|
|
436
448
|
from .sentence_chunker_config_request import SentenceChunkerConfigRequest
|
437
449
|
from .sentence_chunking import SentenceChunking
|
438
450
|
from .sentence_chunking_request import SentenceChunkingRequest
|
451
|
+
from .slim_composio_tool_definition import SlimComposioToolDefinition
|
439
452
|
from .slim_deployment_read import SlimDeploymentRead
|
440
453
|
from .slim_document import SlimDocument
|
441
454
|
from .slim_document_document_to_document_index import SlimDocumentDocumentToDocumentIndex
|
455
|
+
from .slim_integration_auth_config_read import SlimIntegrationAuthConfigRead
|
456
|
+
from .slim_integration_read import SlimIntegrationRead
|
442
457
|
from .slim_release_review import SlimReleaseReview
|
443
458
|
from .slim_workflow_deployment import SlimWorkflowDeployment
|
444
459
|
from .slim_workflow_execution_read import SlimWorkflowExecutionRead
|
@@ -578,6 +593,7 @@ from .token_overlapping_window_chunker_config import TokenOverlappingWindowChunk
|
|
578
593
|
from .token_overlapping_window_chunker_config_request import TokenOverlappingWindowChunkerConfigRequest
|
579
594
|
from .token_overlapping_window_chunking import TokenOverlappingWindowChunking
|
580
595
|
from .token_overlapping_window_chunking_request import TokenOverlappingWindowChunkingRequest
|
596
|
+
from .tool_definition_integration import ToolDefinitionIntegration
|
581
597
|
from .unit_enum import UnitEnum
|
582
598
|
from .upload_document_response import UploadDocumentResponse
|
583
599
|
from .upsert_test_suite_test_case_request import UpsertTestSuiteTestCaseRequest
|
@@ -768,12 +784,15 @@ __all__ = [
|
|
768
784
|
"CompilePromptMeta",
|
769
785
|
"ComponentsSchemasComposioExecuteToolRequest",
|
770
786
|
"ComponentsSchemasComposioExecuteToolResponse",
|
787
|
+
"ComponentsSchemasComposioIntegrationExecConfig",
|
771
788
|
"ComponentsSchemasComposioToolDefinition",
|
772
789
|
"ComponentsSchemasPdfSearchResultMetaSource",
|
773
790
|
"ComponentsSchemasPdfSearchResultMetaSourceRequest",
|
774
791
|
"ComponentsSchemasPromptVersionBuildConfigSandbox",
|
792
|
+
"ComponentsSchemasSlimComposioToolDefinition",
|
775
793
|
"ComposioExecuteToolRequest",
|
776
794
|
"ComposioExecuteToolResponse",
|
795
|
+
"ComposioIntegrationExecConfig",
|
777
796
|
"ComposioToolDefinition",
|
778
797
|
"ConditionCombinator",
|
779
798
|
"ConditionalNodeResult",
|
@@ -917,6 +936,12 @@ __all__ = [
|
|
917
936
|
"InitiatedWorkflowNodeResultEvent",
|
918
937
|
"InstructorVectorizerConfig",
|
919
938
|
"InstructorVectorizerConfigRequest",
|
939
|
+
"IntegrationAuthConfigIntegration",
|
940
|
+
"IntegrationAuthConfigIntegrationCredential",
|
941
|
+
"IntegrationCredentialAccessType",
|
942
|
+
"IntegrationName",
|
943
|
+
"IntegrationProvider",
|
944
|
+
"IntegrationRead",
|
920
945
|
"InvokedPort",
|
921
946
|
"IterationStateEnum",
|
922
947
|
"JinjaPromptBlock",
|
@@ -1036,6 +1061,9 @@ __all__ = [
|
|
1036
1061
|
"PaginatedFolderEntityList",
|
1037
1062
|
"PaginatedSlimDeploymentReadList",
|
1038
1063
|
"PaginatedSlimDocumentList",
|
1064
|
+
"PaginatedSlimIntegrationAuthConfigReadList",
|
1065
|
+
"PaginatedSlimIntegrationReadList",
|
1066
|
+
"PaginatedSlimToolDefinitionList",
|
1039
1067
|
"PaginatedSlimWorkflowDeploymentList",
|
1040
1068
|
"PaginatedTestSuiteRunExecutionList",
|
1041
1069
|
"PaginatedTestSuiteTestCaseList",
|
@@ -1126,9 +1154,12 @@ __all__ = [
|
|
1126
1154
|
"SentenceChunkerConfigRequest",
|
1127
1155
|
"SentenceChunking",
|
1128
1156
|
"SentenceChunkingRequest",
|
1157
|
+
"SlimComposioToolDefinition",
|
1129
1158
|
"SlimDeploymentRead",
|
1130
1159
|
"SlimDocument",
|
1131
1160
|
"SlimDocumentDocumentToDocumentIndex",
|
1161
|
+
"SlimIntegrationAuthConfigRead",
|
1162
|
+
"SlimIntegrationRead",
|
1132
1163
|
"SlimReleaseReview",
|
1133
1164
|
"SlimWorkflowDeployment",
|
1134
1165
|
"SlimWorkflowExecutionRead",
|
@@ -1252,6 +1283,7 @@ __all__ = [
|
|
1252
1283
|
"TokenOverlappingWindowChunkerConfigRequest",
|
1253
1284
|
"TokenOverlappingWindowChunking",
|
1254
1285
|
"TokenOverlappingWindowChunkingRequest",
|
1286
|
+
"ToolDefinitionIntegration",
|
1255
1287
|
"UnitEnum",
|
1256
1288
|
"UploadDocumentResponse",
|
1257
1289
|
"UpsertTestSuiteTestCaseRequest",
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import typing
|
4
|
+
|
5
|
+
import pydantic
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
7
|
+
|
8
|
+
|
9
|
+
class ComposioIntegrationExecConfig(UniversalBaseModel):
|
10
|
+
type: typing.Literal["COMPOSIO"] = "COMPOSIO"
|
11
|
+
slug: str
|
12
|
+
|
13
|
+
if IS_PYDANTIC_V2:
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
15
|
+
else:
|
16
|
+
|
17
|
+
class Config:
|
18
|
+
frozen = True
|
19
|
+
smart_union = True
|
20
|
+
extra = pydantic.Extra.allow
|
@@ -4,6 +4,7 @@ import typing
|
|
4
4
|
|
5
5
|
import pydantic
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
7
|
+
from .tool_definition_integration import ToolDefinitionIntegration
|
7
8
|
|
8
9
|
|
9
10
|
class ComposioToolDefinition(UniversalBaseModel):
|
@@ -12,9 +13,11 @@ class ComposioToolDefinition(UniversalBaseModel):
|
|
12
13
|
"""
|
13
14
|
|
14
15
|
provider: typing.Literal["COMPOSIO"] = "COMPOSIO"
|
16
|
+
integration: ToolDefinitionIntegration
|
15
17
|
name: str
|
16
18
|
description: str
|
17
|
-
|
19
|
+
input_parameters: typing.Dict[str, typing.Optional[typing.Any]]
|
20
|
+
output_parameters: typing.Dict[str, typing.Optional[typing.Any]]
|
18
21
|
|
19
22
|
if IS_PYDANTIC_V2:
|
20
23
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import typing
|
4
|
+
|
5
|
+
import pydantic
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
7
|
+
from .integration_name import IntegrationName
|
8
|
+
from .integration_provider import IntegrationProvider
|
9
|
+
|
10
|
+
|
11
|
+
class IntegrationAuthConfigIntegration(UniversalBaseModel):
|
12
|
+
id: str
|
13
|
+
provider: IntegrationProvider = "COMPOSIO"
|
14
|
+
name: IntegrationName
|
15
|
+
|
16
|
+
if IS_PYDANTIC_V2:
|
17
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
18
|
+
else:
|
19
|
+
|
20
|
+
class Config:
|
21
|
+
frozen = True
|
22
|
+
smart_union = True
|
23
|
+
extra = pydantic.Extra.allow
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
2
|
+
|
3
|
+
import typing
|
4
|
+
|
5
|
+
import pydantic
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
7
|
+
|
8
|
+
|
9
|
+
class IntegrationAuthConfigIntegrationCredential(UniversalBaseModel):
|
10
|
+
id: str
|
11
|
+
|
12
|
+
if IS_PYDANTIC_V2:
|
13
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
14
|
+
else:
|
15
|
+
|
16
|
+
class Config:
|
17
|
+
frozen = True
|
18
|
+
smart_union = True
|
19
|
+
extra = pydantic.Extra.allow
|