From 7e2a6f579f01a35ed034145615d254c6c587fc26 Mon Sep 17 00:00:00 2001 From: API Team Date: Mon, 13 Jul 2026 08:12:42 +0000 Subject: [PATCH] [GitHub Bot] Generated python SDK --- thousandeyes-sdk-administrative/README.md | 4 +- .../pyproject.toml | 4 +- thousandeyes-sdk-agents/README.md | 4 +- thousandeyes-sdk-agents/pyproject.toml | 4 +- thousandeyes-sdk-alerts/README.md | 4 +- thousandeyes-sdk-alerts/pyproject.toml | 4 +- thousandeyes-sdk-bgp-monitors/README.md | 4 +- thousandeyes-sdk-bgp-monitors/pyproject.toml | 4 +- thousandeyes-sdk-connectors/README.md | 4 +- thousandeyes-sdk-connectors/pyproject.toml | 4 +- thousandeyes-sdk-credentials/README.md | 4 +- thousandeyes-sdk-credentials/pyproject.toml | 4 +- thousandeyes-sdk-dashboards/README.md | 4 +- thousandeyes-sdk-dashboards/pyproject.toml | 4 +- thousandeyes-sdk-emulation/README.md | 4 +- thousandeyes-sdk-emulation/pyproject.toml | 4 +- .../.openapi-generator/FILES | 42 ++ thousandeyes-sdk-endpoint-agents/README.md | 40 +- .../docs/EndpointAgentLogItem.md | 35 ++ .../docs/EndpointAgentLogItemType.md | 12 + .../docs/EndpointAgentLogItemsApi.md | 106 ++++ .../docs/EndpointAgentLogItemsResponse.md | 30 + .../docs/EndpointOnlineOfflineLogItem.md | 29 + .../docs/EndpointOnlineOfflineLogItemType.md | 12 + .../docs/EndpointProxiesApi.md | 92 ++++ .../docs/EndpointProxiesResponse.md | 29 + .../docs/EndpointProxy.md | 39 ++ .../docs/EndpointProxyAuthType.md | 12 + .../docs/EndpointProxyType.md | 12 + .../docs/EndpointStateChangesLogItem.md | 29 + .../docs/EndpointStateChangesLogItemType.md | 12 + .../docs/EndpointVpnLogItem.md | 32 ++ .../docs/EndpointVpnLogItemType.md | 12 + .../docs/EndpointVpnType.md | 12 + .../docs/EndpointWifiLogItem.md | 37 ++ .../docs/EndpointWifiLogItemType.md | 12 + .../docs/EndpointWirelessConnectionFailure.md | 31 ++ .../EndpointWirelessConnectionFailureType.md | 12 + .../pyproject.toml | 4 +- .../endpoint_agents/__init__.py | 20 + .../endpoint_agents/api/__init__.py | 2 + .../api/endpoint_agent_log_items_api.py | 517 ++++++++++++++++++ .../api/endpoint_proxies_api.py | 318 +++++++++++ .../endpoint_agents/models/__init__.py | 18 + .../models/endpoint_agent_log_item.py | 140 +++++ .../models/endpoint_agent_log_item_type.py | 43 ++ .../endpoint_agent_log_items_response.py | 101 ++++ .../endpoint_online_offline_log_item.py | 88 +++ .../endpoint_online_offline_log_item_type.py | 41 ++ .../models/endpoint_proxies_response.py | 95 ++++ .../endpoint_agents/models/endpoint_proxy.py | 158 ++++++ .../models/endpoint_proxy_auth_type.py | 42 ++ .../models/endpoint_proxy_type.py | 44 ++ .../models/endpoint_state_changes_log_item.py | 88 +++ .../endpoint_state_changes_log_item_type.py | 43 ++ .../models/endpoint_vpn_log_item.py | 109 ++++ .../models/endpoint_vpn_log_item_type.py | 41 ++ .../models/endpoint_vpn_type.py | 51 ++ .../models/endpoint_wifi_log_item.py | 162 ++++++ .../models/endpoint_wifi_log_item_type.py | 43 ++ .../endpoint_wireless_connection_failure.py | 106 ++++ ...dpoint_wireless_connection_failure_type.py | 44 ++ .../test/test_endpoint_agent_log_items_api.py | 129 +++++ .../test/test_endpoint_proxies_api.py | 69 +++ .../README.md | 4 +- .../pyproject.toml | 4 +- thousandeyes-sdk-endpoint-labels/README.md | 4 +- .../pyproject.toml | 4 +- .../README.md | 4 +- .../pyproject.toml | 4 +- .../.openapi-generator/FILES | 11 + thousandeyes-sdk-endpoint-tests/README.md | 9 +- .../docs/EndpointMonitoringSettings.md | 33 ++ .../docs/EndpointMonitoringSettingsType.md | 12 + .../docs/EndpointRealUserTest.md | 34 ++ .../docs/EndpointRealUserTestsApi.md | 92 ++++ .../docs/EndpointRealUserTestsResponse.md | 29 + .../pyproject.toml | 4 +- .../endpoint_tests/__init__.py | 5 + .../endpoint_tests/api/__init__.py | 1 + .../api/endpoint_real_user_tests_api.py | 318 +++++++++++ .../endpoint_tests/models/__init__.py | 4 + .../models/endpoint_monitoring_settings.py | 118 ++++ .../endpoint_monitoring_settings_type.py | 43 ++ .../models/endpoint_real_user_test.py | 105 ++++ .../endpoint_real_user_tests_response.py | 95 ++++ .../test/test_endpoint_real_user_tests_api.py | 69 +++ thousandeyes-sdk-event-detection/README.md | 4 +- .../pyproject.toml | 4 +- thousandeyes-sdk-instant-tests/README.md | 4 +- thousandeyes-sdk-instant-tests/pyproject.toml | 4 +- thousandeyes-sdk-internet-insights/README.md | 4 +- .../pyproject.toml | 4 +- thousandeyes-sdk-snapshots/README.md | 4 +- thousandeyes-sdk-snapshots/pyproject.toml | 4 +- thousandeyes-sdk-streaming/README.md | 13 +- thousandeyes-sdk-streaming/pyproject.toml | 4 +- .../thousandeyes_sdk/streaming/__init__.py | 2 +- .../streaming/api/streaming_api.py | 2 +- .../streaming/models/__init__.py | 2 +- .../streaming/models/api_error.py | 2 +- .../models/api_error_integration_limits.py | 2 +- .../streaming/models/audit_operation.py | 2 +- .../models/audit_operation_with_update.py | 2 +- .../streaming/models/bad_request_error.py | 2 +- .../models/create_stream_response.py | 2 +- .../streaming/models/data_model_version.py | 2 +- .../streaming/models/endpoint_agent_label.py | 2 +- .../streaming/models/endpoint_agent_tag.py | 2 +- .../streaming/models/endpoint_type.py | 2 +- .../streaming/models/exporter_config.py | 2 +- .../models/exporter_config_authorization.py | 2 +- .../models/exporter_config_o_auth2.py | 2 +- .../models/exporter_config_splunk_hec.py | 2 +- .../streaming/models/filters.py | 2 +- .../streaming/models/filters_test_types.py | 2 +- .../streaming/models/get_stream_response.py | 2 +- .../streaming/models/put_stream.py | 2 +- .../streaming/models/signal.py | 2 +- .../streaming/models/stream.py | 2 +- .../streaming/models/stream_links.py | 2 +- .../streaming/models/stream_response.py | 2 +- .../streaming/models/stream_self_link.py | 2 +- .../streaming/models/stream_status.py | 2 +- .../streaming/models/stream_status_type.py | 2 +- .../streaming/models/stream_type.py | 2 +- .../streaming/models/tag_match.py | 2 +- .../streaming/models/test_match.py | 2 +- .../streaming/models/test_match_domain.py | 2 +- .../streaming/models/test_type.py | 2 +- .../streaming/models/unauthorized_error.py | 2 +- .../test/test_streaming_api.py | 2 +- thousandeyes-sdk-tags/README.md | 4 +- .../docs/TagAssignmentApi.md | 6 +- thousandeyes-sdk-tags/docs/TagsApi.md | 10 +- thousandeyes-sdk-tags/pyproject.toml | 4 +- .../tags/api/tag_assignment_api.py | 3 + .../src/thousandeyes_sdk/tags/api/tags_api.py | 5 + .../.openapi-generator/FILES | 20 + thousandeyes-sdk-test-results/README.md | 14 +- .../docs/DnsMeasurementProtocol.md | 12 + .../docs/DnsOpcode.md | 12 + thousandeyes-sdk-test-results/docs/DnsQr.md | 12 + .../docs/DnsResourceRecord.md | 34 ++ .../docs/DnsResourceRecordClass.md | 12 + .../docs/DnsResourceRecordType.md | 12 + .../docs/DnsResponseCode.md | 12 + .../docs/DnsServerMeasurement.md | 33 ++ .../docs/DnsServerResponse.md | 45 ++ .../docs/DnsTiming.md | 31 ++ .../docs/HttpTestResult.md | 1 + .../docs/WebHTTPServerTestResultsApi.md | 2 +- thousandeyes-sdk-test-results/pyproject.toml | 4 +- .../thousandeyes_sdk/test_results/__init__.py | 10 + .../api/web_http_server_test_results_api.py | 8 +- .../test_results/models/__init__.py | 10 + .../models/dns_measurement_protocol.py | 44 ++ .../test_results/models/dns_opcode.py | 55 ++ .../test_results/models/dns_qr.py | 41 ++ .../models/dns_resource_record.py | 103 ++++ .../models/dns_resource_record_class.py | 40 ++ .../models/dns_resource_record_type.py | 42 ++ .../test_results/models/dns_response_code.py | 63 +++ .../models/dns_server_measurement.py | 108 ++++ .../models/dns_server_response.py | 158 ++++++ .../test_results/models/dns_timing.py | 93 ++++ .../test_results/models/http_test_result.py | 8 +- .../test_web_http_server_test_results_api.py | 126 +++++ thousandeyes-sdk-tests/README.md | 4 +- thousandeyes-sdk-tests/pyproject.toml | 4 +- thousandeyes-sdk-usage/README.md | 4 +- thousandeyes-sdk-usage/pyproject.toml | 4 +- 172 files changed, 5454 insertions(+), 143 deletions(-) create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItem.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsApi.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsResponse.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItem.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItemType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesApi.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesResponse.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointProxy.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointProxyAuthType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointProxyType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItem.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItemType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItem.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItemType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointVpnType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItem.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItemType.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailure.md create mode 100644 thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailureType.md create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_agent_log_items_api.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_proxies_api.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_items_response.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxies_response.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_auth_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure.py create mode 100644 thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure_type.py create mode 100644 thousandeyes-sdk-endpoint-agents/test/test_endpoint_agent_log_items_api.py create mode 100644 thousandeyes-sdk-endpoint-agents/test/test_endpoint_proxies_api.py create mode 100644 thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettings.md create mode 100644 thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettingsType.md create mode 100644 thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTest.md create mode 100644 thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsApi.md create mode 100644 thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsResponse.md create mode 100644 thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/endpoint_real_user_tests_api.py create mode 100644 thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings.py create mode 100644 thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings_type.py create mode 100644 thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_test.py create mode 100644 thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_tests_response.py create mode 100644 thousandeyes-sdk-endpoint-tests/test/test_endpoint_real_user_tests_api.py create mode 100644 thousandeyes-sdk-test-results/docs/DnsMeasurementProtocol.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsOpcode.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsQr.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsResourceRecord.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsResourceRecordClass.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsResourceRecordType.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsResponseCode.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsServerMeasurement.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsServerResponse.md create mode 100644 thousandeyes-sdk-test-results/docs/DnsTiming.md create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_measurement_protocol.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_opcode.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_qr.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_class.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_type.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_response_code.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_measurement.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_response.py create mode 100644 thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_timing.py diff --git a/thousandeyes-sdk-administrative/README.md b/thousandeyes-sdk-administrative/README.md index a76d0d6b..1720f4be 100644 --- a/thousandeyes-sdk-administrative/README.md +++ b/thousandeyes-sdk-administrative/README.md @@ -12,13 +12,13 @@ This API provides the following operations to manage your organization: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-administrative/pyproject.toml b/thousandeyes-sdk-administrative/pyproject.toml index 5bbf4219..957bf272 100644 --- a/thousandeyes-sdk-administrative/pyproject.toml +++ b/thousandeyes-sdk-administrative/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Administrative API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-agents/README.md b/thousandeyes-sdk-agents/README.md index 68566cb4..1f2da1b3 100644 --- a/thousandeyes-sdk-agents/README.md +++ b/thousandeyes-sdk-agents/README.md @@ -5,13 +5,13 @@ Manage Cloud and Enterprise Agents available to your account in ThousandEyes. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-agents/pyproject.toml b/thousandeyes-sdk-agents/pyproject.toml index 74f2714d..ab3abbd1 100644 --- a/thousandeyes-sdk-agents/pyproject.toml +++ b/thousandeyes-sdk-agents/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Agents API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-alerts/README.md b/thousandeyes-sdk-alerts/README.md index 8e4890d2..7b67162e 100644 --- a/thousandeyes-sdk-alerts/README.md +++ b/thousandeyes-sdk-alerts/README.md @@ -14,13 +14,13 @@ For more information about the alerts, see [Alerts](https://docs.thousandeyes.co This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-alerts/pyproject.toml b/thousandeyes-sdk-alerts/pyproject.toml index 4dec8053..9a8e6deb 100644 --- a/thousandeyes-sdk-alerts/pyproject.toml +++ b/thousandeyes-sdk-alerts/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Alerts API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-bgp-monitors/README.md b/thousandeyes-sdk-bgp-monitors/README.md index f48be833..3370c406 100644 --- a/thousandeyes-sdk-bgp-monitors/README.md +++ b/thousandeyes-sdk-bgp-monitors/README.md @@ -10,13 +10,13 @@ For more information about monitors, see [Inside-Out BGP Visibility](https://doc This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-bgp-monitors/pyproject.toml b/thousandeyes-sdk-bgp-monitors/pyproject.toml index 6b2e20f9..dda74299 100644 --- a/thousandeyes-sdk-bgp-monitors/pyproject.toml +++ b/thousandeyes-sdk-bgp-monitors/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK BGP Monitors API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-connectors/README.md b/thousandeyes-sdk-connectors/README.md index e1fd2a2b..af51bfab 100644 --- a/thousandeyes-sdk-connectors/README.md +++ b/thousandeyes-sdk-connectors/README.md @@ -6,13 +6,13 @@ Manage connectors and operations. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-connectors/pyproject.toml b/thousandeyes-sdk-connectors/pyproject.toml index c06761cc..1a49c7a2 100644 --- a/thousandeyes-sdk-connectors/pyproject.toml +++ b/thousandeyes-sdk-connectors/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Integrations API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-credentials/README.md b/thousandeyes-sdk-credentials/README.md index 030cdd9f..1ae8bf04 100644 --- a/thousandeyes-sdk-credentials/README.md +++ b/thousandeyes-sdk-credentials/README.md @@ -13,13 +13,13 @@ For more information about credentials, see [Working With Secure Credentials](ht This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-credentials/pyproject.toml b/thousandeyes-sdk-credentials/pyproject.toml index c71e1e9c..23ce8f03 100644 --- a/thousandeyes-sdk-credentials/pyproject.toml +++ b/thousandeyes-sdk-credentials/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Credentials API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-dashboards/README.md b/thousandeyes-sdk-dashboards/README.md index 895a52fe..f517b597 100644 --- a/thousandeyes-sdk-dashboards/README.md +++ b/thousandeyes-sdk-dashboards/README.md @@ -3,13 +3,13 @@ Manage ThousandEyes Dashboards. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-dashboards/pyproject.toml b/thousandeyes-sdk-dashboards/pyproject.toml index b6433f3f..e2f595c1 100644 --- a/thousandeyes-sdk-dashboards/pyproject.toml +++ b/thousandeyes-sdk-dashboards/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Dashboards API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-emulation/README.md b/thousandeyes-sdk-emulation/README.md index e83ed5df..afac8802 100644 --- a/thousandeyes-sdk-emulation/README.md +++ b/thousandeyes-sdk-emulation/README.md @@ -11,13 +11,13 @@ To access Emulation API operations, the following permissions are required: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-emulation/pyproject.toml b/thousandeyes-sdk-emulation/pyproject.toml index 82b9233a..9a3b6896 100644 --- a/thousandeyes-sdk-emulation/pyproject.toml +++ b/thousandeyes-sdk-emulation/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Emulation API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-agents/.openapi-generator/FILES b/thousandeyes-sdk-endpoint-agents/.openapi-generator/FILES index 4ebd82d0..5ca2c26f 100644 --- a/thousandeyes-sdk-endpoint-agents/.openapi-generator/FILES +++ b/thousandeyes-sdk-endpoint-agents/.openapi-generator/FILES @@ -24,6 +24,10 @@ docs/ConnectionString.md docs/EndpointAgent.md docs/EndpointAgentEthernetProfile.md docs/EndpointAgentLocation.md +docs/EndpointAgentLogItem.md +docs/EndpointAgentLogItemType.md +docs/EndpointAgentLogItemsApi.md +docs/EndpointAgentLogItemsResponse.md docs/EndpointAgentUpdate.md docs/EndpointAgents.md docs/EndpointAgentsApi.md @@ -31,8 +35,24 @@ docs/EndpointAgentsTransferApi.md docs/EndpointAsnDetails.md docs/EndpointBrowserExtension.md docs/EndpointClient.md +docs/EndpointOnlineOfflineLogItem.md +docs/EndpointOnlineOfflineLogItemType.md +docs/EndpointProxiesApi.md +docs/EndpointProxiesResponse.md +docs/EndpointProxy.md +docs/EndpointProxyAuthType.md +docs/EndpointProxyType.md +docs/EndpointStateChangesLogItem.md +docs/EndpointStateChangesLogItemType.md docs/EndpointUserProfile.md +docs/EndpointVpnLogItem.md +docs/EndpointVpnLogItemType.md docs/EndpointVpnProfile.md +docs/EndpointVpnType.md +docs/EndpointWifiLogItem.md +docs/EndpointWifiLogItemType.md +docs/EndpointWirelessConnectionFailure.md +docs/EndpointWirelessConnectionFailureType.md docs/Error.md docs/ExpandEndpointAgentOptions.md docs/ExternalMetadataItem.md @@ -57,8 +77,10 @@ pyproject.toml setup.cfg src/thousandeyes_sdk/endpoint_agents/__init__.py src/thousandeyes_sdk/endpoint_agents/api/__init__.py +src/thousandeyes_sdk/endpoint_agents/api/endpoint_agent_log_items_api.py src/thousandeyes_sdk/endpoint_agents/api/endpoint_agents_api.py src/thousandeyes_sdk/endpoint_agents/api/endpoint_agents_transfer_api.py +src/thousandeyes_sdk/endpoint_agents/api/endpoint_proxies_api.py src/thousandeyes_sdk/endpoint_agents/models/__init__.py src/thousandeyes_sdk/endpoint_agents/models/address_profile.py src/thousandeyes_sdk/endpoint_agents/models/address_type.py @@ -83,13 +105,31 @@ src/thousandeyes_sdk/endpoint_agents/models/connection_string.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_ethernet_profile.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_location.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_items_response.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_update.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_agents.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_asn_details.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_browser_extension.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_client.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxies_response.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_auth_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item_type.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_user_profile.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item_type.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_profile.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item_type.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure.py +src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure_type.py src/thousandeyes_sdk/endpoint_agents/models/error.py src/thousandeyes_sdk/endpoint_agents/models/expand_endpoint_agent_options.py src/thousandeyes_sdk/endpoint_agents/models/external_metadata_item.py @@ -112,6 +152,8 @@ src/thousandeyes_sdk/endpoint_agents/models/vpn_type.py src/thousandeyes_sdk/endpoint_agents/models/wireless_profile.py src/thousandeyes_sdk/endpoint_agents/py.typed test/__init__.py +test/test_endpoint_agent_log_items_api.py test/test_endpoint_agents_api.py test/test_endpoint_agents_transfer_api.py +test/test_endpoint_proxies_api.py test/test_utils.py diff --git a/thousandeyes-sdk-endpoint-agents/README.md b/thousandeyes-sdk-endpoint-agents/README.md index a0bd8d17..66726996 100644 --- a/thousandeyes-sdk-endpoint-agents/README.md +++ b/thousandeyes-sdk-endpoint-agents/README.md @@ -7,13 +7,13 @@ For more information about Endpoint Agents, see [Endpoint Agents](https://docs.t This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install @@ -79,16 +79,22 @@ configuration = thousandeyes_sdk.core.Configuration( # Enter a context with an instance of the API client with thousandeyes_sdk.core.ApiClient(configuration) as api_client: # Create an instance of the API class - api_instance = thousandeyes_sdk.endpoint_agents.EndpointAgentsApi(api_client) + api_instance = thousandeyes_sdk.endpoint_agents.EndpointAgentLogItemsApi(api_client) agent_id = 'agent_id_example' # str | The identifier of the agent to operate on. aid = '1234' # str | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. (optional) - expand = [thousandeyes_sdk.endpoint_agents.ExpandEndpointAgentOptions()] # List[ExpandEndpointAgentOptions] | This optional parameter allows you to control the expansion of test resources associated with the agent. By default, no expansion occurs when this query parameter is omitted. To expand the \"clients\" resource, include the query parameter `?expand=clients`. For multiple expansions, you have two options: * Separate the values with commas. For example, `?expandAgent=clients,tasks`. * Specify the parameter multiple times. For example, `?expandAgent=clients&expandAgent=tasks`. This parameter offers flexibility for users to customize the expansion of specific resources related to the agent. (optional) + max = 1000 # int | Maximum number of log items returned per page. (optional) (default to 1000) + cursor = 'WyIxNzA5MjQwMDAwMDAwIl0=' # str | Opaque cursor from the `_links.next.href` URL in the previous response. (optional) + window = '12h' # str | A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. (optional) + start_date = '2022-07-17T22:00:54Z' # datetime | Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. (optional) + end_date = '2022-07-18T22:00:54Z' # datetime | Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. (optional) try: - # Delete endpoint agent - api_instance.delete_endpoint_agent(agent_id, aid=aid, expand=expand) + # List endpoint agent log items + api_response = api_instance.get_endpoint_agent_log_items(agent_id, aid=aid, max=max, cursor=cursor, window=window, start_date=start_date, end_date=end_date) + print("The response of EndpointAgentLogItemsApi->get_endpoint_agent_log_items:\n") + pprint(api_response) except ApiException as e: - print("Exception when calling EndpointAgentsApi->delete_endpoint_agent: %s\n" % e) + print("Exception when calling EndpointAgentLogItemsApi->get_endpoint_agent_log_items: %s\n" % e) ``` @@ -98,6 +104,7 @@ All URIs are relative to *https://api.thousandeyes.com/v7* Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- +*EndpointAgentLogItemsApi* | [**get_endpoint_agent_log_items**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsApi.md#get_endpoint_agent_log_items) | **GET** /endpoint/agents/{agentId}/logs | List endpoint agent log items *EndpointAgentsApi* | [**delete_endpoint_agent**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsApi.md#delete_endpoint_agent) | **DELETE** /endpoint/agents/{agentId} | Delete endpoint agent *EndpointAgentsApi* | [**disable_endpoint_agent**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsApi.md#disable_endpoint_agent) | **POST** /endpoint/agents/{agentId}/disable | Disable endpoint agent *EndpointAgentsApi* | [**enable_endpoint_agent**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsApi.md#enable_endpoint_agent) | **POST** /endpoint/agents/{agentId}/enable | Enable endpoint agent @@ -108,6 +115,7 @@ Class | Method | HTTP request | Description *EndpointAgentsApi* | [**update_endpoint_agent**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsApi.md#update_endpoint_agent) | **PATCH** /endpoint/agents/{agentId} | Update endpoint agent *EndpointAgentsTransferApi* | [**transfer_endpoint_agent**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsTransferApi.md#transfer_endpoint_agent) | **POST** /endpoint/agents/{agentId}/transfer | Transfer endpoint agent *EndpointAgentsTransferApi* | [**transfer_endpoint_agents**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentsTransferApi.md#transfer_endpoint_agents) | **POST** /endpoint/agents/transfer/bulk | Bulk transfer agents +*EndpointProxiesApi* | [**get_endpoint_proxies**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesApi.md#get_endpoint_proxies) | **GET** /endpoint/proxies | List endpoint proxy settings ## Documentation For Models @@ -135,13 +143,31 @@ Class | Method | HTTP request | Description - [EndpointAgent](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgent.md) - [EndpointAgentEthernetProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentEthernetProfile.md) - [EndpointAgentLocation](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLocation.md) + - [EndpointAgentLogItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItem.md) + - [EndpointAgentLogItemType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemType.md) + - [EndpointAgentLogItemsResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsResponse.md) - [EndpointAgentUpdate](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentUpdate.md) - [EndpointAgents](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAgents.md) - [EndpointAsnDetails](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointAsnDetails.md) - [EndpointBrowserExtension](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointBrowserExtension.md) - [EndpointClient](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointClient.md) + - [EndpointOnlineOfflineLogItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItem.md) + - [EndpointOnlineOfflineLogItemType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItemType.md) + - [EndpointProxiesResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesResponse.md) + - [EndpointProxy](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointProxy.md) + - [EndpointProxyAuthType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyAuthType.md) + - [EndpointProxyType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyType.md) + - [EndpointStateChangesLogItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItem.md) + - [EndpointStateChangesLogItemType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItemType.md) - [EndpointUserProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointUserProfile.md) + - [EndpointVpnLogItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItem.md) + - [EndpointVpnLogItemType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItemType.md) - [EndpointVpnProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnProfile.md) + - [EndpointVpnType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnType.md) + - [EndpointWifiLogItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItem.md) + - [EndpointWifiLogItemType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItemType.md) + - [EndpointWirelessConnectionFailure](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailure.md) + - [EndpointWirelessConnectionFailureType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailureType.md) - [Error](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/Error.md) - [ExpandEndpointAgentOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/ExpandEndpointAgentOptions.md) - [ExternalMetadataItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/ExternalMetadataItem.md) diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItem.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItem.md new file mode 100644 index 00000000..d26ad159 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItem.md @@ -0,0 +1,35 @@ +# EndpointAgentLogItem + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **str** | Unique ID of the log item. | [optional] [readonly] +**agent_log_item_type** | [**EndpointAgentLogItemType**](EndpointAgentLogItemType.md) | | [optional] +**timestamp_ms** | **int** | Time when the log item was recorded, in milliseconds since the Unix epoch. | [optional] [readonly] +**wifi_log_item** | [**EndpointWifiLogItem**](EndpointWifiLogItem.md) | | [optional] +**vpn_log_item** | [**EndpointVpnLogItem**](EndpointVpnLogItem.md) | | [optional] +**online_offline_log_item** | [**EndpointOnlineOfflineLogItem**](EndpointOnlineOfflineLogItem.md) | | [optional] +**state_changes_log_item** | [**EndpointStateChangesLogItem**](EndpointStateChangesLogItem.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item import EndpointAgentLogItem + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointAgentLogItem from a JSON string +endpoint_agent_log_item_instance = EndpointAgentLogItem.from_json(json) +# print the JSON string representation of the object +print(EndpointAgentLogItem.to_json()) + +# convert the object into a dict +endpoint_agent_log_item_dict = endpoint_agent_log_item_instance.to_dict() +# create an instance of EndpointAgentLogItem from a dict +endpoint_agent_log_item_from_dict = EndpointAgentLogItem.from_dict(endpoint_agent_log_item_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemType.md new file mode 100644 index 00000000..439b78f5 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemType.md @@ -0,0 +1,12 @@ +# EndpointAgentLogItemType + +Agent log item category. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsApi.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsApi.md new file mode 100644 index 00000000..1e5aa44c --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsApi.md @@ -0,0 +1,106 @@ +# thousandeyes_sdk.endpoint_agents.EndpointAgentLogItemsApi + +All URIs are relative to *https://api.thousandeyes.com/v7* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**get_endpoint_agent_log_items**](EndpointAgentLogItemsApi.md#get_endpoint_agent_log_items) | **GET** /endpoint/agents/{agentId}/logs | List endpoint agent log items + + +# **get_endpoint_agent_log_items** +> EndpointAgentLogItemsResponse get_endpoint_agent_log_items(agent_id, aid=aid, max=max, cursor=cursor, window=window, start_date=start_date, end_date=end_date) + +List endpoint agent log items + +Returns paginated logs for an endpoint agent within the requested time range. + +### Example + +* Bearer Authentication (BearerAuth): + +```python +import thousandeyes_sdk.endpoint_agents +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_items_response import EndpointAgentLogItemsResponse +from thousandeyes_sdk.endpoint_agents.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://api.thousandeyes.com/v7 +# See configuration.py for a list of all supported configuration parameters. +configuration = thousandeyes_sdk.core.Configuration( + host = "https://api.thousandeyes.com/v7" +) + +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = thousandeyes_sdk.core.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) + +# Enter a context with an instance of the API client +with thousandeyes_sdk.core.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = thousandeyes_sdk.endpoint_agents.EndpointAgentLogItemsApi(api_client) + agent_id = 'agent_id_example' # str | The identifier of the agent to operate on. + aid = '1234' # str | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. (optional) + max = 1000 # int | Maximum number of log items returned per page. (optional) (default to 1000) + cursor = 'WyIxNzA5MjQwMDAwMDAwIl0=' # str | Opaque cursor from the `_links.next.href` URL in the previous response. (optional) + window = '12h' # str | A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. (optional) + start_date = '2022-07-17T22:00:54Z' # datetime | Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. (optional) + end_date = '2022-07-18T22:00:54Z' # datetime | Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. (optional) + + try: + # List endpoint agent log items + api_response = api_instance.get_endpoint_agent_log_items(agent_id, aid=aid, max=max, cursor=cursor, window=window, start_date=start_date, end_date=end_date) + print("The response of EndpointAgentLogItemsApi->get_endpoint_agent_log_items:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EndpointAgentLogItemsApi->get_endpoint_agent_log_items: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **agent_id** | **str**| The identifier of the agent to operate on. | + **aid** | **str**| A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. | [optional] + **max** | **int**| Maximum number of log items returned per page. | [optional] [default to 1000] + **cursor** | **str**| Opaque cursor from the `_links.next.href` URL in the previous response. | [optional] + **window** | **str**| A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. | [optional] + **start_date** | **datetime**| Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. | [optional] + **end_date** | **datetime**| Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. | [optional] + +### Return type + +[**EndpointAgentLogItemsResponse**](EndpointAgentLogItemsResponse.md) + +### Authorization + +[BearerAuth](../README.md#BearerAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/hal+json, application/json, application/problem+json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Paginated logs for the endpoint agent. | - | +**400** | Bad Request | - | +**401** | Unauthorized | - | +**403** | Insufficient permissions to query endpoint | - | +**429** | Exhausted rate limit for the organization | - | +**500** | Internal server error | - | +**502** | Bad Gateway | - | +**0** | An error occurred | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsResponse.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsResponse.md new file mode 100644 index 00000000..837b1fbb --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointAgentLogItemsResponse.md @@ -0,0 +1,30 @@ +# EndpointAgentLogItemsResponse + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**logs** | [**List[EndpointAgentLogItem]**](EndpointAgentLogItem.md) | Log items for the endpoint agent. | +**links** | [**PaginationNextAndSelfLink**](PaginationNextAndSelfLink.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_items_response import EndpointAgentLogItemsResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointAgentLogItemsResponse from a JSON string +endpoint_agent_log_items_response_instance = EndpointAgentLogItemsResponse.from_json(json) +# print the JSON string representation of the object +print(EndpointAgentLogItemsResponse.to_json()) + +# convert the object into a dict +endpoint_agent_log_items_response_dict = endpoint_agent_log_items_response_instance.to_dict() +# create an instance of EndpointAgentLogItemsResponse from a dict +endpoint_agent_log_items_response_from_dict = EndpointAgentLogItemsResponse.from_dict(endpoint_agent_log_items_response_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItem.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItem.md new file mode 100644 index 00000000..961978d6 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItem.md @@ -0,0 +1,29 @@ +# EndpointOnlineOfflineLogItem + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**log_item_type** | [**EndpointOnlineOfflineLogItemType**](EndpointOnlineOfflineLogItemType.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item import EndpointOnlineOfflineLogItem + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointOnlineOfflineLogItem from a JSON string +endpoint_online_offline_log_item_instance = EndpointOnlineOfflineLogItem.from_json(json) +# print the JSON string representation of the object +print(EndpointOnlineOfflineLogItem.to_json()) + +# convert the object into a dict +endpoint_online_offline_log_item_dict = endpoint_online_offline_log_item_instance.to_dict() +# create an instance of EndpointOnlineOfflineLogItem from a dict +endpoint_online_offline_log_item_from_dict = EndpointOnlineOfflineLogItem.from_dict(endpoint_online_offline_log_item_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItemType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItemType.md new file mode 100644 index 00000000..3b4946f7 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointOnlineOfflineLogItemType.md @@ -0,0 +1,12 @@ +# EndpointOnlineOfflineLogItemType + +Online/offline log item type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesApi.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesApi.md new file mode 100644 index 00000000..ee9ea207 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesApi.md @@ -0,0 +1,92 @@ +# thousandeyes_sdk.endpoint_agents.EndpointProxiesApi + +All URIs are relative to *https://api.thousandeyes.com/v7* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**get_endpoint_proxies**](EndpointProxiesApi.md#get_endpoint_proxies) | **GET** /endpoint/proxies | List endpoint proxy settings + + +# **get_endpoint_proxies** +> EndpointProxiesResponse get_endpoint_proxies(aid=aid) + +List endpoint proxy settings + +Returns proxy settings for endpoint agents. Proxy passwords are never returned. + +### Example + +* Bearer Authentication (BearerAuth): + +```python +import thousandeyes_sdk.endpoint_agents +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxies_response import EndpointProxiesResponse +from thousandeyes_sdk.endpoint_agents.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://api.thousandeyes.com/v7 +# See configuration.py for a list of all supported configuration parameters. +configuration = thousandeyes_sdk.core.Configuration( + host = "https://api.thousandeyes.com/v7" +) + +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = thousandeyes_sdk.core.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) + +# Enter a context with an instance of the API client +with thousandeyes_sdk.core.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = thousandeyes_sdk.endpoint_agents.EndpointProxiesApi(api_client) + aid = '1234' # str | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. (optional) + + try: + # List endpoint proxy settings + api_response = api_instance.get_endpoint_proxies(aid=aid) + print("The response of EndpointProxiesApi->get_endpoint_proxies:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EndpointProxiesApi->get_endpoint_proxies: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **aid** | **str**| A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. | [optional] + +### Return type + +[**EndpointProxiesResponse**](EndpointProxiesResponse.md) + +### Authorization + +[BearerAuth](../README.md#BearerAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/problem+json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Proxy settings for endpoint agents. | - | +**401** | Unauthorized | - | +**403** | Insufficient permissions to query endpoint | - | +**429** | Exhausted rate limit for the organization | - | +**500** | Internal server error | - | +**0** | An error occurred | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesResponse.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesResponse.md new file mode 100644 index 00000000..beb24c28 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxiesResponse.md @@ -0,0 +1,29 @@ +# EndpointProxiesResponse + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**proxies** | [**List[EndpointProxy]**](EndpointProxy.md) | Proxy settings configured for endpoint agents. | + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxies_response import EndpointProxiesResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointProxiesResponse from a JSON string +endpoint_proxies_response_instance = EndpointProxiesResponse.from_json(json) +# print the JSON string representation of the object +print(EndpointProxiesResponse.to_json()) + +# convert the object into a dict +endpoint_proxies_response_dict = endpoint_proxies_response_instance.to_dict() +# create an instance of EndpointProxiesResponse from a dict +endpoint_proxies_response_from_dict = EndpointProxiesResponse.from_dict(endpoint_proxies_response_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointProxy.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxy.md new file mode 100644 index 00000000..25688a70 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxy.md @@ -0,0 +1,39 @@ +# EndpointProxy + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**proxy_id** | **str** | Unique ID of the proxy setting. | [optional] [readonly] +**name** | **str** | Proxy setting name. | [optional] [readonly] +**type** | [**EndpointProxyType**](EndpointProxyType.md) | | [optional] +**host** | **str** | Static proxy host name or IP address. | [optional] [readonly] +**port** | **int** | Static proxy port. | [optional] [readonly] +**pac** | **str** | PAC URL or PAC script location. | [optional] [readonly] +**user_name** | **str** | Proxy authentication user name. | [optional] [readonly] +**bypass_list** | **str** | Comma-separated proxy bypass list. | [optional] [readonly] +**auth_type** | [**EndpointProxyAuthType**](EndpointProxyAuthType.md) | | [optional] +**agent_ids** | **List[str]** | Endpoint Agent IDs assigned to the proxy setting. | [optional] +**test_ids** | **List[str]** | Endpoint scheduled test IDs assigned to the proxy setting. | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy import EndpointProxy + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointProxy from a JSON string +endpoint_proxy_instance = EndpointProxy.from_json(json) +# print the JSON string representation of the object +print(EndpointProxy.to_json()) + +# convert the object into a dict +endpoint_proxy_dict = endpoint_proxy_instance.to_dict() +# create an instance of EndpointProxy from a dict +endpoint_proxy_from_dict = EndpointProxy.from_dict(endpoint_proxy_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyAuthType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyAuthType.md new file mode 100644 index 00000000..109ce79a --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyAuthType.md @@ -0,0 +1,12 @@ +# EndpointProxyAuthType + +Proxy authentication type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyType.md new file mode 100644 index 00000000..3493a255 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointProxyType.md @@ -0,0 +1,12 @@ +# EndpointProxyType + +Proxy setting type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItem.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItem.md new file mode 100644 index 00000000..9bf49e8a --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItem.md @@ -0,0 +1,29 @@ +# EndpointStateChangesLogItem + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**log_item_type** | [**EndpointStateChangesLogItemType**](EndpointStateChangesLogItemType.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item import EndpointStateChangesLogItem + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointStateChangesLogItem from a JSON string +endpoint_state_changes_log_item_instance = EndpointStateChangesLogItem.from_json(json) +# print the JSON string representation of the object +print(EndpointStateChangesLogItem.to_json()) + +# convert the object into a dict +endpoint_state_changes_log_item_dict = endpoint_state_changes_log_item_instance.to_dict() +# create an instance of EndpointStateChangesLogItem from a dict +endpoint_state_changes_log_item_from_dict = EndpointStateChangesLogItem.from_dict(endpoint_state_changes_log_item_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItemType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItemType.md new file mode 100644 index 00000000..ca0ef043 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointStateChangesLogItemType.md @@ -0,0 +1,12 @@ +# EndpointStateChangesLogItemType + +State change log item type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItem.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItem.md new file mode 100644 index 00000000..8e4559ae --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItem.md @@ -0,0 +1,32 @@ +# EndpointVpnLogItem + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**log_item_type** | [**EndpointVpnLogItemType**](EndpointVpnLogItemType.md) | | [optional] +**vpn_type** | [**EndpointVpnType**](EndpointVpnType.md) | | [optional] +**vpn_server_name** | **str** | VPN server name. | [optional] [readonly] +**vpn_server_address** | **str** | VPN server address. | [optional] [readonly] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item import EndpointVpnLogItem + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointVpnLogItem from a JSON string +endpoint_vpn_log_item_instance = EndpointVpnLogItem.from_json(json) +# print the JSON string representation of the object +print(EndpointVpnLogItem.to_json()) + +# convert the object into a dict +endpoint_vpn_log_item_dict = endpoint_vpn_log_item_instance.to_dict() +# create an instance of EndpointVpnLogItem from a dict +endpoint_vpn_log_item_from_dict = EndpointVpnLogItem.from_dict(endpoint_vpn_log_item_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItemType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItemType.md new file mode 100644 index 00000000..42f3a158 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnLogItemType.md @@ -0,0 +1,12 @@ +# EndpointVpnLogItemType + +VPN log item type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnType.md new file mode 100644 index 00000000..6db32308 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnType.md @@ -0,0 +1,12 @@ +# EndpointVpnType + +VPN vendor or type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItem.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItem.md new file mode 100644 index 00000000..0162980e --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItem.md @@ -0,0 +1,37 @@ +# EndpointWifiLogItem + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**log_item_type** | [**EndpointWifiLogItemType**](EndpointWifiLogItemType.md) | | [optional] +**ssid** | **str** | Wireless network SSID. | [optional] [readonly] +**bssid** | **str** | Wireless access point BSSID. | [optional] [readonly] +**bssid_from** | **str** | Previous wireless access point BSSID. | [optional] [readonly] +**channel** | **str** | Wireless channel. | [optional] [readonly] +**channel_from** | **str** | Previous wireless channel. | [optional] [readonly] +**physical_mode** | **str** | Wireless physical mode. | [optional] [readonly] +**physical_mode_from** | **str** | Previous wireless physical mode. | [optional] [readonly] +**failure** | [**EndpointWirelessConnectionFailure**](EndpointWirelessConnectionFailure.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item import EndpointWifiLogItem + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointWifiLogItem from a JSON string +endpoint_wifi_log_item_instance = EndpointWifiLogItem.from_json(json) +# print the JSON string representation of the object +print(EndpointWifiLogItem.to_json()) + +# convert the object into a dict +endpoint_wifi_log_item_dict = endpoint_wifi_log_item_instance.to_dict() +# create an instance of EndpointWifiLogItem from a dict +endpoint_wifi_log_item_from_dict = EndpointWifiLogItem.from_dict(endpoint_wifi_log_item_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItemType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItemType.md new file mode 100644 index 00000000..f367e717 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointWifiLogItemType.md @@ -0,0 +1,12 @@ +# EndpointWifiLogItemType + +Wi-Fi log item type. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailure.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailure.md new file mode 100644 index 00000000..3060b079 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailure.md @@ -0,0 +1,31 @@ +# EndpointWirelessConnectionFailure + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**type** | [**EndpointWirelessConnectionFailureType**](EndpointWirelessConnectionFailureType.md) | | [optional] +**context** | **str** | Additional context for the wireless connection failure. | [optional] [readonly] +**code** | **int** | Wireless connection failure code. | [optional] [readonly] + +## Example + +```python +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure import EndpointWirelessConnectionFailure + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointWirelessConnectionFailure from a JSON string +endpoint_wireless_connection_failure_instance = EndpointWirelessConnectionFailure.from_json(json) +# print the JSON string representation of the object +print(EndpointWirelessConnectionFailure.to_json()) + +# convert the object into a dict +endpoint_wireless_connection_failure_dict = endpoint_wireless_connection_failure_instance.to_dict() +# create an instance of EndpointWirelessConnectionFailure from a dict +endpoint_wireless_connection_failure_from_dict = EndpointWirelessConnectionFailure.from_dict(endpoint_wireless_connection_failure_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailureType.md b/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailureType.md new file mode 100644 index 00000000..70923a31 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/docs/EndpointWirelessConnectionFailureType.md @@ -0,0 +1,12 @@ +# EndpointWirelessConnectionFailureType + +Wireless connection failure phase. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-agents/pyproject.toml b/thousandeyes-sdk-endpoint-agents/pyproject.toml index 1e72dee5..a3abe71c 100644 --- a/thousandeyes-sdk-endpoint-agents/pyproject.toml +++ b/thousandeyes-sdk-endpoint-agents/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Endpoint Agents API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/__init__.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/__init__.py index 4be6a13c..c64c9c0d 100644 --- a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/__init__.py +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/__init__.py @@ -14,8 +14,10 @@ # import apis into sdk package +from thousandeyes_sdk.endpoint_agents.api.endpoint_agent_log_items_api import EndpointAgentLogItemsApi from thousandeyes_sdk.endpoint_agents.api.endpoint_agents_api import EndpointAgentsApi from thousandeyes_sdk.endpoint_agents.api.endpoint_agents_transfer_api import EndpointAgentsTransferApi +from thousandeyes_sdk.endpoint_agents.api.endpoint_proxies_api import EndpointProxiesApi # import models into sdk package @@ -42,13 +44,31 @@ from thousandeyes_sdk.endpoint_agents.models.connection_string import Connection from thousandeyes_sdk.endpoint_agents.models.endpoint_agent import EndpointAgent from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_ethernet_profile import EndpointAgentEthernetProfile from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_location import EndpointAgentLocation +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item import EndpointAgentLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item_type import EndpointAgentLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_items_response import EndpointAgentLogItemsResponse from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_update import EndpointAgentUpdate from thousandeyes_sdk.endpoint_agents.models.endpoint_agents import EndpointAgents from thousandeyes_sdk.endpoint_agents.models.endpoint_asn_details import EndpointAsnDetails from thousandeyes_sdk.endpoint_agents.models.endpoint_browser_extension import EndpointBrowserExtension from thousandeyes_sdk.endpoint_agents.models.endpoint_client import EndpointClient +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item import EndpointOnlineOfflineLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item_type import EndpointOnlineOfflineLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxies_response import EndpointProxiesResponse +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy import EndpointProxy +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_auth_type import EndpointProxyAuthType +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_type import EndpointProxyType +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item import EndpointStateChangesLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item_type import EndpointStateChangesLogItemType from thousandeyes_sdk.endpoint_agents.models.endpoint_user_profile import EndpointUserProfile +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item import EndpointVpnLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item_type import EndpointVpnLogItemType from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_type import EndpointVpnType +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item import EndpointWifiLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item_type import EndpointWifiLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure import EndpointWirelessConnectionFailure +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure_type import EndpointWirelessConnectionFailureType from thousandeyes_sdk.endpoint_agents.models.error import Error from thousandeyes_sdk.endpoint_agents.models.expand_endpoint_agent_options import ExpandEndpointAgentOptions from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/__init__.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/__init__.py index f63ec8bb..a0d9f8d8 100644 --- a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/__init__.py +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/__init__.py @@ -1,6 +1,8 @@ # flake8: noqa # import apis into api package +from thousandeyes_sdk.endpoint_agents.api.endpoint_agent_log_items_api import EndpointAgentLogItemsApi from thousandeyes_sdk.endpoint_agents.api.endpoint_agents_api import EndpointAgentsApi from thousandeyes_sdk.endpoint_agents.api.endpoint_agents_transfer_api import EndpointAgentsTransferApi +from thousandeyes_sdk.endpoint_agents.api.endpoint_proxies_api import EndpointProxiesApi diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_agent_log_items_api.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_agent_log_items_api.py new file mode 100644 index 00000000..c1f0785b --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_agent_log_items_api.py @@ -0,0 +1,517 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + +import warnings +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Any, Dict, List, Optional, Tuple, Union +from typing_extensions import Annotated +from importlib.metadata import version + +import thousandeyes_sdk.endpoint_agents.models + +from datetime import datetime +from pydantic import Field, StrictStr, field_validator +from typing import Optional +from typing_extensions import Annotated +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_items_response import EndpointAgentLogItemsResponse + +from thousandeyes_sdk.core.api_client import ApiClient, RequestSerialized +from thousandeyes_sdk.core.api_response import ApiResponse +from thousandeyes_sdk.core.pagination_iterable import PaginationIterable +from thousandeyes_sdk.core.rest import RESTResponseType + + +class EndpointAgentLogItemsApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + api_client.user_agent = "ThousandEyesSDK-Python/{0}".format(version("thousandeyes-sdk-endpoint-agents")) + self.api_client = api_client + + @validate_call + def get_endpoint_agent_log_items_paginated( + self, + agent_id: Annotated[StrictStr, Field(description="The identifier of the agent to operate on.")], + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + max: Annotated[Optional[Annotated[int, Field(le=5000, strict=True, ge=1)]], Field(description="Maximum number of log items returned per page.")] = None, + cursor: Annotated[Optional[StrictStr], Field(description="Opaque cursor from the `_links.next.href` URL in the previous response.")] = None, + window: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`.")] = None, + start_date: Annotated[Optional[datetime], Field(description="Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + end_date: Annotated[Optional[datetime], Field(description="Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> PaginationIterable: + """List endpoint agent log items + + Returns paginated logs for an endpoint agent within the requested time range. + + :param agent_id: The identifier of the agent to operate on. (required) + :type agent_id: str + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param max: Maximum number of log items returned per page. + :type max: int + :param cursor: Opaque cursor from the `_links.next.href` URL in the previous response. + :type cursor: str + :param window: A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. + :type window: str + :param start_date: Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type start_date: datetime + :param end_date: Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type end_date: datetime + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + return PaginationIterable( + self.get_endpoint_agent_log_items, + lambda data: data.logs if data and data.logs else [], + agent_id = agent_id, aid = aid, max = max, cursor = cursor, window = window, start_date = start_date, end_date = end_date, + _request_timeout=_request_timeout, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + + @validate_call + def get_endpoint_agent_log_items( + self, + agent_id: Annotated[StrictStr, Field(description="The identifier of the agent to operate on.")], + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + max: Annotated[Optional[Annotated[int, Field(le=5000, strict=True, ge=1)]], Field(description="Maximum number of log items returned per page.")] = None, + cursor: Annotated[Optional[StrictStr], Field(description="Opaque cursor from the `_links.next.href` URL in the previous response.")] = None, + window: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`.")] = None, + start_date: Annotated[Optional[datetime], Field(description="Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + end_date: Annotated[Optional[datetime], Field(description="Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EndpointAgentLogItemsResponse: + """List endpoint agent log items + + Returns paginated logs for an endpoint agent within the requested time range. + + :param agent_id: The identifier of the agent to operate on. (required) + :type agent_id: str + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param max: Maximum number of log items returned per page. + :type max: int + :param cursor: Opaque cursor from the `_links.next.href` URL in the previous response. + :type cursor: str + :param window: A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. + :type window: str + :param start_date: Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type start_date: datetime + :param end_date: Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type end_date: datetime + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_agent_log_items_serialize( + agent_id=agent_id, + aid=aid, + max=max, + cursor=cursor, + window=window, + start_date=start_date, + end_date=end_date, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointAgentLogItemsResponse", + '400': "ValidationError", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + '502': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_agents.models, + ).data + + + @validate_call + def get_endpoint_agent_log_items_with_http_info( + self, + agent_id: Annotated[StrictStr, Field(description="The identifier of the agent to operate on.")], + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + max: Annotated[Optional[Annotated[int, Field(le=5000, strict=True, ge=1)]], Field(description="Maximum number of log items returned per page.")] = None, + cursor: Annotated[Optional[StrictStr], Field(description="Opaque cursor from the `_links.next.href` URL in the previous response.")] = None, + window: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`.")] = None, + start_date: Annotated[Optional[datetime], Field(description="Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + end_date: Annotated[Optional[datetime], Field(description="Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EndpointAgentLogItemsResponse]: + """List endpoint agent log items + + Returns paginated logs for an endpoint agent within the requested time range. + + :param agent_id: The identifier of the agent to operate on. (required) + :type agent_id: str + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param max: Maximum number of log items returned per page. + :type max: int + :param cursor: Opaque cursor from the `_links.next.href` URL in the previous response. + :type cursor: str + :param window: A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. + :type window: str + :param start_date: Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type start_date: datetime + :param end_date: Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type end_date: datetime + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_agent_log_items_serialize( + agent_id=agent_id, + aid=aid, + max=max, + cursor=cursor, + window=window, + start_date=start_date, + end_date=end_date, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointAgentLogItemsResponse", + '400': "ValidationError", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + '502': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_agents.models, + ) + + + @validate_call + def get_endpoint_agent_log_items_without_preload_content( + self, + agent_id: Annotated[StrictStr, Field(description="The identifier of the agent to operate on.")], + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + max: Annotated[Optional[Annotated[int, Field(le=5000, strict=True, ge=1)]], Field(description="Maximum number of log items returned per page.")] = None, + cursor: Annotated[Optional[StrictStr], Field(description="Opaque cursor from the `_links.next.href` URL in the previous response.")] = None, + window: Annotated[Optional[Annotated[str, Field(strict=True)]], Field(description="A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`.")] = None, + start_date: Annotated[Optional[datetime], Field(description="Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + end_date: Annotated[Optional[datetime], Field(description="Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """List endpoint agent log items + + Returns paginated logs for an endpoint agent within the requested time range. + + :param agent_id: The identifier of the agent to operate on. (required) + :type agent_id: str + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param max: Maximum number of log items returned per page. + :type max: int + :param cursor: Opaque cursor from the `_links.next.href` URL in the previous response. + :type cursor: str + :param window: A dynamic time interval up to the current time of the request. Specify the interval as a number followed by an optional type: `s` for seconds (default if no type is specified), `m` for minutes, `h` for hours, `d` for days, and `w` for weeks. For a precise date range, use `startDate` and `endDate`. + :type window: str + :param start_date: Use with the `endDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type start_date: datetime + :param end_date: Defaults to current time the request is made. Use with the `startDate` parameter. Include the complete time (hours, minutes, and seconds) in UTC time zone, following the ISO 8601 date-time format. See the example for reference. Please note that this parameter can't be used with `window`. + :type end_date: datetime + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_agent_log_items_serialize( + agent_id=agent_id, + aid=aid, + max=max, + cursor=cursor, + window=window, + start_date=start_date, + end_date=end_date, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointAgentLogItemsResponse", + '400': "ValidationError", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + '502': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_endpoint_agent_log_items_serialize( + self, + agent_id, + aid, + max, + cursor, + window, + start_date, + end_date, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, Union[str, bytes]] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + if agent_id is not None: + _path_params['agentId'] = agent_id + # process the query parameters + if aid is not None: + + _query_params.append(('aid', aid)) + + if max is not None: + + _query_params.append(('max', max)) + + if cursor is not None: + + _query_params.append(('cursor', cursor)) + + if window is not None: + + _query_params.append(('window', window)) + + if start_date is not None: + if isinstance(start_date, datetime): + _query_params.append( + ( + 'startDate', + start_date.strftime( + self.api_client.configuration.datetime_format + ) + ) + ) + else: + _query_params.append(('startDate', start_date)) + + if end_date is not None: + if isinstance(end_date, datetime): + _query_params.append( + ( + 'endDate', + end_date.strftime( + self.api_client.configuration.datetime_format + ) + ) + ) + else: + _query_params.append(('endDate', end_date)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/hal+json', + 'application/json', + 'application/problem+json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + 'BearerAuth' + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/endpoint/agents/{agentId}/logs', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_proxies_api.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_proxies_api.py new file mode 100644 index 00000000..6733feb8 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/api/endpoint_proxies_api.py @@ -0,0 +1,318 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + +import warnings +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Any, Dict, List, Optional, Tuple, Union +from typing_extensions import Annotated +from importlib.metadata import version + +import thousandeyes_sdk.endpoint_agents.models + +from pydantic import Field, StrictStr +from typing import Optional +from typing_extensions import Annotated +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxies_response import EndpointProxiesResponse + +from thousandeyes_sdk.core.api_client import ApiClient, RequestSerialized +from thousandeyes_sdk.core.api_response import ApiResponse + +from thousandeyes_sdk.core.rest import RESTResponseType + + +class EndpointProxiesApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + api_client.user_agent = "ThousandEyesSDK-Python/{0}".format(version("thousandeyes-sdk-endpoint-agents")) + self.api_client = api_client + + + @validate_call + def get_endpoint_proxies( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EndpointProxiesResponse: + """List endpoint proxy settings + + Returns proxy settings for endpoint agents. Proxy passwords are never returned. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_proxies_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointProxiesResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_agents.models, + ).data + + + @validate_call + def get_endpoint_proxies_with_http_info( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EndpointProxiesResponse]: + """List endpoint proxy settings + + Returns proxy settings for endpoint agents. Proxy passwords are never returned. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_proxies_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointProxiesResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_agents.models, + ) + + + @validate_call + def get_endpoint_proxies_without_preload_content( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """List endpoint proxy settings + + Returns proxy settings for endpoint agents. Proxy passwords are never returned. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_proxies_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointProxiesResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_endpoint_proxies_serialize( + self, + aid, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, Union[str, bytes]] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + if aid is not None: + + _query_params.append(('aid', aid)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json', + 'application/problem+json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + 'BearerAuth' + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/endpoint/proxies', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/__init__.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/__init__.py index 7d634a4f..8689e656 100644 --- a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/__init__.py +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/__init__.py @@ -36,13 +36,31 @@ from thousandeyes_sdk.endpoint_agents.models.connection_string import Connection from thousandeyes_sdk.endpoint_agents.models.endpoint_agent import EndpointAgent from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_ethernet_profile import EndpointAgentEthernetProfile from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_location import EndpointAgentLocation +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item import EndpointAgentLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item_type import EndpointAgentLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_items_response import EndpointAgentLogItemsResponse from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_update import EndpointAgentUpdate from thousandeyes_sdk.endpoint_agents.models.endpoint_agents import EndpointAgents from thousandeyes_sdk.endpoint_agents.models.endpoint_asn_details import EndpointAsnDetails from thousandeyes_sdk.endpoint_agents.models.endpoint_browser_extension import EndpointBrowserExtension from thousandeyes_sdk.endpoint_agents.models.endpoint_client import EndpointClient +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item import EndpointOnlineOfflineLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item_type import EndpointOnlineOfflineLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxies_response import EndpointProxiesResponse +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy import EndpointProxy +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_auth_type import EndpointProxyAuthType +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_type import EndpointProxyType +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item import EndpointStateChangesLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item_type import EndpointStateChangesLogItemType from thousandeyes_sdk.endpoint_agents.models.endpoint_user_profile import EndpointUserProfile +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item import EndpointVpnLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item_type import EndpointVpnLogItemType from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_type import EndpointVpnType +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item import EndpointWifiLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item_type import EndpointWifiLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure import EndpointWirelessConnectionFailure +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure_type import EndpointWirelessConnectionFailureType from thousandeyes_sdk.endpoint_agents.models.error import Error from thousandeyes_sdk.endpoint_agents.models.expand_endpoint_agent_options import ExpandEndpointAgentOptions from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item.py new file mode 100644 index 00000000..78f96820 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item.py @@ -0,0 +1,140 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item_type import EndpointAgentLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item import EndpointOnlineOfflineLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item import EndpointStateChangesLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item import EndpointVpnLogItem +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item import EndpointWifiLogItem +from typing import Optional, Set +from typing_extensions import Self + +class EndpointAgentLogItem(BaseModel): + """ + EndpointAgentLogItem + """ # noqa: E501 + id: Optional[StrictStr] = Field(default=None, description="Unique ID of the log item.") + agent_log_item_type: Optional[EndpointAgentLogItemType] = Field(default=None, alias="agentLogItemType") + timestamp_ms: Optional[StrictInt] = Field(default=None, description="Time when the log item was recorded, in milliseconds since the Unix epoch.", alias="timestampMs") + wifi_log_item: Optional[EndpointWifiLogItem] = Field(default=None, alias="wifiLogItem") + vpn_log_item: Optional[EndpointVpnLogItem] = Field(default=None, alias="vpnLogItem") + online_offline_log_item: Optional[EndpointOnlineOfflineLogItem] = Field(default=None, alias="onlineOfflineLogItem") + state_changes_log_item: Optional[EndpointStateChangesLogItem] = Field(default=None, alias="stateChangesLogItem") + __properties: ClassVar[List[str]] = ["id", "agentLogItemType", "timestampMs", "wifiLogItem", "vpnLogItem", "onlineOfflineLogItem", "stateChangesLogItem"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointAgentLogItem from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "id", + "timestamp_ms", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of wifi_log_item + if self.wifi_log_item: + _dict['wifiLogItem'] = self.wifi_log_item.to_dict() + # override the default output from pydantic by calling `to_dict()` of vpn_log_item + if self.vpn_log_item: + _dict['vpnLogItem'] = self.vpn_log_item.to_dict() + # override the default output from pydantic by calling `to_dict()` of online_offline_log_item + if self.online_offline_log_item: + _dict['onlineOfflineLogItem'] = self.online_offline_log_item.to_dict() + # override the default output from pydantic by calling `to_dict()` of state_changes_log_item + if self.state_changes_log_item: + _dict['stateChangesLogItem'] = self.state_changes_log_item.to_dict() + # set to None if wifi_log_item (nullable) is None + # and model_fields_set contains the field + if self.wifi_log_item is None and "wifi_log_item" in self.model_fields_set: + _dict['wifiLogItem'] = None + + # set to None if vpn_log_item (nullable) is None + # and model_fields_set contains the field + if self.vpn_log_item is None and "vpn_log_item" in self.model_fields_set: + _dict['vpnLogItem'] = None + + # set to None if online_offline_log_item (nullable) is None + # and model_fields_set contains the field + if self.online_offline_log_item is None and "online_offline_log_item" in self.model_fields_set: + _dict['onlineOfflineLogItem'] = None + + # set to None if state_changes_log_item (nullable) is None + # and model_fields_set contains the field + if self.state_changes_log_item is None and "state_changes_log_item" in self.model_fields_set: + _dict['stateChangesLogItem'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointAgentLogItem from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "id": obj.get("id"), + "agentLogItemType": obj.get("agentLogItemType"), + "timestampMs": obj.get("timestampMs"), + "wifiLogItem": EndpointWifiLogItem.from_dict(obj["wifiLogItem"]) if obj.get("wifiLogItem") is not None else None, + "vpnLogItem": EndpointVpnLogItem.from_dict(obj["vpnLogItem"]) if obj.get("vpnLogItem") is not None else None, + "onlineOfflineLogItem": EndpointOnlineOfflineLogItem.from_dict(obj["onlineOfflineLogItem"]) if obj.get("onlineOfflineLogItem") is not None else None, + "stateChangesLogItem": EndpointStateChangesLogItem.from_dict(obj["stateChangesLogItem"]) if obj.get("stateChangesLogItem") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item_type.py new file mode 100644 index 00000000..7ada30dc --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_item_type.py @@ -0,0 +1,43 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointAgentLogItemType(str, Enum): + """ + Agent log item category. + """ + + """ + allowed enum values + """ + WIFI = 'wifi' + VPN = 'vpn' + ONLINE_MINUS_OFFLINE = 'online-offline' + STATE_MINUS_CHANGES = 'state-changes' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointAgentLogItemType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_items_response.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_items_response.py new file mode 100644 index 00000000..566b263b --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_agent_log_items_response.py @@ -0,0 +1,101 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_log_item import EndpointAgentLogItem +from thousandeyes_sdk.endpoint_agents.models.pagination_next_and_self_link import PaginationNextAndSelfLink +from typing import Optional, Set +from typing_extensions import Self + +class EndpointAgentLogItemsResponse(BaseModel): + """ + EndpointAgentLogItemsResponse + """ # noqa: E501 + logs: List[EndpointAgentLogItem] = Field(description="Log items for the endpoint agent.") + links: Optional[PaginationNextAndSelfLink] = Field(default=None, alias="_links") + __properties: ClassVar[List[str]] = ["logs", "_links"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointAgentLogItemsResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in logs (list) + _items = [] + if self.logs: + for _item in self.logs: + if _item: + _items.append(_item.to_dict()) + _dict['logs'] = _items + # override the default output from pydantic by calling `to_dict()` of links + if self.links: + _dict['_links'] = self.links.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointAgentLogItemsResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "logs": [EndpointAgentLogItem.from_dict(_item) for _item in obj["logs"]] if obj.get("logs") is not None else None, + "_links": PaginationNextAndSelfLink.from_dict(obj["_links"]) if obj.get("_links") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item.py new file mode 100644 index 00000000..ad2f1200 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item.py @@ -0,0 +1,88 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_online_offline_log_item_type import EndpointOnlineOfflineLogItemType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointOnlineOfflineLogItem(BaseModel): + """ + EndpointOnlineOfflineLogItem + """ # noqa: E501 + log_item_type: Optional[EndpointOnlineOfflineLogItemType] = Field(default=None, alias="logItemType") + __properties: ClassVar[List[str]] = ["logItemType"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointOnlineOfflineLogItem from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointOnlineOfflineLogItem from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "logItemType": obj.get("logItemType") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item_type.py new file mode 100644 index 00000000..b2f4f7ad --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_online_offline_log_item_type.py @@ -0,0 +1,41 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointOnlineOfflineLogItemType(str, Enum): + """ + Online/offline log item type. + """ + + """ + allowed enum values + """ + ONLINE = 'online' + OFFLINE = 'offline' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointOnlineOfflineLogItemType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxies_response.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxies_response.py new file mode 100644 index 00000000..20034b08 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxies_response.py @@ -0,0 +1,95 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy import EndpointProxy +from typing import Optional, Set +from typing_extensions import Self + +class EndpointProxiesResponse(BaseModel): + """ + EndpointProxiesResponse + """ # noqa: E501 + proxies: List[EndpointProxy] = Field(description="Proxy settings configured for endpoint agents.") + __properties: ClassVar[List[str]] = ["proxies"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointProxiesResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in proxies (list) + _items = [] + if self.proxies: + for _item in self.proxies: + if _item: + _items.append(_item.to_dict()) + _dict['proxies'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointProxiesResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "proxies": [EndpointProxy.from_dict(_item) for _item in obj["proxies"]] if obj.get("proxies") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy.py new file mode 100644 index 00000000..0d837dfd --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy.py @@ -0,0 +1,158 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_auth_type import EndpointProxyAuthType +from thousandeyes_sdk.endpoint_agents.models.endpoint_proxy_type import EndpointProxyType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointProxy(BaseModel): + """ + EndpointProxy + """ # noqa: E501 + proxy_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the proxy setting.", alias="proxyId") + name: Optional[StrictStr] = Field(default=None, description="Proxy setting name.") + type: Optional[EndpointProxyType] = None + host: Optional[StrictStr] = Field(default=None, description="Static proxy host name or IP address.") + port: Optional[StrictInt] = Field(default=None, description="Static proxy port.") + pac: Optional[StrictStr] = Field(default=None, description="PAC URL or PAC script location.") + user_name: Optional[StrictStr] = Field(default=None, description="Proxy authentication user name.", alias="userName") + bypass_list: Optional[StrictStr] = Field(default=None, description="Comma-separated proxy bypass list.", alias="bypassList") + auth_type: Optional[EndpointProxyAuthType] = Field(default=None, alias="authType") + agent_ids: Optional[List[StrictStr]] = Field(default=None, description="Endpoint Agent IDs assigned to the proxy setting.", alias="agentIds") + test_ids: Optional[List[StrictStr]] = Field(default=None, description="Endpoint scheduled test IDs assigned to the proxy setting.", alias="testIds") + __properties: ClassVar[List[str]] = ["proxyId", "name", "type", "host", "port", "pac", "userName", "bypassList", "authType", "agentIds", "testIds"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointProxy from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "proxy_id", + "name", + "host", + "port", + "pac", + "user_name", + "bypass_list", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # set to None if host (nullable) is None + # and model_fields_set contains the field + if self.host is None and "host" in self.model_fields_set: + _dict['host'] = None + + # set to None if port (nullable) is None + # and model_fields_set contains the field + if self.port is None and "port" in self.model_fields_set: + _dict['port'] = None + + # set to None if pac (nullable) is None + # and model_fields_set contains the field + if self.pac is None and "pac" in self.model_fields_set: + _dict['pac'] = None + + # set to None if user_name (nullable) is None + # and model_fields_set contains the field + if self.user_name is None and "user_name" in self.model_fields_set: + _dict['userName'] = None + + # set to None if bypass_list (nullable) is None + # and model_fields_set contains the field + if self.bypass_list is None and "bypass_list" in self.model_fields_set: + _dict['bypassList'] = None + + # set to None if agent_ids (nullable) is None + # and model_fields_set contains the field + if self.agent_ids is None and "agent_ids" in self.model_fields_set: + _dict['agentIds'] = None + + # set to None if test_ids (nullable) is None + # and model_fields_set contains the field + if self.test_ids is None and "test_ids" in self.model_fields_set: + _dict['testIds'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointProxy from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "proxyId": obj.get("proxyId"), + "name": obj.get("name"), + "type": obj.get("type"), + "host": obj.get("host"), + "port": obj.get("port"), + "pac": obj.get("pac"), + "userName": obj.get("userName"), + "bypassList": obj.get("bypassList"), + "authType": obj.get("authType"), + "agentIds": obj.get("agentIds"), + "testIds": obj.get("testIds") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_auth_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_auth_type.py new file mode 100644 index 00000000..c965b48d --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_auth_type.py @@ -0,0 +1,42 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointProxyAuthType(str, Enum): + """ + Proxy authentication type. + """ + + """ + allowed enum values + """ + NONE = 'none' + BASIC = 'basic' + NTLM = 'ntlm' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointProxyAuthType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_type.py new file mode 100644 index 00000000..db1aee1b --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_proxy_type.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointProxyType(str, Enum): + """ + Proxy setting type. + """ + + """ + allowed enum values + """ + STATIC = 'static' + PAC = 'pac' + DIRECT = 'direct' + SYSTEM = 'system' + INTERACTIVE_MINUS_USER_MINUS_PROXY = 'interactive-user-proxy' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointProxyType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item.py new file mode 100644 index 00000000..e30d6c33 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item.py @@ -0,0 +1,88 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_state_changes_log_item_type import EndpointStateChangesLogItemType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointStateChangesLogItem(BaseModel): + """ + EndpointStateChangesLogItem + """ # noqa: E501 + log_item_type: Optional[EndpointStateChangesLogItemType] = Field(default=None, alias="logItemType") + __properties: ClassVar[List[str]] = ["logItemType"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointStateChangesLogItem from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointStateChangesLogItem from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "logItemType": obj.get("logItemType") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item_type.py new file mode 100644 index 00000000..f9c70ed6 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_state_changes_log_item_type.py @@ -0,0 +1,43 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointStateChangesLogItemType(str, Enum): + """ + State change log item type. + """ + + """ + allowed enum values + """ + RECOVER = 'recover' + ENABLED = 'enabled' + DELETED = 'deleted' + DISABLED = 'disabled' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointStateChangesLogItemType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item.py new file mode 100644 index 00000000..03aa85e6 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item.py @@ -0,0 +1,109 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_log_item_type import EndpointVpnLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_type import EndpointVpnType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointVpnLogItem(BaseModel): + """ + EndpointVpnLogItem + """ # noqa: E501 + log_item_type: Optional[EndpointVpnLogItemType] = Field(default=None, alias="logItemType") + vpn_type: Optional[EndpointVpnType] = Field(default=None, alias="vpnType") + vpn_server_name: Optional[StrictStr] = Field(default=None, description="VPN server name.", alias="vpnServerName") + vpn_server_address: Optional[StrictStr] = Field(default=None, description="VPN server address.", alias="vpnServerAddress") + __properties: ClassVar[List[str]] = ["logItemType", "vpnType", "vpnServerName", "vpnServerAddress"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointVpnLogItem from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "vpn_server_name", + "vpn_server_address", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # set to None if vpn_server_name (nullable) is None + # and model_fields_set contains the field + if self.vpn_server_name is None and "vpn_server_name" in self.model_fields_set: + _dict['vpnServerName'] = None + + # set to None if vpn_server_address (nullable) is None + # and model_fields_set contains the field + if self.vpn_server_address is None and "vpn_server_address" in self.model_fields_set: + _dict['vpnServerAddress'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointVpnLogItem from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "logItemType": obj.get("logItemType"), + "vpnType": obj.get("vpnType"), + "vpnServerName": obj.get("vpnServerName"), + "vpnServerAddress": obj.get("vpnServerAddress") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item_type.py new file mode 100644 index 00000000..c81a4e68 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_log_item_type.py @@ -0,0 +1,41 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointVpnLogItemType(str, Enum): + """ + VPN log item type. + """ + + """ + allowed enum values + """ + VPN_MINUS_CONNECT = 'vpn-connect' + VPN_MINUS_DISCONNECT = 'vpn-disconnect' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointVpnLogItemType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_type.py new file mode 100644 index 00000000..377ab775 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_type.py @@ -0,0 +1,51 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointVpnType(str, Enum): + """ + VPN vendor or type. + """ + + """ + allowed enum values + """ + OPENVPN = 'openvpn' + CISCO_MINUS_ANYCONNECT = 'cisco-anyconnect' + PALO_MINUS_ALTO_MINUS_GLOBALPROTECT = 'palo-alto-globalprotect' + VISCOSITY = 'viscosity' + IVANTI_MINUS_CONNECT_MINUS_SECURE = 'ivanti-connect-secure' + ZSCALER_MINUS_INTERNET_MINUS_ACCESS = 'zscaler-internet-access' + F5_MINUS_BIG_MINUS_IP = 'f5-big-ip' + PPTP = 'pptp' + L2TP = 'l2tp' + SSTP = 'sstp' + IKEV2 = 'ikev2' + AUTO = 'auto' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointVpnType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item.py new file mode 100644 index 00000000..2004560e --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item.py @@ -0,0 +1,162 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_wifi_log_item_type import EndpointWifiLogItemType +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure import EndpointWirelessConnectionFailure +from typing import Optional, Set +from typing_extensions import Self + +class EndpointWifiLogItem(BaseModel): + """ + EndpointWifiLogItem + """ # noqa: E501 + log_item_type: Optional[EndpointWifiLogItemType] = Field(default=None, alias="logItemType") + ssid: Optional[StrictStr] = Field(default=None, description="Wireless network SSID.") + bssid: Optional[StrictStr] = Field(default=None, description="Wireless access point BSSID.") + bssid_from: Optional[StrictStr] = Field(default=None, description="Previous wireless access point BSSID.", alias="bssidFrom") + channel: Optional[StrictStr] = Field(default=None, description="Wireless channel.") + channel_from: Optional[StrictStr] = Field(default=None, description="Previous wireless channel.", alias="channelFrom") + physical_mode: Optional[StrictStr] = Field(default=None, description="Wireless physical mode.", alias="physicalMode") + physical_mode_from: Optional[StrictStr] = Field(default=None, description="Previous wireless physical mode.", alias="physicalModeFrom") + failure: Optional[EndpointWirelessConnectionFailure] = None + __properties: ClassVar[List[str]] = ["logItemType", "ssid", "bssid", "bssidFrom", "channel", "channelFrom", "physicalMode", "physicalModeFrom", "failure"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointWifiLogItem from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "ssid", + "bssid", + "bssid_from", + "channel", + "channel_from", + "physical_mode", + "physical_mode_from", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of failure + if self.failure: + _dict['failure'] = self.failure.to_dict() + # set to None if ssid (nullable) is None + # and model_fields_set contains the field + if self.ssid is None and "ssid" in self.model_fields_set: + _dict['ssid'] = None + + # set to None if bssid (nullable) is None + # and model_fields_set contains the field + if self.bssid is None and "bssid" in self.model_fields_set: + _dict['bssid'] = None + + # set to None if bssid_from (nullable) is None + # and model_fields_set contains the field + if self.bssid_from is None and "bssid_from" in self.model_fields_set: + _dict['bssidFrom'] = None + + # set to None if channel (nullable) is None + # and model_fields_set contains the field + if self.channel is None and "channel" in self.model_fields_set: + _dict['channel'] = None + + # set to None if channel_from (nullable) is None + # and model_fields_set contains the field + if self.channel_from is None and "channel_from" in self.model_fields_set: + _dict['channelFrom'] = None + + # set to None if physical_mode (nullable) is None + # and model_fields_set contains the field + if self.physical_mode is None and "physical_mode" in self.model_fields_set: + _dict['physicalMode'] = None + + # set to None if physical_mode_from (nullable) is None + # and model_fields_set contains the field + if self.physical_mode_from is None and "physical_mode_from" in self.model_fields_set: + _dict['physicalModeFrom'] = None + + # set to None if failure (nullable) is None + # and model_fields_set contains the field + if self.failure is None and "failure" in self.model_fields_set: + _dict['failure'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointWifiLogItem from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "logItemType": obj.get("logItemType"), + "ssid": obj.get("ssid"), + "bssid": obj.get("bssid"), + "bssidFrom": obj.get("bssidFrom"), + "channel": obj.get("channel"), + "channelFrom": obj.get("channelFrom"), + "physicalMode": obj.get("physicalMode"), + "physicalModeFrom": obj.get("physicalModeFrom"), + "failure": EndpointWirelessConnectionFailure.from_dict(obj["failure"]) if obj.get("failure") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item_type.py new file mode 100644 index 00000000..5bfd5888 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wifi_log_item_type.py @@ -0,0 +1,43 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointWifiLogItemType(str, Enum): + """ + Wi-Fi log item type. + """ + + """ + allowed enum values + """ + WIFI_MINUS_CHANGE = 'wifi-change' + WIFI_MINUS_CONNECT = 'wifi-connect' + WIFI_MINUS_DISCONNECT = 'wifi-disconnect' + WIFI_MINUS_CONNECTION_MINUS_FAILURE = 'wifi-connection-failure' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointWifiLogItemType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure.py new file mode 100644 index 00000000..acf136bf --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure.py @@ -0,0 +1,106 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_agents.models.endpoint_wireless_connection_failure_type import EndpointWirelessConnectionFailureType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointWirelessConnectionFailure(BaseModel): + """ + EndpointWirelessConnectionFailure + """ # noqa: E501 + type: Optional[EndpointWirelessConnectionFailureType] = None + context: Optional[StrictStr] = Field(default=None, description="Additional context for the wireless connection failure.") + code: Optional[StrictInt] = Field(default=None, description="Wireless connection failure code.") + __properties: ClassVar[List[str]] = ["type", "context", "code"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointWirelessConnectionFailure from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "context", + "code", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # set to None if context (nullable) is None + # and model_fields_set contains the field + if self.context is None and "context" in self.model_fields_set: + _dict['context'] = None + + # set to None if code (nullable) is None + # and model_fields_set contains the field + if self.code is None and "code" in self.model_fields_set: + _dict['code'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointWirelessConnectionFailure from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "type": obj.get("type"), + "context": obj.get("context"), + "code": obj.get("code") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure_type.py b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure_type.py new file mode 100644 index 00000000..35133753 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/src/thousandeyes_sdk/endpoint_agents/models/endpoint_wireless_connection_failure_type.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointWirelessConnectionFailureType(str, Enum): + """ + Wireless connection failure phase. + """ + + """ + allowed enum values + """ + INIT = 'init' + AUTH = 'auth' + ASSOC = 'assoc' + EAP = 'eap' + DHCP = 'dhcp' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointWirelessConnectionFailureType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-agents/test/test_endpoint_agent_log_items_api.py b/thousandeyes-sdk-endpoint-agents/test/test_endpoint_agent_log_items_api.py new file mode 100644 index 00000000..df81a558 --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/test/test_endpoint_agent_log_items_api.py @@ -0,0 +1,129 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import json +import unittest +import thousandeyes_sdk.endpoint_agents.models + +from .test_utils import assert_constructed_model_matches_example_json +from thousandeyes_sdk.endpoint_agents.api.endpoint_agent_log_items_api import EndpointAgentLogItemsApi + + +class TestEndpointAgentLogItemsApi(unittest.TestCase): + """EndpointAgentLogItemsApi unit test stubs""" + + def setUp(self) -> None: + self.api = EndpointAgentLogItemsApi() + + def tearDown(self) -> None: + pass + + def test_get_endpoint_agent_log_items_models_validation(self) -> None: + """Test case for get_endpoint_agent_log_items request and response models""" + + response_body_json = """ + { + "_links" : { + "next" : { + "hreflang" : "hreflang", + "templated" : true, + "profile" : "profile", + "name" : "name", + "href" : "https://api.thousandeyes.com/v7/link/to/resource/id", + "type" : "type", + "deprecation" : "deprecation", + "title" : "title" + }, + "self" : { + "hreflang" : "hreflang", + "templated" : true, + "profile" : "profile", + "name" : "name", + "href" : "https://api.thousandeyes.com/v7/link/to/resource/id", + "type" : "type", + "deprecation" : "deprecation", + "title" : "title" + } + }, + "logs" : [ { + "wifiLogItem" : { + "bssidFrom" : "00:11:22:33:44:54", + "bssid" : "00:11:22:33:44:55", + "failure" : { + "code" : 4, + "context" : "WPA authentication failed", + "type" : "auth" + }, + "logItemType" : "wifi-connect", + "channel" : "36", + "physicalMode" : "802.11ac", + "physicalModeFrom" : "802.11n", + "ssid" : "CorpWiFi", + "channelFrom" : "11" + }, + "agentLogItemType" : "wifi", + "onlineOfflineLogItem" : { + "logItemType" : "online" + }, + "id" : "8d23f1b7-74ef-4e0c-925c-58601fc0662d", + "vpnLogItem" : { + "logItemType" : "vpn-connect", + "vpnServerName" : "vpn-us-west", + "vpnType" : "cisco-anyconnect", + "vpnServerAddress" : "192.0.2.10" + }, + "stateChangesLogItem" : { + "logItemType" : "enabled" + }, + "timestampMs" : 1709240000000 + }, { + "wifiLogItem" : { + "bssidFrom" : "00:11:22:33:44:54", + "bssid" : "00:11:22:33:44:55", + "failure" : { + "code" : 4, + "context" : "WPA authentication failed", + "type" : "auth" + }, + "logItemType" : "wifi-connect", + "channel" : "36", + "physicalMode" : "802.11ac", + "physicalModeFrom" : "802.11n", + "ssid" : "CorpWiFi", + "channelFrom" : "11" + }, + "agentLogItemType" : "wifi", + "onlineOfflineLogItem" : { + "logItemType" : "online" + }, + "id" : "8d23f1b7-74ef-4e0c-925c-58601fc0662d", + "vpnLogItem" : { + "logItemType" : "vpn-connect", + "vpnServerName" : "vpn-us-west", + "vpnType" : "cisco-anyconnect", + "vpnServerAddress" : "192.0.2.10" + }, + "stateChangesLogItem" : { + "logItemType" : "enabled" + }, + "timestampMs" : 1709240000000 + } ] + }""" + + response_loaded_json = json.loads(response_body_json) + response_from_json = thousandeyes_sdk.endpoint_agents.models.EndpointAgentLogItemsResponse.from_json(response_body_json) + assert_constructed_model_matches_example_json(response_from_json, response_loaded_json) + + +if __name__ == '__main__': + unittest.main() diff --git a/thousandeyes-sdk-endpoint-agents/test/test_endpoint_proxies_api.py b/thousandeyes-sdk-endpoint-agents/test/test_endpoint_proxies_api.py new file mode 100644 index 00000000..7b0714da --- /dev/null +++ b/thousandeyes-sdk-endpoint-agents/test/test_endpoint_proxies_api.py @@ -0,0 +1,69 @@ +# coding: utf-8 + +""" + Endpoint Agents API + + **Note:** The Endpoint Agents Transfer APIs are not available for ThousandEyes for Government instance. Manage ThousandEyes Endpoint Agents using this API. For more information about Endpoint Agents, see [Endpoint Agents](https://docs.thousandeyes.com/product-documentation/global-vantage-points/endpoint-agents). + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import json +import unittest +import thousandeyes_sdk.endpoint_agents.models + +from .test_utils import assert_constructed_model_matches_example_json +from thousandeyes_sdk.endpoint_agents.api.endpoint_proxies_api import EndpointProxiesApi + + +class TestEndpointProxiesApi(unittest.TestCase): + """EndpointProxiesApi unit test stubs""" + + def setUp(self) -> None: + self.api = EndpointProxiesApi() + + def tearDown(self) -> None: + pass + + def test_get_endpoint_proxies_models_validation(self) -> None: + """Test case for get_endpoint_proxies request and response models""" + + response_body_json = """ + { + "proxies" : [ { + "testIds" : [ "9923667", "9923667" ], + "agentIds" : [ "861b7557-cd57-4bbb-b648-00bddf88ef49", "861b7557-cd57-4bbb-b648-00bddf88ef49" ], + "pac" : "https://example.com/proxy.pac", + "port" : 8080, + "name" : "Local Mitmproxy", + "host" : "localhost", + "type" : "static", + "userName" : "endpoint-proxy-user", + "authType" : "none", + "bypassList" : "localhost,127.0.0.1", + "proxyId" : "101498" + }, { + "testIds" : [ "9923667", "9923667" ], + "agentIds" : [ "861b7557-cd57-4bbb-b648-00bddf88ef49", "861b7557-cd57-4bbb-b648-00bddf88ef49" ], + "pac" : "https://example.com/proxy.pac", + "port" : 8080, + "name" : "Local Mitmproxy", + "host" : "localhost", + "type" : "static", + "userName" : "endpoint-proxy-user", + "authType" : "none", + "bypassList" : "localhost,127.0.0.1", + "proxyId" : "101498" + } ] + }""" + + response_loaded_json = json.loads(response_body_json) + response_from_json = thousandeyes_sdk.endpoint_agents.models.EndpointProxiesResponse.from_json(response_body_json) + assert_constructed_model_matches_example_json(response_from_json, response_loaded_json) + + +if __name__ == '__main__': + unittest.main() diff --git a/thousandeyes-sdk-endpoint-instant-tests/README.md b/thousandeyes-sdk-endpoint-instant-tests/README.md index 3c356643..6c8c36a0 100644 --- a/thousandeyes-sdk-endpoint-instant-tests/README.md +++ b/thousandeyes-sdk-endpoint-instant-tests/README.md @@ -12,13 +12,13 @@ The URLs for these API test data endpoints are provided within the test definiti This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-endpoint-instant-tests/pyproject.toml b/thousandeyes-sdk-endpoint-instant-tests/pyproject.toml index 17cce6de..c948cf90 100644 --- a/thousandeyes-sdk-endpoint-instant-tests/pyproject.toml +++ b/thousandeyes-sdk-endpoint-instant-tests/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Endpoint Instant Scheduled Tests API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-labels/README.md b/thousandeyes-sdk-endpoint-labels/README.md index 1e528b67..e41bc9cb 100644 --- a/thousandeyes-sdk-endpoint-labels/README.md +++ b/thousandeyes-sdk-endpoint-labels/README.md @@ -4,13 +4,13 @@ Manage labels applied to endpoint agents using this API. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-endpoint-labels/pyproject.toml b/thousandeyes-sdk-endpoint-labels/pyproject.toml index 4ba71702..1d144ec3 100644 --- a/thousandeyes-sdk-endpoint-labels/pyproject.toml +++ b/thousandeyes-sdk-endpoint-labels/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Endpoint Agent Labels API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-test-results/README.md b/thousandeyes-sdk-endpoint-test-results/README.md index 1444d733..4d0bc4ad 100644 --- a/thousandeyes-sdk-endpoint-test-results/README.md +++ b/thousandeyes-sdk-endpoint-test-results/README.md @@ -3,13 +3,13 @@ Retrieve results for scheduled and dynamic tests on endpoint agents. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-endpoint-test-results/pyproject.toml b/thousandeyes-sdk-endpoint-test-results/pyproject.toml index 88b8cf54..09abf6bb 100644 --- a/thousandeyes-sdk-endpoint-test-results/pyproject.toml +++ b/thousandeyes-sdk-endpoint-test-results/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Endpoint Test Results API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-tests/.openapi-generator/FILES b/thousandeyes-sdk-endpoint-tests/.openapi-generator/FILES index e5c9bdbc..9008d979 100644 --- a/thousandeyes-sdk-endpoint-tests/.openapi-generator/FILES +++ b/thousandeyes-sdk-endpoint-tests/.openapi-generator/FILES @@ -25,7 +25,12 @@ docs/EndpointHttpServerTests.md docs/EndpointHttpTestUpdate.md docs/EndpointInstantTest.md docs/EndpointIpVersionIn.md +docs/EndpointMonitoringSettings.md +docs/EndpointMonitoringSettingsType.md docs/EndpointNetworkTestUpdate.md +docs/EndpointRealUserTest.md +docs/EndpointRealUserTestsApi.md +docs/EndpointRealUserTestsResponse.md docs/EndpointScheduledTestType.md docs/EndpointScheduledTestsApi.md docs/EndpointSpecificAgentsSelectorConfig.md @@ -55,6 +60,7 @@ src/thousandeyes_sdk/endpoint_tests/__init__.py src/thousandeyes_sdk/endpoint_tests/api/__init__.py src/thousandeyes_sdk/endpoint_tests/api/agent_to_server_endpoint_dynamic_tests_api.py src/thousandeyes_sdk/endpoint_tests/api/agent_to_server_endpoint_scheduled_tests_api.py +src/thousandeyes_sdk/endpoint_tests/api/endpoint_real_user_tests_api.py src/thousandeyes_sdk/endpoint_tests/api/endpoint_scheduled_tests_api.py src/thousandeyes_sdk/endpoint_tests/api/http_server_endpoint_scheduled_tests_api.py src/thousandeyes_sdk/endpoint_tests/models/__init__.py @@ -80,7 +86,11 @@ src/thousandeyes_sdk/endpoint_tests/models/endpoint_http_server_tests.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_http_test_update.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_instant_test.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_ip_version_in.py +src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings.py +src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings_type.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_network_test_update.py +src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_test.py +src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_tests_response.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_scheduled_test_type.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_specific_agents_selector_config.py src/thousandeyes_sdk/endpoint_tests/models/endpoint_test.py @@ -106,6 +116,7 @@ src/thousandeyes_sdk/endpoint_tests/py.typed test/__init__.py test/test_agent_to_server_endpoint_dynamic_tests_api.py test/test_agent_to_server_endpoint_scheduled_tests_api.py +test/test_endpoint_real_user_tests_api.py test/test_endpoint_scheduled_tests_api.py test/test_http_server_endpoint_scheduled_tests_api.py test/test_utils.py diff --git a/thousandeyes-sdk-endpoint-tests/README.md b/thousandeyes-sdk-endpoint-tests/README.md index c263c00e..1f1f7628 100644 --- a/thousandeyes-sdk-endpoint-tests/README.md +++ b/thousandeyes-sdk-endpoint-tests/README.md @@ -4,13 +4,13 @@ Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install @@ -106,6 +106,7 @@ Class | Method | HTTP request | Description *AgentToServerEndpointScheduledTestsApi* | [**get_agent_to_server_endpoint_scheduled_test**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/AgentToServerEndpointScheduledTestsApi.md#get_agent_to_server_endpoint_scheduled_test) | **GET** /endpoint/tests/scheduled-tests/agent-to-server/{testId} | Retrieve agent to server endpoint scheduled test *AgentToServerEndpointScheduledTestsApi* | [**get_agent_to_server_endpoint_scheduled_tests**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/AgentToServerEndpointScheduledTestsApi.md#get_agent_to_server_endpoint_scheduled_tests) | **GET** /endpoint/tests/scheduled-tests/agent-to-server | List agent to server endpoint scheduled tests *AgentToServerEndpointScheduledTestsApi* | [**update_agent_to_server_endpoint_scheduled_test**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/AgentToServerEndpointScheduledTestsApi.md#update_agent_to_server_endpoint_scheduled_test) | **PATCH** /endpoint/tests/scheduled-tests/agent-to-server/{testId} | Update agent to server endpoint scheduled test +*EndpointRealUserTestsApi* | [**get_endpoint_real_user_tests**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsApi.md#get_endpoint_real_user_tests) | **GET** /endpoint/tests/real-user-tests | List endpoint real user tests *EndpointScheduledTestsApi* | [**get_endpoint_scheduled_tests**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointScheduledTestsApi.md#get_endpoint_scheduled_tests) | **GET** /endpoint/tests/scheduled-tests | List endpoint scheduled tests *HTTPServerEndpointScheduledTestsApi* | [**create_http_server_endpoint_scheduled_test**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/HTTPServerEndpointScheduledTestsApi.md#create_http_server_endpoint_scheduled_test) | **POST** /endpoint/tests/scheduled-tests/http-server | Create HTTP server endpoint scheduled test *HTTPServerEndpointScheduledTestsApi* | [**delete_http_server_endpoint_scheduled_test**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/HTTPServerEndpointScheduledTestsApi.md#delete_http_server_endpoint_scheduled_test) | **DELETE** /endpoint/tests/scheduled-tests/http-server/{testId} | Delete HTTP server scheduled test @@ -138,7 +139,11 @@ Class | Method | HTTP request | Description - [EndpointHttpTestUpdate](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointHttpTestUpdate.md) - [EndpointInstantTest](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointInstantTest.md) - [EndpointIpVersionIn](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointIpVersionIn.md) + - [EndpointMonitoringSettings](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettings.md) + - [EndpointMonitoringSettingsType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettingsType.md) - [EndpointNetworkTestUpdate](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointNetworkTestUpdate.md) + - [EndpointRealUserTest](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTest.md) + - [EndpointRealUserTestsResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsResponse.md) - [EndpointScheduledTestType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointScheduledTestType.md) - [EndpointSpecificAgentsSelectorConfig](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointSpecificAgentsSelectorConfig.md) - [EndpointTest](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-tests/docs/EndpointTest.md) diff --git a/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettings.md b/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettings.md new file mode 100644 index 00000000..2b3a5446 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettings.md @@ -0,0 +1,33 @@ +# EndpointMonitoringSettings + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**monitoring_settings_id** | **str** | Unique ID of the monitoring settings. | [optional] [readonly] +**monitoring_settings_type** | [**EndpointMonitoringSettingsType**](EndpointMonitoringSettingsType.md) | | +**agent_ids** | **List[str]** | Endpoint Agent IDs selected by the monitoring settings. | [optional] +**tag_ids** | **List[str]** | Endpoint Agent tag IDs selected by the monitoring settings. | [optional] +**label_ids** | **List[str]** | Legacy Endpoint Agent label IDs selected by the monitoring settings. | [optional] + +## Example + +```python +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings import EndpointMonitoringSettings + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointMonitoringSettings from a JSON string +endpoint_monitoring_settings_instance = EndpointMonitoringSettings.from_json(json) +# print the JSON string representation of the object +print(EndpointMonitoringSettings.to_json()) + +# convert the object into a dict +endpoint_monitoring_settings_dict = endpoint_monitoring_settings_instance.to_dict() +# create an instance of EndpointMonitoringSettings from a dict +endpoint_monitoring_settings_from_dict = EndpointMonitoringSettings.from_dict(endpoint_monitoring_settings_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettingsType.md b/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettingsType.md new file mode 100644 index 00000000..780aeef8 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/docs/EndpointMonitoringSettingsType.md @@ -0,0 +1,12 @@ +# EndpointMonitoringSettingsType + +Endpoint Agent selector type used by the monitoring settings. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTest.md b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTest.md new file mode 100644 index 00000000..9e0b9823 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTest.md @@ -0,0 +1,34 @@ +# EndpointRealUserTest + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**profile_id** | **str** | Unique ID of the monitoring profile. | [readonly] +**aid** | **str** | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. | +**name** | **str** | Monitoring profile name. | [readonly] +**included_domains** | **List[str]** | Domains included in real user monitoring. | +**excluded_domains** | **List[str]** | Domains excluded from real user monitoring. | +**monitoring_settings** | [**EndpointMonitoringSettings**](EndpointMonitoringSettings.md) | | + +## Example + +```python +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_test import EndpointRealUserTest + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointRealUserTest from a JSON string +endpoint_real_user_test_instance = EndpointRealUserTest.from_json(json) +# print the JSON string representation of the object +print(EndpointRealUserTest.to_json()) + +# convert the object into a dict +endpoint_real_user_test_dict = endpoint_real_user_test_instance.to_dict() +# create an instance of EndpointRealUserTest from a dict +endpoint_real_user_test_from_dict = EndpointRealUserTest.from_dict(endpoint_real_user_test_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsApi.md b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsApi.md new file mode 100644 index 00000000..07947290 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsApi.md @@ -0,0 +1,92 @@ +# thousandeyes_sdk.endpoint_tests.EndpointRealUserTestsApi + +All URIs are relative to *https://api.thousandeyes.com/v7* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**get_endpoint_real_user_tests**](EndpointRealUserTestsApi.md#get_endpoint_real_user_tests) | **GET** /endpoint/tests/real-user-tests | List endpoint real user tests + + +# **get_endpoint_real_user_tests** +> EndpointRealUserTestsResponse get_endpoint_real_user_tests(aid=aid) + +List endpoint real user tests + +Returns real user test domain monitoring profiles for endpoint agents. + +### Example + +* Bearer Authentication (BearerAuth): + +```python +import thousandeyes_sdk.endpoint_tests +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_tests_response import EndpointRealUserTestsResponse +from thousandeyes_sdk.endpoint_tests.rest import ApiException +from pprint import pprint + +# Defining the host is optional and defaults to https://api.thousandeyes.com/v7 +# See configuration.py for a list of all supported configuration parameters. +configuration = thousandeyes_sdk.core.Configuration( + host = "https://api.thousandeyes.com/v7" +) + +# The client must configure the authentication and authorization parameters +# in accordance with the API server security policy. +# Examples for each auth method are provided below, use the example that +# satisfies your auth use case. + +# Configure Bearer authorization: BearerAuth +configuration = thousandeyes_sdk.core.Configuration( + access_token = os.environ["BEARER_TOKEN"] +) + +# Enter a context with an instance of the API client +with thousandeyes_sdk.core.ApiClient(configuration) as api_client: + # Create an instance of the API class + api_instance = thousandeyes_sdk.endpoint_tests.EndpointRealUserTestsApi(api_client) + aid = '1234' # str | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. (optional) + + try: + # List endpoint real user tests + api_response = api_instance.get_endpoint_real_user_tests(aid=aid) + print("The response of EndpointRealUserTestsApi->get_endpoint_real_user_tests:\n") + pprint(api_response) + except Exception as e: + print("Exception when calling EndpointRealUserTestsApi->get_endpoint_real_user_tests: %s\n" % e) +``` + + + +### Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **aid** | **str**| A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. | [optional] + +### Return type + +[**EndpointRealUserTestsResponse**](EndpointRealUserTestsResponse.md) + +### Authorization + +[BearerAuth](../README.md#BearerAuth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json, application/problem+json + +### HTTP response details + +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Real user test domain monitoring profiles. | - | +**401** | Unauthorized | - | +**403** | Insufficient permissions to query endpoint | - | +**429** | Exhausted rate limit for the organization | - | +**500** | Internal server error | - | +**0** | An error occurred | - | + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsResponse.md b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsResponse.md new file mode 100644 index 00000000..6de747a8 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/docs/EndpointRealUserTestsResponse.md @@ -0,0 +1,29 @@ +# EndpointRealUserTestsResponse + + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**real_user_tests** | [**List[EndpointRealUserTest]**](EndpointRealUserTest.md) | Real user test domain monitoring profiles. | + +## Example + +```python +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_tests_response import EndpointRealUserTestsResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of EndpointRealUserTestsResponse from a JSON string +endpoint_real_user_tests_response_instance = EndpointRealUserTestsResponse.from_json(json) +# print the JSON string representation of the object +print(EndpointRealUserTestsResponse.to_json()) + +# convert the object into a dict +endpoint_real_user_tests_response_dict = endpoint_real_user_tests_response_instance.to_dict() +# create an instance of EndpointRealUserTestsResponse from a dict +endpoint_real_user_tests_response_from_dict = EndpointRealUserTestsResponse.from_dict(endpoint_real_user_tests_response_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-endpoint-tests/pyproject.toml b/thousandeyes-sdk-endpoint-tests/pyproject.toml index 47478ebf..cf1a1e7d 100644 --- a/thousandeyes-sdk-endpoint-tests/pyproject.toml +++ b/thousandeyes-sdk-endpoint-tests/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Endpoint Tests API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/__init__.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/__init__.py index c08bcc7f..e545d611 100644 --- a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/__init__.py +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/__init__.py @@ -16,6 +16,7 @@ # import apis into sdk package from thousandeyes_sdk.endpoint_tests.api.agent_to_server_endpoint_dynamic_tests_api import AgentToServerEndpointDynamicTestsApi from thousandeyes_sdk.endpoint_tests.api.agent_to_server_endpoint_scheduled_tests_api import AgentToServerEndpointScheduledTestsApi +from thousandeyes_sdk.endpoint_tests.api.endpoint_real_user_tests_api import EndpointRealUserTestsApi from thousandeyes_sdk.endpoint_tests.api.endpoint_scheduled_tests_api import EndpointScheduledTestsApi from thousandeyes_sdk.endpoint_tests.api.http_server_endpoint_scheduled_tests_api import HTTPServerEndpointScheduledTestsApi @@ -43,7 +44,11 @@ from thousandeyes_sdk.endpoint_tests.models.endpoint_http_server_tests import En from thousandeyes_sdk.endpoint_tests.models.endpoint_http_test_update import EndpointHttpTestUpdate from thousandeyes_sdk.endpoint_tests.models.endpoint_instant_test import EndpointInstantTest from thousandeyes_sdk.endpoint_tests.models.endpoint_ip_version_in import EndpointIpVersionIn +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings import EndpointMonitoringSettings +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings_type import EndpointMonitoringSettingsType from thousandeyes_sdk.endpoint_tests.models.endpoint_network_test_update import EndpointNetworkTestUpdate +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_test import EndpointRealUserTest +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_tests_response import EndpointRealUserTestsResponse from thousandeyes_sdk.endpoint_tests.models.endpoint_scheduled_test_type import EndpointScheduledTestType from thousandeyes_sdk.endpoint_tests.models.endpoint_specific_agents_selector_config import EndpointSpecificAgentsSelectorConfig from thousandeyes_sdk.endpoint_tests.models.endpoint_test import EndpointTest diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/__init__.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/__init__.py index e248e6f4..fb47dfe2 100644 --- a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/__init__.py +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/__init__.py @@ -3,6 +3,7 @@ # import apis into api package from thousandeyes_sdk.endpoint_tests.api.agent_to_server_endpoint_dynamic_tests_api import AgentToServerEndpointDynamicTestsApi from thousandeyes_sdk.endpoint_tests.api.agent_to_server_endpoint_scheduled_tests_api import AgentToServerEndpointScheduledTestsApi +from thousandeyes_sdk.endpoint_tests.api.endpoint_real_user_tests_api import EndpointRealUserTestsApi from thousandeyes_sdk.endpoint_tests.api.endpoint_scheduled_tests_api import EndpointScheduledTestsApi from thousandeyes_sdk.endpoint_tests.api.http_server_endpoint_scheduled_tests_api import HTTPServerEndpointScheduledTestsApi diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/endpoint_real_user_tests_api.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/endpoint_real_user_tests_api.py new file mode 100644 index 00000000..6ddc6cd0 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/api/endpoint_real_user_tests_api.py @@ -0,0 +1,318 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + +import warnings +from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt +from typing import Any, Dict, List, Optional, Tuple, Union +from typing_extensions import Annotated +from importlib.metadata import version + +import thousandeyes_sdk.endpoint_tests.models + +from pydantic import Field, StrictStr +from typing import Optional +from typing_extensions import Annotated +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_tests_response import EndpointRealUserTestsResponse + +from thousandeyes_sdk.core.api_client import ApiClient, RequestSerialized +from thousandeyes_sdk.core.api_response import ApiResponse + +from thousandeyes_sdk.core.rest import RESTResponseType + + +class EndpointRealUserTestsApi: + """NOTE: This class is auto generated by OpenAPI Generator + Ref: https://openapi-generator.tech + + Do not edit the class manually. + """ + + def __init__(self, api_client=None) -> None: + if api_client is None: + api_client = ApiClient.get_default() + api_client.user_agent = "ThousandEyesSDK-Python/{0}".format(version("thousandeyes-sdk-endpoint-tests")) + self.api_client = api_client + + + @validate_call + def get_endpoint_real_user_tests( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> EndpointRealUserTestsResponse: + """List endpoint real user tests + + Returns real user test domain monitoring profiles for endpoint agents. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_real_user_tests_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointRealUserTestsResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_tests.models, + ).data + + + @validate_call + def get_endpoint_real_user_tests_with_http_info( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> ApiResponse[EndpointRealUserTestsResponse]: + """List endpoint real user tests + + Returns real user test domain monitoring profiles for endpoint agents. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_real_user_tests_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointRealUserTestsResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + response_data.read() + return self.api_client.response_deserialize( + response_data=response_data, + response_types_map=_response_types_map, + models=thousandeyes_sdk.endpoint_tests.models, + ) + + + @validate_call + def get_endpoint_real_user_tests_without_preload_content( + self, + aid: Annotated[Optional[StrictStr], Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response.")] = None, + _request_timeout: Union[ + None, + Annotated[StrictFloat, Field(gt=0)], + Tuple[ + Annotated[StrictFloat, Field(gt=0)], + Annotated[StrictFloat, Field(gt=0)] + ] + ] = None, + _request_auth: Optional[Dict[StrictStr, Any]] = None, + _content_type: Optional[StrictStr] = None, + _headers: Optional[Dict[StrictStr, Any]] = None, + _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0, + ) -> RESTResponseType: + """List endpoint real user tests + + Returns real user test domain monitoring profiles for endpoint agents. + + :param aid: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. + :type aid: str + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request + timeout. It can also be a pair (tuple) of + (connection, read) timeouts. + :type _request_timeout: int, tuple(int, int), optional + :param _request_auth: set to override the auth_settings for an a single + request; this effectively ignores the + authentication in the spec for a single request. + :type _request_auth: dict, optional + :param _content_type: force content-type for the request. + :type _content_type: str, Optional + :param _headers: set to override the headers for a single + request; this effectively ignores the headers + in the spec for a single request. + :type _headers: dict, optional + :param _host_index: set to override the host_index for a single + request; this effectively ignores the host_index + in the spec for a single request. + :type _host_index: int, optional + :return: Returns the result object. + """ # noqa: E501 + + _param = self._get_endpoint_real_user_tests_serialize( + aid=aid, + _request_auth=_request_auth, + _content_type=_content_type, + _headers=_headers, + _host_index=_host_index + ) + + _response_types_map: Dict[str, Optional[str]] = { + '200': "EndpointRealUserTestsResponse", + '401': "UnauthorizedError", + '403': "Error", + '429': "Error", + '500': "Error", + } + response_data = self.api_client.call_api( + *_param, + _request_timeout=_request_timeout + ) + return response_data.response + + + def _get_endpoint_real_user_tests_serialize( + self, + aid, + _request_auth, + _content_type, + _headers, + _host_index, + ) -> RequestSerialized: + + _host = None + + _collection_formats: Dict[str, str] = { + } + + _path_params: Dict[str, str] = {} + _query_params: List[Tuple[str, str]] = [] + _header_params: Dict[str, Optional[str]] = _headers or {} + _form_params: List[Tuple[str, str]] = [] + _files: Dict[str, Union[str, bytes]] = {} + _body_params: Optional[bytes] = None + + # process the path parameters + # process the query parameters + if aid is not None: + + _query_params.append(('aid', aid)) + + # process the header parameters + # process the form parameters + # process the body parameter + + + # set the HTTP header `Accept` + _header_params['Accept'] = self.api_client.select_header_accept( + [ + 'application/json', + 'application/problem+json' + ] + ) + + + # authentication setting + _auth_settings: List[str] = [ + 'BearerAuth' + ] + + return self.api_client.param_serialize( + method='GET', + resource_path='/endpoint/tests/real-user-tests', + path_params=_path_params, + query_params=_query_params, + header_params=_header_params, + body=_body_params, + post_params=_form_params, + files=_files, + auth_settings=_auth_settings, + collection_formats=_collection_formats, + _host=_host, + _request_auth=_request_auth + ) + + diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/__init__.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/__init__.py index 6326f1ef..459335e2 100644 --- a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/__init__.py +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/__init__.py @@ -35,7 +35,11 @@ from thousandeyes_sdk.endpoint_tests.models.endpoint_http_server_tests import En from thousandeyes_sdk.endpoint_tests.models.endpoint_http_test_update import EndpointHttpTestUpdate from thousandeyes_sdk.endpoint_tests.models.endpoint_instant_test import EndpointInstantTest from thousandeyes_sdk.endpoint_tests.models.endpoint_ip_version_in import EndpointIpVersionIn +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings import EndpointMonitoringSettings +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings_type import EndpointMonitoringSettingsType from thousandeyes_sdk.endpoint_tests.models.endpoint_network_test_update import EndpointNetworkTestUpdate +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_test import EndpointRealUserTest +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_tests_response import EndpointRealUserTestsResponse from thousandeyes_sdk.endpoint_tests.models.endpoint_scheduled_test_type import EndpointScheduledTestType from thousandeyes_sdk.endpoint_tests.models.endpoint_specific_agents_selector_config import EndpointSpecificAgentsSelectorConfig from thousandeyes_sdk.endpoint_tests.models.endpoint_test import EndpointTest diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings.py new file mode 100644 index 00000000..3b840d32 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings.py @@ -0,0 +1,118 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings_type import EndpointMonitoringSettingsType +from typing import Optional, Set +from typing_extensions import Self + +class EndpointMonitoringSettings(BaseModel): + """ + EndpointMonitoringSettings + """ # noqa: E501 + monitoring_settings_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the monitoring settings.", alias="monitoringSettingsId") + monitoring_settings_type: EndpointMonitoringSettingsType = Field(alias="monitoringSettingsType") + agent_ids: Optional[List[StrictStr]] = Field(default=None, description="Endpoint Agent IDs selected by the monitoring settings.", alias="agentIds") + tag_ids: Optional[List[StrictStr]] = Field(default=None, description="Endpoint Agent tag IDs selected by the monitoring settings.", alias="tagIds") + label_ids: Optional[List[StrictStr]] = Field(default=None, description="Legacy Endpoint Agent label IDs selected by the monitoring settings.", alias="labelIds") + __properties: ClassVar[List[str]] = ["monitoringSettingsId", "monitoringSettingsType", "agentIds", "tagIds", "labelIds"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointMonitoringSettings from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "monitoring_settings_id", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # set to None if monitoring_settings_id (nullable) is None + # and model_fields_set contains the field + if self.monitoring_settings_id is None and "monitoring_settings_id" in self.model_fields_set: + _dict['monitoringSettingsId'] = None + + # set to None if agent_ids (nullable) is None + # and model_fields_set contains the field + if self.agent_ids is None and "agent_ids" in self.model_fields_set: + _dict['agentIds'] = None + + # set to None if tag_ids (nullable) is None + # and model_fields_set contains the field + if self.tag_ids is None and "tag_ids" in self.model_fields_set: + _dict['tagIds'] = None + + # set to None if label_ids (nullable) is None + # and model_fields_set contains the field + if self.label_ids is None and "label_ids" in self.model_fields_set: + _dict['labelIds'] = None + + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointMonitoringSettings from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "monitoringSettingsId": obj.get("monitoringSettingsId"), + "monitoringSettingsType": obj.get("monitoringSettingsType"), + "agentIds": obj.get("agentIds"), + "tagIds": obj.get("tagIds"), + "labelIds": obj.get("labelIds") + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings_type.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings_type.py new file mode 100644 index 00000000..d0b3c4a6 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_monitoring_settings_type.py @@ -0,0 +1,43 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class EndpointMonitoringSettingsType(str, Enum): + """ + Endpoint Agent selector type used by the monitoring settings. + """ + + """ + allowed enum values + """ + ALL_MINUS_AGENTS = 'all-agents' + SPECIFIC_MINUS_AGENTS = 'specific-agents' + AGENT_MINUS_LABELS = 'agent-labels' + AGENT_MINUS_TAGS = 'agent-tags' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of EndpointMonitoringSettingsType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_test.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_test.py new file mode 100644 index 00000000..5d4e4cd7 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_test.py @@ -0,0 +1,105 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictStr +from typing import Any, ClassVar, Dict, List +from thousandeyes_sdk.endpoint_tests.models.endpoint_monitoring_settings import EndpointMonitoringSettings +from typing import Optional, Set +from typing_extensions import Self + +class EndpointRealUserTest(BaseModel): + """ + EndpointRealUserTest + """ # noqa: E501 + profile_id: StrictStr = Field(description="Unique ID of the monitoring profile.", alias="profileId") + aid: StrictStr = Field(description="A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint.") + name: StrictStr = Field(description="Monitoring profile name.") + included_domains: List[StrictStr] = Field(description="Domains included in real user monitoring.", alias="includedDomains") + excluded_domains: List[StrictStr] = Field(description="Domains excluded from real user monitoring.", alias="excludedDomains") + monitoring_settings: EndpointMonitoringSettings = Field(alias="monitoringSettings") + __properties: ClassVar[List[str]] = ["profileId", "aid", "name", "includedDomains", "excludedDomains", "monitoringSettings"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointRealUserTest from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "profile_id", + "name", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of monitoring_settings + if self.monitoring_settings: + _dict['monitoringSettings'] = self.monitoring_settings.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointRealUserTest from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "profileId": obj.get("profileId"), + "aid": obj.get("aid"), + "name": obj.get("name"), + "includedDomains": obj.get("includedDomains"), + "excludedDomains": obj.get("excludedDomains"), + "monitoringSettings": EndpointMonitoringSettings.from_dict(obj["monitoringSettings"]) if obj.get("monitoringSettings") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_tests_response.py b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_tests_response.py new file mode 100644 index 00000000..6fca67e5 --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/src/thousandeyes_sdk/endpoint_tests/models/endpoint_real_user_tests_response.py @@ -0,0 +1,95 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field +from typing import Any, ClassVar, Dict, List +from thousandeyes_sdk.endpoint_tests.models.endpoint_real_user_test import EndpointRealUserTest +from typing import Optional, Set +from typing_extensions import Self + +class EndpointRealUserTestsResponse(BaseModel): + """ + EndpointRealUserTestsResponse + """ # noqa: E501 + real_user_tests: List[EndpointRealUserTest] = Field(description="Real user test domain monitoring profiles.", alias="realUserTests") + __properties: ClassVar[List[str]] = ["realUserTests"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of EndpointRealUserTestsResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + """ + excluded_fields: Set[str] = set([ + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in real_user_tests (list) + _items = [] + if self.real_user_tests: + for _item in self.real_user_tests: + if _item: + _items.append(_item.to_dict()) + _dict['realUserTests'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of EndpointRealUserTestsResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "realUserTests": [EndpointRealUserTest.from_dict(_item) for _item in obj["realUserTests"]] if obj.get("realUserTests") is not None else None + }) + return _obj + + diff --git a/thousandeyes-sdk-endpoint-tests/test/test_endpoint_real_user_tests_api.py b/thousandeyes-sdk-endpoint-tests/test/test_endpoint_real_user_tests_api.py new file mode 100644 index 00000000..b71a31bc --- /dev/null +++ b/thousandeyes-sdk-endpoint-tests/test/test_endpoint_real_user_tests_api.py @@ -0,0 +1,69 @@ +# coding: utf-8 + +""" + Endpoint Tests API + + Manage endpoint agent dynamic and scheduled tests using the Endpoint Tests API. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +import json +import unittest +import thousandeyes_sdk.endpoint_tests.models + +from .test_utils import assert_constructed_model_matches_example_json +from thousandeyes_sdk.endpoint_tests.api.endpoint_real_user_tests_api import EndpointRealUserTestsApi + + +class TestEndpointRealUserTestsApi(unittest.TestCase): + """EndpointRealUserTestsApi unit test stubs""" + + def setUp(self) -> None: + self.api = EndpointRealUserTestsApi() + + def tearDown(self) -> None: + pass + + def test_get_endpoint_real_user_tests_models_validation(self) -> None: + """Test case for get_endpoint_real_user_tests request and response models""" + + response_body_json = """ + { + "realUserTests" : [ { + "includedDomains" : [ "example.com", "example.com" ], + "profileId" : "73421", + "monitoringSettings" : { + "monitoringSettingsId" : "1f5c1b5d-8a0d-4d6b-a3be-56b060f7f2c9", + "monitoringSettingsType" : "agent-tags", + "tagIds" : [ "49d9e7d2-7df5-43df-9b37-aa596b929062" ], + "labelIds" : [ "567" ] + }, + "name" : "Corporate domains", + "excludedDomains" : [ "static.example.com", "static.example.com" ], + "aid" : "1234" + }, { + "includedDomains" : [ "example.com", "example.com" ], + "profileId" : "73421", + "monitoringSettings" : { + "monitoringSettingsId" : "1f5c1b5d-8a0d-4d6b-a3be-56b060f7f2c9", + "monitoringSettingsType" : "agent-tags", + "tagIds" : [ "49d9e7d2-7df5-43df-9b37-aa596b929062" ], + "labelIds" : [ "567" ] + }, + "name" : "Corporate domains", + "excludedDomains" : [ "static.example.com", "static.example.com" ], + "aid" : "1234" + } ] + }""" + + response_loaded_json = json.loads(response_body_json) + response_from_json = thousandeyes_sdk.endpoint_tests.models.EndpointRealUserTestsResponse.from_json(response_body_json) + assert_constructed_model_matches_example_json(response_from_json, response_loaded_json) + + +if __name__ == '__main__': + unittest.main() diff --git a/thousandeyes-sdk-event-detection/README.md b/thousandeyes-sdk-event-detection/README.md index 1b087172..f7d59cc2 100644 --- a/thousandeyes-sdk-event-detection/README.md +++ b/thousandeyes-sdk-event-detection/README.md @@ -11,13 +11,13 @@ With the Events API, you can perform the following tasks on the ThousandEyes pla This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-event-detection/pyproject.toml b/thousandeyes-sdk-event-detection/pyproject.toml index 437c1490..a08b1a39 100644 --- a/thousandeyes-sdk-event-detection/pyproject.toml +++ b/thousandeyes-sdk-event-detection/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Event Detection API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-instant-tests/README.md b/thousandeyes-sdk-instant-tests/README.md index c1e18e2f..a5f012b9 100644 --- a/thousandeyes-sdk-instant-tests/README.md +++ b/thousandeyes-sdk-instant-tests/README.md @@ -6,13 +6,13 @@ The response does not include the immediate test results. Use the Test Results e This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-instant-tests/pyproject.toml b/thousandeyes-sdk-instant-tests/pyproject.toml index f10d50ad..dc282bae 100644 --- a/thousandeyes-sdk-instant-tests/pyproject.toml +++ b/thousandeyes-sdk-instant-tests/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Instant Tests API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-internet-insights/README.md b/thousandeyes-sdk-internet-insights/README.md index c4dea7b0..f34a87da 100644 --- a/thousandeyes-sdk-internet-insights/README.md +++ b/thousandeyes-sdk-internet-insights/README.md @@ -16,13 +16,13 @@ For more information about Internet Insights, see the [Internet Insights](https: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-internet-insights/pyproject.toml b/thousandeyes-sdk-internet-insights/pyproject.toml index 12f3b7c8..58b8b8ef 100644 --- a/thousandeyes-sdk-internet-insights/pyproject.toml +++ b/thousandeyes-sdk-internet-insights/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Internet Insights API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-snapshots/README.md b/thousandeyes-sdk-snapshots/README.md index db03cc44..d9073c95 100644 --- a/thousandeyes-sdk-snapshots/README.md +++ b/thousandeyes-sdk-snapshots/README.md @@ -3,13 +3,13 @@ Creates a new test snapshot in ThousandEyes. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-snapshots/pyproject.toml b/thousandeyes-sdk-snapshots/pyproject.toml index 8f4e0a9c..1acdf2f1 100644 --- a/thousandeyes-sdk-snapshots/pyproject.toml +++ b/thousandeyes-sdk-snapshots/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Test Snapshots API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-streaming/README.md b/thousandeyes-sdk-streaming/README.md index 70934167..0157a898 100644 --- a/thousandeyes-sdk-streaming/README.md +++ b/thousandeyes-sdk-streaming/README.md @@ -1,5 +1,12 @@ # thousandeyes-sdk-streaming -**Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. +**Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: + +* Traces +* OTel-based integrations that rely on connectors and operations, including: + * Splunk Cloud Platform HEC + * Splunk Enterprise HEC + * Splunk Observability APM + * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. @@ -17,13 +24,13 @@ For more information about ThousandEyes for OpenTelemetry, see the [product docu This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-streaming/pyproject.toml b/thousandeyes-sdk-streaming/pyproject.toml index 3d9f3c18..13118911 100644 --- a/thousandeyes-sdk-streaming/pyproject.toml +++ b/thousandeyes-sdk-streaming/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK ThousandEyes for OpenTelemetry API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/__init__.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/__init__.py index c9b281e9..ff143b3b 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/__init__.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/__init__.py @@ -5,7 +5,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/api/streaming_api.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/api/streaming_api.py index cda15554..b4e9ff1d 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/api/streaming_api.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/api/streaming_api.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/__init__.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/__init__.py index 233b1bcc..f4eb459d 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/__init__.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/__init__.py @@ -4,7 +4,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error.py index be0396eb..4b020de9 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error_integration_limits.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error_integration_limits.py index 468466e3..9504badd 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error_integration_limits.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/api_error_integration_limits.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation.py index a3f0cc5c..2fc02717 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation_with_update.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation_with_update.py index 5901c893..186ae201 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation_with_update.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/audit_operation_with_update.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/bad_request_error.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/bad_request_error.py index 28365810..e24ed21a 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/bad_request_error.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/bad_request_error.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/create_stream_response.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/create_stream_response.py index edfe59d5..55f4667a 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/create_stream_response.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/create_stream_response.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/data_model_version.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/data_model_version.py index 1aca7273..34d4ccb1 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/data_model_version.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/data_model_version.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_label.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_label.py index fcdefacb..e5fb3caa 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_label.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_label.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_tag.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_tag.py index 77708a5d..7ce889e6 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_tag.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_agent_tag.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_type.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_type.py index c69380de..36ba4bb4 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_type.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/endpoint_type.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config.py index 620792ae..b4b70187 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_authorization.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_authorization.py index 057291af..b6b16b76 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_authorization.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_authorization.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_o_auth2.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_o_auth2.py index e7197097..003a7426 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_o_auth2.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_o_auth2.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_splunk_hec.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_splunk_hec.py index d5be257d..6428f35b 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_splunk_hec.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/exporter_config_splunk_hec.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters.py index 8acd3bdf..776d0e2a 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters_test_types.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters_test_types.py index 81239535..82fdb461 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters_test_types.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/filters_test_types.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/get_stream_response.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/get_stream_response.py index a1dc19fd..aa46f55b 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/get_stream_response.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/get_stream_response.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/put_stream.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/put_stream.py index 710f0f5f..d9f2c781 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/put_stream.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/put_stream.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/signal.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/signal.py index b9aed5ba..ec1275a7 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/signal.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/signal.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream.py index 79dfe7a3..402afcf0 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_links.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_links.py index cb13bfb9..f2e17452 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_links.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_links.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_response.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_response.py index a6571d6a..fdfffcf0 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_response.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_response.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_self_link.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_self_link.py index 80c625df..440547c4 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_self_link.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_self_link.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status.py index bd0a9fd0..54cecd29 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status_type.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status_type.py index f2c5498a..005ef888 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status_type.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_status_type.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_type.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_type.py index ffbc14a9..ad4b1ea8 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_type.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/stream_type.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/tag_match.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/tag_match.py index 80cf814a..f3abb84f 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/tag_match.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/tag_match.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match.py index 016aee27..f7d78450 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match_domain.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match_domain.py index 8984054d..8378c650 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match_domain.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_match_domain.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_type.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_type.py index 028fb23d..e9e2997e 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_type.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/test_type.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/unauthorized_error.py b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/unauthorized_error.py index c4d1e4a8..d8a18ede 100644 --- a/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/unauthorized_error.py +++ b/thousandeyes-sdk-streaming/src/thousandeyes_sdk/streaming/models/unauthorized_error.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-streaming/test/test_streaming_api.py b/thousandeyes-sdk-streaming/test/test_streaming_api.py index 0dd60ace..1bd73a8e 100644 --- a/thousandeyes-sdk-streaming/test/test_streaming_api.py +++ b/thousandeyes-sdk-streaming/test/test_streaming_api.py @@ -3,7 +3,7 @@ """ ThousandEyes for OpenTelemetry API - **Note:** All ThousandEyes for OpenTelemetry APIs are not available for ThousandEyes for Government instance. ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). + **Note:** The following ThousandEyes for OpenTelemetry API capabilities are not available for ThousandEyes for Government instance: * Traces * OTel-based integrations that rely on connectors and operations, including: * Splunk Cloud Platform HEC * Splunk Enterprise HEC * Splunk Observability APM * Dynatrace Observability APM ThousandEyes for OpenTelemetry provides machine-to-machine integration between ThousandEyes and its customers. It allows you to export ThousandEyes telemetry data in OTel format, which is widely used in the industry. With ThousandEyes for OTel, you can leverage frameworks widely used in the observability domain - such as Splunk, Grafana, and Honeycomb - to capture and analyze ThousandEyes data. Any client that supports OTel can use ThousandEyes for OpenTelemetry. ThousandEyes for OTel is made up of the following components: * Data streaming APIs that you can use to configure and enable your ThousandEyes tests with OTel-compatible streams, in particular to configure how ThousandEyes telemetry data is exported to client integrations. * A set of streaming pipelines called _collectors_ that actively fetch ThousandEyes network test data, enrich the data with some additional detail, filter, and push the data to the customer-configured endpoints, depending on what you configure via the public APIs. * Third-party OTel collectors that receive, transform, filter, and export different metrics to client applications such as AppD, or any other OTel-capable client configuration. For more information about ThousandEyes for OpenTelemetry, see the [product documentation](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry). Generated by OpenAPI Generator (https://openapi-generator.tech) diff --git a/thousandeyes-sdk-tags/README.md b/thousandeyes-sdk-tags/README.md index e3951fd4..07d7c400 100644 --- a/thousandeyes-sdk-tags/README.md +++ b/thousandeyes-sdk-tags/README.md @@ -16,13 +16,13 @@ Things to note with the ThousandEyes Tags API: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-tags/docs/TagAssignmentApi.md b/thousandeyes-sdk-tags/docs/TagAssignmentApi.md index ad8596c5..91dd869a 100644 --- a/thousandeyes-sdk-tags/docs/TagAssignmentApi.md +++ b/thousandeyes-sdk-tags/docs/TagAssignmentApi.md @@ -83,7 +83,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -168,7 +168,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -338,7 +338,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details diff --git a/thousandeyes-sdk-tags/docs/TagsApi.md b/thousandeyes-sdk-tags/docs/TagsApi.md index c069fd93..0c5c03f2 100644 --- a/thousandeyes-sdk-tags/docs/TagsApi.md +++ b/thousandeyes-sdk-tags/docs/TagsApi.md @@ -83,7 +83,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -167,7 +167,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -335,7 +335,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -421,7 +421,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: Not defined - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details @@ -509,7 +509,7 @@ Name | Type | Description | Notes ### HTTP request headers - **Content-Type**: application/json - - **Accept**: application/json, application/problem+json + - **Accept**: application/hal+json, application/json, application/problem+json ### HTTP response details diff --git a/thousandeyes-sdk-tags/pyproject.toml b/thousandeyes-sdk-tags/pyproject.toml index 94402d71..a6888059 100644 --- a/thousandeyes-sdk-tags/pyproject.toml +++ b/thousandeyes-sdk-tags/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Tags API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tag_assignment_api.py b/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tag_assignment_api.py index 0bc8ecda..5223fe67 100644 --- a/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tag_assignment_api.py +++ b/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tag_assignment_api.py @@ -324,6 +324,7 @@ class TagAssignmentApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -630,6 +631,7 @@ class TagAssignmentApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -1257,6 +1259,7 @@ class TagAssignmentApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] diff --git a/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tags_api.py b/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tags_api.py index 8db1f345..fcbe6965 100644 --- a/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tags_api.py +++ b/thousandeyes-sdk-tags/src/thousandeyes_sdk/tags/api/tags_api.py @@ -308,6 +308,7 @@ class TagsApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -608,6 +609,7 @@ class TagsApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -1225,6 +1227,7 @@ class TagsApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -1521,6 +1524,7 @@ class TagsApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] @@ -1829,6 +1833,7 @@ class TagsApi: # set the HTTP header `Accept` _header_params['Accept'] = self.api_client.select_header_accept( [ + 'application/hal+json', 'application/json', 'application/problem+json' ] diff --git a/thousandeyes-sdk-test-results/.openapi-generator/FILES b/thousandeyes-sdk-test-results/.openapi-generator/FILES index 80ee09d3..641dee9c 100644 --- a/thousandeyes-sdk-test-results/.openapi-generator/FILES +++ b/thousandeyes-sdk-test-results/.openapi-generator/FILES @@ -19,8 +19,18 @@ docs/BgpTestRouteInformationResults.md docs/DNSSECTestResultsApi.md docs/DNSServerTestResultsApi.md docs/DNSTraceTestResultsApi.md +docs/DnsMeasurementProtocol.md +docs/DnsOpcode.md +docs/DnsQr.md +docs/DnsResourceRecord.md +docs/DnsResourceRecordClass.md +docs/DnsResourceRecordType.md +docs/DnsResponseCode.md +docs/DnsServerMeasurement.md +docs/DnsServerResponse.md docs/DnsServerTestResult.md docs/DnsServerTestResults.md +docs/DnsTiming.md docs/DnsTraceTestResult.md docs/DnsTraceTestResults.md docs/DnssecTestResult.md @@ -117,8 +127,18 @@ src/thousandeyes_sdk/test_results/models/bgp_test_result.py src/thousandeyes_sdk/test_results/models/bgp_test_results.py src/thousandeyes_sdk/test_results/models/bgp_test_route_information_result.py src/thousandeyes_sdk/test_results/models/bgp_test_route_information_results.py +src/thousandeyes_sdk/test_results/models/dns_measurement_protocol.py +src/thousandeyes_sdk/test_results/models/dns_opcode.py +src/thousandeyes_sdk/test_results/models/dns_qr.py +src/thousandeyes_sdk/test_results/models/dns_resource_record.py +src/thousandeyes_sdk/test_results/models/dns_resource_record_class.py +src/thousandeyes_sdk/test_results/models/dns_resource_record_type.py +src/thousandeyes_sdk/test_results/models/dns_response_code.py +src/thousandeyes_sdk/test_results/models/dns_server_measurement.py +src/thousandeyes_sdk/test_results/models/dns_server_response.py src/thousandeyes_sdk/test_results/models/dns_server_test_result.py src/thousandeyes_sdk/test_results/models/dns_server_test_results.py +src/thousandeyes_sdk/test_results/models/dns_timing.py src/thousandeyes_sdk/test_results/models/dns_trace_test_result.py src/thousandeyes_sdk/test_results/models/dns_trace_test_results.py src/thousandeyes_sdk/test_results/models/dnssec_test_result.py diff --git a/thousandeyes-sdk-test-results/README.md b/thousandeyes-sdk-test-results/README.md index 08eb134a..7e491d17 100644 --- a/thousandeyes-sdk-test-results/README.md +++ b/thousandeyes-sdk-test-results/README.md @@ -3,13 +3,13 @@ Get test result metrics for Network and Application Synthetics tests. This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install @@ -135,8 +135,18 @@ Class | Method | HTTP request | Description - [BgpTestResults](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/BgpTestResults.md) - [BgpTestRouteInformationResult](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/BgpTestRouteInformationResult.md) - [BgpTestRouteInformationResults](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/BgpTestRouteInformationResults.md) + - [DnsMeasurementProtocol](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsMeasurementProtocol.md) + - [DnsOpcode](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsOpcode.md) + - [DnsQr](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsQr.md) + - [DnsResourceRecord](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsResourceRecord.md) + - [DnsResourceRecordClass](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsResourceRecordClass.md) + - [DnsResourceRecordType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsResourceRecordType.md) + - [DnsResponseCode](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsResponseCode.md) + - [DnsServerMeasurement](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsServerMeasurement.md) + - [DnsServerResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsServerResponse.md) - [DnsServerTestResult](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsServerTestResult.md) - [DnsServerTestResults](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsServerTestResults.md) + - [DnsTiming](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsTiming.md) - [DnsTraceTestResult](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsTraceTestResult.md) - [DnsTraceTestResults](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnsTraceTestResults.md) - [DnssecTestResult](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-test-results/docs/DnssecTestResult.md) diff --git a/thousandeyes-sdk-test-results/docs/DnsMeasurementProtocol.md b/thousandeyes-sdk-test-results/docs/DnsMeasurementProtocol.md new file mode 100644 index 00000000..110d186c --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsMeasurementProtocol.md @@ -0,0 +1,12 @@ +# DnsMeasurementProtocol + +Actual wire transport used to perform the DNS lookup. `tcp` indicates a TCP retry (for example, after a truncated UDP response). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsOpcode.md b/thousandeyes-sdk-test-results/docs/DnsOpcode.md new file mode 100644 index 00000000..e57ebfa5 --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsOpcode.md @@ -0,0 +1,12 @@ +# DnsOpcode + +DNS header OPCODE field (RFC 1035). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsQr.md b/thousandeyes-sdk-test-results/docs/DnsQr.md new file mode 100644 index 00000000..46c0aeec --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsQr.md @@ -0,0 +1,12 @@ +# DnsQr + +DNS header QR flag. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsResourceRecord.md b/thousandeyes-sdk-test-results/docs/DnsResourceRecord.md new file mode 100644 index 00000000..2fb4c8fa --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsResourceRecord.md @@ -0,0 +1,34 @@ +# DnsResourceRecord + +A DNS resource record from the question or answer section. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **str** | Record name. | [optional] [readonly] +**type** | [**DnsResourceRecordType**](DnsResourceRecordType.md) | | [optional] +**var_class** | [**DnsResourceRecordClass**](DnsResourceRecordClass.md) | | [optional] +**ttl** | **int** | Time to live in seconds. | [optional] [readonly] +**data** | **str** | Record data (RDATA). | [optional] [readonly] + +## Example + +```python +from thousandeyes_sdk.test_results.models.dns_resource_record import DnsResourceRecord + +# TODO update the JSON string below +json = "{}" +# create an instance of DnsResourceRecord from a JSON string +dns_resource_record_instance = DnsResourceRecord.from_json(json) +# print the JSON string representation of the object +print(DnsResourceRecord.to_json()) + +# convert the object into a dict +dns_resource_record_dict = dns_resource_record_instance.to_dict() +# create an instance of DnsResourceRecord from a dict +dns_resource_record_from_dict = DnsResourceRecord.from_dict(dns_resource_record_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsResourceRecordClass.md b/thousandeyes-sdk-test-results/docs/DnsResourceRecordClass.md new file mode 100644 index 00000000..61e71e32 --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsResourceRecordClass.md @@ -0,0 +1,12 @@ +# DnsResourceRecordClass + +DNS resource record class (IANA). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsResourceRecordType.md b/thousandeyes-sdk-test-results/docs/DnsResourceRecordType.md new file mode 100644 index 00000000..0416c82f --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsResourceRecordType.md @@ -0,0 +1,12 @@ +# DnsResourceRecordType + +DNS resource record type (IANA). Values match `DnsRecordType` on DNS Server test configuration where applicable. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsResponseCode.md b/thousandeyes-sdk-test-results/docs/DnsResponseCode.md new file mode 100644 index 00000000..01f7c5ab --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsResponseCode.md @@ -0,0 +1,12 @@ +# DnsResponseCode + +DNS response code (RCODE), including extended RCODE values (RFC 1035 and RFC 6891). + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsServerMeasurement.md b/thousandeyes-sdk-test-results/docs/DnsServerMeasurement.md new file mode 100644 index 00000000..72a3bc10 --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsServerMeasurement.md @@ -0,0 +1,33 @@ +# DnsServerMeasurement + +DNS resolution details collected while locating the HTTP test target. Present when the agent captured DNS server measurement data for the round. The order of `unusedDnsResponses` matches the order returned by the DNS resolver. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**used_dns_response** | [**DnsServerResponse**](DnsServerResponse.md) | | [optional] +**unused_dns_responses** | [**List[DnsServerResponse]**](DnsServerResponse.md) | Additional DNS responses received while resolving the target. | [optional] +**used_hosts_file** | **bool** | Indicates whether the hosts file (for example, `/etc/hosts`) was used to resolve the target. | [optional] [readonly] +**resolved_ip** | **str** | IP address resolved for the target, from DNS or the hosts file. | [optional] [readonly] + +## Example + +```python +from thousandeyes_sdk.test_results.models.dns_server_measurement import DnsServerMeasurement + +# TODO update the JSON string below +json = "{}" +# create an instance of DnsServerMeasurement from a JSON string +dns_server_measurement_instance = DnsServerMeasurement.from_json(json) +# print the JSON string representation of the object +print(DnsServerMeasurement.to_json()) + +# convert the object into a dict +dns_server_measurement_dict = dns_server_measurement_instance.to_dict() +# create an instance of DnsServerMeasurement from a dict +dns_server_measurement_from_dict = DnsServerMeasurement.from_dict(dns_server_measurement_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsServerResponse.md b/thousandeyes-sdk-test-results/docs/DnsServerResponse.md new file mode 100644 index 00000000..a6cc39b7 --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsServerResponse.md @@ -0,0 +1,45 @@ +# DnsServerResponse + +A DNS response received while resolving the HTTP test target. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **int** | DNS message ID. | [optional] [readonly] +**qr** | [**DnsQr**](DnsQr.md) | | [optional] +**opcode** | [**DnsOpcode**](DnsOpcode.md) | | [optional] +**authoritative_answer** | **bool** | DNS header AA flag. | [optional] [readonly] +**truncation** | **bool** | DNS header TC flag. | [optional] [readonly] +**recursion_desired** | **bool** | DNS header RD flag. | [optional] [readonly] +**recursion_available** | **bool** | DNS header RA flag. | [optional] [readonly] +**zero** | **bool** | DNS header Z flag. Reserved and expected to be false. | [optional] [readonly] +**authentic_data** | **bool** | DNS header AD flag. | [optional] [readonly] +**checking_disabled** | **bool** | DNS header CD flag. | [optional] [readonly] +**response_code** | [**DnsResponseCode**](DnsResponseCode.md) | | [optional] +**question** | [**List[DnsResourceRecord]**](DnsResourceRecord.md) | Records in the DNS question section. | [optional] +**answer** | [**List[DnsResourceRecord]**](DnsResourceRecord.md) | Records in the DNS answer section. | [optional] +**dns_resolver** | **str** | DNS resolver that returned this response. | [optional] [readonly] +**timing** | [**DnsTiming**](DnsTiming.md) | | [optional] +**protocol** | [**DnsMeasurementProtocol**](DnsMeasurementProtocol.md) | | [optional] + +## Example + +```python +from thousandeyes_sdk.test_results.models.dns_server_response import DnsServerResponse + +# TODO update the JSON string below +json = "{}" +# create an instance of DnsServerResponse from a JSON string +dns_server_response_instance = DnsServerResponse.from_json(json) +# print the JSON string representation of the object +print(DnsServerResponse.to_json()) + +# convert the object into a dict +dns_server_response_dict = dns_server_response_instance.to_dict() +# create an instance of DnsServerResponse from a dict +dns_server_response_from_dict = DnsServerResponse.from_dict(dns_server_response_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/DnsTiming.md b/thousandeyes-sdk-test-results/docs/DnsTiming.md new file mode 100644 index 00000000..5bbd00d7 --- /dev/null +++ b/thousandeyes-sdk-test-results/docs/DnsTiming.md @@ -0,0 +1,31 @@ +# DnsTiming + +Timing metrics for a DNS lookup. + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**start_time_us** | **str** | Unix epoch timestamp in microseconds when the DNS query started. | [optional] [readonly] +**total_time_us** | **int** | Total DNS lookup time in microseconds. | [optional] [readonly] + +## Example + +```python +from thousandeyes_sdk.test_results.models.dns_timing import DnsTiming + +# TODO update the JSON string below +json = "{}" +# create an instance of DnsTiming from a JSON string +dns_timing_instance = DnsTiming.from_json(json) +# print the JSON string representation of the object +print(DnsTiming.to_json()) + +# convert the object into a dict +dns_timing_dict = dns_timing_instance.to_dict() +# create an instance of DnsTiming from a dict +dns_timing_from_dict = DnsTiming.from_dict(dns_timing_dict) +``` +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/thousandeyes-sdk-test-results/docs/HttpTestResult.md b/thousandeyes-sdk-test-results/docs/HttpTestResult.md index 1097de39..1127b33e 100644 --- a/thousandeyes-sdk-test-results/docs/HttpTestResult.md +++ b/thousandeyes-sdk-test-results/docs/HttpTestResult.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **num_redirects** | **int** | Number of redirects | [optional] **redirect_time** | **int** | Cumulative redirect timing in milliseconds | [optional] **dns_time** | **int** | Time required to resolve DNS in milliseconds | [optional] +**dns_server_measurement** | [**DnsServerMeasurement**](DnsServerMeasurement.md) | | [optional] **ssl_time** | **int** | Time to negotiate SSL/TLS in milliseconds | [optional] **connect_time** | **int** | Time required to establish a TCP connection to the server | [optional] **wait_time** | **int** | Time elapsed between completion of request and first byte of response in milliseconds | [optional] diff --git a/thousandeyes-sdk-test-results/docs/WebHTTPServerTestResultsApi.md b/thousandeyes-sdk-test-results/docs/WebHTTPServerTestResultsApi.md index 1aede5a8..660cab17 100644 --- a/thousandeyes-sdk-test-results/docs/WebHTTPServerTestResultsApi.md +++ b/thousandeyes-sdk-test-results/docs/WebHTTPServerTestResultsApi.md @@ -12,7 +12,7 @@ Method | HTTP request | Description Get HTTP server test results -Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. +Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. When DNS server measurement data is available for a round, each result includes a `dnsServerMeasurement` object describing the DNS response used to resolve the target and any additional DNS responses observed during resolution. ### Example diff --git a/thousandeyes-sdk-test-results/pyproject.toml b/thousandeyes-sdk-test-results/pyproject.toml index c4489116..23e07864 100644 --- a/thousandeyes-sdk-test-results/pyproject.toml +++ b/thousandeyes-sdk-test-results/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Test Results API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/__init__.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/__init__.py index d2912efd..f5cc57a2 100644 --- a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/__init__.py +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/__init__.py @@ -43,8 +43,18 @@ from thousandeyes_sdk.test_results.models.bgp_test_result import BgpTestResult from thousandeyes_sdk.test_results.models.bgp_test_results import BgpTestResults from thousandeyes_sdk.test_results.models.bgp_test_route_information_result import BgpTestRouteInformationResult from thousandeyes_sdk.test_results.models.bgp_test_route_information_results import BgpTestRouteInformationResults +from thousandeyes_sdk.test_results.models.dns_measurement_protocol import DnsMeasurementProtocol +from thousandeyes_sdk.test_results.models.dns_opcode import DnsOpcode +from thousandeyes_sdk.test_results.models.dns_qr import DnsQr +from thousandeyes_sdk.test_results.models.dns_resource_record import DnsResourceRecord +from thousandeyes_sdk.test_results.models.dns_resource_record_class import DnsResourceRecordClass +from thousandeyes_sdk.test_results.models.dns_resource_record_type import DnsResourceRecordType +from thousandeyes_sdk.test_results.models.dns_response_code import DnsResponseCode +from thousandeyes_sdk.test_results.models.dns_server_measurement import DnsServerMeasurement +from thousandeyes_sdk.test_results.models.dns_server_response import DnsServerResponse from thousandeyes_sdk.test_results.models.dns_server_test_result import DnsServerTestResult from thousandeyes_sdk.test_results.models.dns_server_test_results import DnsServerTestResults +from thousandeyes_sdk.test_results.models.dns_timing import DnsTiming from thousandeyes_sdk.test_results.models.dns_trace_test_result import DnsTraceTestResult from thousandeyes_sdk.test_results.models.dns_trace_test_results import DnsTraceTestResults from thousandeyes_sdk.test_results.models.dnssec_test_result import DnssecTestResult diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/api/web_http_server_test_results_api.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/api/web_http_server_test_results_api.py index 1d6e8a28..d44a1e34 100644 --- a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/api/web_http_server_test_results_api.py +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/api/web_http_server_test_results_api.py @@ -69,7 +69,7 @@ class WebHTTPServerTestResultsApi: ) -> PaginationIterable: """Get HTTP server test results - Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. + Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. When DNS server measurement data is available for a round, each result includes a `dnsServerMeasurement` object describing the DNS response used to resolve the target and any additional DNS responses observed during resolution. :param test_id: Test ID (required) :type test_id: str @@ -143,7 +143,7 @@ class WebHTTPServerTestResultsApi: ) -> HttpTestResults: """Get HTTP server test results - Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. + Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. When DNS server measurement data is available for a round, each result includes a `dnsServerMeasurement` object describing the DNS response used to resolve the target and any additional DNS responses observed during resolution. :param test_id: Test ID (required) :type test_id: str @@ -242,7 +242,7 @@ class WebHTTPServerTestResultsApi: ) -> ApiResponse[HttpTestResults]: """Get HTTP server test results - Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. + Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. When DNS server measurement data is available for a round, each result includes a `dnsServerMeasurement` object describing the DNS response used to resolve the target and any additional DNS responses observed during resolution. :param test_id: Test ID (required) :type test_id: str @@ -341,7 +341,7 @@ class WebHTTPServerTestResultsApi: ) -> RESTResponseType: """Get HTTP server test results - Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. + Returns results for requests made over HTTP. Components include DNS, Connect, Wait, Receive, and Fetch. When DNS server measurement data is available for a round, each result includes a `dnsServerMeasurement` object describing the DNS response used to resolve the target and any additional DNS responses observed during resolution. :param test_id: Test ID (required) :type test_id: str diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/__init__.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/__init__.py index 771c2f19..5faa39d9 100644 --- a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/__init__.py +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/__init__.py @@ -27,8 +27,18 @@ from thousandeyes_sdk.test_results.models.bgp_test_result import BgpTestResult from thousandeyes_sdk.test_results.models.bgp_test_results import BgpTestResults from thousandeyes_sdk.test_results.models.bgp_test_route_information_result import BgpTestRouteInformationResult from thousandeyes_sdk.test_results.models.bgp_test_route_information_results import BgpTestRouteInformationResults +from thousandeyes_sdk.test_results.models.dns_measurement_protocol import DnsMeasurementProtocol +from thousandeyes_sdk.test_results.models.dns_opcode import DnsOpcode +from thousandeyes_sdk.test_results.models.dns_qr import DnsQr +from thousandeyes_sdk.test_results.models.dns_resource_record import DnsResourceRecord +from thousandeyes_sdk.test_results.models.dns_resource_record_class import DnsResourceRecordClass +from thousandeyes_sdk.test_results.models.dns_resource_record_type import DnsResourceRecordType +from thousandeyes_sdk.test_results.models.dns_response_code import DnsResponseCode +from thousandeyes_sdk.test_results.models.dns_server_measurement import DnsServerMeasurement +from thousandeyes_sdk.test_results.models.dns_server_response import DnsServerResponse from thousandeyes_sdk.test_results.models.dns_server_test_result import DnsServerTestResult from thousandeyes_sdk.test_results.models.dns_server_test_results import DnsServerTestResults +from thousandeyes_sdk.test_results.models.dns_timing import DnsTiming from thousandeyes_sdk.test_results.models.dns_trace_test_result import DnsTraceTestResult from thousandeyes_sdk.test_results.models.dns_trace_test_results import DnsTraceTestResults from thousandeyes_sdk.test_results.models.dnssec_test_result import DnssecTestResult diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_measurement_protocol.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_measurement_protocol.py new file mode 100644 index 00000000..41126aa4 --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_measurement_protocol.py @@ -0,0 +1,44 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsMeasurementProtocol(str, Enum): + """ + Actual wire transport used to perform the DNS lookup. `tcp` indicates a TCP retry (for example, after a truncated UDP response). + """ + + """ + allowed enum values + """ + UNSPECIFIED = 'unspecified' + UDP = 'udp' + TCP = 'tcp' + DOT = 'dot' + DOH = 'doh' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsMeasurementProtocol from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_opcode.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_opcode.py new file mode 100644 index 00000000..6ad4ceb7 --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_opcode.py @@ -0,0 +1,55 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsOpcode(str, Enum): + """ + DNS header OPCODE field (RFC 1035). + """ + + """ + allowed enum values + """ + QUERY = 'query' + IQUERY = 'iquery' + STATUS = 'status' + UNKNOWN_MINUS_3 = 'unknown-3' + UNKNOWN_MINUS_4 = 'unknown-4' + UNKNOWN_MINUS_5 = 'unknown-5' + UNKNOWN_MINUS_6 = 'unknown-6' + UNKNOWN_MINUS_7 = 'unknown-7' + UNKNOWN_MINUS_8 = 'unknown-8' + UNKNOWN_MINUS_9 = 'unknown-9' + UNKNOWN_MINUS_10 = 'unknown-10' + UNKNOWN_MINUS_11 = 'unknown-11' + UNKNOWN_MINUS_12 = 'unknown-12' + UNKNOWN_MINUS_13 = 'unknown-13' + UNKNOWN_MINUS_14 = 'unknown-14' + UNKNOWN_MINUS_15 = 'unknown-15' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsOpcode from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_qr.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_qr.py new file mode 100644 index 00000000..efb8ceeb --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_qr.py @@ -0,0 +1,41 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsQr(str, Enum): + """ + DNS header QR flag. + """ + + """ + allowed enum values + """ + QUERY = 'query' + RESPONSE = 'response' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsQr from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record.py new file mode 100644 index 00000000..3aea8820 --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record.py @@ -0,0 +1,103 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.test_results.models.dns_resource_record_class import DnsResourceRecordClass +from thousandeyes_sdk.test_results.models.dns_resource_record_type import DnsResourceRecordType +from typing import Optional, Set +from typing_extensions import Self + +class DnsResourceRecord(BaseModel): + """ + A DNS resource record from the question or answer section. + """ # noqa: E501 + name: Optional[StrictStr] = Field(default=None, description="Record name.") + type: Optional[DnsResourceRecordType] = None + var_class: Optional[DnsResourceRecordClass] = Field(default=None, alias="class") + ttl: Optional[StrictInt] = Field(default=None, description="Time to live in seconds.") + data: Optional[StrictStr] = Field(default=None, description="Record data (RDATA).") + __properties: ClassVar[List[str]] = ["name", "type", "class", "ttl", "data"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of DnsResourceRecord from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "name", + "ttl", + "data", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of DnsResourceRecord from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "name": obj.get("name"), + "type": obj.get("type"), + "class": obj.get("class"), + "ttl": obj.get("ttl"), + "data": obj.get("data") + }) + return _obj + + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_class.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_class.py new file mode 100644 index 00000000..590baf3a --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_class.py @@ -0,0 +1,40 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsResourceRecordClass(str, Enum): + """ + DNS resource record class (IANA). + """ + + """ + allowed enum values + """ + UNKNOWN = 'unknown' + IN = 'in' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsResourceRecordClass from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_type.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_type.py new file mode 100644 index 00000000..783110b9 --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_resource_record_type.py @@ -0,0 +1,42 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsResourceRecordType(str, Enum): + """ + DNS resource record type (IANA). Values match `DnsRecordType` on DNS Server test configuration where applicable. + """ + + """ + allowed enum values + """ + UNKNOWN = 'unknown' + A = 'a' + CNAME = 'cname' + AAAA = 'aaaa' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsResourceRecordType from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_response_code.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_response_code.py new file mode 100644 index 00000000..66355eec --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_response_code.py @@ -0,0 +1,63 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import json +from enum import Enum +from typing_extensions import Self + + +class DnsResponseCode(str, Enum): + """ + DNS response code (RCODE), including extended RCODE values (RFC 1035 and RFC 6891). + """ + + """ + allowed enum values + """ + NOERROR = 'noerror' + FORMERR = 'formerr' + SERVFAIL = 'servfail' + NXDOMAIN = 'nxdomain' + NOTIMP = 'notimp' + REFUSED = 'refused' + YXDOMAIN = 'yxdomain' + YXRRSET = 'yxrrset' + NXRRSET = 'nxrrset' + NOTAUTH = 'notauth' + NOTZONE = 'notzone' + UNKNOWN_MINUS_11 = 'unknown-11' + UNKNOWN_MINUS_12 = 'unknown-12' + UNKNOWN_MINUS_13 = 'unknown-13' + UNKNOWN_MINUS_14 = 'unknown-14' + UNKNOWN_MINUS_15 = 'unknown-15' + BADVERS = 'badvers' + BADKEY = 'badkey' + BADTIME = 'badtime' + BADMODE = 'badmode' + BADNAME = 'badname' + BADALG = 'badalg' + BADTRUNC = 'badtrunc' + BADCOOKIE = 'badcookie' + UNKNOWN = 'unknown' + + @classmethod + def from_json(cls, json_str: str) -> Self: + """Create an instance of DnsResponseCode from a JSON string""" + return cls(json.loads(json_str)) + + @classmethod + def _missing_(cls, value): + """Handle unknown values""" + return cls.UNKNOWN + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_measurement.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_measurement.py new file mode 100644 index 00000000..251d34bd --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_measurement.py @@ -0,0 +1,108 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.test_results.models.dns_server_response import DnsServerResponse +from typing import Optional, Set +from typing_extensions import Self + +class DnsServerMeasurement(BaseModel): + """ + DNS resolution details collected while locating the HTTP test target. Present when the agent captured DNS server measurement data for the round. The order of `unusedDnsResponses` matches the order returned by the DNS resolver. + """ # noqa: E501 + used_dns_response: Optional[DnsServerResponse] = Field(default=None, alias="usedDnsResponse") + unused_dns_responses: Optional[List[DnsServerResponse]] = Field(default=None, description="Additional DNS responses received while resolving the target.", alias="unusedDnsResponses") + used_hosts_file: Optional[StrictBool] = Field(default=None, description="Indicates whether the hosts file (for example, `/etc/hosts`) was used to resolve the target.", alias="usedHostsFile") + resolved_ip: Optional[StrictStr] = Field(default=None, description="IP address resolved for the target, from DNS or the hosts file.", alias="resolvedIp") + __properties: ClassVar[List[str]] = ["usedDnsResponse", "unusedDnsResponses", "usedHostsFile", "resolvedIp"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of DnsServerMeasurement from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "used_hosts_file", + "resolved_ip", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of used_dns_response + if self.used_dns_response: + _dict['usedDnsResponse'] = self.used_dns_response.to_dict() + # override the default output from pydantic by calling `to_dict()` of each item in unused_dns_responses (list) + _items = [] + if self.unused_dns_responses: + for _item in self.unused_dns_responses: + if _item: + _items.append(_item.to_dict()) + _dict['unusedDnsResponses'] = _items + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of DnsServerMeasurement from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "usedDnsResponse": DnsServerResponse.from_dict(obj["usedDnsResponse"]) if obj.get("usedDnsResponse") is not None else None, + "unusedDnsResponses": [DnsServerResponse.from_dict(_item) for _item in obj["unusedDnsResponses"]] if obj.get("unusedDnsResponses") is not None else None, + "usedHostsFile": obj.get("usedHostsFile"), + "resolvedIp": obj.get("resolvedIp") + }) + return _obj + + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_response.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_response.py new file mode 100644 index 00000000..884fa789 --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_server_response.py @@ -0,0 +1,158 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from thousandeyes_sdk.test_results.models.dns_measurement_protocol import DnsMeasurementProtocol +from thousandeyes_sdk.test_results.models.dns_opcode import DnsOpcode +from thousandeyes_sdk.test_results.models.dns_qr import DnsQr +from thousandeyes_sdk.test_results.models.dns_resource_record import DnsResourceRecord +from thousandeyes_sdk.test_results.models.dns_response_code import DnsResponseCode +from thousandeyes_sdk.test_results.models.dns_timing import DnsTiming +from typing import Optional, Set +from typing_extensions import Self + +class DnsServerResponse(BaseModel): + """ + A DNS response received while resolving the HTTP test target. + """ # noqa: E501 + id: Optional[StrictInt] = Field(default=None, description="DNS message ID.") + qr: Optional[DnsQr] = None + opcode: Optional[DnsOpcode] = None + authoritative_answer: Optional[StrictBool] = Field(default=None, description="DNS header AA flag.", alias="authoritativeAnswer") + truncation: Optional[StrictBool] = Field(default=None, description="DNS header TC flag.") + recursion_desired: Optional[StrictBool] = Field(default=None, description="DNS header RD flag.", alias="recursionDesired") + recursion_available: Optional[StrictBool] = Field(default=None, description="DNS header RA flag.", alias="recursionAvailable") + zero: Optional[StrictBool] = Field(default=None, description="DNS header Z flag. Reserved and expected to be false.") + authentic_data: Optional[StrictBool] = Field(default=None, description="DNS header AD flag.", alias="authenticData") + checking_disabled: Optional[StrictBool] = Field(default=None, description="DNS header CD flag.", alias="checkingDisabled") + response_code: Optional[DnsResponseCode] = Field(default=None, alias="responseCode") + question: Optional[List[DnsResourceRecord]] = Field(default=None, description="Records in the DNS question section.") + answer: Optional[List[DnsResourceRecord]] = Field(default=None, description="Records in the DNS answer section.") + dns_resolver: Optional[StrictStr] = Field(default=None, description="DNS resolver that returned this response.", alias="dnsResolver") + timing: Optional[DnsTiming] = None + protocol: Optional[DnsMeasurementProtocol] = None + __properties: ClassVar[List[str]] = ["id", "qr", "opcode", "authoritativeAnswer", "truncation", "recursionDesired", "recursionAvailable", "zero", "authenticData", "checkingDisabled", "responseCode", "question", "answer", "dnsResolver", "timing", "protocol"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of DnsServerResponse from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "id", + "authoritative_answer", + "truncation", + "recursion_desired", + "recursion_available", + "zero", + "authentic_data", + "checking_disabled", + "dns_resolver", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + # override the default output from pydantic by calling `to_dict()` of each item in question (list) + _items = [] + if self.question: + for _item in self.question: + if _item: + _items.append(_item.to_dict()) + _dict['question'] = _items + # override the default output from pydantic by calling `to_dict()` of each item in answer (list) + _items = [] + if self.answer: + for _item in self.answer: + if _item: + _items.append(_item.to_dict()) + _dict['answer'] = _items + # override the default output from pydantic by calling `to_dict()` of timing + if self.timing: + _dict['timing'] = self.timing.to_dict() + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of DnsServerResponse from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "id": obj.get("id"), + "qr": obj.get("qr"), + "opcode": obj.get("opcode"), + "authoritativeAnswer": obj.get("authoritativeAnswer"), + "truncation": obj.get("truncation"), + "recursionDesired": obj.get("recursionDesired"), + "recursionAvailable": obj.get("recursionAvailable"), + "zero": obj.get("zero"), + "authenticData": obj.get("authenticData"), + "checkingDisabled": obj.get("checkingDisabled"), + "responseCode": obj.get("responseCode"), + "question": [DnsResourceRecord.from_dict(_item) for _item in obj["question"]] if obj.get("question") is not None else None, + "answer": [DnsResourceRecord.from_dict(_item) for _item in obj["answer"]] if obj.get("answer") is not None else None, + "dnsResolver": obj.get("dnsResolver"), + "timing": DnsTiming.from_dict(obj["timing"]) if obj.get("timing") is not None else None, + "protocol": obj.get("protocol") + }) + return _obj + + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_timing.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_timing.py new file mode 100644 index 00000000..a4b12e6d --- /dev/null +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/dns_timing.py @@ -0,0 +1,93 @@ +# coding: utf-8 + +""" + Test Results API + + Get test result metrics for Network and Application Synthetics tests. + + Generated by OpenAPI Generator (https://openapi-generator.tech) + + Do not edit the class manually. +""" # noqa: E501 + + +from __future__ import annotations +import pprint +import re # noqa: F401 +import json + +from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr +from typing import Any, ClassVar, Dict, List, Optional +from typing import Optional, Set +from typing_extensions import Self + +class DnsTiming(BaseModel): + """ + Timing metrics for a DNS lookup. + """ # noqa: E501 + start_time_us: Optional[StrictStr] = Field(default=None, description="Unix epoch timestamp in microseconds when the DNS query started.", alias="startTimeUs") + total_time_us: Optional[StrictInt] = Field(default=None, description="Total DNS lookup time in microseconds.", alias="totalTimeUs") + __properties: ClassVar[List[str]] = ["startTimeUs", "totalTimeUs"] + + model_config = ConfigDict( + populate_by_name=True, + validate_assignment=True, + protected_namespaces=(), + extra="allow", + ) + + + def to_str(self) -> str: + """Returns the string representation of the model using alias""" + return pprint.pformat(self.model_dump(by_alias=True)) + + def to_json(self) -> str: + """Returns the JSON representation of the model using alias""" + # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead + return self.model_dump_json(by_alias=True, exclude_unset=True, exclude_none=True) + + @classmethod + def from_json(cls, json_str: str) -> Optional[Self]: + """Create an instance of DnsTiming from a JSON string""" + return cls.from_dict(json.loads(json_str)) + + def to_dict(self) -> Dict[str, Any]: + """Return the dictionary representation of the model using alias. + + This has the following differences from calling pydantic's + `self.model_dump(by_alias=True)`: + + * `None` is only added to the output dict for nullable fields that + were set at model initialization. Other fields with value `None` + are ignored. + * OpenAPI `readOnly` fields are excluded. + * OpenAPI `readOnly` fields are excluded. + """ + excluded_fields: Set[str] = set([ + "start_time_us", + "total_time_us", + ]) + + _dict = self.model_dump( + by_alias=True, + exclude=excluded_fields, + exclude_none=True, + ) + return _dict + + @classmethod + def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]: + """Create an instance of DnsTiming from a dict""" + if obj is None: + return None + + if not isinstance(obj, dict): + return cls.model_validate(obj) + + _obj = cls.model_validate({ + "startTimeUs": obj.get("startTimeUs"), + "totalTimeUs": obj.get("totalTimeUs") + }) + return _obj + + diff --git a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/http_test_result.py b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/http_test_result.py index 33680e68..9e17ef1a 100644 --- a/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/http_test_result.py +++ b/thousandeyes-sdk-test-results/src/thousandeyes_sdk/test_results/models/http_test_result.py @@ -19,6 +19,7 @@ import json from datetime import datetime from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr from typing import Any, ClassVar, Dict, List, Optional, Union +from thousandeyes_sdk.test_results.models.dns_server_measurement import DnsServerMeasurement from thousandeyes_sdk.test_results.models.http_test_result_headers import HttpTestResultHeaders from thousandeyes_sdk.test_results.models.ssl_cert import SslCert from thousandeyes_sdk.test_results.models.test_result_agent import TestResultAgent @@ -41,6 +42,7 @@ class HttpTestResult(BaseModel): num_redirects: Optional[StrictInt] = Field(default=None, description="Number of redirects", alias="numRedirects") redirect_time: Optional[StrictInt] = Field(default=None, description="Cumulative redirect timing in milliseconds", alias="redirectTime") dns_time: Optional[StrictInt] = Field(default=None, description="Time required to resolve DNS in milliseconds", alias="dnsTime") + dns_server_measurement: Optional[DnsServerMeasurement] = Field(default=None, alias="dnsServerMeasurement") ssl_time: Optional[StrictInt] = Field(default=None, description="Time to negotiate SSL/TLS in milliseconds", alias="sslTime") connect_time: Optional[StrictInt] = Field(default=None, description="Time required to establish a TCP connection to the server", alias="connectTime") wait_time: Optional[StrictInt] = Field(default=None, description="Time elapsed between completion of request and first byte of response in milliseconds", alias="waitTime") @@ -56,7 +58,7 @@ class HttpTestResult(BaseModel): ssl_version: Optional[StrictStr] = Field(default=None, description="TLS version", alias="sslVersion") ssl_certificates: Optional[List[SslCert]] = Field(default=None, alias="sslCertificates") health_score: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="A normalized value (0.0-1.0) representing the web application connection health of the test target. Returns negative values as error codes. -1.0 indicates there was insufficient data to calculate the health score.", alias="healthScore") - __properties: ClassVar[List[str]] = ["date", "roundId", "_links", "startTime", "endTime", "agent", "serverIp", "responseCode", "numRedirects", "redirectTime", "dnsTime", "sslTime", "connectTime", "waitTime", "receiveTime", "wireSize", "responseTime", "throughput", "totalTime", "headers", "errorType", "errorDetails", "sslCipher", "sslVersion", "sslCertificates", "healthScore"] + __properties: ClassVar[List[str]] = ["date", "roundId", "_links", "startTime", "endTime", "agent", "serverIp", "responseCode", "numRedirects", "redirectTime", "dnsTime", "dnsServerMeasurement", "sslTime", "connectTime", "waitTime", "receiveTime", "wireSize", "responseTime", "throughput", "totalTime", "headers", "errorType", "errorDetails", "sslCipher", "sslVersion", "sslCertificates", "healthScore"] model_config = ConfigDict( populate_by_name=True, @@ -118,6 +120,9 @@ class HttpTestResult(BaseModel): # override the default output from pydantic by calling `to_dict()` of agent if self.agent: _dict['agent'] = self.agent.to_dict() + # override the default output from pydantic by calling `to_dict()` of dns_server_measurement + if self.dns_server_measurement: + _dict['dnsServerMeasurement'] = self.dns_server_measurement.to_dict() # override the default output from pydantic by calling `to_dict()` of headers if self.headers: _dict['headers'] = self.headers.to_dict() @@ -151,6 +156,7 @@ class HttpTestResult(BaseModel): "numRedirects": obj.get("numRedirects"), "redirectTime": obj.get("redirectTime"), "dnsTime": obj.get("dnsTime"), + "dnsServerMeasurement": DnsServerMeasurement.from_dict(obj["dnsServerMeasurement"]) if obj.get("dnsServerMeasurement") is not None else None, "sslTime": obj.get("sslTime"), "connectTime": obj.get("connectTime"), "waitTime": obj.get("waitTime"), diff --git a/thousandeyes-sdk-test-results/test/test_web_http_server_test_results_api.py b/thousandeyes-sdk-test-results/test/test_web_http_server_test_results_api.py index b1010fc1..036fe713 100644 --- a/thousandeyes-sdk-test-results/test/test_web_http_server_test_results_api.py +++ b/thousandeyes-sdk-test-results/test/test_web_http_server_test_results_api.py @@ -160,6 +160,69 @@ class TestWebHTTPServerTestResultsApi(unittest.TestCase): "sslTime" : 9, "endTime" : 1384309800, "waitTime" : 3, + "dnsServerMeasurement" : { + "usedDnsResponse" : { + "id" : 41837, + "qr" : "response", + "opcode" : "query", + "authoritativeAnswer" : false, + "truncation" : false, + "recursionDesired" : true, + "recursionAvailable" : true, + "zero" : false, + "authenticData" : false, + "checkingDisabled" : false, + "responseCode" : "noerror", + "question" : [ { + "name" : "www.example.com", + "type" : "a", + "class" : "in", + "ttl" : 0, + "data" : "" + } ], + "answer" : [ { + "name" : "www.example.com", + "type" : "a", + "class" : "in", + "ttl" : 300, + "data" : "203.0.113.10" + } ], + "dnsResolver" : "8.8.8.8", + "timing" : { + "startTimeUs" : "1769706600000000", + "totalTimeUs" : 19304 + }, + "protocol" : "udp" + }, + "unusedDnsResponses" : [ { + "id" : 41838, + "qr" : "response", + "opcode" : "query", + "authoritativeAnswer" : false, + "truncation" : false, + "recursionDesired" : true, + "recursionAvailable" : true, + "zero" : false, + "authenticData" : false, + "checkingDisabled" : false, + "responseCode" : "nxdomain", + "question" : [ { + "name" : "www.example.com", + "type" : "aaaa", + "class" : "in", + "ttl" : 0, + "data" : "" + } ], + "dnsResolver" : "8.8.4.4", + "timing" : { + "startTimeUs" : "1769706600020000", + "totalTimeUs" : 15420 + }, + "protocol" : "udp" + } ], + "usedHostsFile" : false, + "resolvedIp" : "203.0.113.10" + }, "wireSize" : 9993, "errorDetails" : "Connection error" }, { @@ -224,6 +287,69 @@ class TestWebHTTPServerTestResultsApi(unittest.TestCase): "sslTime" : 9, "endTime" : 1384309800, "waitTime" : 3, + "dnsServerMeasurement" : { + "usedDnsResponse" : { + "id" : 41837, + "qr" : "response", + "opcode" : "query", + "authoritativeAnswer" : false, + "truncation" : false, + "recursionDesired" : true, + "recursionAvailable" : true, + "zero" : false, + "authenticData" : false, + "checkingDisabled" : false, + "responseCode" : "noerror", + "question" : [ { + "name" : "www.example.com", + "type" : "a", + "class" : "in", + "ttl" : 0, + "data" : "" + } ], + "answer" : [ { + "name" : "www.example.com", + "type" : "a", + "class" : "in", + "ttl" : 300, + "data" : "203.0.113.10" + } ], + "dnsResolver" : "8.8.8.8", + "timing" : { + "startTimeUs" : "1769706600000000", + "totalTimeUs" : 19304 + }, + "protocol" : "udp" + }, + "unusedDnsResponses" : [ { + "id" : 41838, + "qr" : "response", + "opcode" : "query", + "authoritativeAnswer" : false, + "truncation" : false, + "recursionDesired" : true, + "recursionAvailable" : true, + "zero" : false, + "authenticData" : false, + "checkingDisabled" : false, + "responseCode" : "nxdomain", + "question" : [ { + "name" : "www.example.com", + "type" : "aaaa", + "class" : "in", + "ttl" : 0, + "data" : "" + } ], + "dnsResolver" : "8.8.4.4", + "timing" : { + "startTimeUs" : "1769706600020000", + "totalTimeUs" : 15420 + }, + "protocol" : "udp" + } ], + "usedHostsFile" : false, + "resolvedIp" : "203.0.113.10" + }, "wireSize" : 9993, "errorDetails" : "Connection error" } ], diff --git a/thousandeyes-sdk-tests/README.md b/thousandeyes-sdk-tests/README.md index 32f5d78e..2811fb3c 100644 --- a/thousandeyes-sdk-tests/README.md +++ b/thousandeyes-sdk-tests/README.md @@ -6,13 +6,13 @@ This API allows you to list, create, edit, and delete Network and Application Sy This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-tests/pyproject.toml b/thousandeyes-sdk-tests/pyproject.toml index 5310e17e..f13039a0 100644 --- a/thousandeyes-sdk-tests/pyproject.toml +++ b/thousandeyes-sdk-tests/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Tests API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1", diff --git a/thousandeyes-sdk-usage/README.md b/thousandeyes-sdk-usage/README.md index 8ce0302f..d5f96626 100644 --- a/thousandeyes-sdk-usage/README.md +++ b/thousandeyes-sdk-usage/README.md @@ -17,13 +17,13 @@ Refer to the Usage API operations for detailed usage instructions and optional p This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 7.0.93 +- API version: 7.0.94 - Generator version: 7.6.0 - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator ## Requirements. -Python 3.8+ +Python 3.9+ ## Installation & Usage ### pip install diff --git a/thousandeyes-sdk-usage/pyproject.toml b/thousandeyes-sdk-usage/pyproject.toml index e3fe5004..e49f0075 100644 --- a/thousandeyes-sdk-usage/pyproject.toml +++ b/thousandeyes-sdk-usage/pyproject.toml @@ -7,9 +7,9 @@ authors = [ ] description = "ThousandEyes SDK Usage API" license = { file = "LICENSE" } -requires-python = ">= 3.8" +requires-python = ">= 3.9" dependencies = [ - "urllib3 >= 2.0.0", + "urllib3 >= 2.6.3", "python-dateutil >=2.8.2", "pydantic >=2.1.0", "typing-extensions >=4.7.1",