vellum-ai 0.3.6__py3-none-any.whl → 0.3.7__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 CHANGED
@@ -367,6 +367,7 @@ from .resources import (
367
367
  deployments,
368
368
  document_indexes,
369
369
  documents,
370
+ folder_entities,
370
371
  model_versions,
371
372
  registered_prompts,
372
373
  sandboxes,
@@ -745,6 +746,7 @@ __all__ = [
745
746
  "deployments",
746
747
  "document_indexes",
747
748
  "documents",
749
+ "folder_entities",
748
750
  "model_versions",
749
751
  "registered_prompts",
750
752
  "sandboxes",
vellum/client.py CHANGED
@@ -18,6 +18,7 @@ from .errors.not_found_error import NotFoundError
18
18
  from .resources.deployments.client import AsyncDeploymentsClient, DeploymentsClient
19
19
  from .resources.document_indexes.client import AsyncDocumentIndexesClient, DocumentIndexesClient
20
20
  from .resources.documents.client import AsyncDocumentsClient, DocumentsClient
21
+ from .resources.folder_entities.client import AsyncFolderEntitiesClient, FolderEntitiesClient
21
22
  from .resources.model_versions.client import AsyncModelVersionsClient, ModelVersionsClient
22
23
  from .resources.registered_prompts.client import AsyncRegisteredPromptsClient, RegisteredPromptsClient
23
24
  from .resources.sandboxes.client import AsyncSandboxesClient, SandboxesClient
@@ -67,6 +68,7 @@ class Vellum:
67
68
  self.deployments = DeploymentsClient(client_wrapper=self._client_wrapper)
68
69
  self.document_indexes = DocumentIndexesClient(client_wrapper=self._client_wrapper)
69
70
  self.documents = DocumentsClient(client_wrapper=self._client_wrapper)
71
+ self.folder_entities = FolderEntitiesClient(client_wrapper=self._client_wrapper)
70
72
  self.model_versions = ModelVersionsClient(client_wrapper=self._client_wrapper)
71
73
  self.registered_prompts = RegisteredPromptsClient(client_wrapper=self._client_wrapper)
72
74
  self.sandboxes = SandboxesClient(client_wrapper=self._client_wrapper)
@@ -649,6 +651,7 @@ class AsyncVellum:
649
651
  self.deployments = AsyncDeploymentsClient(client_wrapper=self._client_wrapper)
650
652
  self.document_indexes = AsyncDocumentIndexesClient(client_wrapper=self._client_wrapper)
651
653
  self.documents = AsyncDocumentsClient(client_wrapper=self._client_wrapper)
654
+ self.folder_entities = AsyncFolderEntitiesClient(client_wrapper=self._client_wrapper)
652
655
  self.model_versions = AsyncModelVersionsClient(client_wrapper=self._client_wrapper)
653
656
  self.registered_prompts = AsyncRegisteredPromptsClient(client_wrapper=self._client_wrapper)
654
657
  self.sandboxes = AsyncSandboxesClient(client_wrapper=self._client_wrapper)
@@ -16,7 +16,7 @@ class BaseClientWrapper:
16
16
  headers: typing.Dict[str, str] = {
17
17
  "X-Fern-Language": "Python",
18
18
  "X-Fern-SDK-Name": "vellum-ai",
19
- "X-Fern-SDK-Version": "0.3.6",
19
+ "X-Fern-SDK-Version": "0.3.7",
20
20
  }
21
21
  headers["X_API_KEY"] = self.api_key
22
22
  return headers
@@ -4,6 +4,7 @@ from . import (
4
4
  deployments,
5
5
  document_indexes,
6
6
  documents,
7
+ folder_entities,
7
8
  model_versions,
8
9
  registered_prompts,
9
10
  sandboxes,
@@ -19,6 +20,7 @@ __all__ = [
19
20
  "deployments",
20
21
  "document_indexes",
21
22
  "documents",
23
+ "folder_entities",
22
24
  "model_versions",
23
25
  "registered_prompts",
24
26
  "sandboxes",
@@ -0,0 +1,2 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
@@ -0,0 +1,98 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ import urllib.parse
5
+ from json.decoder import JSONDecodeError
6
+
7
+ from ...core.api_error import ApiError
8
+ from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
9
+ from ...core.jsonable_encoder import jsonable_encoder
10
+
11
+ # this is used as the default value for optional parameters
12
+ OMIT = typing.cast(typing.Any, ...)
13
+
14
+
15
+ class FolderEntitiesClient:
16
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
17
+ self._client_wrapper = client_wrapper
18
+
19
+ def add_entity_to_folder(self, folder_id: str, *, entity_id: str) -> None:
20
+ """
21
+ Add an entity to a specific folder or root directory.
22
+
23
+ Adding an entity to a folder will remove it from any other folders it might have been a member of.
24
+
25
+ Parameters:
26
+ - folder_id: str. The ID of the folder to which the entity should be added. This can be a UUID of a folder, or the name of a root directory (e.g. "PROMPT_SANDBOX").
27
+
28
+ - entity_id: str. The ID of the entity you would like to move.
29
+ ---
30
+ from vellum.client import Vellum
31
+
32
+ client = Vellum(
33
+ api_key="YOUR_API_KEY",
34
+ )
35
+ client.folder_entities.add_entity_to_folder(
36
+ folder_id="folder_id",
37
+ entity_id="entity_id",
38
+ )
39
+ """
40
+ _response = self._client_wrapper.httpx_client.request(
41
+ "POST",
42
+ urllib.parse.urljoin(
43
+ f"{self._client_wrapper.get_environment().default}/", f"v1/folders/{folder_id}/add-entity"
44
+ ),
45
+ json=jsonable_encoder({"entity_id": entity_id}),
46
+ headers=self._client_wrapper.get_headers(),
47
+ timeout=None,
48
+ )
49
+ if 200 <= _response.status_code < 300:
50
+ return
51
+ try:
52
+ _response_json = _response.json()
53
+ except JSONDecodeError:
54
+ raise ApiError(status_code=_response.status_code, body=_response.text)
55
+ raise ApiError(status_code=_response.status_code, body=_response_json)
56
+
57
+
58
+ class AsyncFolderEntitiesClient:
59
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
60
+ self._client_wrapper = client_wrapper
61
+
62
+ async def add_entity_to_folder(self, folder_id: str, *, entity_id: str) -> None:
63
+ """
64
+ Add an entity to a specific folder or root directory.
65
+
66
+ Adding an entity to a folder will remove it from any other folders it might have been a member of.
67
+
68
+ Parameters:
69
+ - folder_id: str. The ID of the folder to which the entity should be added. This can be a UUID of a folder, or the name of a root directory (e.g. "PROMPT_SANDBOX").
70
+
71
+ - entity_id: str. The ID of the entity you would like to move.
72
+ ---
73
+ from vellum.client import AsyncVellum
74
+
75
+ client = AsyncVellum(
76
+ api_key="YOUR_API_KEY",
77
+ )
78
+ await client.folder_entities.add_entity_to_folder(
79
+ folder_id="folder_id",
80
+ entity_id="entity_id",
81
+ )
82
+ """
83
+ _response = await self._client_wrapper.httpx_client.request(
84
+ "POST",
85
+ urllib.parse.urljoin(
86
+ f"{self._client_wrapper.get_environment().default}/", f"v1/folders/{folder_id}/add-entity"
87
+ ),
88
+ json=jsonable_encoder({"entity_id": entity_id}),
89
+ headers=self._client_wrapper.get_headers(),
90
+ timeout=None,
91
+ )
92
+ if 200 <= _response.status_code < 300:
93
+ return
94
+ try:
95
+ _response_json = _response.json()
96
+ except JSONDecodeError:
97
+ raise ApiError(status_code=_response.status_code, body=_response.text)
98
+ raise ApiError(status_code=_response.status_code, body=_response_json)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-ai
3
- Version: 0.3.6
3
+ Version: 0.3.7
4
4
  Summary:
5
5
  Requires-Python: >=3.7,<4.0
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,8 +1,8 @@
1
- vellum/__init__.py,sha256=aLZO9kazzLFke5f7B88oC3peXNupeB23aCL4DymcEKc,25339
2
- vellum/client.py,sha256=AwAWecRomi1ccqhnU8IdyXHh_FvnfVcpGLNYRL5ordY,61052
1
+ vellum/__init__.py,sha256=suJJOLGlcpd1_lryb4KwPCbyyVJ11Fz-heOV3lB0JQQ,25383
2
+ vellum/client.py,sha256=GXr3l2QqlYu7Fb690wuDD-9rnnbqqvcTDpc48bbjTr4,61329
3
3
  vellum/core/__init__.py,sha256=QJS3CJ2TYP2E1Tge0CS6Z7r8LTNzJHQVX1hD3558eP0,519
4
4
  vellum/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
5
- vellum/core/client_wrapper.py,sha256=Qp6Ga-3I9EsMJs9hN96CtQc3hy8vOFVDjejai_mp1jw,1212
5
+ vellum/core/client_wrapper.py,sha256=YQr66uYsp2oKQr0vo4qu84rJSVTUzB2U8oPYkWi8tMM,1212
6
6
  vellum/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
7
7
  vellum/core/jsonable_encoder.py,sha256=MTYkDov2EryHgee4QM46uZiBOuOXK9KTHlBdBwU-CpU,3799
8
8
  vellum/core/remove_none_from_dict.py,sha256=8m91FC3YuVem0Gm9_sXhJ2tGvP33owJJdrqCLEdowGw,330
@@ -14,7 +14,7 @@ vellum/errors/forbidden_error.py,sha256=dgnatOGair3CvxljCE45_qwN_yefzcw2G0vw88wr
14
14
  vellum/errors/internal_server_error.py,sha256=E0rgqJC0-LcetLi1HmSi92KpvNkGSRCIdBeEqT_ln1s,252
15
15
  vellum/errors/not_found_error.py,sha256=P65k-Lm2RuefAVSNLER5hH-4P99SGohKy2cOPSrIxNk,246
16
16
  vellum/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- vellum/resources/__init__.py,sha256=vtYfeQ0Owhn3uLX2j7Y16vrh6-8Y4QkZ1IDu9Dne9Po,631
17
+ vellum/resources/__init__.py,sha256=E7dvnCySQgcXn9AADWlkZw4zNN84-8dH3WZ-BgPclhs,675
18
18
  vellum/resources/deployments/__init__.py,sha256=AE0TcFwLrLBljM0ZDX-pPw4Kqt-1f5JDpIok2HS80QI,157
19
19
  vellum/resources/deployments/client.py,sha256=rqD2zsLBlRwWE619Nb9m3wSEC9DAkz8RLJX8lVx_Ags,10812
20
20
  vellum/resources/deployments/types/__init__.py,sha256=IhwnmoXJ0r_QEhh1b2tBcaAm_x3fWMVuIhYmAapp_ZA,183
@@ -23,6 +23,8 @@ vellum/resources/document_indexes/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8
23
23
  vellum/resources/document_indexes/client.py,sha256=nAZ27OvbZg4d94CW-J8JBImiyClWvGaRhkQeEgwUZGA,10894
24
24
  vellum/resources/documents/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
25
25
  vellum/resources/documents/client.py,sha256=V64IA5_vrjq52i_DUV1LEy4jvcwalww5fYxoiVauabA,17776
26
+ vellum/resources/folder_entities/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
27
+ vellum/resources/folder_entities/client.py,sha256=KBC-YKkUQTE31etwG0D9MJF_VW_KiZ0eCi18JYzLE8s,3748
26
28
  vellum/resources/model_versions/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
27
29
  vellum/resources/model_versions/client.py,sha256=6OQ4x0yqdd3kjjI88HXbJLx1W7qblme4YueHYr7j9pg,3053
28
30
  vellum/resources/registered_prompts/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
@@ -287,7 +289,7 @@ vellum/types/workflow_result_event_output_data_number.py,sha256=5IG_4XZhUZjwCfX1
287
289
  vellum/types/workflow_result_event_output_data_search_results.py,sha256=FZeTLuHIBJp0AZUqBOzzMN4ntf_Q3hKP4m3vIzVq2cQ,1404
288
290
  vellum/types/workflow_result_event_output_data_string.py,sha256=XJ7ZFTS2eqIMwa-zXFPDowu3o3JnRUfxC1MJIk8nPDI,1478
289
291
  vellum/types/workflow_stream_event.py,sha256=OQUSzwoM-OCfWxNzeOVVLsjCue_WWqin3tGMtwvp_rc,873
290
- vellum_ai-0.3.6.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
291
- vellum_ai-0.3.6.dist-info/METADATA,sha256=GpxHGUbIm-b5o8zid8VluwZJTj1i8taug1zDC66Csq8,3486
292
- vellum_ai-0.3.6.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
293
- vellum_ai-0.3.6.dist-info/RECORD,,
292
+ vellum_ai-0.3.7.dist-info/LICENSE,sha256=CcaljEIoOBaU-wItPH4PmM_mDCGpyuUY0Er1BGu5Ti8,1073
293
+ vellum_ai-0.3.7.dist-info/METADATA,sha256=-ckpfJoQ8AQlGQ3m58d4zbzH8bVV-GnvdYwcOTWySnk,3486
294
+ vellum_ai-0.3.7.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
295
+ vellum_ai-0.3.7.dist-info/RECORD,,