asteroid-odyssey 1.3.13__py3-none-any.whl → 1.6.0__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 +254 -82
- asteroid_odyssey/api/__init__.py +8 -0
- asteroid_odyssey/{agents_v1_gen/api/agent_profile_api.py → api/agent_profiles_api.py} +414 -281
- asteroid_odyssey/{agents_v2_gen/api → api}/agents_api.py +30 -30
- asteroid_odyssey/{agents_v2_gen/api → api}/execution_api.py +32 -49
- asteroid_odyssey/{agents_v2_gen/api → api}/files_api.py +5 -5
- asteroid_odyssey/{agents_v2_gen/api_client.py → api_client.py} +10 -6
- asteroid_odyssey/{agents_v2_gen/configuration.py → configuration.py} +11 -4
- asteroid_odyssey/models/__init__.py +118 -0
- asteroid_odyssey/{agents_v2_gen/models → models}/agent_list200_response.py +1 -1
- asteroid_odyssey/models/agent_profile_clear_browser_cache200_response.py +87 -0
- asteroid_odyssey/models/agent_profiles_list200_response.py +101 -0
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_agent_base.py +3 -3
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_agent_execute_agent_request.py +7 -5
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_action_completed_info.py +65 -37
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_action_completed_payload.py +8 -8
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_action_failed_payload.py +9 -9
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_action_started_info.py +50 -22
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_action_started_payload.py +10 -10
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_file_added_payload.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_payload_union.py +14 -14
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_playwright_script_generated_payload.py +9 -9
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_status_changed_payload.py +19 -19
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_transitioned_node_payload.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_workflow_updated_payload.py +1 -1
- asteroid_odyssey/models/agents_execution_agent_query_context_completed_details.py +98 -0
- asteroid_odyssey/models/agents_execution_agent_query_context_started_details.py +96 -0
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_cancelled_payload.py +1 -1
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_comment.py +10 -10
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_completed_payload.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_execution_result.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_ext_api_call_completed_details.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_failed_payload.py +5 -5
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_file_read_completed_details.py +3 -3
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_human_label.py +7 -7
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_list_item.py +33 -37
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_llm_call_started_details.py +1 -1
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_obs_snapshot_with_selectors_completed_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scratchpad_write_completed_details.py +7 -7
- asteroid_odyssey/models/agents_execution_script_eval_completed_details.py +101 -0
- asteroid_odyssey/models/agents_execution_script_eval_started_details.py +100 -0
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_script_hybrid_playwright_completed_details.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_script_pad_run_function_completed_details.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_script_playwright_completed_details.py +6 -6
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_read_started_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_run_function_started_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_search_replace_completed_details.py +5 -5
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_search_replace_started_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_write_completed_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_terminal_payload.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_util_get_datetime_completed_details.py +4 -4
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_workflow_update.py +13 -13
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_files_file.py +11 -11
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_files_temp_files_response.py +1 -1
- asteroid_odyssey/{agents_v2_gen/models → models}/agents_graph_models_nodes_properties_playwright_script_llm_var.py +5 -5
- asteroid_odyssey/{agents_v1_gen/models/agent_profile.py → models/agents_profile_agent_profile.py} +37 -32
- asteroid_odyssey/{agents_v1_gen/models/cookie.py → models/agents_profile_cookie.py} +21 -26
- asteroid_odyssey/{agents_v1_gen/models/country_code.py → models/agents_profile_country_code.py} +5 -5
- asteroid_odyssey/{agents_v1_gen/models/create_agent_profile_request.py → models/agents_profile_create_agent_profile_request.py} +33 -28
- asteroid_odyssey/{agents_v1_gen/models/credential.py → models/agents_profile_credential.py} +13 -13
- asteroid_odyssey/models/agents_profile_operating_system.py +37 -0
- asteroid_odyssey/models/agents_profile_proxy_type.py +38 -0
- asteroid_odyssey/models/agents_profile_same_site.py +38 -0
- asteroid_odyssey/models/agents_profile_sort_field.py +38 -0
- asteroid_odyssey/models/agents_profile_update_agent_profile_request.py +129 -0
- asteroid_odyssey/{agents_v2_gen/models → models}/executions_list200_response.py +1 -1
- asteroid_odyssey/{agents_v2_gen/rest.py → rest.py} +2 -1
- asteroid_odyssey-1.6.0.dist-info/METADATA +65 -0
- asteroid_odyssey-1.6.0.dist-info/RECORD +119 -0
- asteroid_odyssey/agents_v1_gen/__init__.py +0 -53
- asteroid_odyssey/agents_v1_gen/api/__init__.py +0 -7
- asteroid_odyssey/agents_v1_gen/api/api_api.py +0 -516
- asteroid_odyssey/agents_v1_gen/api/execution_api.py +0 -1449
- asteroid_odyssey/agents_v1_gen/api_client.py +0 -797
- asteroid_odyssey/agents_v1_gen/configuration.py +0 -599
- asteroid_odyssey/agents_v1_gen/exceptions.py +0 -216
- asteroid_odyssey/agents_v1_gen/models/__init__.py +0 -34
- asteroid_odyssey/agents_v1_gen/models/browser_session_recording_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/delete_agent_profile200_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/error_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/execution_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/execution_result.py +0 -101
- asteroid_odyssey/agents_v1_gen/models/execution_result_response.py +0 -100
- asteroid_odyssey/agents_v1_gen/models/execution_status_response.py +0 -95
- asteroid_odyssey/agents_v1_gen/models/health_check200_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/health_check500_response.py +0 -87
- asteroid_odyssey/agents_v1_gen/models/proxy_type.py +0 -38
- asteroid_odyssey/agents_v1_gen/models/status.py +0 -43
- asteroid_odyssey/agents_v1_gen/models/structured_agent_execution_request.py +0 -89
- asteroid_odyssey/agents_v1_gen/models/update_agent_profile_request.py +0 -126
- asteroid_odyssey/agents_v1_gen/rest.py +0 -257
- asteroid_odyssey/agents_v2_gen/__init__.py +0 -121
- asteroid_odyssey/agents_v2_gen/api/__init__.py +0 -7
- asteroid_odyssey/agents_v2_gen/api_response.py +0 -21
- asteroid_odyssey/agents_v2_gen/models/__init__.py +0 -102
- asteroid_odyssey/agents_v2_gen/py.typed +0 -0
- asteroid_odyssey/client.py +0 -1629
- asteroid_odyssey-1.3.13.dist-info/METADATA +0 -214
- asteroid_odyssey-1.3.13.dist-info/RECORD +0 -134
- /asteroid_odyssey/{agents_v1_gen/api_response.py → api_response.py} +0 -0
- /asteroid_odyssey/{agents_v2_gen/exceptions.py → exceptions.py} +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_agent_execute_agent_response.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_agent_sort_field.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_action_name.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_generic_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_reasoning_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_step_completed_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_step_started_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_activity_user_message_received_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_awaiting_confirmation_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_cancel_reason.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_element_file_upload_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_ext_get_mail_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_file_list_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_file_stage_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_llm_call_purpose.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_nav_to_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_nav_to_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_node_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_paused_payload.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_rules_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scratchpad_read_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scratchpad_read_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scratchpad_write_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_script_hybrid_playwright_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_script_playwright_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_scriptpad_read_completed_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_sort_field.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_status.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_transition_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_update_type.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_user_messages_add_text_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_execution_util_get_datetime_started_details.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_files_temp_file.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_graph_models_nodes_properties_playwright_script_llm_var_type.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/agents_graph_models_transitions_transition_type.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_bad_request_error_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_error.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_forbidden_error_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_internal_server_error_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_not_found_error_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_os_error.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_sort_direction.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/common_unauthorized_error_body.py +0 -0
- /asteroid_odyssey/{agents_v2_gen/models → models}/version.py +0 -0
- /asteroid_odyssey/{agents_v1_gen/py.typed → py.typed} +0 -0
- {asteroid_odyssey-1.3.13.dist-info → asteroid_odyssey-1.6.0.dist-info}/WHEEL +0 -0
- {asteroid_odyssey-1.3.13.dist-info → asteroid_odyssey-1.6.0.dist-info}/top_level.txt +0 -0
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from asteroid_odyssey.agents_v1_gen.models.execution_result import ExecutionResult
|
|
23
|
-
from asteroid_odyssey.agents_v1_gen.models.status import Status
|
|
24
|
-
from typing import Optional, Set
|
|
25
|
-
from typing_extensions import Self
|
|
26
|
-
|
|
27
|
-
class ExecutionResultResponse(BaseModel):
|
|
28
|
-
"""
|
|
29
|
-
ExecutionResultResponse
|
|
30
|
-
""" # noqa: E501
|
|
31
|
-
execution_id: StrictStr = Field(description="The ID of the execution")
|
|
32
|
-
status: Status
|
|
33
|
-
result: Optional[Dict[str, Any]] = Field(default=None, description="(Deprecated, use execution_result instead) The structured result data from the execution. Contains the outcome, reasoning, final answer, and result.")
|
|
34
|
-
error: Optional[StrictStr] = Field(default=None, description="Error message (if execution failed)")
|
|
35
|
-
execution_result: Optional[ExecutionResult] = None
|
|
36
|
-
__properties: ClassVar[List[str]] = ["execution_id", "status", "result", "error", "execution_result"]
|
|
37
|
-
|
|
38
|
-
model_config = ConfigDict(
|
|
39
|
-
populate_by_name=True,
|
|
40
|
-
validate_assignment=True,
|
|
41
|
-
protected_namespaces=(),
|
|
42
|
-
)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
def to_str(self) -> str:
|
|
46
|
-
"""Returns the string representation of the model using alias"""
|
|
47
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
48
|
-
|
|
49
|
-
def to_json(self) -> str:
|
|
50
|
-
"""Returns the JSON representation of the model using alias"""
|
|
51
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
52
|
-
return json.dumps(self.to_dict())
|
|
53
|
-
|
|
54
|
-
@classmethod
|
|
55
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
56
|
-
"""Create an instance of ExecutionResultResponse from a JSON string"""
|
|
57
|
-
return cls.from_dict(json.loads(json_str))
|
|
58
|
-
|
|
59
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
60
|
-
"""Return the dictionary representation of the model using alias.
|
|
61
|
-
|
|
62
|
-
This has the following differences from calling pydantic's
|
|
63
|
-
`self.model_dump(by_alias=True)`:
|
|
64
|
-
|
|
65
|
-
* `None` is only added to the output dict for nullable fields that
|
|
66
|
-
were set at model initialization. Other fields with value `None`
|
|
67
|
-
are ignored.
|
|
68
|
-
"""
|
|
69
|
-
excluded_fields: Set[str] = set([
|
|
70
|
-
])
|
|
71
|
-
|
|
72
|
-
_dict = self.model_dump(
|
|
73
|
-
by_alias=True,
|
|
74
|
-
exclude=excluded_fields,
|
|
75
|
-
exclude_none=True,
|
|
76
|
-
)
|
|
77
|
-
# override the default output from pydantic by calling `to_dict()` of execution_result
|
|
78
|
-
if self.execution_result:
|
|
79
|
-
_dict['execution_result'] = self.execution_result.to_dict()
|
|
80
|
-
return _dict
|
|
81
|
-
|
|
82
|
-
@classmethod
|
|
83
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
84
|
-
"""Create an instance of ExecutionResultResponse from a dict"""
|
|
85
|
-
if obj is None:
|
|
86
|
-
return None
|
|
87
|
-
|
|
88
|
-
if not isinstance(obj, dict):
|
|
89
|
-
return cls.model_validate(obj)
|
|
90
|
-
|
|
91
|
-
_obj = cls.model_validate({
|
|
92
|
-
"execution_id": obj.get("execution_id"),
|
|
93
|
-
"status": obj.get("status"),
|
|
94
|
-
"result": obj.get("result"),
|
|
95
|
-
"error": obj.get("error"),
|
|
96
|
-
"execution_result": ExecutionResult.from_dict(obj["execution_result"]) if obj.get("execution_result") is not None else None
|
|
97
|
-
})
|
|
98
|
-
return _obj
|
|
99
|
-
|
|
100
|
-
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from datetime import datetime
|
|
21
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
-
from asteroid_odyssey.agents_v1_gen.models.status import Status
|
|
24
|
-
from typing import Optional, Set
|
|
25
|
-
from typing_extensions import Self
|
|
26
|
-
|
|
27
|
-
class ExecutionStatusResponse(BaseModel):
|
|
28
|
-
"""
|
|
29
|
-
ExecutionStatusResponse
|
|
30
|
-
""" # noqa: E501
|
|
31
|
-
execution_id: StrictStr = Field(description="The ID of the execution")
|
|
32
|
-
status: Status
|
|
33
|
-
reason: Optional[StrictStr] = Field(default=None, description="Reason for the current status (if applicable)")
|
|
34
|
-
updated_at: Optional[datetime] = Field(default=None, description="Time when the status was last updated")
|
|
35
|
-
__properties: ClassVar[List[str]] = ["execution_id", "status", "reason", "updated_at"]
|
|
36
|
-
|
|
37
|
-
model_config = ConfigDict(
|
|
38
|
-
populate_by_name=True,
|
|
39
|
-
validate_assignment=True,
|
|
40
|
-
protected_namespaces=(),
|
|
41
|
-
)
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
def to_str(self) -> str:
|
|
45
|
-
"""Returns the string representation of the model using alias"""
|
|
46
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
47
|
-
|
|
48
|
-
def to_json(self) -> str:
|
|
49
|
-
"""Returns the JSON representation of the model using alias"""
|
|
50
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
51
|
-
return json.dumps(self.to_dict())
|
|
52
|
-
|
|
53
|
-
@classmethod
|
|
54
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
55
|
-
"""Create an instance of ExecutionStatusResponse from a JSON string"""
|
|
56
|
-
return cls.from_dict(json.loads(json_str))
|
|
57
|
-
|
|
58
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
59
|
-
"""Return the dictionary representation of the model using alias.
|
|
60
|
-
|
|
61
|
-
This has the following differences from calling pydantic's
|
|
62
|
-
`self.model_dump(by_alias=True)`:
|
|
63
|
-
|
|
64
|
-
* `None` is only added to the output dict for nullable fields that
|
|
65
|
-
were set at model initialization. Other fields with value `None`
|
|
66
|
-
are ignored.
|
|
67
|
-
"""
|
|
68
|
-
excluded_fields: Set[str] = set([
|
|
69
|
-
])
|
|
70
|
-
|
|
71
|
-
_dict = self.model_dump(
|
|
72
|
-
by_alias=True,
|
|
73
|
-
exclude=excluded_fields,
|
|
74
|
-
exclude_none=True,
|
|
75
|
-
)
|
|
76
|
-
return _dict
|
|
77
|
-
|
|
78
|
-
@classmethod
|
|
79
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
80
|
-
"""Create an instance of ExecutionStatusResponse from a dict"""
|
|
81
|
-
if obj is None:
|
|
82
|
-
return None
|
|
83
|
-
|
|
84
|
-
if not isinstance(obj, dict):
|
|
85
|
-
return cls.model_validate(obj)
|
|
86
|
-
|
|
87
|
-
_obj = cls.model_validate({
|
|
88
|
-
"execution_id": obj.get("execution_id"),
|
|
89
|
-
"status": obj.get("status"),
|
|
90
|
-
"reason": obj.get("reason"),
|
|
91
|
-
"updated_at": obj.get("updated_at")
|
|
92
|
-
})
|
|
93
|
-
return _obj
|
|
94
|
-
|
|
95
|
-
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from typing import Optional, Set
|
|
23
|
-
from typing_extensions import Self
|
|
24
|
-
|
|
25
|
-
class HealthCheck200Response(BaseModel):
|
|
26
|
-
"""
|
|
27
|
-
HealthCheck200Response
|
|
28
|
-
""" # noqa: E501
|
|
29
|
-
status: Optional[StrictStr] = Field(default=None, description="The health status of the API")
|
|
30
|
-
__properties: ClassVar[List[str]] = ["status"]
|
|
31
|
-
|
|
32
|
-
model_config = ConfigDict(
|
|
33
|
-
populate_by_name=True,
|
|
34
|
-
validate_assignment=True,
|
|
35
|
-
protected_namespaces=(),
|
|
36
|
-
)
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
def to_str(self) -> str:
|
|
40
|
-
"""Returns the string representation of the model using alias"""
|
|
41
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
42
|
-
|
|
43
|
-
def to_json(self) -> str:
|
|
44
|
-
"""Returns the JSON representation of the model using alias"""
|
|
45
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
46
|
-
return json.dumps(self.to_dict())
|
|
47
|
-
|
|
48
|
-
@classmethod
|
|
49
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
50
|
-
"""Create an instance of HealthCheck200Response from a JSON string"""
|
|
51
|
-
return cls.from_dict(json.loads(json_str))
|
|
52
|
-
|
|
53
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
54
|
-
"""Return the dictionary representation of the model using alias.
|
|
55
|
-
|
|
56
|
-
This has the following differences from calling pydantic's
|
|
57
|
-
`self.model_dump(by_alias=True)`:
|
|
58
|
-
|
|
59
|
-
* `None` is only added to the output dict for nullable fields that
|
|
60
|
-
were set at model initialization. Other fields with value `None`
|
|
61
|
-
are ignored.
|
|
62
|
-
"""
|
|
63
|
-
excluded_fields: Set[str] = set([
|
|
64
|
-
])
|
|
65
|
-
|
|
66
|
-
_dict = self.model_dump(
|
|
67
|
-
by_alias=True,
|
|
68
|
-
exclude=excluded_fields,
|
|
69
|
-
exclude_none=True,
|
|
70
|
-
)
|
|
71
|
-
return _dict
|
|
72
|
-
|
|
73
|
-
@classmethod
|
|
74
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
75
|
-
"""Create an instance of HealthCheck200Response from a dict"""
|
|
76
|
-
if obj is None:
|
|
77
|
-
return None
|
|
78
|
-
|
|
79
|
-
if not isinstance(obj, dict):
|
|
80
|
-
return cls.model_validate(obj)
|
|
81
|
-
|
|
82
|
-
_obj = cls.model_validate({
|
|
83
|
-
"status": obj.get("status")
|
|
84
|
-
})
|
|
85
|
-
return _obj
|
|
86
|
-
|
|
87
|
-
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from typing import Optional, Set
|
|
23
|
-
from typing_extensions import Self
|
|
24
|
-
|
|
25
|
-
class HealthCheck500Response(BaseModel):
|
|
26
|
-
"""
|
|
27
|
-
HealthCheck500Response
|
|
28
|
-
""" # noqa: E501
|
|
29
|
-
error: Optional[StrictStr] = Field(default=None, description="The error message")
|
|
30
|
-
__properties: ClassVar[List[str]] = ["error"]
|
|
31
|
-
|
|
32
|
-
model_config = ConfigDict(
|
|
33
|
-
populate_by_name=True,
|
|
34
|
-
validate_assignment=True,
|
|
35
|
-
protected_namespaces=(),
|
|
36
|
-
)
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
def to_str(self) -> str:
|
|
40
|
-
"""Returns the string representation of the model using alias"""
|
|
41
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
42
|
-
|
|
43
|
-
def to_json(self) -> str:
|
|
44
|
-
"""Returns the JSON representation of the model using alias"""
|
|
45
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
46
|
-
return json.dumps(self.to_dict())
|
|
47
|
-
|
|
48
|
-
@classmethod
|
|
49
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
50
|
-
"""Create an instance of HealthCheck500Response from a JSON string"""
|
|
51
|
-
return cls.from_dict(json.loads(json_str))
|
|
52
|
-
|
|
53
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
54
|
-
"""Return the dictionary representation of the model using alias.
|
|
55
|
-
|
|
56
|
-
This has the following differences from calling pydantic's
|
|
57
|
-
`self.model_dump(by_alias=True)`:
|
|
58
|
-
|
|
59
|
-
* `None` is only added to the output dict for nullable fields that
|
|
60
|
-
were set at model initialization. Other fields with value `None`
|
|
61
|
-
are ignored.
|
|
62
|
-
"""
|
|
63
|
-
excluded_fields: Set[str] = set([
|
|
64
|
-
])
|
|
65
|
-
|
|
66
|
-
_dict = self.model_dump(
|
|
67
|
-
by_alias=True,
|
|
68
|
-
exclude=excluded_fields,
|
|
69
|
-
exclude_none=True,
|
|
70
|
-
)
|
|
71
|
-
return _dict
|
|
72
|
-
|
|
73
|
-
@classmethod
|
|
74
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
75
|
-
"""Create an instance of HealthCheck500Response from a dict"""
|
|
76
|
-
if obj is None:
|
|
77
|
-
return None
|
|
78
|
-
|
|
79
|
-
if not isinstance(obj, dict):
|
|
80
|
-
return cls.model_validate(obj)
|
|
81
|
-
|
|
82
|
-
_obj = cls.model_validate({
|
|
83
|
-
"error": obj.get("error")
|
|
84
|
-
})
|
|
85
|
-
return _obj
|
|
86
|
-
|
|
87
|
-
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import json
|
|
17
|
-
from enum import Enum
|
|
18
|
-
from typing_extensions import Self
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class ProxyType(str, Enum):
|
|
22
|
-
"""
|
|
23
|
-
Type of proxy to use
|
|
24
|
-
"""
|
|
25
|
-
|
|
26
|
-
"""
|
|
27
|
-
allowed enum values
|
|
28
|
-
"""
|
|
29
|
-
BASIC = 'basic'
|
|
30
|
-
RESIDENTIAL = 'residential'
|
|
31
|
-
MOBILE = 'mobile'
|
|
32
|
-
|
|
33
|
-
@classmethod
|
|
34
|
-
def from_json(cls, json_str: str) -> Self:
|
|
35
|
-
"""Create an instance of ProxyType from a JSON string"""
|
|
36
|
-
return cls(json.loads(json_str))
|
|
37
|
-
|
|
38
|
-
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import json
|
|
17
|
-
from enum import Enum
|
|
18
|
-
from typing_extensions import Self
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class Status(str, Enum):
|
|
22
|
-
"""
|
|
23
|
-
Status of the execution
|
|
24
|
-
"""
|
|
25
|
-
|
|
26
|
-
"""
|
|
27
|
-
allowed enum values
|
|
28
|
-
"""
|
|
29
|
-
STARTING = 'starting'
|
|
30
|
-
RUNNING = 'running'
|
|
31
|
-
PAUSED = 'paused'
|
|
32
|
-
COMPLETED = 'completed'
|
|
33
|
-
CANCELLED = 'cancelled'
|
|
34
|
-
FAILED = 'failed'
|
|
35
|
-
AWAITING_CONFIRMATION = 'awaiting_confirmation'
|
|
36
|
-
PAUSED_BY_AGENT = 'paused_by_agent'
|
|
37
|
-
|
|
38
|
-
@classmethod
|
|
39
|
-
def from_json(cls, json_str: str) -> Self:
|
|
40
|
-
"""Create an instance of Status from a JSON string"""
|
|
41
|
-
return cls(json.loads(json_str))
|
|
42
|
-
|
|
43
|
-
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from typing import Optional, Set
|
|
23
|
-
from typing_extensions import Self
|
|
24
|
-
|
|
25
|
-
class StructuredAgentExecutionRequest(BaseModel):
|
|
26
|
-
"""
|
|
27
|
-
Request to execute an agent with structured parameters including optional agent profile configuration
|
|
28
|
-
""" # noqa: E501
|
|
29
|
-
agent_profile_id: Optional[StrictStr] = Field(default=None, description="The ID of the browser profile to use")
|
|
30
|
-
dynamic_data: Optional[Dict[str, Any]] = Field(default=None, description="Dynamic data to be merged into the saved agent configuration.")
|
|
31
|
-
__properties: ClassVar[List[str]] = ["agent_profile_id", "dynamic_data"]
|
|
32
|
-
|
|
33
|
-
model_config = ConfigDict(
|
|
34
|
-
populate_by_name=True,
|
|
35
|
-
validate_assignment=True,
|
|
36
|
-
protected_namespaces=(),
|
|
37
|
-
)
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
def to_str(self) -> str:
|
|
41
|
-
"""Returns the string representation of the model using alias"""
|
|
42
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
43
|
-
|
|
44
|
-
def to_json(self) -> str:
|
|
45
|
-
"""Returns the JSON representation of the model using alias"""
|
|
46
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
47
|
-
return json.dumps(self.to_dict())
|
|
48
|
-
|
|
49
|
-
@classmethod
|
|
50
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
51
|
-
"""Create an instance of StructuredAgentExecutionRequest from a JSON string"""
|
|
52
|
-
return cls.from_dict(json.loads(json_str))
|
|
53
|
-
|
|
54
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
55
|
-
"""Return the dictionary representation of the model using alias.
|
|
56
|
-
|
|
57
|
-
This has the following differences from calling pydantic's
|
|
58
|
-
`self.model_dump(by_alias=True)`:
|
|
59
|
-
|
|
60
|
-
* `None` is only added to the output dict for nullable fields that
|
|
61
|
-
were set at model initialization. Other fields with value `None`
|
|
62
|
-
are ignored.
|
|
63
|
-
"""
|
|
64
|
-
excluded_fields: Set[str] = set([
|
|
65
|
-
])
|
|
66
|
-
|
|
67
|
-
_dict = self.model_dump(
|
|
68
|
-
by_alias=True,
|
|
69
|
-
exclude=excluded_fields,
|
|
70
|
-
exclude_none=True,
|
|
71
|
-
)
|
|
72
|
-
return _dict
|
|
73
|
-
|
|
74
|
-
@classmethod
|
|
75
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
76
|
-
"""Create an instance of StructuredAgentExecutionRequest from a dict"""
|
|
77
|
-
if obj is None:
|
|
78
|
-
return None
|
|
79
|
-
|
|
80
|
-
if not isinstance(obj, dict):
|
|
81
|
-
return cls.model_validate(obj)
|
|
82
|
-
|
|
83
|
-
_obj = cls.model_validate({
|
|
84
|
-
"agent_profile_id": obj.get("agent_profile_id"),
|
|
85
|
-
"dynamic_data": obj.get("dynamic_data")
|
|
86
|
-
})
|
|
87
|
-
return _obj
|
|
88
|
-
|
|
89
|
-
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
"""
|
|
4
|
-
Asteroid Agents API
|
|
5
|
-
|
|
6
|
-
Version 1 of the Asteroid Agents API
|
|
7
|
-
|
|
8
|
-
The version of the OpenAPI document: v1.0.0
|
|
9
|
-
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
-
|
|
11
|
-
Do not edit the class manually.
|
|
12
|
-
""" # noqa: E501
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
import pprint
|
|
17
|
-
import re # noqa: F401
|
|
18
|
-
import json
|
|
19
|
-
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from typing_extensions import Annotated
|
|
23
|
-
from asteroid_odyssey.agents_v1_gen.models.cookie import Cookie
|
|
24
|
-
from asteroid_odyssey.agents_v1_gen.models.country_code import CountryCode
|
|
25
|
-
from asteroid_odyssey.agents_v1_gen.models.credential import Credential
|
|
26
|
-
from asteroid_odyssey.agents_v1_gen.models.proxy_type import ProxyType
|
|
27
|
-
from typing import Optional, Set
|
|
28
|
-
from typing_extensions import Self
|
|
29
|
-
|
|
30
|
-
class UpdateAgentProfileRequest(BaseModel):
|
|
31
|
-
"""
|
|
32
|
-
UpdateAgentProfileRequest
|
|
33
|
-
""" # noqa: E501
|
|
34
|
-
name: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=255)]] = Field(default=None, description="The name of the agent profile")
|
|
35
|
-
description: Optional[Annotated[str, Field(strict=True, max_length=1000)]] = Field(default=None, description="The description of the agent profile")
|
|
36
|
-
proxy_cc: Optional[CountryCode] = None
|
|
37
|
-
proxy_type: Optional[ProxyType] = None
|
|
38
|
-
captcha_solver_active: Optional[StrictBool] = Field(default=None, description="Whether the captcha solver should be active for this profile")
|
|
39
|
-
sticky_ip: Optional[StrictBool] = Field(default=None, description="Whether the same IP address should be used for all executions of this profile")
|
|
40
|
-
credentials_to_add: Optional[List[Credential]] = Field(default=None, description="List of credentials to add to the profile")
|
|
41
|
-
credentials_to_delete: Optional[List[StrictStr]] = Field(default=None, description="List of credential IDs to delete from the profile")
|
|
42
|
-
cookies_to_add: Optional[List[Cookie]] = Field(default=None, description="List of cookies to add to the profile")
|
|
43
|
-
cookies_to_delete: Optional[List[StrictStr]] = Field(default=None, description="List of cookie IDs to delete from the profile")
|
|
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"]
|
|
46
|
-
|
|
47
|
-
model_config = ConfigDict(
|
|
48
|
-
populate_by_name=True,
|
|
49
|
-
validate_assignment=True,
|
|
50
|
-
protected_namespaces=(),
|
|
51
|
-
)
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
def to_str(self) -> str:
|
|
55
|
-
"""Returns the string representation of the model using alias"""
|
|
56
|
-
return pprint.pformat(self.model_dump(by_alias=True))
|
|
57
|
-
|
|
58
|
-
def to_json(self) -> str:
|
|
59
|
-
"""Returns the JSON representation of the model using alias"""
|
|
60
|
-
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
61
|
-
return json.dumps(self.to_dict())
|
|
62
|
-
|
|
63
|
-
@classmethod
|
|
64
|
-
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
65
|
-
"""Create an instance of UpdateAgentProfileRequest from a JSON string"""
|
|
66
|
-
return cls.from_dict(json.loads(json_str))
|
|
67
|
-
|
|
68
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
69
|
-
"""Return the dictionary representation of the model using alias.
|
|
70
|
-
|
|
71
|
-
This has the following differences from calling pydantic's
|
|
72
|
-
`self.model_dump(by_alias=True)`:
|
|
73
|
-
|
|
74
|
-
* `None` is only added to the output dict for nullable fields that
|
|
75
|
-
were set at model initialization. Other fields with value `None`
|
|
76
|
-
are ignored.
|
|
77
|
-
"""
|
|
78
|
-
excluded_fields: Set[str] = set([
|
|
79
|
-
])
|
|
80
|
-
|
|
81
|
-
_dict = self.model_dump(
|
|
82
|
-
by_alias=True,
|
|
83
|
-
exclude=excluded_fields,
|
|
84
|
-
exclude_none=True,
|
|
85
|
-
)
|
|
86
|
-
# override the default output from pydantic by calling `to_dict()` of each item in credentials_to_add (list)
|
|
87
|
-
_items = []
|
|
88
|
-
if self.credentials_to_add:
|
|
89
|
-
for _item_credentials_to_add in self.credentials_to_add:
|
|
90
|
-
if _item_credentials_to_add:
|
|
91
|
-
_items.append(_item_credentials_to_add.to_dict())
|
|
92
|
-
_dict['credentials_to_add'] = _items
|
|
93
|
-
# override the default output from pydantic by calling `to_dict()` of each item in cookies_to_add (list)
|
|
94
|
-
_items = []
|
|
95
|
-
if self.cookies_to_add:
|
|
96
|
-
for _item_cookies_to_add in self.cookies_to_add:
|
|
97
|
-
if _item_cookies_to_add:
|
|
98
|
-
_items.append(_item_cookies_to_add.to_dict())
|
|
99
|
-
_dict['cookies_to_add'] = _items
|
|
100
|
-
return _dict
|
|
101
|
-
|
|
102
|
-
@classmethod
|
|
103
|
-
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
104
|
-
"""Create an instance of UpdateAgentProfileRequest from a dict"""
|
|
105
|
-
if obj is None:
|
|
106
|
-
return None
|
|
107
|
-
|
|
108
|
-
if not isinstance(obj, dict):
|
|
109
|
-
return cls.model_validate(obj)
|
|
110
|
-
|
|
111
|
-
_obj = cls.model_validate({
|
|
112
|
-
"name": obj.get("name"),
|
|
113
|
-
"description": obj.get("description"),
|
|
114
|
-
"proxy_cc": obj.get("proxy_cc"),
|
|
115
|
-
"proxy_type": obj.get("proxy_type"),
|
|
116
|
-
"captcha_solver_active": obj.get("captcha_solver_active"),
|
|
117
|
-
"sticky_ip": obj.get("sticky_ip"),
|
|
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,
|
|
119
|
-
"credentials_to_delete": obj.get("credentials_to_delete"),
|
|
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,
|
|
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
|
|
123
|
-
})
|
|
124
|
-
return _obj
|
|
125
|
-
|
|
126
|
-
|