athena-intelligence 0.1.204__py3-none-any.whl → 0.1.206__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 athena-intelligence might be problematic. Click here for more details.
- athena/__init__.py +8 -3
- athena/aop/__init__.py +4 -0
- athena/aop/client.py +201 -0
- athena/aop/raw_client.py +433 -0
- athena/base_client.py +3 -0
- athena/core/client_wrapper.py +2 -2
- athena/errors/bad_request_error.py +1 -2
- athena/tools/raw_client.py +8 -9
- athena/tools/sheets/client.py +118 -0
- athena/tools/sheets/raw_client.py +150 -0
- athena/types/__init__.py +6 -2
- athena/types/aop_async_execute_response_out.py +76 -0
- athena/types/{parent_folder_error.py → aop_execute_request_in.py} +14 -2
- athena/types/aop_execute_response_out.py +76 -0
- {athena_intelligence-0.1.204.dist-info → athena_intelligence-0.1.206.dist-info}/METADATA +1 -1
- {athena_intelligence-0.1.204.dist-info → athena_intelligence-0.1.206.dist-info}/RECORD +17 -12
- {athena_intelligence-0.1.204.dist-info → athena_intelligence-0.1.206.dist-info}/WHEEL +0 -0
athena/base_client.py
CHANGED
|
@@ -4,6 +4,7 @@ import typing
|
|
|
4
4
|
|
|
5
5
|
import httpx
|
|
6
6
|
from .agents.client import AgentsClient, AsyncAgentsClient
|
|
7
|
+
from .aop.client import AopClient, AsyncAopClient
|
|
7
8
|
from .assets.client import AssetsClient, AsyncAssetsClient
|
|
8
9
|
from .core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
9
10
|
from .environment import AthenaEnvironment
|
|
@@ -77,6 +78,7 @@ class BaseAthena:
|
|
|
77
78
|
timeout=_defaulted_timeout,
|
|
78
79
|
)
|
|
79
80
|
self.agents = AgentsClient(client_wrapper=self._client_wrapper)
|
|
81
|
+
self.aop = AopClient(client_wrapper=self._client_wrapper)
|
|
80
82
|
self.assets = AssetsClient(client_wrapper=self._client_wrapper)
|
|
81
83
|
self.query = QueryClient(client_wrapper=self._client_wrapper)
|
|
82
84
|
self.tools = ToolsClient(client_wrapper=self._client_wrapper)
|
|
@@ -148,6 +150,7 @@ class AsyncBaseAthena:
|
|
|
148
150
|
timeout=_defaulted_timeout,
|
|
149
151
|
)
|
|
150
152
|
self.agents = AsyncAgentsClient(client_wrapper=self._client_wrapper)
|
|
153
|
+
self.aop = AsyncAopClient(client_wrapper=self._client_wrapper)
|
|
151
154
|
self.assets = AsyncAssetsClient(client_wrapper=self._client_wrapper)
|
|
152
155
|
self.query = AsyncQueryClient(client_wrapper=self._client_wrapper)
|
|
153
156
|
self.tools = AsyncToolsClient(client_wrapper=self._client_wrapper)
|
athena/core/client_wrapper.py
CHANGED
|
@@ -22,10 +22,10 @@ class BaseClientWrapper:
|
|
|
22
22
|
|
|
23
23
|
def get_headers(self) -> typing.Dict[str, str]:
|
|
24
24
|
headers: typing.Dict[str, str] = {
|
|
25
|
-
"User-Agent": "athena-intelligence/0.1.
|
|
25
|
+
"User-Agent": "athena-intelligence/0.1.206",
|
|
26
26
|
"X-Fern-Language": "Python",
|
|
27
27
|
"X-Fern-SDK-Name": "athena-intelligence",
|
|
28
|
-
"X-Fern-SDK-Version": "0.1.
|
|
28
|
+
"X-Fern-SDK-Version": "0.1.206",
|
|
29
29
|
**(self.get_custom_headers() or {}),
|
|
30
30
|
}
|
|
31
31
|
headers["X-API-KEY"] = self.api_key
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
import typing
|
|
4
4
|
|
|
5
5
|
from ..core.api_error import ApiError
|
|
6
|
-
from ..types.parent_folder_error import ParentFolderError
|
|
7
6
|
|
|
8
7
|
|
|
9
8
|
class BadRequestError(ApiError):
|
|
10
|
-
def __init__(self, body:
|
|
9
|
+
def __init__(self, body: typing.Optional[typing.Any], headers: typing.Optional[typing.Dict[str, str]] = None):
|
|
11
10
|
super().__init__(status_code=400, headers=headers, body=body)
|
athena/tools/raw_client.py
CHANGED
|
@@ -25,7 +25,6 @@ from ..types.data_frame_unknown_format_error import DataFrameUnknownFormatError
|
|
|
25
25
|
from ..types.file_chunk_request_out import FileChunkRequestOut
|
|
26
26
|
from ..types.file_too_large_error import FileTooLargeError
|
|
27
27
|
from ..types.folder_response import FolderResponse
|
|
28
|
-
from ..types.parent_folder_error import ParentFolderError
|
|
29
28
|
from ..types.save_asset_request_out import SaveAssetRequestOut
|
|
30
29
|
from .types.tools_data_frame_request_columns_item import ToolsDataFrameRequestColumnsItem
|
|
31
30
|
|
|
@@ -337,9 +336,9 @@ class RawToolsClient:
|
|
|
337
336
|
raise BadRequestError(
|
|
338
337
|
headers=dict(_response.headers),
|
|
339
338
|
body=typing.cast(
|
|
340
|
-
|
|
339
|
+
typing.Optional[typing.Any],
|
|
341
340
|
parse_obj_as(
|
|
342
|
-
type_=
|
|
341
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
343
342
|
object_=_response.json(),
|
|
344
343
|
),
|
|
345
344
|
),
|
|
@@ -645,9 +644,9 @@ class RawToolsClient:
|
|
|
645
644
|
raise BadRequestError(
|
|
646
645
|
headers=dict(_response.headers),
|
|
647
646
|
body=typing.cast(
|
|
648
|
-
|
|
647
|
+
typing.Optional[typing.Any],
|
|
649
648
|
parse_obj_as(
|
|
650
|
-
type_=
|
|
649
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
651
650
|
object_=_response.json(),
|
|
652
651
|
),
|
|
653
652
|
),
|
|
@@ -984,9 +983,9 @@ class AsyncRawToolsClient:
|
|
|
984
983
|
raise BadRequestError(
|
|
985
984
|
headers=dict(_response.headers),
|
|
986
985
|
body=typing.cast(
|
|
987
|
-
|
|
986
|
+
typing.Optional[typing.Any],
|
|
988
987
|
parse_obj_as(
|
|
989
|
-
type_=
|
|
988
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
990
989
|
object_=_response.json(),
|
|
991
990
|
),
|
|
992
991
|
),
|
|
@@ -1293,9 +1292,9 @@ class AsyncRawToolsClient:
|
|
|
1293
1292
|
raise BadRequestError(
|
|
1294
1293
|
headers=dict(_response.headers),
|
|
1295
1294
|
body=typing.cast(
|
|
1296
|
-
|
|
1295
|
+
typing.Optional[typing.Any],
|
|
1297
1296
|
parse_obj_as(
|
|
1298
|
-
type_=
|
|
1297
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1299
1298
|
object_=_response.json(),
|
|
1300
1299
|
),
|
|
1301
1300
|
),
|
athena/tools/sheets/client.py
CHANGED
|
@@ -930,6 +930,61 @@ class SheetsClient:
|
|
|
930
930
|
)
|
|
931
931
|
return _response.data
|
|
932
932
|
|
|
933
|
+
def insert_table_row(
|
|
934
|
+
self,
|
|
935
|
+
*,
|
|
936
|
+
asset_id: str,
|
|
937
|
+
row_data: typing.Sequence[typing.Dict[str, typing.Optional[str]]],
|
|
938
|
+
table_id: typing.Optional[str] = OMIT,
|
|
939
|
+
table_name: typing.Optional[str] = OMIT,
|
|
940
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
941
|
+
) -> SheetOperationResponse:
|
|
942
|
+
"""
|
|
943
|
+
Insert rows into a table in an Athena spreadsheet.
|
|
944
|
+
|
|
945
|
+
Parameters
|
|
946
|
+
----------
|
|
947
|
+
asset_id : str
|
|
948
|
+
The ID of the spreadsheet asset
|
|
949
|
+
|
|
950
|
+
row_data : typing.Sequence[typing.Dict[str, typing.Optional[str]]]
|
|
951
|
+
Array of row objects where keys are column names and values are cell values
|
|
952
|
+
|
|
953
|
+
table_id : typing.Optional[str]
|
|
954
|
+
Table ID to insert row into
|
|
955
|
+
|
|
956
|
+
table_name : typing.Optional[str]
|
|
957
|
+
Table name to insert row into
|
|
958
|
+
|
|
959
|
+
request_options : typing.Optional[RequestOptions]
|
|
960
|
+
Request-specific configuration.
|
|
961
|
+
|
|
962
|
+
Returns
|
|
963
|
+
-------
|
|
964
|
+
SheetOperationResponse
|
|
965
|
+
Successful Response
|
|
966
|
+
|
|
967
|
+
Examples
|
|
968
|
+
--------
|
|
969
|
+
from athena import Athena
|
|
970
|
+
|
|
971
|
+
client = Athena(
|
|
972
|
+
api_key="YOUR_API_KEY",
|
|
973
|
+
)
|
|
974
|
+
client.tools.sheets.insert_table_row(
|
|
975
|
+
asset_id="asset_id",
|
|
976
|
+
row_data=[{}],
|
|
977
|
+
)
|
|
978
|
+
"""
|
|
979
|
+
_response = self._raw_client.insert_table_row(
|
|
980
|
+
asset_id=asset_id,
|
|
981
|
+
row_data=row_data,
|
|
982
|
+
table_id=table_id,
|
|
983
|
+
table_name=table_name,
|
|
984
|
+
request_options=request_options,
|
|
985
|
+
)
|
|
986
|
+
return _response.data
|
|
987
|
+
|
|
933
988
|
def update_table(
|
|
934
989
|
self,
|
|
935
990
|
*,
|
|
@@ -2048,6 +2103,69 @@ class AsyncSheetsClient:
|
|
|
2048
2103
|
)
|
|
2049
2104
|
return _response.data
|
|
2050
2105
|
|
|
2106
|
+
async def insert_table_row(
|
|
2107
|
+
self,
|
|
2108
|
+
*,
|
|
2109
|
+
asset_id: str,
|
|
2110
|
+
row_data: typing.Sequence[typing.Dict[str, typing.Optional[str]]],
|
|
2111
|
+
table_id: typing.Optional[str] = OMIT,
|
|
2112
|
+
table_name: typing.Optional[str] = OMIT,
|
|
2113
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
2114
|
+
) -> SheetOperationResponse:
|
|
2115
|
+
"""
|
|
2116
|
+
Insert rows into a table in an Athena spreadsheet.
|
|
2117
|
+
|
|
2118
|
+
Parameters
|
|
2119
|
+
----------
|
|
2120
|
+
asset_id : str
|
|
2121
|
+
The ID of the spreadsheet asset
|
|
2122
|
+
|
|
2123
|
+
row_data : typing.Sequence[typing.Dict[str, typing.Optional[str]]]
|
|
2124
|
+
Array of row objects where keys are column names and values are cell values
|
|
2125
|
+
|
|
2126
|
+
table_id : typing.Optional[str]
|
|
2127
|
+
Table ID to insert row into
|
|
2128
|
+
|
|
2129
|
+
table_name : typing.Optional[str]
|
|
2130
|
+
Table name to insert row into
|
|
2131
|
+
|
|
2132
|
+
request_options : typing.Optional[RequestOptions]
|
|
2133
|
+
Request-specific configuration.
|
|
2134
|
+
|
|
2135
|
+
Returns
|
|
2136
|
+
-------
|
|
2137
|
+
SheetOperationResponse
|
|
2138
|
+
Successful Response
|
|
2139
|
+
|
|
2140
|
+
Examples
|
|
2141
|
+
--------
|
|
2142
|
+
import asyncio
|
|
2143
|
+
|
|
2144
|
+
from athena import AsyncAthena
|
|
2145
|
+
|
|
2146
|
+
client = AsyncAthena(
|
|
2147
|
+
api_key="YOUR_API_KEY",
|
|
2148
|
+
)
|
|
2149
|
+
|
|
2150
|
+
|
|
2151
|
+
async def main() -> None:
|
|
2152
|
+
await client.tools.sheets.insert_table_row(
|
|
2153
|
+
asset_id="asset_id",
|
|
2154
|
+
row_data=[{}],
|
|
2155
|
+
)
|
|
2156
|
+
|
|
2157
|
+
|
|
2158
|
+
asyncio.run(main())
|
|
2159
|
+
"""
|
|
2160
|
+
_response = await self._raw_client.insert_table_row(
|
|
2161
|
+
asset_id=asset_id,
|
|
2162
|
+
row_data=row_data,
|
|
2163
|
+
table_id=table_id,
|
|
2164
|
+
table_name=table_name,
|
|
2165
|
+
request_options=request_options,
|
|
2166
|
+
)
|
|
2167
|
+
return _response.data
|
|
2168
|
+
|
|
2051
2169
|
async def update_table(
|
|
2052
2170
|
self,
|
|
2053
2171
|
*,
|
|
@@ -1211,6 +1211,81 @@ class RawSheetsClient:
|
|
|
1211
1211
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1212
1212
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1213
1213
|
|
|
1214
|
+
def insert_table_row(
|
|
1215
|
+
self,
|
|
1216
|
+
*,
|
|
1217
|
+
asset_id: str,
|
|
1218
|
+
row_data: typing.Sequence[typing.Dict[str, typing.Optional[str]]],
|
|
1219
|
+
table_id: typing.Optional[str] = OMIT,
|
|
1220
|
+
table_name: typing.Optional[str] = OMIT,
|
|
1221
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
1222
|
+
) -> HttpResponse[SheetOperationResponse]:
|
|
1223
|
+
"""
|
|
1224
|
+
Insert rows into a table in an Athena spreadsheet.
|
|
1225
|
+
|
|
1226
|
+
Parameters
|
|
1227
|
+
----------
|
|
1228
|
+
asset_id : str
|
|
1229
|
+
The ID of the spreadsheet asset
|
|
1230
|
+
|
|
1231
|
+
row_data : typing.Sequence[typing.Dict[str, typing.Optional[str]]]
|
|
1232
|
+
Array of row objects where keys are column names and values are cell values
|
|
1233
|
+
|
|
1234
|
+
table_id : typing.Optional[str]
|
|
1235
|
+
Table ID to insert row into
|
|
1236
|
+
|
|
1237
|
+
table_name : typing.Optional[str]
|
|
1238
|
+
Table name to insert row into
|
|
1239
|
+
|
|
1240
|
+
request_options : typing.Optional[RequestOptions]
|
|
1241
|
+
Request-specific configuration.
|
|
1242
|
+
|
|
1243
|
+
Returns
|
|
1244
|
+
-------
|
|
1245
|
+
HttpResponse[SheetOperationResponse]
|
|
1246
|
+
Successful Response
|
|
1247
|
+
"""
|
|
1248
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
1249
|
+
"api/v0/tools/sheets/table/insert-row",
|
|
1250
|
+
method="POST",
|
|
1251
|
+
json={
|
|
1252
|
+
"asset_id": asset_id,
|
|
1253
|
+
"row_data": row_data,
|
|
1254
|
+
"table_id": table_id,
|
|
1255
|
+
"table_name": table_name,
|
|
1256
|
+
},
|
|
1257
|
+
headers={
|
|
1258
|
+
"content-type": "application/json",
|
|
1259
|
+
},
|
|
1260
|
+
request_options=request_options,
|
|
1261
|
+
omit=OMIT,
|
|
1262
|
+
)
|
|
1263
|
+
try:
|
|
1264
|
+
if 200 <= _response.status_code < 300:
|
|
1265
|
+
_data = typing.cast(
|
|
1266
|
+
SheetOperationResponse,
|
|
1267
|
+
parse_obj_as(
|
|
1268
|
+
type_=SheetOperationResponse, # type: ignore
|
|
1269
|
+
object_=_response.json(),
|
|
1270
|
+
),
|
|
1271
|
+
)
|
|
1272
|
+
return HttpResponse(response=_response, data=_data)
|
|
1273
|
+
if _response.status_code == 422:
|
|
1274
|
+
raise UnprocessableEntityError(
|
|
1275
|
+
headers=dict(_response.headers),
|
|
1276
|
+
body=typing.cast(
|
|
1277
|
+
typing.Optional[typing.Any],
|
|
1278
|
+
parse_obj_as(
|
|
1279
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1280
|
+
object_=_response.json(),
|
|
1281
|
+
),
|
|
1282
|
+
),
|
|
1283
|
+
)
|
|
1284
|
+
_response_json = _response.json()
|
|
1285
|
+
except JSONDecodeError:
|
|
1286
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1287
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1288
|
+
|
|
1214
1289
|
def update_table(
|
|
1215
1290
|
self,
|
|
1216
1291
|
*,
|
|
@@ -2501,6 +2576,81 @@ class AsyncRawSheetsClient:
|
|
|
2501
2576
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2502
2577
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2503
2578
|
|
|
2579
|
+
async def insert_table_row(
|
|
2580
|
+
self,
|
|
2581
|
+
*,
|
|
2582
|
+
asset_id: str,
|
|
2583
|
+
row_data: typing.Sequence[typing.Dict[str, typing.Optional[str]]],
|
|
2584
|
+
table_id: typing.Optional[str] = OMIT,
|
|
2585
|
+
table_name: typing.Optional[str] = OMIT,
|
|
2586
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
2587
|
+
) -> AsyncHttpResponse[SheetOperationResponse]:
|
|
2588
|
+
"""
|
|
2589
|
+
Insert rows into a table in an Athena spreadsheet.
|
|
2590
|
+
|
|
2591
|
+
Parameters
|
|
2592
|
+
----------
|
|
2593
|
+
asset_id : str
|
|
2594
|
+
The ID of the spreadsheet asset
|
|
2595
|
+
|
|
2596
|
+
row_data : typing.Sequence[typing.Dict[str, typing.Optional[str]]]
|
|
2597
|
+
Array of row objects where keys are column names and values are cell values
|
|
2598
|
+
|
|
2599
|
+
table_id : typing.Optional[str]
|
|
2600
|
+
Table ID to insert row into
|
|
2601
|
+
|
|
2602
|
+
table_name : typing.Optional[str]
|
|
2603
|
+
Table name to insert row into
|
|
2604
|
+
|
|
2605
|
+
request_options : typing.Optional[RequestOptions]
|
|
2606
|
+
Request-specific configuration.
|
|
2607
|
+
|
|
2608
|
+
Returns
|
|
2609
|
+
-------
|
|
2610
|
+
AsyncHttpResponse[SheetOperationResponse]
|
|
2611
|
+
Successful Response
|
|
2612
|
+
"""
|
|
2613
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
2614
|
+
"api/v0/tools/sheets/table/insert-row",
|
|
2615
|
+
method="POST",
|
|
2616
|
+
json={
|
|
2617
|
+
"asset_id": asset_id,
|
|
2618
|
+
"row_data": row_data,
|
|
2619
|
+
"table_id": table_id,
|
|
2620
|
+
"table_name": table_name,
|
|
2621
|
+
},
|
|
2622
|
+
headers={
|
|
2623
|
+
"content-type": "application/json",
|
|
2624
|
+
},
|
|
2625
|
+
request_options=request_options,
|
|
2626
|
+
omit=OMIT,
|
|
2627
|
+
)
|
|
2628
|
+
try:
|
|
2629
|
+
if 200 <= _response.status_code < 300:
|
|
2630
|
+
_data = typing.cast(
|
|
2631
|
+
SheetOperationResponse,
|
|
2632
|
+
parse_obj_as(
|
|
2633
|
+
type_=SheetOperationResponse, # type: ignore
|
|
2634
|
+
object_=_response.json(),
|
|
2635
|
+
),
|
|
2636
|
+
)
|
|
2637
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
2638
|
+
if _response.status_code == 422:
|
|
2639
|
+
raise UnprocessableEntityError(
|
|
2640
|
+
headers=dict(_response.headers),
|
|
2641
|
+
body=typing.cast(
|
|
2642
|
+
typing.Optional[typing.Any],
|
|
2643
|
+
parse_obj_as(
|
|
2644
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2645
|
+
object_=_response.json(),
|
|
2646
|
+
),
|
|
2647
|
+
),
|
|
2648
|
+
)
|
|
2649
|
+
_response_json = _response.json()
|
|
2650
|
+
except JSONDecodeError:
|
|
2651
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2652
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2653
|
+
|
|
2504
2654
|
async def update_table(
|
|
2505
2655
|
self,
|
|
2506
2656
|
*,
|
athena/types/__init__.py
CHANGED
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
+
from .aop_async_execute_response_out import AopAsyncExecuteResponseOut
|
|
6
|
+
from .aop_execute_request_in import AopExecuteRequestIn
|
|
7
|
+
from .aop_execute_response_out import AopExecuteResponseOut
|
|
5
8
|
from .asset_content_request_out import AssetContentRequestOut
|
|
6
9
|
from .asset_node import AssetNode
|
|
7
10
|
from .asset_not_found_error import AssetNotFoundError
|
|
@@ -39,7 +42,6 @@ from .input_message_content_item import (
|
|
|
39
42
|
InputMessageContentItem_Text,
|
|
40
43
|
)
|
|
41
44
|
from .paginated_assets_out import PaginatedAssetsOut
|
|
42
|
-
from .parent_folder_error import ParentFolderError
|
|
43
45
|
from .prompt_message import PromptMessage
|
|
44
46
|
from .public_asset_out import PublicAssetOut
|
|
45
47
|
from .research_agent_response import ResearchAgentResponse
|
|
@@ -51,6 +53,9 @@ from .text_content import TextContent
|
|
|
51
53
|
from .type import Type
|
|
52
54
|
|
|
53
55
|
__all__ = [
|
|
56
|
+
"AopAsyncExecuteResponseOut",
|
|
57
|
+
"AopExecuteRequestIn",
|
|
58
|
+
"AopExecuteResponseOut",
|
|
54
59
|
"AssetContentRequestOut",
|
|
55
60
|
"AssetNode",
|
|
56
61
|
"AssetNotFoundError",
|
|
@@ -88,7 +93,6 @@ __all__ = [
|
|
|
88
93
|
"InputMessageContentItem_ImageUrl",
|
|
89
94
|
"InputMessageContentItem_Text",
|
|
90
95
|
"PaginatedAssetsOut",
|
|
91
|
-
"ParentFolderError",
|
|
92
96
|
"PromptMessage",
|
|
93
97
|
"PublicAssetOut",
|
|
94
98
|
"ResearchAgentResponse",
|
|
@@ -0,0 +1,76 @@
|
|
|
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 AopAsyncExecuteResponseOut(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Response model for async AOP execution.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
aop_asset_id: str = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
ID of the AOP asset that was executed
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
aop_config: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
Full configuration of the AOP asset
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
aop_title: str = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
Title of the AOP asset
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
base_prompt: str = pydantic.Field()
|
|
30
|
+
"""
|
|
31
|
+
Base prompt of the AOP before user inputs were added
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
enabled_tools: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
|
|
35
|
+
"""
|
|
36
|
+
List of tools that were enabled for this execution
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
final_prompt: str = pydantic.Field()
|
|
40
|
+
"""
|
|
41
|
+
Final prompt used for execution including user inputs
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
message: str = pydantic.Field()
|
|
45
|
+
"""
|
|
46
|
+
Status message about the async execution
|
|
47
|
+
"""
|
|
48
|
+
|
|
49
|
+
status: str = pydantic.Field()
|
|
50
|
+
"""
|
|
51
|
+
Status of the execution (always 'started' for async)
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
sync_server: str = pydantic.Field()
|
|
55
|
+
"""
|
|
56
|
+
Sync server URL used for execution
|
|
57
|
+
"""
|
|
58
|
+
|
|
59
|
+
thread_id: str = pydantic.Field()
|
|
60
|
+
"""
|
|
61
|
+
Unique thread ID for tracking the execution
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
trigger_type: str = pydantic.Field()
|
|
65
|
+
"""
|
|
66
|
+
Type of trigger that initiated the execution
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
if IS_PYDANTIC_V2:
|
|
70
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
71
|
+
else:
|
|
72
|
+
|
|
73
|
+
class Config:
|
|
74
|
+
frozen = True
|
|
75
|
+
smart_union = True
|
|
76
|
+
extra = pydantic.Extra.allow
|
|
@@ -6,8 +6,20 @@ import pydantic
|
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
class
|
|
10
|
-
|
|
9
|
+
class AopExecuteRequestIn(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Request model for executing an AOP (Agent Operating Procedure).
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
asset_id: str = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
ID of the existing AOP asset to execute
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
user_inputs: typing.Optional[typing.Dict[str, typing.Optional[str]]] = pydantic.Field(default=None)
|
|
20
|
+
"""
|
|
21
|
+
Optional user inputs to append to the AOP's prompt as key-value pairs
|
|
22
|
+
"""
|
|
11
23
|
|
|
12
24
|
if IS_PYDANTIC_V2:
|
|
13
25
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -0,0 +1,76 @@
|
|
|
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 AopExecuteResponseOut(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Response model for AOP execution.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
aop_asset_id: str = pydantic.Field()
|
|
15
|
+
"""
|
|
16
|
+
ID of the AOP asset that was executed
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
aop_config: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field()
|
|
20
|
+
"""
|
|
21
|
+
Full configuration of the AOP asset
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
aop_title: str = pydantic.Field()
|
|
25
|
+
"""
|
|
26
|
+
Title of the AOP asset
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
base_prompt: str = pydantic.Field()
|
|
30
|
+
"""
|
|
31
|
+
Base prompt of the AOP before user inputs were added
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
enabled_tools: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
|
|
35
|
+
"""
|
|
36
|
+
List of tools that were enabled for this execution
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
final_prompt: str = pydantic.Field()
|
|
40
|
+
"""
|
|
41
|
+
Final prompt used for execution including user inputs
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
response: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field()
|
|
45
|
+
"""
|
|
46
|
+
The execution response from the AOP
|
|
47
|
+
"""
|
|
48
|
+
|
|
49
|
+
status: str = pydantic.Field()
|
|
50
|
+
"""
|
|
51
|
+
Status of the execution (e.g., 'submitted')
|
|
52
|
+
"""
|
|
53
|
+
|
|
54
|
+
sync_server: str = pydantic.Field()
|
|
55
|
+
"""
|
|
56
|
+
Sync server URL used for execution
|
|
57
|
+
"""
|
|
58
|
+
|
|
59
|
+
thread_id: str = pydantic.Field()
|
|
60
|
+
"""
|
|
61
|
+
Unique thread ID for tracking the execution
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
trigger_type: str = pydantic.Field()
|
|
65
|
+
"""
|
|
66
|
+
Type of trigger that initiated the execution
|
|
67
|
+
"""
|
|
68
|
+
|
|
69
|
+
if IS_PYDANTIC_V2:
|
|
70
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
71
|
+
else:
|
|
72
|
+
|
|
73
|
+
class Config:
|
|
74
|
+
frozen = True
|
|
75
|
+
smart_union = True
|
|
76
|
+
extra = pydantic.Extra.allow
|