asteroid-odyssey 1.3.6__py3-none-any.whl → 1.3.8__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.
- asteroid_odyssey/__init__.py +4 -2
- asteroid_odyssey/agents_v1_gen/__init__.py +0 -1
- asteroid_odyssey/agents_v1_gen/api/execution_api.py +26 -311
- asteroid_odyssey/agents_v1_gen/models/__init__.py +0 -1
- asteroid_odyssey/agents_v1_gen/models/agent_profile.py +4 -2
- asteroid_odyssey/agents_v1_gen/models/create_agent_profile_request.py +5 -3
- asteroid_odyssey/agents_v1_gen/models/proxy_type.py +1 -0
- asteroid_odyssey/agents_v1_gen/models/update_agent_profile_request.py +4 -2
- asteroid_odyssey/agents_v2_gen/__init__.py +53 -15
- asteroid_odyssey/agents_v2_gen/api/__init__.py +3 -1
- asteroid_odyssey/agents_v2_gen/api/agents_api.py +684 -0
- asteroid_odyssey/agents_v2_gen/api/{default_api.py → execution_api.py} +381 -479
- asteroid_odyssey/agents_v2_gen/api/files_api.py +895 -0
- asteroid_odyssey/agents_v2_gen/models/__init__.py +50 -14
- asteroid_odyssey/agents_v2_gen/models/agents_agent_execute_agent_request.py +103 -0
- asteroid_odyssey/{agents_v1_gen/models/upload_execution_files200_response.py → agents_v2_gen/models/agents_agent_execute_agent_response.py} +11 -13
- asteroid_odyssey/agents_v2_gen/models/agents_execution_action_name.py +93 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_action_completed_info.py +350 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_action_completed_payload.py +25 -3
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_action_failed_payload.py +19 -3
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_action_started_info.py +252 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_action_started_payload.py +23 -3
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_file_added_payload.py +10 -1
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_generic_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_payload_union.py +132 -104
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_playwright_script_generated_payload.py +114 -0
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_terminal.py → agents_execution_activity_reasoning_payload.py} +9 -13
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_status_changed_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_step_completed_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_step_started_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_transitioned_node_payload.py +20 -4
- asteroid_odyssey/agents_v2_gen/models/agents_execution_activity_user_message_received_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_action_started.py → agents_execution_activity_workflow_updated_payload.py} +17 -13
- asteroid_odyssey/agents_v2_gen/models/agents_execution_comment.py +100 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_completed_payload.py +4 -11
- asteroid_odyssey/agents_v2_gen/models/agents_execution_element_file_upload_completed_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_execution_result.py +103 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_ext_api_call_completed_details.py +102 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_ext_get_mail_completed_details.py +98 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_failed_payload.py +8 -2
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_file_added.py → agents_execution_file_list_completed_details.py} +13 -17
- asteroid_odyssey/agents_v2_gen/models/agents_execution_file_read_completed_details.py +100 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_file_stage_completed_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_human_label.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_list_item.py +141 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_llm_call_purpose.py +40 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_llm_call_started_details.py +97 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_nav_to_completed_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_nav_to_started_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_obs_snapshot_with_selectors_completed_details.py +98 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_rules_details.py +87 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scratchpad_read_completed_details.py +98 -0
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_generic.py → agents_execution_scratchpad_read_started_details.py} +20 -17
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scratchpad_write_completed_details.py +104 -0
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_step_started.py → agents_execution_scratchpad_write_started_details.py} +20 -17
- asteroid_odyssey/agents_v2_gen/models/agents_execution_script_hybrid_playwright_completed_details.py +102 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_script_hybrid_playwright_started_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_script_pad_run_function_completed_details.py +102 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_script_playwright_completed_details.py +102 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_script_playwright_started_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scriptpad_read_completed_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scriptpad_read_started_details.py +98 -0
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_action_completed.py → agents_execution_scriptpad_run_function_started_details.py} +21 -18
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scriptpad_search_replace_completed_details.py +106 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scriptpad_search_replace_started_details.py +100 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_scriptpad_write_completed_details.py +102 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_sort_field.py +37 -0
- asteroid_odyssey/agents_v2_gen/models/agents_execution_terminal_payload.py +11 -2
- asteroid_odyssey/agents_v2_gen/models/{activity_payload_union_action_failed.py → agents_execution_util_get_datetime_completed_details.py} +20 -19
- asteroid_odyssey/agents_v2_gen/models/agents_execution_util_get_datetime_started_details.py +96 -0
- asteroid_odyssey/agents_v2_gen/models/{agents_execution_graph_update.py → agents_execution_workflow_update.py} +11 -5
- asteroid_odyssey/agents_v2_gen/models/agents_files_temp_file.py +89 -0
- asteroid_odyssey/agents_v2_gen/models/{agents_execution_activity_graph_updated_payload.py → agents_files_temp_files_response.py} +14 -14
- asteroid_odyssey/agents_v2_gen/models/agents_graph_models_nodes_properties_playwright_script_llm_var.py +92 -0
- asteroid_odyssey/agents_v2_gen/models/agents_graph_models_nodes_properties_playwright_script_llm_var_type.py +38 -0
- asteroid_odyssey/agents_v2_gen/models/agents_graph_models_transitions_transition_type.py +38 -0
- asteroid_odyssey/agents_v2_gen/models/common_os_error.py +87 -0
- asteroid_odyssey/agents_v2_gen/models/executions_list200_response.py +101 -0
- asteroid_odyssey/client.py +204 -33
- {asteroid_odyssey-1.3.6.dist-info → asteroid_odyssey-1.3.8.dist-info}/METADATA +1 -1
- asteroid_odyssey-1.3.8.dist-info/RECORD +132 -0
- asteroid_odyssey/agents_v2_gen/models/activity_payload_union_graph_updated.py +0 -100
- asteroid_odyssey/agents_v2_gen/models/activity_payload_union_status_changed.py +0 -100
- asteroid_odyssey/agents_v2_gen/models/activity_payload_union_step_completed.py +0 -100
- asteroid_odyssey/agents_v2_gen/models/activity_payload_union_transitioned_node.py +0 -100
- asteroid_odyssey/agents_v2_gen/models/activity_payload_union_user_message_received.py +0 -100
- asteroid_odyssey-1.3.6.dist-info/RECORD +0 -95
- {asteroid_odyssey-1.3.6.dist-info → asteroid_odyssey-1.3.8.dist-info}/WHEEL +0 -0
- {asteroid_odyssey-1.3.6.dist-info → asteroid_odyssey-1.3.8.dist-info}/top_level.txt +0 -0
asteroid_odyssey/__init__.py
CHANGED
|
@@ -19,7 +19,8 @@ from .client import (
|
|
|
19
19
|
AsteroidAPIError,
|
|
20
20
|
ExecutionError,
|
|
21
21
|
TimeoutError,
|
|
22
|
-
AgentInteractionResult
|
|
22
|
+
AgentInteractionResult,
|
|
23
|
+
TempFile,
|
|
23
24
|
)
|
|
24
25
|
from .agents_v1_gen import ExecutionResult
|
|
25
26
|
|
|
@@ -45,5 +46,6 @@ __all__ = [
|
|
|
45
46
|
'ExecutionError',
|
|
46
47
|
'TimeoutError',
|
|
47
48
|
'AgentInteractionResult',
|
|
48
|
-
'ExecutionResult'
|
|
49
|
+
'ExecutionResult',
|
|
50
|
+
'TempFile',
|
|
49
51
|
]
|
|
@@ -51,4 +51,3 @@ from asteroid_odyssey.agents_v1_gen.models.proxy_type import ProxyType
|
|
|
51
51
|
from asteroid_odyssey.agents_v1_gen.models.status import Status
|
|
52
52
|
from asteroid_odyssey.agents_v1_gen.models.structured_agent_execution_request import StructuredAgentExecutionRequest
|
|
53
53
|
from asteroid_odyssey.agents_v1_gen.models.update_agent_profile_request import UpdateAgentProfileRequest
|
|
54
|
-
from asteroid_odyssey.agents_v1_gen.models.upload_execution_files200_response import UploadExecutionFiles200Response
|
|
@@ -16,15 +16,14 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
|
16
16
|
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
17
17
|
from typing_extensions import Annotated
|
|
18
18
|
|
|
19
|
-
from pydantic import Field,
|
|
20
|
-
from typing import Any, Dict
|
|
19
|
+
from pydantic import Field, StrictStr
|
|
20
|
+
from typing import Any, Dict
|
|
21
21
|
from typing_extensions import Annotated
|
|
22
22
|
from asteroid_odyssey.agents_v1_gen.models.browser_session_recording_response import BrowserSessionRecordingResponse
|
|
23
23
|
from asteroid_odyssey.agents_v1_gen.models.execution_response import ExecutionResponse
|
|
24
24
|
from asteroid_odyssey.agents_v1_gen.models.execution_result_response import ExecutionResultResponse
|
|
25
25
|
from asteroid_odyssey.agents_v1_gen.models.execution_status_response import ExecutionStatusResponse
|
|
26
26
|
from asteroid_odyssey.agents_v1_gen.models.structured_agent_execution_request import StructuredAgentExecutionRequest
|
|
27
|
-
from asteroid_odyssey.agents_v1_gen.models.upload_execution_files200_response import UploadExecutionFiles200Response
|
|
28
27
|
|
|
29
28
|
from asteroid_odyssey.agents_v1_gen.api_client import ApiClient, RequestSerialized
|
|
30
29
|
from asteroid_odyssey.agents_v1_gen.api_response import ApiResponse
|
|
@@ -363,7 +362,7 @@ class ExecutionApi:
|
|
|
363
362
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
364
363
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
365
364
|
) -> ExecutionResponse:
|
|
366
|
-
"""Execute an agent with structured parameters
|
|
365
|
+
"""(Deprecated) Execute an agent with structured parameters
|
|
367
366
|
|
|
368
367
|
Executes an agent with structured parameters including optional agent profile configuration. This is the recommended method for new integrations.
|
|
369
368
|
|
|
@@ -392,6 +391,7 @@ class ExecutionApi:
|
|
|
392
391
|
:type _host_index: int, optional
|
|
393
392
|
:return: Returns the result object.
|
|
394
393
|
""" # noqa: E501
|
|
394
|
+
warnings.warn("POST /agent/{id}/execute is deprecated.", DeprecationWarning)
|
|
395
395
|
|
|
396
396
|
_param = self._execute_agent_structured_serialize(
|
|
397
397
|
id=id,
|
|
@@ -437,7 +437,7 @@ class ExecutionApi:
|
|
|
437
437
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
438
438
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
439
439
|
) -> ApiResponse[ExecutionResponse]:
|
|
440
|
-
"""Execute an agent with structured parameters
|
|
440
|
+
"""(Deprecated) Execute an agent with structured parameters
|
|
441
441
|
|
|
442
442
|
Executes an agent with structured parameters including optional agent profile configuration. This is the recommended method for new integrations.
|
|
443
443
|
|
|
@@ -466,6 +466,7 @@ class ExecutionApi:
|
|
|
466
466
|
:type _host_index: int, optional
|
|
467
467
|
:return: Returns the result object.
|
|
468
468
|
""" # noqa: E501
|
|
469
|
+
warnings.warn("POST /agent/{id}/execute is deprecated.", DeprecationWarning)
|
|
469
470
|
|
|
470
471
|
_param = self._execute_agent_structured_serialize(
|
|
471
472
|
id=id,
|
|
@@ -511,7 +512,7 @@ class ExecutionApi:
|
|
|
511
512
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
512
513
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
513
514
|
) -> RESTResponseType:
|
|
514
|
-
"""Execute an agent with structured parameters
|
|
515
|
+
"""(Deprecated) Execute an agent with structured parameters
|
|
515
516
|
|
|
516
517
|
Executes an agent with structured parameters including optional agent profile configuration. This is the recommended method for new integrations.
|
|
517
518
|
|
|
@@ -540,6 +541,7 @@ class ExecutionApi:
|
|
|
540
541
|
:type _host_index: int, optional
|
|
541
542
|
:return: Returns the result object.
|
|
542
543
|
""" # noqa: E501
|
|
544
|
+
warnings.warn("POST /agent/{id}/execute is deprecated.", DeprecationWarning)
|
|
543
545
|
|
|
544
546
|
_param = self._execute_agent_structured_serialize(
|
|
545
547
|
id=id,
|
|
@@ -660,7 +662,7 @@ class ExecutionApi:
|
|
|
660
662
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
661
663
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
662
664
|
) -> BrowserSessionRecordingResponse:
|
|
663
|
-
"""Get browser session recording
|
|
665
|
+
"""(Deprecated) Get browser session recording
|
|
664
666
|
|
|
665
667
|
Retrieves the browser session recording URL for a completed execution
|
|
666
668
|
|
|
@@ -687,6 +689,7 @@ class ExecutionApi:
|
|
|
687
689
|
:type _host_index: int, optional
|
|
688
690
|
:return: Returns the result object.
|
|
689
691
|
""" # noqa: E501
|
|
692
|
+
warnings.warn("GET /execution/{id}/browser_session/recording is deprecated.", DeprecationWarning)
|
|
690
693
|
|
|
691
694
|
_param = self._get_browser_session_recording_serialize(
|
|
692
695
|
id=id,
|
|
@@ -729,7 +732,7 @@ class ExecutionApi:
|
|
|
729
732
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
730
733
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
731
734
|
) -> ApiResponse[BrowserSessionRecordingResponse]:
|
|
732
|
-
"""Get browser session recording
|
|
735
|
+
"""(Deprecated) Get browser session recording
|
|
733
736
|
|
|
734
737
|
Retrieves the browser session recording URL for a completed execution
|
|
735
738
|
|
|
@@ -756,6 +759,7 @@ class ExecutionApi:
|
|
|
756
759
|
:type _host_index: int, optional
|
|
757
760
|
:return: Returns the result object.
|
|
758
761
|
""" # noqa: E501
|
|
762
|
+
warnings.warn("GET /execution/{id}/browser_session/recording is deprecated.", DeprecationWarning)
|
|
759
763
|
|
|
760
764
|
_param = self._get_browser_session_recording_serialize(
|
|
761
765
|
id=id,
|
|
@@ -798,7 +802,7 @@ class ExecutionApi:
|
|
|
798
802
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
799
803
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
800
804
|
) -> RESTResponseType:
|
|
801
|
-
"""Get browser session recording
|
|
805
|
+
"""(Deprecated) Get browser session recording
|
|
802
806
|
|
|
803
807
|
Retrieves the browser session recording URL for a completed execution
|
|
804
808
|
|
|
@@ -825,6 +829,7 @@ class ExecutionApi:
|
|
|
825
829
|
:type _host_index: int, optional
|
|
826
830
|
:return: Returns the result object.
|
|
827
831
|
""" # noqa: E501
|
|
832
|
+
warnings.warn("GET /execution/{id}/browser_session/recording is deprecated.", DeprecationWarning)
|
|
828
833
|
|
|
829
834
|
_param = self._get_browser_session_recording_serialize(
|
|
830
835
|
id=id,
|
|
@@ -927,7 +932,7 @@ class ExecutionApi:
|
|
|
927
932
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
928
933
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
929
934
|
) -> ExecutionResultResponse:
|
|
930
|
-
"""Get execution result
|
|
935
|
+
"""(Deprecated) Get execution result
|
|
931
936
|
|
|
932
937
|
|
|
933
938
|
:param id: The ID of the execution (required)
|
|
@@ -953,6 +958,7 @@ class ExecutionApi:
|
|
|
953
958
|
:type _host_index: int, optional
|
|
954
959
|
:return: Returns the result object.
|
|
955
960
|
""" # noqa: E501
|
|
961
|
+
warnings.warn("GET /execution/{id}/result is deprecated.", DeprecationWarning)
|
|
956
962
|
|
|
957
963
|
_param = self._get_execution_result_serialize(
|
|
958
964
|
id=id,
|
|
@@ -995,7 +1001,7 @@ class ExecutionApi:
|
|
|
995
1001
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
996
1002
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
997
1003
|
) -> ApiResponse[ExecutionResultResponse]:
|
|
998
|
-
"""Get execution result
|
|
1004
|
+
"""(Deprecated) Get execution result
|
|
999
1005
|
|
|
1000
1006
|
|
|
1001
1007
|
:param id: The ID of the execution (required)
|
|
@@ -1021,6 +1027,7 @@ class ExecutionApi:
|
|
|
1021
1027
|
:type _host_index: int, optional
|
|
1022
1028
|
:return: Returns the result object.
|
|
1023
1029
|
""" # noqa: E501
|
|
1030
|
+
warnings.warn("GET /execution/{id}/result is deprecated.", DeprecationWarning)
|
|
1024
1031
|
|
|
1025
1032
|
_param = self._get_execution_result_serialize(
|
|
1026
1033
|
id=id,
|
|
@@ -1063,7 +1070,7 @@ class ExecutionApi:
|
|
|
1063
1070
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1064
1071
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1065
1072
|
) -> RESTResponseType:
|
|
1066
|
-
"""Get execution result
|
|
1073
|
+
"""(Deprecated) Get execution result
|
|
1067
1074
|
|
|
1068
1075
|
|
|
1069
1076
|
:param id: The ID of the execution (required)
|
|
@@ -1089,6 +1096,7 @@ class ExecutionApi:
|
|
|
1089
1096
|
:type _host_index: int, optional
|
|
1090
1097
|
:return: Returns the result object.
|
|
1091
1098
|
""" # noqa: E501
|
|
1099
|
+
warnings.warn("GET /execution/{id}/result is deprecated.", DeprecationWarning)
|
|
1092
1100
|
|
|
1093
1101
|
_param = self._get_execution_result_serialize(
|
|
1094
1102
|
id=id,
|
|
@@ -1191,7 +1199,7 @@ class ExecutionApi:
|
|
|
1191
1199
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1192
1200
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1193
1201
|
) -> ExecutionStatusResponse:
|
|
1194
|
-
"""Get execution status
|
|
1202
|
+
"""(Deprecated) Get execution status
|
|
1195
1203
|
|
|
1196
1204
|
|
|
1197
1205
|
:param id: The ID of the execution (required)
|
|
@@ -1217,6 +1225,7 @@ class ExecutionApi:
|
|
|
1217
1225
|
:type _host_index: int, optional
|
|
1218
1226
|
:return: Returns the result object.
|
|
1219
1227
|
""" # noqa: E501
|
|
1228
|
+
warnings.warn("GET /execution/{id}/status is deprecated.", DeprecationWarning)
|
|
1220
1229
|
|
|
1221
1230
|
_param = self._get_execution_status_serialize(
|
|
1222
1231
|
id=id,
|
|
@@ -1259,7 +1268,7 @@ class ExecutionApi:
|
|
|
1259
1268
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1260
1269
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1261
1270
|
) -> ApiResponse[ExecutionStatusResponse]:
|
|
1262
|
-
"""Get execution status
|
|
1271
|
+
"""(Deprecated) Get execution status
|
|
1263
1272
|
|
|
1264
1273
|
|
|
1265
1274
|
:param id: The ID of the execution (required)
|
|
@@ -1285,6 +1294,7 @@ class ExecutionApi:
|
|
|
1285
1294
|
:type _host_index: int, optional
|
|
1286
1295
|
:return: Returns the result object.
|
|
1287
1296
|
""" # noqa: E501
|
|
1297
|
+
warnings.warn("GET /execution/{id}/status is deprecated.", DeprecationWarning)
|
|
1288
1298
|
|
|
1289
1299
|
_param = self._get_execution_status_serialize(
|
|
1290
1300
|
id=id,
|
|
@@ -1327,7 +1337,7 @@ class ExecutionApi:
|
|
|
1327
1337
|
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1328
1338
|
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1329
1339
|
) -> RESTResponseType:
|
|
1330
|
-
"""Get execution status
|
|
1340
|
+
"""(Deprecated) Get execution status
|
|
1331
1341
|
|
|
1332
1342
|
|
|
1333
1343
|
:param id: The ID of the execution (required)
|
|
@@ -1353,6 +1363,7 @@ class ExecutionApi:
|
|
|
1353
1363
|
:type _host_index: int, optional
|
|
1354
1364
|
:return: Returns the result object.
|
|
1355
1365
|
""" # noqa: E501
|
|
1366
|
+
warnings.warn("GET /execution/{id}/status is deprecated.", DeprecationWarning)
|
|
1356
1367
|
|
|
1357
1368
|
_param = self._get_execution_status_serialize(
|
|
1358
1369
|
id=id,
|
|
@@ -1436,299 +1447,3 @@ class ExecutionApi:
|
|
|
1436
1447
|
)
|
|
1437
1448
|
|
|
1438
1449
|
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
@validate_call
|
|
1442
|
-
def upload_execution_files(
|
|
1443
|
-
self,
|
|
1444
|
-
id: Annotated[StrictStr, Field(description="The ID of the execution")],
|
|
1445
|
-
files: Annotated[Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]], Field(description="Files to upload to the execution")] = None,
|
|
1446
|
-
_request_timeout: Union[
|
|
1447
|
-
None,
|
|
1448
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1449
|
-
Tuple[
|
|
1450
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1451
|
-
Annotated[StrictFloat, Field(gt=0)]
|
|
1452
|
-
]
|
|
1453
|
-
] = None,
|
|
1454
|
-
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1455
|
-
_content_type: Optional[StrictStr] = None,
|
|
1456
|
-
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1457
|
-
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1458
|
-
) -> UploadExecutionFiles200Response:
|
|
1459
|
-
"""Upload files to an execution
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
:param id: The ID of the execution (required)
|
|
1463
|
-
:type id: str
|
|
1464
|
-
:param files: Files to upload to the execution
|
|
1465
|
-
:type files: List[bytearray]
|
|
1466
|
-
:param _request_timeout: timeout setting for this request. If one
|
|
1467
|
-
number provided, it will be total request
|
|
1468
|
-
timeout. It can also be a pair (tuple) of
|
|
1469
|
-
(connection, read) timeouts.
|
|
1470
|
-
:type _request_timeout: int, tuple(int, int), optional
|
|
1471
|
-
:param _request_auth: set to override the auth_settings for an a single
|
|
1472
|
-
request; this effectively ignores the
|
|
1473
|
-
authentication in the spec for a single request.
|
|
1474
|
-
:type _request_auth: dict, optional
|
|
1475
|
-
:param _content_type: force content-type for the request.
|
|
1476
|
-
:type _content_type: str, Optional
|
|
1477
|
-
:param _headers: set to override the headers for a single
|
|
1478
|
-
request; this effectively ignores the headers
|
|
1479
|
-
in the spec for a single request.
|
|
1480
|
-
:type _headers: dict, optional
|
|
1481
|
-
:param _host_index: set to override the host_index for a single
|
|
1482
|
-
request; this effectively ignores the host_index
|
|
1483
|
-
in the spec for a single request.
|
|
1484
|
-
:type _host_index: int, optional
|
|
1485
|
-
:return: Returns the result object.
|
|
1486
|
-
""" # noqa: E501
|
|
1487
|
-
|
|
1488
|
-
_param = self._upload_execution_files_serialize(
|
|
1489
|
-
id=id,
|
|
1490
|
-
files=files,
|
|
1491
|
-
_request_auth=_request_auth,
|
|
1492
|
-
_content_type=_content_type,
|
|
1493
|
-
_headers=_headers,
|
|
1494
|
-
_host_index=_host_index
|
|
1495
|
-
)
|
|
1496
|
-
|
|
1497
|
-
_response_types_map: Dict[str, Optional[str]] = {
|
|
1498
|
-
'200': "UploadExecutionFiles200Response",
|
|
1499
|
-
'400': "ErrorResponse",
|
|
1500
|
-
'401': "ErrorResponse",
|
|
1501
|
-
'404': "ErrorResponse",
|
|
1502
|
-
}
|
|
1503
|
-
response_data = self.api_client.call_api(
|
|
1504
|
-
*_param,
|
|
1505
|
-
_request_timeout=_request_timeout
|
|
1506
|
-
)
|
|
1507
|
-
response_data.read()
|
|
1508
|
-
return self.api_client.response_deserialize(
|
|
1509
|
-
response_data=response_data,
|
|
1510
|
-
response_types_map=_response_types_map,
|
|
1511
|
-
).data
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
@validate_call
|
|
1515
|
-
def upload_execution_files_with_http_info(
|
|
1516
|
-
self,
|
|
1517
|
-
id: Annotated[StrictStr, Field(description="The ID of the execution")],
|
|
1518
|
-
files: Annotated[Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]], Field(description="Files to upload to the execution")] = None,
|
|
1519
|
-
_request_timeout: Union[
|
|
1520
|
-
None,
|
|
1521
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1522
|
-
Tuple[
|
|
1523
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1524
|
-
Annotated[StrictFloat, Field(gt=0)]
|
|
1525
|
-
]
|
|
1526
|
-
] = None,
|
|
1527
|
-
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1528
|
-
_content_type: Optional[StrictStr] = None,
|
|
1529
|
-
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1530
|
-
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1531
|
-
) -> ApiResponse[UploadExecutionFiles200Response]:
|
|
1532
|
-
"""Upload files to an execution
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
:param id: The ID of the execution (required)
|
|
1536
|
-
:type id: str
|
|
1537
|
-
:param files: Files to upload to the execution
|
|
1538
|
-
:type files: List[bytearray]
|
|
1539
|
-
:param _request_timeout: timeout setting for this request. If one
|
|
1540
|
-
number provided, it will be total request
|
|
1541
|
-
timeout. It can also be a pair (tuple) of
|
|
1542
|
-
(connection, read) timeouts.
|
|
1543
|
-
:type _request_timeout: int, tuple(int, int), optional
|
|
1544
|
-
:param _request_auth: set to override the auth_settings for an a single
|
|
1545
|
-
request; this effectively ignores the
|
|
1546
|
-
authentication in the spec for a single request.
|
|
1547
|
-
:type _request_auth: dict, optional
|
|
1548
|
-
:param _content_type: force content-type for the request.
|
|
1549
|
-
:type _content_type: str, Optional
|
|
1550
|
-
:param _headers: set to override the headers for a single
|
|
1551
|
-
request; this effectively ignores the headers
|
|
1552
|
-
in the spec for a single request.
|
|
1553
|
-
:type _headers: dict, optional
|
|
1554
|
-
:param _host_index: set to override the host_index for a single
|
|
1555
|
-
request; this effectively ignores the host_index
|
|
1556
|
-
in the spec for a single request.
|
|
1557
|
-
:type _host_index: int, optional
|
|
1558
|
-
:return: Returns the result object.
|
|
1559
|
-
""" # noqa: E501
|
|
1560
|
-
|
|
1561
|
-
_param = self._upload_execution_files_serialize(
|
|
1562
|
-
id=id,
|
|
1563
|
-
files=files,
|
|
1564
|
-
_request_auth=_request_auth,
|
|
1565
|
-
_content_type=_content_type,
|
|
1566
|
-
_headers=_headers,
|
|
1567
|
-
_host_index=_host_index
|
|
1568
|
-
)
|
|
1569
|
-
|
|
1570
|
-
_response_types_map: Dict[str, Optional[str]] = {
|
|
1571
|
-
'200': "UploadExecutionFiles200Response",
|
|
1572
|
-
'400': "ErrorResponse",
|
|
1573
|
-
'401': "ErrorResponse",
|
|
1574
|
-
'404': "ErrorResponse",
|
|
1575
|
-
}
|
|
1576
|
-
response_data = self.api_client.call_api(
|
|
1577
|
-
*_param,
|
|
1578
|
-
_request_timeout=_request_timeout
|
|
1579
|
-
)
|
|
1580
|
-
response_data.read()
|
|
1581
|
-
return self.api_client.response_deserialize(
|
|
1582
|
-
response_data=response_data,
|
|
1583
|
-
response_types_map=_response_types_map,
|
|
1584
|
-
)
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
@validate_call
|
|
1588
|
-
def upload_execution_files_without_preload_content(
|
|
1589
|
-
self,
|
|
1590
|
-
id: Annotated[StrictStr, Field(description="The ID of the execution")],
|
|
1591
|
-
files: Annotated[Optional[List[Union[StrictBytes, StrictStr, Tuple[StrictStr, StrictBytes]]]], Field(description="Files to upload to the execution")] = None,
|
|
1592
|
-
_request_timeout: Union[
|
|
1593
|
-
None,
|
|
1594
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1595
|
-
Tuple[
|
|
1596
|
-
Annotated[StrictFloat, Field(gt=0)],
|
|
1597
|
-
Annotated[StrictFloat, Field(gt=0)]
|
|
1598
|
-
]
|
|
1599
|
-
] = None,
|
|
1600
|
-
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
1601
|
-
_content_type: Optional[StrictStr] = None,
|
|
1602
|
-
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
1603
|
-
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
1604
|
-
) -> RESTResponseType:
|
|
1605
|
-
"""Upload files to an execution
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
:param id: The ID of the execution (required)
|
|
1609
|
-
:type id: str
|
|
1610
|
-
:param files: Files to upload to the execution
|
|
1611
|
-
:type files: List[bytearray]
|
|
1612
|
-
:param _request_timeout: timeout setting for this request. If one
|
|
1613
|
-
number provided, it will be total request
|
|
1614
|
-
timeout. It can also be a pair (tuple) of
|
|
1615
|
-
(connection, read) timeouts.
|
|
1616
|
-
:type _request_timeout: int, tuple(int, int), optional
|
|
1617
|
-
:param _request_auth: set to override the auth_settings for an a single
|
|
1618
|
-
request; this effectively ignores the
|
|
1619
|
-
authentication in the spec for a single request.
|
|
1620
|
-
:type _request_auth: dict, optional
|
|
1621
|
-
:param _content_type: force content-type for the request.
|
|
1622
|
-
:type _content_type: str, Optional
|
|
1623
|
-
:param _headers: set to override the headers for a single
|
|
1624
|
-
request; this effectively ignores the headers
|
|
1625
|
-
in the spec for a single request.
|
|
1626
|
-
:type _headers: dict, optional
|
|
1627
|
-
:param _host_index: set to override the host_index for a single
|
|
1628
|
-
request; this effectively ignores the host_index
|
|
1629
|
-
in the spec for a single request.
|
|
1630
|
-
:type _host_index: int, optional
|
|
1631
|
-
:return: Returns the result object.
|
|
1632
|
-
""" # noqa: E501
|
|
1633
|
-
|
|
1634
|
-
_param = self._upload_execution_files_serialize(
|
|
1635
|
-
id=id,
|
|
1636
|
-
files=files,
|
|
1637
|
-
_request_auth=_request_auth,
|
|
1638
|
-
_content_type=_content_type,
|
|
1639
|
-
_headers=_headers,
|
|
1640
|
-
_host_index=_host_index
|
|
1641
|
-
)
|
|
1642
|
-
|
|
1643
|
-
_response_types_map: Dict[str, Optional[str]] = {
|
|
1644
|
-
'200': "UploadExecutionFiles200Response",
|
|
1645
|
-
'400': "ErrorResponse",
|
|
1646
|
-
'401': "ErrorResponse",
|
|
1647
|
-
'404': "ErrorResponse",
|
|
1648
|
-
}
|
|
1649
|
-
response_data = self.api_client.call_api(
|
|
1650
|
-
*_param,
|
|
1651
|
-
_request_timeout=_request_timeout
|
|
1652
|
-
)
|
|
1653
|
-
return response_data.response
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
def _upload_execution_files_serialize(
|
|
1657
|
-
self,
|
|
1658
|
-
id,
|
|
1659
|
-
files,
|
|
1660
|
-
_request_auth,
|
|
1661
|
-
_content_type,
|
|
1662
|
-
_headers,
|
|
1663
|
-
_host_index,
|
|
1664
|
-
) -> RequestSerialized:
|
|
1665
|
-
|
|
1666
|
-
_host = None
|
|
1667
|
-
|
|
1668
|
-
_collection_formats: Dict[str, str] = {
|
|
1669
|
-
'files': 'csv',
|
|
1670
|
-
}
|
|
1671
|
-
|
|
1672
|
-
_path_params: Dict[str, str] = {}
|
|
1673
|
-
_query_params: List[Tuple[str, str]] = []
|
|
1674
|
-
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
1675
|
-
_form_params: List[Tuple[str, str]] = []
|
|
1676
|
-
_files: Dict[
|
|
1677
|
-
str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
|
|
1678
|
-
] = {}
|
|
1679
|
-
_body_params: Optional[bytes] = None
|
|
1680
|
-
|
|
1681
|
-
# process the path parameters
|
|
1682
|
-
if id is not None:
|
|
1683
|
-
_path_params['id'] = id
|
|
1684
|
-
# process the query parameters
|
|
1685
|
-
# process the header parameters
|
|
1686
|
-
# process the form parameters
|
|
1687
|
-
if files is not None:
|
|
1688
|
-
_files['files'] = files
|
|
1689
|
-
# process the body parameter
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
# set the HTTP header `Accept`
|
|
1693
|
-
if 'Accept' not in _header_params:
|
|
1694
|
-
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1695
|
-
[
|
|
1696
|
-
'application/json'
|
|
1697
|
-
]
|
|
1698
|
-
)
|
|
1699
|
-
|
|
1700
|
-
# set the HTTP header `Content-Type`
|
|
1701
|
-
if _content_type:
|
|
1702
|
-
_header_params['Content-Type'] = _content_type
|
|
1703
|
-
else:
|
|
1704
|
-
_default_content_type = (
|
|
1705
|
-
self.api_client.select_header_content_type(
|
|
1706
|
-
[
|
|
1707
|
-
'multipart/form-data'
|
|
1708
|
-
]
|
|
1709
|
-
)
|
|
1710
|
-
)
|
|
1711
|
-
if _default_content_type is not None:
|
|
1712
|
-
_header_params['Content-Type'] = _default_content_type
|
|
1713
|
-
|
|
1714
|
-
# authentication setting
|
|
1715
|
-
_auth_settings: List[str] = [
|
|
1716
|
-
'ApiKeyAuth'
|
|
1717
|
-
]
|
|
1718
|
-
|
|
1719
|
-
return self.api_client.param_serialize(
|
|
1720
|
-
method='POST',
|
|
1721
|
-
resource_path='/execution/{id}/files',
|
|
1722
|
-
path_params=_path_params,
|
|
1723
|
-
query_params=_query_params,
|
|
1724
|
-
header_params=_header_params,
|
|
1725
|
-
body=_body_params,
|
|
1726
|
-
post_params=_form_params,
|
|
1727
|
-
files=_files,
|
|
1728
|
-
auth_settings=_auth_settings,
|
|
1729
|
-
collection_formats=_collection_formats,
|
|
1730
|
-
_host=_host,
|
|
1731
|
-
_request_auth=_request_auth
|
|
1732
|
-
)
|
|
1733
|
-
|
|
1734
|
-
|
|
@@ -32,4 +32,3 @@ from asteroid_odyssey.agents_v1_gen.models.proxy_type import ProxyType
|
|
|
32
32
|
from asteroid_odyssey.agents_v1_gen.models.status import Status
|
|
33
33
|
from asteroid_odyssey.agents_v1_gen.models.structured_agent_execution_request import StructuredAgentExecutionRequest
|
|
34
34
|
from asteroid_odyssey.agents_v1_gen.models.update_agent_profile_request import UpdateAgentProfileRequest
|
|
35
|
-
from asteroid_odyssey.agents_v1_gen.models.upload_execution_files200_response import UploadExecutionFiles200Response
|
|
@@ -43,7 +43,8 @@ class AgentProfile(BaseModel):
|
|
|
43
43
|
cookies: List[Cookie] = Field(description="List of cookies associated with this agent profile")
|
|
44
44
|
created_at: datetime = Field(description="The date and time the agent profile was created")
|
|
45
45
|
updated_at: datetime = Field(description="The last update time of the agent profile")
|
|
46
|
-
|
|
46
|
+
extra_stealth: StrictBool = Field(description="Whether to enable extra stealth for the profile")
|
|
47
|
+
__properties: ClassVar[List[str]] = ["id", "name", "description", "organization_id", "proxy_cc", "proxy_type", "captcha_solver_active", "sticky_ip", "credentials", "cookies", "created_at", "updated_at", "extra_stealth"]
|
|
47
48
|
|
|
48
49
|
model_config = ConfigDict(
|
|
49
50
|
populate_by_name=True,
|
|
@@ -121,7 +122,8 @@ class AgentProfile(BaseModel):
|
|
|
121
122
|
"credentials": [Credential.from_dict(_item) for _item in obj["credentials"]] if obj.get("credentials") is not None else None,
|
|
122
123
|
"cookies": [Cookie.from_dict(_item) for _item in obj["cookies"]] if obj.get("cookies") is not None else None,
|
|
123
124
|
"created_at": obj.get("created_at"),
|
|
124
|
-
"updated_at": obj.get("updated_at")
|
|
125
|
+
"updated_at": obj.get("updated_at"),
|
|
126
|
+
"extra_stealth": obj.get("extra_stealth")
|
|
125
127
|
})
|
|
126
128
|
return _obj
|
|
127
129
|
|
|
@@ -18,7 +18,7 @@ import re # noqa: F401
|
|
|
18
18
|
import json
|
|
19
19
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
22
|
from typing_extensions import Annotated
|
|
23
23
|
from asteroid_odyssey.agents_v1_gen.models.cookie import Cookie
|
|
24
24
|
from asteroid_odyssey.agents_v1_gen.models.country_code import CountryCode
|
|
@@ -40,7 +40,8 @@ class CreateAgentProfileRequest(BaseModel):
|
|
|
40
40
|
sticky_ip: StrictBool = Field(description="Whether the same IP address should be used for all executions of this profile")
|
|
41
41
|
credentials: List[Credential] = Field(description="Optional list of credentials to create with the profile")
|
|
42
42
|
cookies: List[Cookie] = Field(description="Optional list of cookies to create with the profile")
|
|
43
|
-
|
|
43
|
+
extra_stealth: Optional[StrictBool] = Field(default=False, description="Whether to enable extra stealth for the profile")
|
|
44
|
+
__properties: ClassVar[List[str]] = ["name", "description", "organization_id", "proxy_cc", "proxy_type", "captcha_solver_active", "sticky_ip", "credentials", "cookies", "extra_stealth"]
|
|
44
45
|
|
|
45
46
|
model_config = ConfigDict(
|
|
46
47
|
populate_by_name=True,
|
|
@@ -115,7 +116,8 @@ class CreateAgentProfileRequest(BaseModel):
|
|
|
115
116
|
"captcha_solver_active": obj.get("captcha_solver_active") if obj.get("captcha_solver_active") is not None else False,
|
|
116
117
|
"sticky_ip": obj.get("sticky_ip") if obj.get("sticky_ip") is not None else False,
|
|
117
118
|
"credentials": [Credential.from_dict(_item) for _item in obj["credentials"]] if obj.get("credentials") is not None else None,
|
|
118
|
-
"cookies": [Cookie.from_dict(_item) for _item in obj["cookies"]] if obj.get("cookies") is not None else None
|
|
119
|
+
"cookies": [Cookie.from_dict(_item) for _item in obj["cookies"]] if obj.get("cookies") is not None else None,
|
|
120
|
+
"extra_stealth": obj.get("extra_stealth") if obj.get("extra_stealth") is not None else False
|
|
119
121
|
})
|
|
120
122
|
return _obj
|
|
121
123
|
|
|
@@ -41,7 +41,8 @@ class UpdateAgentProfileRequest(BaseModel):
|
|
|
41
41
|
credentials_to_delete: Optional[List[StrictStr]] = Field(default=None, description="List of credential IDs to delete from the profile")
|
|
42
42
|
cookies_to_add: Optional[List[Cookie]] = Field(default=None, description="List of cookies to add to the profile")
|
|
43
43
|
cookies_to_delete: Optional[List[StrictStr]] = Field(default=None, description="List of cookie IDs to delete from the profile")
|
|
44
|
-
|
|
44
|
+
extra_stealth: Optional[StrictBool] = Field(default=False, description="Whether to enable extra stealth for the profile")
|
|
45
|
+
__properties: ClassVar[List[str]] = ["name", "description", "proxy_cc", "proxy_type", "captcha_solver_active", "sticky_ip", "credentials_to_add", "credentials_to_delete", "cookies_to_add", "cookies_to_delete", "extra_stealth"]
|
|
45
46
|
|
|
46
47
|
model_config = ConfigDict(
|
|
47
48
|
populate_by_name=True,
|
|
@@ -117,7 +118,8 @@ class UpdateAgentProfileRequest(BaseModel):
|
|
|
117
118
|
"credentials_to_add": [Credential.from_dict(_item) for _item in obj["credentials_to_add"]] if obj.get("credentials_to_add") is not None else None,
|
|
118
119
|
"credentials_to_delete": obj.get("credentials_to_delete"),
|
|
119
120
|
"cookies_to_add": [Cookie.from_dict(_item) for _item in obj["cookies_to_add"]] if obj.get("cookies_to_add") is not None else None,
|
|
120
|
-
"cookies_to_delete": obj.get("cookies_to_delete")
|
|
121
|
+
"cookies_to_delete": obj.get("cookies_to_delete"),
|
|
122
|
+
"extra_stealth": obj.get("extra_stealth") if obj.get("extra_stealth") is not None else False
|
|
121
123
|
})
|
|
122
124
|
return _obj
|
|
123
125
|
|