[GitHub Bot] Generated python SDK

This commit is contained in:
API Team 2025-08-12 14:29:07 +00:00
parent 40c19e2879
commit 819d6824e7
136 changed files with 845 additions and 92 deletions

View File

@ -12,7 +12,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -5,7 +5,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -13,7 +13,7 @@ Method | HTTP request | Description
Add member to Enterprise Agent cluster Add member to Enterprise Agent cluster
Adding a member to an Enterprise Agent cluster converts a standalone Enterprise Agent to an Enterprise Agent cluster. If the agent represented by the path {agentId} is not already a cluster, it will be converted to a cluster. The response will be a single Enterprise Agent Cluster. The converted Enterprise Agents will become cluster members, and can be returned using the `?expand=cluster-member` parameter. This operation requires users to have the `Edit agents in account group` permission. Upon successful cluster creation, the response includes: * Information about the new cluster in the response body. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` value is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is present in the request URL. **Example - converting a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign -H \"Authorization: Bearer $Bearer_token\" ```` **Example - converting multiple agents** ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` Assigns agents to an Enterprise Agent cluster. If the agent specified by `agentId` in the URL path is not already part of a cluster, this operation creates a new cluster with that agent as the base member. This operation requires the `Edit agents in account group` permission. A JSON request body is required for this operation, even when creating a cluster with a single agent. To create a cluster from a single standalone agent, pass an empty `agents` array in the request body: ``` { \"agents\": [] } ``` If no body is provided, the server returns a 400 Bad Request error. The response is a single Enterprise Agent Cluster. The assigned agents become cluster members and can be returned using the `?expand=cluster-member` parameter. Upon successful cluster creation, the response includes: * Information about the new or updated cluster. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is specified in the request URL. **Example: Creating a cluster from a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` **Example: Adding multiple agents to a cluster** When adding multiple agents, the `{agentId}` specified in the URL path must not be included in the `agents` array. Only include additional agent IDs in the array. ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ````
### Example ### Example

View File

@ -68,7 +68,7 @@ class EnterpriseAgentClusterApi:
) -> AgentDetails: ) -> AgentDetails:
"""Add member to Enterprise Agent cluster """Add member to Enterprise Agent cluster
Adding a member to an Enterprise Agent cluster converts a standalone Enterprise Agent to an Enterprise Agent cluster. If the agent represented by the path {agentId} is not already a cluster, it will be converted to a cluster. The response will be a single Enterprise Agent Cluster. The converted Enterprise Agents will become cluster members, and can be returned using the `?expand=cluster-member` parameter. This operation requires users to have the `Edit agents in account group` permission. Upon successful cluster creation, the response includes: * Information about the new cluster in the response body. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` value is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is present in the request URL. **Example - converting a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign -H \"Authorization: Bearer $Bearer_token\" ```` **Example - converting multiple agents** ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` Assigns agents to an Enterprise Agent cluster. If the agent specified by `agentId` in the URL path is not already part of a cluster, this operation creates a new cluster with that agent as the base member. This operation requires the `Edit agents in account group` permission. A JSON request body is required for this operation, even when creating a cluster with a single agent. To create a cluster from a single standalone agent, pass an empty `agents` array in the request body: ``` { \"agents\": [] } ``` If no body is provided, the server returns a 400 Bad Request error. The response is a single Enterprise Agent Cluster. The assigned agents become cluster members and can be returned using the `?expand=cluster-member` parameter. Upon successful cluster creation, the response includes: * Information about the new or updated cluster. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is specified in the request URL. **Example: Creating a cluster from a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` **Example: Adding multiple agents to a cluster** When adding multiple agents, the `{agentId}` specified in the URL path must not be included in the `agents` array. Only include additional agent IDs in the array. ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ````
:param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required) :param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required)
:type agent_id: str :type agent_id: str
@ -155,7 +155,7 @@ class EnterpriseAgentClusterApi:
) -> ApiResponse[AgentDetails]: ) -> ApiResponse[AgentDetails]:
"""Add member to Enterprise Agent cluster """Add member to Enterprise Agent cluster
Adding a member to an Enterprise Agent cluster converts a standalone Enterprise Agent to an Enterprise Agent cluster. If the agent represented by the path {agentId} is not already a cluster, it will be converted to a cluster. The response will be a single Enterprise Agent Cluster. The converted Enterprise Agents will become cluster members, and can be returned using the `?expand=cluster-member` parameter. This operation requires users to have the `Edit agents in account group` permission. Upon successful cluster creation, the response includes: * Information about the new cluster in the response body. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` value is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is present in the request URL. **Example - converting a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign -H \"Authorization: Bearer $Bearer_token\" ```` **Example - converting multiple agents** ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` Assigns agents to an Enterprise Agent cluster. If the agent specified by `agentId` in the URL path is not already part of a cluster, this operation creates a new cluster with that agent as the base member. This operation requires the `Edit agents in account group` permission. A JSON request body is required for this operation, even when creating a cluster with a single agent. To create a cluster from a single standalone agent, pass an empty `agents` array in the request body: ``` { \"agents\": [] } ``` If no body is provided, the server returns a 400 Bad Request error. The response is a single Enterprise Agent Cluster. The assigned agents become cluster members and can be returned using the `?expand=cluster-member` parameter. Upon successful cluster creation, the response includes: * Information about the new or updated cluster. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is specified in the request URL. **Example: Creating a cluster from a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` **Example: Adding multiple agents to a cluster** When adding multiple agents, the `{agentId}` specified in the URL path must not be included in the `agents` array. Only include additional agent IDs in the array. ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ````
:param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required) :param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required)
:type agent_id: str :type agent_id: str
@ -242,7 +242,7 @@ class EnterpriseAgentClusterApi:
) -> RESTResponseType: ) -> RESTResponseType:
"""Add member to Enterprise Agent cluster """Add member to Enterprise Agent cluster
Adding a member to an Enterprise Agent cluster converts a standalone Enterprise Agent to an Enterprise Agent cluster. If the agent represented by the path {agentId} is not already a cluster, it will be converted to a cluster. The response will be a single Enterprise Agent Cluster. The converted Enterprise Agents will become cluster members, and can be returned using the `?expand=cluster-member` parameter. This operation requires users to have the `Edit agents in account group` permission. Upon successful cluster creation, the response includes: * Information about the new cluster in the response body. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` value is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is present in the request URL. **Example - converting a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign -H \"Authorization: Bearer $Bearer_token\" ```` **Example - converting multiple agents** ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` Assigns agents to an Enterprise Agent cluster. If the agent specified by `agentId` in the URL path is not already part of a cluster, this operation creates a new cluster with that agent as the base member. This operation requires the `Edit agents in account group` permission. A JSON request body is required for this operation, even when creating a cluster with a single agent. To create a cluster from a single standalone agent, pass an empty `agents` array in the request body: ``` { \"agents\": [] } ``` If no body is provided, the server returns a 400 Bad Request error. The response is a single Enterprise Agent Cluster. The assigned agents become cluster members and can be returned using the `?expand=cluster-member` parameter. Upon successful cluster creation, the response includes: * Information about the new or updated cluster. * Each cluster member receives a unique `memberId` within the cluster. * The `memberId` is not linked to the original `agentId` used in the request URL or POST body. * The cluster name is based on the agent whose `agentId` is specified in the request URL. **Example: Creating a cluster from a single agent** ``` curl -X POST https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ```` **Example: Adding multiple agents to a cluster** When adding multiple agents, the `{agentId}` specified in the URL path must not be included in the `agents` array. Only include additional agent IDs in the array. ``` curl https://api.thousandeyes.com/v7/agents/64965/cluster/assign \\ '{\"agents\":[ \"2277\", \"1234\" ]}' \\ -H \"content-type:application/json\" \\ -H \"Authorization: Bearer $Bearer_token\" ````
:param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required) :param agent_id: Unique ID for the Enterprise Agent cluster to add new agents to. (required)
:type agent_id: str :type agent_id: str

View File

@ -12,7 +12,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -8,6 +8,7 @@ Name | Type | Description | Notes
**rule_id** | **str** | Unique ID of the rule. | [optional] [readonly] **rule_id** | **str** | Unique ID of the rule. | [optional] [readonly]
**rule_name** | **str** | Name of the alert rule. | **rule_name** | **str** | Name of the alert rule. |
**expression** | **str** | The expression of the alert rule. | **expression** | **str** | The expression of the alert rule. |
**description** | **str** | A description of the alert rule. | [optional]
**direction** | [**AlertDirection**](AlertDirection.md) | | [optional] **direction** | [**AlertDirection**](AlertDirection.md) | | [optional]
**notify_on_clear** | **bool** | Send notification when alert clears. | [optional] **notify_on_clear** | **bool** | Send notification when alert clears. | [optional]
**is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional] **is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional]

View File

@ -8,6 +8,7 @@ Name | Type | Description | Notes
**rule_id** | **str** | Unique ID of the rule. | [optional] [readonly] **rule_id** | **str** | Unique ID of the rule. | [optional] [readonly]
**rule_name** | **str** | Name of the alert rule. | **rule_name** | **str** | Name of the alert rule. |
**expression** | **str** | The expression of the alert rule. | **expression** | **str** | The expression of the alert rule. |
**description** | **str** | A description of the alert rule. | [optional]
**direction** | [**AlertDirection**](AlertDirection.md) | | [optional] **direction** | [**AlertDirection**](AlertDirection.md) | | [optional]
**notify_on_clear** | **bool** | Send notification when alert clears. | [optional] **notify_on_clear** | **bool** | Send notification when alert clears. | [optional]
**is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional] **is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional]

View File

@ -8,6 +8,7 @@ Name | Type | Description | Notes
**rule_id** | **str** | Unique ID of the rule. | [optional] [readonly] **rule_id** | **str** | Unique ID of the rule. | [optional] [readonly]
**rule_name** | **str** | Name of the alert rule. | **rule_name** | **str** | Name of the alert rule. |
**expression** | **str** | The expression of the alert rule. | **expression** | **str** | The expression of the alert rule. |
**description** | **str** | A description of the alert rule. | [optional]
**direction** | [**AlertDirection**](AlertDirection.md) | | [optional] **direction** | [**AlertDirection**](AlertDirection.md) | | [optional]
**notify_on_clear** | **bool** | Send notification when alert clears. | [optional] **notify_on_clear** | **bool** | Send notification when alert clears. | [optional]
**is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional] **is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional]

View File

@ -8,6 +8,7 @@ Name | Type | Description | Notes
**rule_id** | **str** | Unique ID of the rule. | [optional] [readonly] **rule_id** | **str** | Unique ID of the rule. | [optional] [readonly]
**rule_name** | **str** | Name of the alert rule. | **rule_name** | **str** | Name of the alert rule. |
**expression** | **str** | The expression of the alert rule. | **expression** | **str** | The expression of the alert rule. |
**description** | **str** | A description of the alert rule. | [optional]
**direction** | [**AlertDirection**](AlertDirection.md) | | [optional] **direction** | [**AlertDirection**](AlertDirection.md) | | [optional]
**notify_on_clear** | **bool** | Send notification when alert clears. | [optional] **notify_on_clear** | **bool** | Send notification when alert clears. | [optional]
**is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional] **is_default** | **bool** | If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type. | [optional]

View File

@ -34,6 +34,7 @@ class BaseRule(BaseModel):
rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId") rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId")
rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName") rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName")
expression: StrictStr = Field(description="The expression of the alert rule.") expression: StrictStr = Field(description="The expression of the alert rule.")
description: Optional[StrictStr] = Field(default=None, description="A description of the alert rule.")
direction: Optional[AlertDirection] = None direction: Optional[AlertDirection] = None
notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear") notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear")
is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault") is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault")
@ -50,7 +51,7 @@ class BaseRule(BaseModel):
endpoint_agent_ids: Optional[List[StrictStr]] = Field(default=None, description="An array of endpoint agent IDs associated with the rule (get `id` from `/endpoint/agents` API). This is applicable when `alertGroupType` is `browser-session`.", alias="endpointAgentIds") endpoint_agent_ids: Optional[List[StrictStr]] = Field(default=None, description="An array of endpoint agent IDs associated with the rule (get `id` from `/endpoint/agents` API). This is applicable when `alertGroupType` is `browser-session`.", alias="endpointAgentIds")
endpoint_label_ids: Optional[List[StrictStr]] = Field(default=None, description="An array of label IDs used to assign specific Endpoint Agents to the test (get `id` from `/endpoint/labels`). This is applicable when `alertGroupType` is `browser-session`.", alias="endpointLabelIds") endpoint_label_ids: Optional[List[StrictStr]] = Field(default=None, description="An array of label IDs used to assign specific Endpoint Agents to the test (get `id` from `/endpoint/labels`). This is applicable when `alertGroupType` is `browser-session`.", alias="endpointLabelIds")
visited_sites_filter: Optional[List[StrictStr]] = Field(default=None, description="A list of website domains visited during the session. This is applicable when `alertGroupType` is `browser-session`.", alias="visitedSitesFilter") visited_sites_filter: Optional[List[StrictStr]] = Field(default=None, description="A list of website domains visited during the session. This is applicable when `alertGroupType` is `browser-session`.", alias="visitedSitesFilter")
__properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter"] __properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "description", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -109,6 +110,7 @@ class BaseRule(BaseModel):
"ruleId": obj.get("ruleId"), "ruleId": obj.get("ruleId"),
"ruleName": obj.get("ruleName"), "ruleName": obj.get("ruleName"),
"expression": obj.get("expression"), "expression": obj.get("expression"),
"description": obj.get("description"),
"direction": obj.get("direction"), "direction": obj.get("direction"),
"notifyOnClear": obj.get("notifyOnClear"), "notifyOnClear": obj.get("notifyOnClear"),
"isDefault": obj.get("isDefault"), "isDefault": obj.get("isDefault"),

View File

@ -36,6 +36,7 @@ class Rule(BaseModel):
rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId") rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId")
rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName") rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName")
expression: StrictStr = Field(description="The expression of the alert rule.") expression: StrictStr = Field(description="The expression of the alert rule.")
description: Optional[StrictStr] = Field(default=None, description="A description of the alert rule.")
direction: Optional[AlertDirection] = None direction: Optional[AlertDirection] = None
notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear") notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear")
is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault") is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault")
@ -55,7 +56,7 @@ class Rule(BaseModel):
notifications: Optional[AlertNotification] = None notifications: Optional[AlertNotification] = None
test_ids: Optional[List[StrictStr]] = Field(default=None, description="Array of test IDs to link to alert rule (get `testId` from `/tests` endpoint).", alias="testIds") test_ids: Optional[List[StrictStr]] = Field(default=None, description="Array of test IDs to link to alert rule (get `testId` from `/tests` endpoint).", alias="testIds")
links: Optional[SelfLinks] = Field(default=None, alias="_links") links: Optional[SelfLinks] = Field(default=None, alias="_links")
__properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "testIds", "_links"] __properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "description", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "testIds", "_links"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -120,6 +121,7 @@ class Rule(BaseModel):
"ruleId": obj.get("ruleId"), "ruleId": obj.get("ruleId"),
"ruleName": obj.get("ruleName"), "ruleName": obj.get("ruleName"),
"expression": obj.get("expression"), "expression": obj.get("expression"),
"description": obj.get("description"),
"direction": obj.get("direction"), "direction": obj.get("direction"),
"notifyOnClear": obj.get("notifyOnClear"), "notifyOnClear": obj.get("notifyOnClear"),
"isDefault": obj.get("isDefault"), "isDefault": obj.get("isDefault"),

View File

@ -37,6 +37,7 @@ class RuleDetail(BaseModel):
rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId") rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId")
rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName") rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName")
expression: StrictStr = Field(description="The expression of the alert rule.") expression: StrictStr = Field(description="The expression of the alert rule.")
description: Optional[StrictStr] = Field(default=None, description="A description of the alert rule.")
direction: Optional[AlertDirection] = None direction: Optional[AlertDirection] = None
notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear") notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear")
is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault") is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault")
@ -56,7 +57,7 @@ class RuleDetail(BaseModel):
notifications: Optional[AlertNotification] = None notifications: Optional[AlertNotification] = None
tests: Optional[List[AlertSimpleTest]] = None tests: Optional[List[AlertSimpleTest]] = None
links: Optional[SelfLinks] = Field(default=None, alias="_links") links: Optional[SelfLinks] = Field(default=None, alias="_links")
__properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "tests", "_links"] __properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "description", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "tests", "_links"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -130,6 +131,7 @@ class RuleDetail(BaseModel):
"ruleId": obj.get("ruleId"), "ruleId": obj.get("ruleId"),
"ruleName": obj.get("ruleName"), "ruleName": obj.get("ruleName"),
"expression": obj.get("expression"), "expression": obj.get("expression"),
"description": obj.get("description"),
"direction": obj.get("direction"), "direction": obj.get("direction"),
"notifyOnClear": obj.get("notifyOnClear"), "notifyOnClear": obj.get("notifyOnClear"),
"isDefault": obj.get("isDefault"), "isDefault": obj.get("isDefault"),

View File

@ -35,6 +35,7 @@ class RuleDetailUpdate(BaseModel):
rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId") rule_id: Optional[StrictStr] = Field(default=None, description="Unique ID of the rule.", alias="ruleId")
rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName") rule_name: StrictStr = Field(description="Name of the alert rule.", alias="ruleName")
expression: StrictStr = Field(description="The expression of the alert rule.") expression: StrictStr = Field(description="The expression of the alert rule.")
description: Optional[StrictStr] = Field(default=None, description="A description of the alert rule.")
direction: Optional[AlertDirection] = None direction: Optional[AlertDirection] = None
notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear") notify_on_clear: Optional[StrictBool] = Field(default=None, description="Send notification when alert clears.", alias="notifyOnClear")
is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault") is_default: Optional[StrictBool] = Field(default=None, description="If set to `true`, this alert rule becomes the default for its test type and is automatically applied to newly created tests with relevant metrics. Only one default alert rule is allowed per test type.", alias="isDefault")
@ -53,7 +54,7 @@ class RuleDetailUpdate(BaseModel):
visited_sites_filter: Optional[List[StrictStr]] = Field(default=None, description="A list of website domains visited during the session. This is applicable when `alertGroupType` is `browser-session`.", alias="visitedSitesFilter") visited_sites_filter: Optional[List[StrictStr]] = Field(default=None, description="A list of website domains visited during the session. This is applicable when `alertGroupType` is `browser-session`.", alias="visitedSitesFilter")
notifications: Optional[AlertNotification] = None notifications: Optional[AlertNotification] = None
test_ids: Optional[List[StrictStr]] = Field(default=None, description="Array of test IDs to link to alert rule (get `testId` from `/tests` endpoint).", alias="testIds") test_ids: Optional[List[StrictStr]] = Field(default=None, description="Array of test IDs to link to alert rule (get `testId` from `/tests` endpoint).", alias="testIds")
__properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "testIds"] __properties: ClassVar[List[str]] = ["ruleId", "ruleName", "expression", "description", "direction", "notifyOnClear", "isDefault", "alertType", "alertGroupType", "minimumSources", "minimumSourcesPct", "roundsViolatingMode", "roundsViolatingOutOf", "roundsViolatingRequired", "includeCoveredPrefixes", "sensitivityLevel", "severity", "endpointAgentIds", "endpointLabelIds", "visitedSitesFilter", "notifications", "testIds"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -115,6 +116,7 @@ class RuleDetailUpdate(BaseModel):
"ruleId": obj.get("ruleId"), "ruleId": obj.get("ruleId"),
"ruleName": obj.get("ruleName"), "ruleName": obj.get("ruleName"),
"expression": obj.get("expression"), "expression": obj.get("expression"),
"description": obj.get("description"),
"direction": obj.get("direction"), "direction": obj.get("direction"),
"notifyOnClear": obj.get("notifyOnClear"), "notifyOnClear": obj.get("notifyOnClear"),
"isDefault": obj.get("isDefault"), "isDefault": obj.get("isDefault"),

View File

@ -37,6 +37,7 @@ class TestAlertRulesApi(unittest.TestCase):
"alertType" : "http-server", "alertType" : "http-server",
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -112,6 +113,7 @@ class TestAlertRulesApi(unittest.TestCase):
}, },
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -194,6 +196,7 @@ class TestAlertRulesApi(unittest.TestCase):
}, },
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -335,6 +338,7 @@ class TestAlertRulesApi(unittest.TestCase):
"alertType" : "http-server", "alertType" : "http-server",
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -355,6 +359,7 @@ class TestAlertRulesApi(unittest.TestCase):
"alertType" : "http-server", "alertType" : "http-server",
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -385,6 +390,7 @@ class TestAlertRulesApi(unittest.TestCase):
"alertType" : "http-server", "alertType" : "http-server",
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",
@ -460,6 +466,7 @@ class TestAlertRulesApi(unittest.TestCase):
}, },
"includeCoveredPrefixes" : true, "includeCoveredPrefixes" : true,
"visitedSitesFilter" : [ "app.thousandeyes.com" ], "visitedSitesFilter" : [ "app.thousandeyes.com" ],
"description" : "A rule description string",
"roundsViolatingMode" : "exact", "roundsViolatingMode" : "exact",
"sensitivityLevel" : "medium", "sensitivityLevel" : "medium",
"alertGroupType" : "endpoint", "alertGroupType" : "endpoint",

View File

@ -9,7 +9,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -13,7 +13,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -3,7 +3,7 @@ Manage ThousandEyes Dashboards.
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -9,7 +9,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -32,6 +32,7 @@ docs/EndpointUserProfile.md
docs/EndpointVpnProfile.md docs/EndpointVpnProfile.md
docs/Error.md docs/Error.md
docs/ExpandEndpointAgentOptions.md docs/ExpandEndpointAgentOptions.md
docs/ExternalMetadataItem.md
docs/FilterEndpointAgentsResponse.md docs/FilterEndpointAgentsResponse.md
docs/InterfaceHardwareType.md docs/InterfaceHardwareType.md
docs/InterfaceProfile.md docs/InterfaceProfile.md
@ -85,6 +86,7 @@ src/thousandeyes_sdk/endpoint_agents/models/endpoint_user_profile.py
src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_profile.py src/thousandeyes_sdk/endpoint_agents/models/endpoint_vpn_profile.py
src/thousandeyes_sdk/endpoint_agents/models/error.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/expand_endpoint_agent_options.py
src/thousandeyes_sdk/endpoint_agents/models/external_metadata_item.py
src/thousandeyes_sdk/endpoint_agents/models/filter_endpoint_agents_response.py src/thousandeyes_sdk/endpoint_agents/models/filter_endpoint_agents_response.py
src/thousandeyes_sdk/endpoint_agents/models/interface_hardware_type.py src/thousandeyes_sdk/endpoint_agents/models/interface_hardware_type.py
src/thousandeyes_sdk/endpoint_agents/models/interface_profile.py src/thousandeyes_sdk/endpoint_agents/models/interface_profile.py

View File

@ -5,7 +5,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator
@ -139,6 +139,7 @@ Class | Method | HTTP request | Description
- [EndpointVpnProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnProfile.md) - [EndpointVpnProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/EndpointVpnProfile.md)
- [Error](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/Error.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) - [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)
- [FilterEndpointAgentsResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/FilterEndpointAgentsResponse.md) - [FilterEndpointAgentsResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/FilterEndpointAgentsResponse.md)
- [InterfaceHardwareType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/InterfaceHardwareType.md) - [InterfaceHardwareType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/InterfaceHardwareType.md)
- [InterfaceProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/InterfaceProfile.md) - [InterfaceProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-agents/docs/InterfaceProfile.md)

View File

@ -28,6 +28,7 @@ Name | Type | Description | Notes
**total_memory** | **str** | | [optional] [readonly] **total_memory** | **str** | | [optional] [readonly]
**agent_type** | **str** | | [optional] [readonly] **agent_type** | **str** | | [optional] [readonly]
**vpn_profiles** | [**List[EndpointVpnProfile]**](EndpointVpnProfile.md) | List of VPN connections on the agent. Not populated by default. | [optional] [readonly] **vpn_profiles** | [**List[EndpointVpnProfile]**](EndpointVpnProfile.md) | List of VPN connections on the agent. Not populated by default. | [optional] [readonly]
**external_metadata** | [**List[ExternalMetadataItem]**](ExternalMetadataItem.md) | List of external metadata assigned to the endpoint agent. Visible only if the `expandAgent=externalMetadata` query parameter is included. | [optional]
**network_interface_profiles** | [**List[InterfaceProfile]**](InterfaceProfile.md) | List of network interfaces on the agent. Not populated by default. | [optional] [readonly] **network_interface_profiles** | [**List[InterfaceProfile]**](InterfaceProfile.md) | List of network interfaces on the agent. Not populated by default. | [optional] [readonly]
**asn_details** | [**EndpointAsnDetails**](EndpointAsnDetails.md) | | [optional] **asn_details** | [**EndpointAsnDetails**](EndpointAsnDetails.md) | | [optional]
**license_type** | [**AgentLicenseType**](AgentLicenseType.md) | | [optional] **license_type** | [**AgentLicenseType**](AgentLicenseType.md) | | [optional]

View File

@ -0,0 +1,30 @@
# ExternalMetadataItem
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**key** | **str** | Name or identifier of the external metadata property. | [optional]
**value** | **str** | Value of the external metadata property. | [optional]
## Example
```python
from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem
# TODO update the JSON string below
json = "{}"
# create an instance of ExternalMetadataItem from a JSON string
external_metadata_item_instance = ExternalMetadataItem.from_json(json)
# print the JSON string representation of the object
print(ExternalMetadataItem.to_json())
# convert the object into a dict
external_metadata_item_dict = external_metadata_item_instance.to_dict()
# create an instance of ExternalMetadataItem from a dict
external_metadata_item_from_dict = ExternalMetadataItem.from_dict(external_metadata_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)

View File

@ -48,6 +48,7 @@ from thousandeyes_sdk.endpoint_agents.models.endpoint_user_profile import Endpoi
from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile
from thousandeyes_sdk.endpoint_agents.models.error import Error 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.expand_endpoint_agent_options import ExpandEndpointAgentOptions
from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem
from thousandeyes_sdk.endpoint_agents.models.filter_endpoint_agents_response import FilterEndpointAgentsResponse from thousandeyes_sdk.endpoint_agents.models.filter_endpoint_agents_response import FilterEndpointAgentsResponse
from thousandeyes_sdk.endpoint_agents.models.interface_hardware_type import InterfaceHardwareType from thousandeyes_sdk.endpoint_agents.models.interface_hardware_type import InterfaceHardwareType
from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile

View File

@ -42,6 +42,7 @@ from thousandeyes_sdk.endpoint_agents.models.endpoint_user_profile import Endpoi
from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile
from thousandeyes_sdk.endpoint_agents.models.error import Error 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.expand_endpoint_agent_options import ExpandEndpointAgentOptions
from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem
from thousandeyes_sdk.endpoint_agents.models.filter_endpoint_agents_response import FilterEndpointAgentsResponse from thousandeyes_sdk.endpoint_agents.models.filter_endpoint_agents_response import FilterEndpointAgentsResponse
from thousandeyes_sdk.endpoint_agents.models.interface_hardware_type import InterfaceHardwareType from thousandeyes_sdk.endpoint_agents.models.interface_hardware_type import InterfaceHardwareType
from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile

View File

@ -24,6 +24,7 @@ from thousandeyes_sdk.endpoint_agents.models.endpoint_agent_location import Endp
from thousandeyes_sdk.endpoint_agents.models.endpoint_asn_details import EndpointAsnDetails from thousandeyes_sdk.endpoint_agents.models.endpoint_asn_details import EndpointAsnDetails
from thousandeyes_sdk.endpoint_agents.models.endpoint_client import EndpointClient from thousandeyes_sdk.endpoint_agents.models.endpoint_client import EndpointClient
from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile from thousandeyes_sdk.endpoint_agents.models.endpoint_vpn_profile import EndpointVpnProfile
from thousandeyes_sdk.endpoint_agents.models.external_metadata_item import ExternalMetadataItem
from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile from thousandeyes_sdk.endpoint_agents.models.interface_profile import InterfaceProfile
from thousandeyes_sdk.endpoint_agents.models.platform import Platform from thousandeyes_sdk.endpoint_agents.models.platform import Platform
from thousandeyes_sdk.endpoint_agents.models.self_links import SelfLinks from thousandeyes_sdk.endpoint_agents.models.self_links import SelfLinks
@ -57,13 +58,14 @@ class EndpointAgent(BaseModel):
total_memory: Optional[StrictStr] = Field(default=None, alias="totalMemory") total_memory: Optional[StrictStr] = Field(default=None, alias="totalMemory")
agent_type: Optional[StrictStr] = Field(default=None, alias="agentType") agent_type: Optional[StrictStr] = Field(default=None, alias="agentType")
vpn_profiles: Optional[List[EndpointVpnProfile]] = Field(default=None, description="List of VPN connections on the agent. Not populated by default. ", alias="vpnProfiles") vpn_profiles: Optional[List[EndpointVpnProfile]] = Field(default=None, description="List of VPN connections on the agent. Not populated by default. ", alias="vpnProfiles")
external_metadata: Optional[List[ExternalMetadataItem]] = Field(default=None, description="List of external metadata assigned to the endpoint agent. Visible only if the `expandAgent=externalMetadata` query parameter is included. ", alias="externalMetadata")
network_interface_profiles: Optional[List[InterfaceProfile]] = Field(default=None, description="List of network interfaces on the agent. Not populated by default. ", alias="networkInterfaceProfiles") network_interface_profiles: Optional[List[InterfaceProfile]] = Field(default=None, description="List of network interfaces on the agent. Not populated by default. ", alias="networkInterfaceProfiles")
asn_details: Optional[EndpointAsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[EndpointAsnDetails] = Field(default=None, alias="asnDetails")
license_type: Optional[AgentLicenseType] = Field(default=None, alias="licenseType") license_type: Optional[AgentLicenseType] = Field(default=None, alias="licenseType")
tcp_driver_available: Optional[StrictBool] = Field(default=None, description="Status of TCP test support on the agent.", alias="tcpDriverAvailable") tcp_driver_available: Optional[StrictBool] = Field(default=None, description="Status of TCP test support on the agent.", alias="tcpDriverAvailable")
npcap_version: Optional[StrictStr] = Field(default=None, description="For Windows agents, the version of the NPCAP driver that the agent has loaded.", alias="npcapVersion") npcap_version: Optional[StrictStr] = Field(default=None, description="For Windows agents, the version of the NPCAP driver that the agent has loaded.", alias="npcapVersion")
links: Optional[SelfLinks] = Field(default=None, alias="_links") links: Optional[SelfLinks] = Field(default=None, alias="_links")
__properties: ClassVar[List[str]] = ["id", "aid", "name", "computerName", "osVersion", "platform", "kernelVersion", "manufacturer", "model", "lastSeen", "status", "deleted", "version", "targetVersion", "createdAt", "numberOfClients", "publicIP", "location", "clients", "totalMemory", "agentType", "vpnProfiles", "networkInterfaceProfiles", "asnDetails", "licenseType", "tcpDriverAvailable", "npcapVersion", "_links"] __properties: ClassVar[List[str]] = ["id", "aid", "name", "computerName", "osVersion", "platform", "kernelVersion", "manufacturer", "model", "lastSeen", "status", "deleted", "version", "targetVersion", "createdAt", "numberOfClients", "publicIP", "location", "clients", "totalMemory", "agentType", "vpnProfiles", "externalMetadata", "networkInterfaceProfiles", "asnDetails", "licenseType", "tcpDriverAvailable", "npcapVersion", "_links"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -162,6 +164,13 @@ class EndpointAgent(BaseModel):
if _item: if _item:
_items.append(_item.to_dict()) _items.append(_item.to_dict())
_dict['vpnProfiles'] = _items _dict['vpnProfiles'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in external_metadata (list)
_items = []
if self.external_metadata:
for _item in self.external_metadata:
if _item:
_items.append(_item.to_dict())
_dict['externalMetadata'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in network_interface_profiles (list) # override the default output from pydantic by calling `to_dict()` of each item in network_interface_profiles (list)
_items = [] _items = []
if self.network_interface_profiles: if self.network_interface_profiles:
@ -209,6 +218,7 @@ class EndpointAgent(BaseModel):
"totalMemory": obj.get("totalMemory"), "totalMemory": obj.get("totalMemory"),
"agentType": obj.get("agentType"), "agentType": obj.get("agentType"),
"vpnProfiles": [EndpointVpnProfile.from_dict(_item) for _item in obj["vpnProfiles"]] if obj.get("vpnProfiles") is not None else None, "vpnProfiles": [EndpointVpnProfile.from_dict(_item) for _item in obj["vpnProfiles"]] if obj.get("vpnProfiles") is not None else None,
"externalMetadata": [ExternalMetadataItem.from_dict(_item) for _item in obj["externalMetadata"]] if obj.get("externalMetadata") is not None else None,
"networkInterfaceProfiles": [InterfaceProfile.from_dict(_item) for _item in obj["networkInterfaceProfiles"]] if obj.get("networkInterfaceProfiles") is not None else None, "networkInterfaceProfiles": [InterfaceProfile.from_dict(_item) for _item in obj["networkInterfaceProfiles"]] if obj.get("networkInterfaceProfiles") is not None else None,
"asnDetails": EndpointAsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": EndpointAsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"licenseType": obj.get("licenseType"), "licenseType": obj.get("licenseType"),

View File

@ -0,0 +1,89 @@
# coding: utf-8
"""
Endpoint Agents API
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 typing import Optional, Set
from typing_extensions import Self
class ExternalMetadataItem(BaseModel):
"""
ExternalMetadataItem
""" # noqa: E501
key: Optional[StrictStr] = Field(default=None, description="Name or identifier of the external metadata property.")
value: Optional[StrictStr] = Field(default=None, description="Value of the external metadata property.")
__properties: ClassVar[List[str]] = ["key", "value"]
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 ExternalMetadataItem 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 ExternalMetadataItem from a dict"""
if obj is None:
return None
if not isinstance(obj, dict):
return cls.model_validate(obj)
_obj = cls.model_validate({
"key": obj.get("key"),
"value": obj.get("value")
})
return _obj

View File

@ -108,6 +108,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -269,6 +276,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -483,6 +497,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -634,6 +655,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -796,6 +824,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -981,6 +1016,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -1132,6 +1174,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],
@ -1327,6 +1376,13 @@ class TestEndpointAgentsApi(unittest.TestCase):
"computerName" : "DESKJET-123", "computerName" : "DESKJET-123",
"model" : "MacBookAir7,2", "model" : "MacBookAir7,2",
"id" : "861b7557-cd57-4bbb-b648-00bddf88ef49", "id" : "861b7557-cd57-4bbb-b648-00bddf88ef49",
"externalMetadata" : [ {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
}, {
"key" : "anyConnectDeviceId",
"value" : "DF434343D"
} ],
"version" : "0.123.4", "version" : "0.123.4",
"vpnProfiles" : [ { "vpnProfiles" : [ {
"vpnClientNetworkRange" : [ "10.100.0.0/22" ], "vpnClientNetworkRange" : [ "10.100.0.0/22" ],

View File

@ -13,7 +13,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -1,6 +1,6 @@
# TestSslVersionId # TestSslVersionId
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
## Properties ## Properties

View File

@ -19,7 +19,7 @@ from typing_extensions import Self
class TestSslVersionId(str, Enum): class TestSslVersionId(str, Enum):
""" """
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
""" """
""" """
@ -30,6 +30,7 @@ class TestSslVersionId(str, Enum):
ENUM_4 = '4' ENUM_4 = '4'
ENUM_5 = '5' ENUM_5 = '5'
ENUM_6 = '6' ENUM_6 = '6'
ENUM_7 = '7'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -4,7 +4,7 @@ Manage labels applied to endpoint agents using this API.
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -55,7 +55,9 @@ docs/EndpointTestsDataThresholdFilters.md
docs/EndpointZtaMetrics.md docs/EndpointZtaMetrics.md
docs/EndpointZtaSegmentType.md docs/EndpointZtaSegmentType.md
docs/Error.md docs/Error.md
docs/ExpandEndpointDynamicNetworkOptions.md
docs/ExpandEndpointHttpServerOptions.md docs/ExpandEndpointHttpServerOptions.md
docs/ExpandEndpointNetworkOptions.md
docs/ExpandLocalNetworkTopologyOptions.md docs/ExpandLocalNetworkTopologyOptions.md
docs/GatewayNetworkPing.md docs/GatewayNetworkPing.md
docs/HTTPServerEndpointScheduledTestResultsApi.md docs/HTTPServerEndpointScheduledTestResultsApi.md
@ -153,6 +155,7 @@ docs/Trigger.md
docs/UdpPathTraceModeResponse.md docs/UdpPathTraceModeResponse.md
docs/UdpProbeModeResponse.md docs/UdpProbeModeResponse.md
docs/UnauthorizedError.md docs/UnauthorizedError.md
docs/UserProfile.md
docs/ValidationError.md docs/ValidationError.md
docs/ValidationErrorItem.md docs/ValidationErrorItem.md
docs/VpnNetworkPing.md docs/VpnNetworkPing.md
@ -223,7 +226,9 @@ src/thousandeyes_sdk/endpoint_test_results/models/endpoint_tests_data_threshold_
src/thousandeyes_sdk/endpoint_test_results/models/endpoint_zta_metrics.py src/thousandeyes_sdk/endpoint_test_results/models/endpoint_zta_metrics.py
src/thousandeyes_sdk/endpoint_test_results/models/endpoint_zta_segment_type.py src/thousandeyes_sdk/endpoint_test_results/models/endpoint_zta_segment_type.py
src/thousandeyes_sdk/endpoint_test_results/models/error.py src/thousandeyes_sdk/endpoint_test_results/models/error.py
src/thousandeyes_sdk/endpoint_test_results/models/expand_endpoint_dynamic_network_options.py
src/thousandeyes_sdk/endpoint_test_results/models/expand_endpoint_http_server_options.py src/thousandeyes_sdk/endpoint_test_results/models/expand_endpoint_http_server_options.py
src/thousandeyes_sdk/endpoint_test_results/models/expand_endpoint_network_options.py
src/thousandeyes_sdk/endpoint_test_results/models/expand_local_network_topology_options.py src/thousandeyes_sdk/endpoint_test_results/models/expand_local_network_topology_options.py
src/thousandeyes_sdk/endpoint_test_results/models/gateway_network_ping.py src/thousandeyes_sdk/endpoint_test_results/models/gateway_network_ping.py
src/thousandeyes_sdk/endpoint_test_results/models/hop.py src/thousandeyes_sdk/endpoint_test_results/models/hop.py
@ -316,6 +321,7 @@ src/thousandeyes_sdk/endpoint_test_results/models/trigger.py
src/thousandeyes_sdk/endpoint_test_results/models/udp_path_trace_mode_response.py src/thousandeyes_sdk/endpoint_test_results/models/udp_path_trace_mode_response.py
src/thousandeyes_sdk/endpoint_test_results/models/udp_probe_mode_response.py src/thousandeyes_sdk/endpoint_test_results/models/udp_probe_mode_response.py
src/thousandeyes_sdk/endpoint_test_results/models/unauthorized_error.py src/thousandeyes_sdk/endpoint_test_results/models/unauthorized_error.py
src/thousandeyes_sdk/endpoint_test_results/models/user_profile.py
src/thousandeyes_sdk/endpoint_test_results/models/validation_error.py src/thousandeyes_sdk/endpoint_test_results/models/validation_error.py
src/thousandeyes_sdk/endpoint_test_results/models/validation_error_item.py src/thousandeyes_sdk/endpoint_test_results/models/validation_error_item.py
src/thousandeyes_sdk/endpoint_test_results/models/vpn_network_ping.py src/thousandeyes_sdk/endpoint_test_results/models/vpn_network_ping.py

View File

@ -3,7 +3,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator
@ -176,7 +176,9 @@ Class | Method | HTTP request | Description
- [EndpointZtaMetrics](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/EndpointZtaMetrics.md) - [EndpointZtaMetrics](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/EndpointZtaMetrics.md)
- [EndpointZtaSegmentType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/EndpointZtaSegmentType.md) - [EndpointZtaSegmentType](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/EndpointZtaSegmentType.md)
- [Error](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/Error.md) - [Error](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/Error.md)
- [ExpandEndpointDynamicNetworkOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandEndpointDynamicNetworkOptions.md)
- [ExpandEndpointHttpServerOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandEndpointHttpServerOptions.md) - [ExpandEndpointHttpServerOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandEndpointHttpServerOptions.md)
- [ExpandEndpointNetworkOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandEndpointNetworkOptions.md)
- [ExpandLocalNetworkTopologyOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandLocalNetworkTopologyOptions.md) - [ExpandLocalNetworkTopologyOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ExpandLocalNetworkTopologyOptions.md)
- [GatewayNetworkPing](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/GatewayNetworkPing.md) - [GatewayNetworkPing](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/GatewayNetworkPing.md)
- [Hop](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/Hop.md) - [Hop](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/Hop.md)
@ -269,6 +271,7 @@ Class | Method | HTTP request | Description
- [UdpPathTraceModeResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UdpPathTraceModeResponse.md) - [UdpPathTraceModeResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UdpPathTraceModeResponse.md)
- [UdpProbeModeResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UdpProbeModeResponse.md) - [UdpProbeModeResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UdpProbeModeResponse.md)
- [UnauthorizedError](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UnauthorizedError.md) - [UnauthorizedError](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UnauthorizedError.md)
- [UserProfile](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/UserProfile.md)
- [ValidationError](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ValidationError.md) - [ValidationError](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ValidationError.md)
- [ValidationErrorItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ValidationErrorItem.md) - [ValidationErrorItem](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/ValidationErrorItem.md)
- [VpnNetworkPing](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/VpnNetworkPing.md) - [VpnNetworkPing](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-endpoint-test-results/docs/VpnNetworkPing.md)

View File

@ -6,6 +6,7 @@
Name | Type | Description | Notes Name | Type | Description | Notes
------------ | ------------- | ------------- | ------------- ------------ | ------------- | ------------- | -------------
**agent_id** | **List[str]** | Filter using the `agent-id`. | [optional] **agent_id** | **List[str]** | Filter using the `agent-id`. | [optional]
**user_principal_name** | **List[str]** | Filters results based on an array of `userPrincipalName` values. | [optional]
**webex_conference_id** | **List[str]** | Filter using the `conference-id` of the webex call. | [optional] **webex_conference_id** | **List[str]** | Filter using the `conference-id` of the webex call. | [optional]
## Example ## Example

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
## Example ## Example

View File

@ -6,6 +6,7 @@
Name | Type | Description | Notes Name | Type | Description | Notes
------------ | ------------- | ------------- | ------------- ------------ | ------------- | ------------- | -------------
**agent_id** | **List[str]** | Filter using the `agent-id`. | [optional] **agent_id** | **List[str]** | Filter using the `agent-id`. | [optional]
**user_principal_name** | **List[str]** | Filters results based on an array of `userPrincipalName` values. | [optional]
## Example ## Example

View File

@ -0,0 +1,11 @@
# ExpandEndpointDynamicNetworkOptions
## 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)

View File

@ -0,0 +1,11 @@
# ExpandEndpointNetworkOptions
## 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)

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**score** | [**EndpointHttpDataPointScore**](EndpointHttpDataPointScore.md) | | [optional] **score** | [**EndpointHttpDataPointScore**](EndpointHttpDataPointScore.md) | | [optional]
**connect_time** | **int** | Time required to establish a TCP connection to the server in milliseconds. | [optional] [readonly] **connect_time** | **int** | Time required to establish a TCP connection to the server in milliseconds. | [optional] [readonly]

View File

@ -7,6 +7,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | ------------- ------------ | ------------- | ------------- | -------------
**test_id** | **List[str]** | Filter by test | [optional] **test_id** | **List[str]** | Filter by test | [optional]
**agent_id** | **List[str]** | Filter using the `agent-id`. | [optional] **agent_id** | **List[str]** | Filter using the `agent-id`. | [optional]
**user_principal_name** | **List[str]** | Filters results based on an array of `userPrincipalName` values. | [optional]
## Example ## Example

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**avg_latency** | **float** | Average RTT for packets sent to destination. | [optional] [readonly] **avg_latency** | **float** | Average RTT for packets sent to destination. | [optional] [readonly]
**error_details** | **str** | Error details, if an error was encountered. | [optional] [readonly] **error_details** | **str** | Error details, if an error was encountered. | [optional] [readonly]

View File

@ -10,7 +10,7 @@ Method | HTTP request | Description
# **filter_dynamic_test_network_results** # **filter_dynamic_test_network_results**
> NetworkDynamicEndpointTestResults filter_dynamic_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search) > NetworkDynamicEndpointTestResults filter_dynamic_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, expand=expand, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search)
Retrieve network dynamic test results Retrieve network dynamic test results
@ -23,6 +23,7 @@ Returns network metrics (`loss`, `latency`, `jitter` and `bandwidth`) from each
```python ```python
import thousandeyes_sdk.endpoint_test_results import thousandeyes_sdk.endpoint_test_results
from thousandeyes_sdk.endpoint_test_results.models.dynamic_endpoint_tests_data_round_search import DynamicEndpointTestsDataRoundSearch from thousandeyes_sdk.endpoint_test_results.models.dynamic_endpoint_tests_data_round_search import DynamicEndpointTestsDataRoundSearch
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_dynamic_network_options import ExpandEndpointDynamicNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.network_dynamic_endpoint_test_results import NetworkDynamicEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.network_dynamic_endpoint_test_results import NetworkDynamicEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.rest import ApiException from thousandeyes_sdk.endpoint_test_results.rest import ApiException
from pprint import pprint from pprint import pprint
@ -53,11 +54,12 @@ with thousandeyes_sdk.core.ApiClient(configuration) as api_client:
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) 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) 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)
cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional) cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional)
expand = [thousandeyes_sdk.endpoint_test_results.ExpandEndpointDynamicNetworkOptions()] # List[ExpandEndpointDynamicNetworkOptions] | This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. (optional)
dynamic_endpoint_tests_data_round_search = thousandeyes_sdk.endpoint_test_results.DynamicEndpointTestsDataRoundSearch() # DynamicEndpointTestsDataRoundSearch | Tests data search filters. (optional) dynamic_endpoint_tests_data_round_search = thousandeyes_sdk.endpoint_test_results.DynamicEndpointTestsDataRoundSearch() # DynamicEndpointTestsDataRoundSearch | Tests data search filters. (optional)
try: try:
# Retrieve network dynamic test results # Retrieve network dynamic test results
api_response = api_instance.filter_dynamic_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search) api_response = api_instance.filter_dynamic_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, expand=expand, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search)
print("The response of NetworkDynamicEndpointTestResultsApi->filter_dynamic_test_network_results:\n") print("The response of NetworkDynamicEndpointTestResultsApi->filter_dynamic_test_network_results:\n")
pprint(api_response) pprint(api_response)
except Exception as e: except Exception as e:
@ -77,6 +79,7 @@ Name | Type | Description | Notes
**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] **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] **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]
**cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional] **cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional]
**expand** | [**List[ExpandEndpointDynamicNetworkOptions]**](ExpandEndpointDynamicNetworkOptions.md)| This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. | [optional]
**dynamic_endpoint_tests_data_round_search** | [**DynamicEndpointTestsDataRoundSearch**](DynamicEndpointTestsDataRoundSearch.md)| Tests data search filters. | [optional] **dynamic_endpoint_tests_data_round_search** | [**DynamicEndpointTestsDataRoundSearch**](DynamicEndpointTestsDataRoundSearch.md)| Tests data search filters. | [optional]
### Return type ### Return type

View File

@ -11,7 +11,7 @@ Method | HTTP request | Description
# **filter_scheduled_test_network_results** # **filter_scheduled_test_network_results**
> NetworkEndpointTestResults filter_scheduled_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search) > NetworkEndpointTestResults filter_scheduled_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, expand=expand, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search)
Retrieve network scheduled test results Retrieve network scheduled test results
@ -24,6 +24,7 @@ Returns network metrics (loss, latency, and jitter) from each endpoint agent, fo
```python ```python
import thousandeyes_sdk.endpoint_test_results import thousandeyes_sdk.endpoint_test_results
from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_rounds_search import EndpointTestsDataRoundsSearch from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_rounds_search import EndpointTestsDataRoundsSearch
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_network_options import ExpandEndpointNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.network_endpoint_test_results import NetworkEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.network_endpoint_test_results import NetworkEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.rest import ApiException from thousandeyes_sdk.endpoint_test_results.rest import ApiException
from pprint import pprint from pprint import pprint
@ -54,11 +55,12 @@ with thousandeyes_sdk.core.ApiClient(configuration) as api_client:
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) 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) 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)
cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional) cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional)
expand = [thousandeyes_sdk.endpoint_test_results.ExpandEndpointNetworkOptions()] # List[ExpandEndpointNetworkOptions] | This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. (optional)
endpoint_tests_data_rounds_search = thousandeyes_sdk.endpoint_test_results.EndpointTestsDataRoundsSearch() # EndpointTestsDataRoundsSearch | Tests data search filters. (optional) endpoint_tests_data_rounds_search = thousandeyes_sdk.endpoint_test_results.EndpointTestsDataRoundsSearch() # EndpointTestsDataRoundsSearch | Tests data search filters. (optional)
try: try:
# Retrieve network scheduled test results # Retrieve network scheduled test results
api_response = api_instance.filter_scheduled_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search) api_response = api_instance.filter_scheduled_test_network_results(test_id, aid=aid, window=window, start_date=start_date, end_date=end_date, cursor=cursor, expand=expand, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search)
print("The response of NetworkEndpointScheduledTestResultsApi->filter_scheduled_test_network_results:\n") print("The response of NetworkEndpointScheduledTestResultsApi->filter_scheduled_test_network_results:\n")
pprint(api_response) pprint(api_response)
except Exception as e: except Exception as e:
@ -78,6 +80,7 @@ Name | Type | Description | Notes
**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] **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] **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]
**cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional] **cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional]
**expand** | [**List[ExpandEndpointNetworkOptions]**](ExpandEndpointNetworkOptions.md)| This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. | [optional]
**endpoint_tests_data_rounds_search** | [**EndpointTestsDataRoundsSearch**](EndpointTestsDataRoundsSearch.md)| Tests data search filters. | [optional] **endpoint_tests_data_rounds_search** | [**EndpointTestsDataRoundsSearch**](EndpointTestsDataRoundsSearch.md)| Tests data search filters. | [optional]
### Return type ### Return type
@ -108,7 +111,7 @@ Name | Type | Description | Notes
[[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) [[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)
# **filter_scheduled_tests_network_results** # **filter_scheduled_tests_network_results**
> MultiTestIdNetworkEndpointTestResults filter_scheduled_tests_network_results(aid=aid, window=window, start_date=start_date, end_date=end_date, max=max, cursor=cursor, use_all_permitted_aids=use_all_permitted_aids, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search) > MultiTestIdNetworkEndpointTestResults filter_scheduled_tests_network_results(aid=aid, window=window, start_date=start_date, end_date=end_date, max=max, cursor=cursor, use_all_permitted_aids=use_all_permitted_aids, expand=expand, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search)
Retrieve network scheduled test results from multiple tests Retrieve network scheduled test results from multiple tests
@ -120,6 +123,7 @@ Returns network metrics, including loss, latency, and jitter, for multiple test
```python ```python
import thousandeyes_sdk.endpoint_test_results import thousandeyes_sdk.endpoint_test_results
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_network_options import ExpandEndpointNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_endpoint_tests_data_rounds_search import MultiTestIdEndpointTestsDataRoundsSearch from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_endpoint_tests_data_rounds_search import MultiTestIdEndpointTestsDataRoundsSearch
from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_network_endpoint_test_results import MultiTestIdNetworkEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_network_endpoint_test_results import MultiTestIdNetworkEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.rest import ApiException from thousandeyes_sdk.endpoint_test_results.rest import ApiException
@ -152,11 +156,12 @@ with thousandeyes_sdk.core.ApiClient(configuration) as api_client:
max = 5 # int | (Optional) Maximum number of objects to return. (optional) max = 5 # int | (Optional) Maximum number of objects to return. (optional)
cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional) cursor = 'cursor_example' # str | (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. (optional)
use_all_permitted_aids = False # bool | Set to `true` to load data from all accounts the user has access to. (optional) (default to False) use_all_permitted_aids = False # bool | Set to `true` to load data from all accounts the user has access to. (optional) (default to False)
expand = [thousandeyes_sdk.endpoint_test_results.ExpandEndpointNetworkOptions()] # List[ExpandEndpointNetworkOptions] | This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. (optional)
multi_test_id_endpoint_tests_data_rounds_search = thousandeyes_sdk.endpoint_test_results.MultiTestIdEndpointTestsDataRoundsSearch() # MultiTestIdEndpointTestsDataRoundsSearch | Test data search filters. (optional) multi_test_id_endpoint_tests_data_rounds_search = thousandeyes_sdk.endpoint_test_results.MultiTestIdEndpointTestsDataRoundsSearch() # MultiTestIdEndpointTestsDataRoundsSearch | Test data search filters. (optional)
try: try:
# Retrieve network scheduled test results from multiple tests # Retrieve network scheduled test results from multiple tests
api_response = api_instance.filter_scheduled_tests_network_results(aid=aid, window=window, start_date=start_date, end_date=end_date, max=max, cursor=cursor, use_all_permitted_aids=use_all_permitted_aids, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search) api_response = api_instance.filter_scheduled_tests_network_results(aid=aid, window=window, start_date=start_date, end_date=end_date, max=max, cursor=cursor, use_all_permitted_aids=use_all_permitted_aids, expand=expand, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search)
print("The response of NetworkEndpointScheduledTestResultsApi->filter_scheduled_tests_network_results:\n") print("The response of NetworkEndpointScheduledTestResultsApi->filter_scheduled_tests_network_results:\n")
pprint(api_response) pprint(api_response)
except Exception as e: except Exception as e:
@ -177,6 +182,7 @@ Name | Type | Description | Notes
**max** | **int**| (Optional) Maximum number of objects to return. | [optional] **max** | **int**| (Optional) Maximum number of objects to return. | [optional]
**cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional] **cursor** | **str**| (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. | [optional]
**use_all_permitted_aids** | **bool**| Set to `true` to load data from all accounts the user has access to. | [optional] [default to False] **use_all_permitted_aids** | **bool**| Set to `true` to load data from all accounts the user has access to. | [optional] [default to False]
**expand** | [**List[ExpandEndpointNetworkOptions]**](ExpandEndpointNetworkOptions.md)| This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query. | [optional]
**multi_test_id_endpoint_tests_data_rounds_search** | [**MultiTestIdEndpointTestsDataRoundsSearch**](MultiTestIdEndpointTestsDataRoundsSearch.md)| Test data search filters. | [optional] **multi_test_id_endpoint_tests_data_rounds_search** | [**MultiTestIdEndpointTestsDataRoundsSearch**](MultiTestIdEndpointTestsDataRoundsSearch.md)| Test data search filters. | [optional]
### Return type ### Return type

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**avg_latency** | **float** | Average RTT for packets sent to destination. | [optional] [readonly] **avg_latency** | **float** | Average RTT for packets sent to destination. | [optional] [readonly]
**error_details** | **str** | Error details, if an error was encountered. | [optional] [readonly] **error_details** | **str** | Error details, if an error was encountered. | [optional] [readonly]

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] **asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional]
**server** | **str** | Target server, including port. | [optional] [readonly] **server** | **str** | Target server, including port. | [optional] [readonly]

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] **asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional]
**server** | **str** | Target server, including port. | [optional] [readonly] **server** | **str** | Target server, including port. | [optional] [readonly]

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] **asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional]
**server** | **str** | Target server, including port. | [optional] [readonly] **server** | **str** | Target server, including port. | [optional] [readonly]

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] **asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional]
**server** | **str** | Target server, including port. | [optional] [readonly] **server** | **str** | Target server, including port. | [optional] [readonly]

View File

@ -13,6 +13,7 @@ Name | Type | Description | Notes
**network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional] **network_profile** | [**NetworkProfile**](NetworkProfile.md) | | [optional]
**system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional] **system_metrics** | [**SystemMetrics**](SystemMetrics.md) | | [optional]
**original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional] **original_target_profile** | [**TargetProfile**](TargetProfile.md) | | [optional]
**user_profile** | [**UserProfile**](UserProfile.md) | | [optional]
**vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional] **vpn_profile** | [**VpnProfile**](VpnProfile.md) | | [optional]
**asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional] **asn_details** | [**AsnDetails**](AsnDetails.md) | | [optional]
**server** | **str** | Target server, including port. | [optional] [readonly] **server** | **str** | Target server, including port. | [optional] [readonly]

View File

@ -1,6 +1,6 @@
# TestSslVersionId # TestSslVersionId
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
## Properties ## Properties

View File

@ -0,0 +1,31 @@
# UserProfile
Details of the logged-in user, including username and user principal name.
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**user_name** | **str** | Machine username of the logged-in user. | [optional]
**user_principal_name** | **str** | User login name in Internet-style format, typically used in Active Directory environments. | [optional]
## Example
```python
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
# TODO update the JSON string below
json = "{}"
# create an instance of UserProfile from a JSON string
user_profile_instance = UserProfile.from_json(json)
# print the JSON string representation of the object
print(UserProfile.to_json())
# convert the object into a dict
user_profile_dict = user_profile_instance.to_dict()
# create an instance of UserProfile from a dict
user_profile_from_dict = UserProfile.from_dict(user_profile_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)

View File

@ -76,7 +76,9 @@ from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_threshold
from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_metrics import EndpointZtaMetrics from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_metrics import EndpointZtaMetrics
from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_segment_type import EndpointZtaSegmentType from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_segment_type import EndpointZtaSegmentType
from thousandeyes_sdk.endpoint_test_results.models.error import Error from thousandeyes_sdk.endpoint_test_results.models.error import Error
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_dynamic_network_options import ExpandEndpointDynamicNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_http_server_options import ExpandEndpointHttpServerOptions from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_http_server_options import ExpandEndpointHttpServerOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_network_options import ExpandEndpointNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_local_network_topology_options import ExpandLocalNetworkTopologyOptions from thousandeyes_sdk.endpoint_test_results.models.expand_local_network_topology_options import ExpandLocalNetworkTopologyOptions
from thousandeyes_sdk.endpoint_test_results.models.gateway_network_ping import GatewayNetworkPing from thousandeyes_sdk.endpoint_test_results.models.gateway_network_ping import GatewayNetworkPing
from thousandeyes_sdk.endpoint_test_results.models.hop import Hop from thousandeyes_sdk.endpoint_test_results.models.hop import Hop
@ -169,6 +171,7 @@ from thousandeyes_sdk.endpoint_test_results.models.trigger import Trigger
from thousandeyes_sdk.endpoint_test_results.models.udp_path_trace_mode_response import UdpPathTraceModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_path_trace_mode_response import UdpPathTraceModeResponse
from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.unauthorized_error import UnauthorizedError from thousandeyes_sdk.endpoint_test_results.models.unauthorized_error import UnauthorizedError
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.validation_error import ValidationError from thousandeyes_sdk.endpoint_test_results.models.validation_error import ValidationError
from thousandeyes_sdk.endpoint_test_results.models.validation_error_item import ValidationErrorItem from thousandeyes_sdk.endpoint_test_results.models.validation_error_item import ValidationErrorItem
from thousandeyes_sdk.endpoint_test_results.models.vpn_network_ping import VpnNetworkPing from thousandeyes_sdk.endpoint_test_results.models.vpn_network_ping import VpnNetworkPing

View File

@ -20,9 +20,10 @@ import thousandeyes_sdk.endpoint_test_results.models
from datetime import datetime from datetime import datetime
from pydantic import Field, StrictStr, field_validator from pydantic import Field, StrictStr, field_validator
from typing import Optional from typing import List, Optional
from typing_extensions import Annotated from typing_extensions import Annotated
from thousandeyes_sdk.endpoint_test_results.models.dynamic_endpoint_tests_data_round_search import DynamicEndpointTestsDataRoundSearch from thousandeyes_sdk.endpoint_test_results.models.dynamic_endpoint_tests_data_round_search import DynamicEndpointTestsDataRoundSearch
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_dynamic_network_options import ExpandEndpointDynamicNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.network_dynamic_endpoint_test_results import NetworkDynamicEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.network_dynamic_endpoint_test_results import NetworkDynamicEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.models.path_vis_detail_dynamic_endpoint_test_results import PathVisDetailDynamicEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.path_vis_detail_dynamic_endpoint_test_results import PathVisDetailDynamicEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.models.path_vis_dynamic_endpoint_test_results import PathVisDynamicEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.path_vis_dynamic_endpoint_test_results import PathVisDynamicEndpointTestResults
@ -55,6 +56,7 @@ class NetworkDynamicEndpointTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointDynamicNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None, dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -85,6 +87,8 @@ class NetworkDynamicEndpointTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointDynamicNetworkOptions]
:param dynamic_endpoint_tests_data_round_search: Tests data search filters. :param dynamic_endpoint_tests_data_round_search: Tests data search filters.
:type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch :type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -116,6 +120,7 @@ class NetworkDynamicEndpointTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -153,6 +158,7 @@ class NetworkDynamicEndpointTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointDynamicNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None, dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -183,6 +189,8 @@ class NetworkDynamicEndpointTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointDynamicNetworkOptions]
:param dynamic_endpoint_tests_data_round_search: Tests data search filters. :param dynamic_endpoint_tests_data_round_search: Tests data search filters.
:type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch :type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -214,6 +222,7 @@ class NetworkDynamicEndpointTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -251,6 +260,7 @@ class NetworkDynamicEndpointTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointDynamicNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None, dynamic_endpoint_tests_data_round_search: Annotated[Optional[DynamicEndpointTestsDataRoundSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -281,6 +291,8 @@ class NetworkDynamicEndpointTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointDynamicNetworkOptions]
:param dynamic_endpoint_tests_data_round_search: Tests data search filters. :param dynamic_endpoint_tests_data_round_search: Tests data search filters.
:type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch :type dynamic_endpoint_tests_data_round_search: DynamicEndpointTestsDataRoundSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -312,6 +324,7 @@ class NetworkDynamicEndpointTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search, dynamic_endpoint_tests_data_round_search=dynamic_endpoint_tests_data_round_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -343,6 +356,7 @@ class NetworkDynamicEndpointTestResultsApi:
start_date, start_date,
end_date, end_date,
cursor, cursor,
expand,
dynamic_endpoint_tests_data_round_search, dynamic_endpoint_tests_data_round_search,
_request_auth, _request_auth,
_content_type, _content_type,
@ -353,6 +367,7 @@ class NetworkDynamicEndpointTestResultsApi:
_host = None _host = None
_collection_formats: Dict[str, str] = { _collection_formats: Dict[str, str] = {
'expand': 'csv',
} }
_path_params: Dict[str, str] = {} _path_params: Dict[str, str] = {}
@ -404,6 +419,10 @@ class NetworkDynamicEndpointTestResultsApi:
_query_params.append(('cursor', cursor)) _query_params.append(('cursor', cursor))
if expand is not None:
_query_params.append(('expand', expand))
# process the header parameters # process the header parameters
# process the form parameters # process the form parameters
# process the body parameter # process the body parameter

View File

@ -20,9 +20,10 @@ import thousandeyes_sdk.endpoint_test_results.models
from datetime import datetime from datetime import datetime
from pydantic import Field, StrictBool, StrictInt, StrictStr, field_validator from pydantic import Field, StrictBool, StrictInt, StrictStr, field_validator
from typing import Optional from typing import List, Optional
from typing_extensions import Annotated from typing_extensions import Annotated
from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_rounds_search import EndpointTestsDataRoundsSearch from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_rounds_search import EndpointTestsDataRoundsSearch
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_network_options import ExpandEndpointNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_endpoint_tests_data_rounds_search import MultiTestIdEndpointTestsDataRoundsSearch from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_endpoint_tests_data_rounds_search import MultiTestIdEndpointTestsDataRoundsSearch
from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_network_endpoint_test_results import MultiTestIdNetworkEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.multi_test_id_network_endpoint_test_results import MultiTestIdNetworkEndpointTestResults
from thousandeyes_sdk.endpoint_test_results.models.network_endpoint_test_results import NetworkEndpointTestResults from thousandeyes_sdk.endpoint_test_results.models.network_endpoint_test_results import NetworkEndpointTestResults
@ -57,6 +58,7 @@ class NetworkEndpointScheduledTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None, endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -87,6 +89,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param endpoint_tests_data_rounds_search: Tests data search filters. :param endpoint_tests_data_rounds_search: Tests data search filters.
:type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch :type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -118,6 +122,7 @@ class NetworkEndpointScheduledTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -155,6 +160,7 @@ class NetworkEndpointScheduledTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None, endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -185,6 +191,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param endpoint_tests_data_rounds_search: Tests data search filters. :param endpoint_tests_data_rounds_search: Tests data search filters.
:type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch :type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -216,6 +224,7 @@ class NetworkEndpointScheduledTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -253,6 +262,7 @@ class NetworkEndpointScheduledTestResultsApi:
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, 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, 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,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None, endpoint_tests_data_rounds_search: Annotated[Optional[EndpointTestsDataRoundsSearch], Field(description="Tests data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -283,6 +293,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type end_date: datetime :type end_date: datetime
:param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter. :param cursor: (Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.
:type cursor: str :type cursor: str
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param endpoint_tests_data_rounds_search: Tests data search filters. :param endpoint_tests_data_rounds_search: Tests data search filters.
:type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch :type endpoint_tests_data_rounds_search: EndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -314,6 +326,7 @@ class NetworkEndpointScheduledTestResultsApi:
start_date=start_date, start_date=start_date,
end_date=end_date, end_date=end_date,
cursor=cursor, cursor=cursor,
expand=expand,
endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search, endpoint_tests_data_rounds_search=endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -345,6 +358,7 @@ class NetworkEndpointScheduledTestResultsApi:
start_date, start_date,
end_date, end_date,
cursor, cursor,
expand,
endpoint_tests_data_rounds_search, endpoint_tests_data_rounds_search,
_request_auth, _request_auth,
_content_type, _content_type,
@ -355,6 +369,7 @@ class NetworkEndpointScheduledTestResultsApi:
_host = None _host = None
_collection_formats: Dict[str, str] = { _collection_formats: Dict[str, str] = {
'expand': 'csv',
} }
_path_params: Dict[str, str] = {} _path_params: Dict[str, str] = {}
@ -406,6 +421,10 @@ class NetworkEndpointScheduledTestResultsApi:
_query_params.append(('cursor', cursor)) _query_params.append(('cursor', cursor))
if expand is not None:
_query_params.append(('expand', expand))
# process the header parameters # process the header parameters
# process the form parameters # process the form parameters
# process the body parameter # process the body parameter
@ -469,6 +488,7 @@ class NetworkEndpointScheduledTestResultsApi:
max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None, max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None, use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None, multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -501,6 +521,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type cursor: str :type cursor: str
:param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to. :param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to.
:type use_all_permitted_aids: bool :type use_all_permitted_aids: bool
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters. :param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters.
:type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch :type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -533,6 +555,7 @@ class NetworkEndpointScheduledTestResultsApi:
max=max, max=max,
cursor=cursor, cursor=cursor,
use_all_permitted_aids=use_all_permitted_aids, use_all_permitted_aids=use_all_permitted_aids,
expand=expand,
multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -571,6 +594,7 @@ class NetworkEndpointScheduledTestResultsApi:
max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None, max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None, use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None, multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -603,6 +627,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type cursor: str :type cursor: str
:param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to. :param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to.
:type use_all_permitted_aids: bool :type use_all_permitted_aids: bool
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters. :param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters.
:type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch :type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -635,6 +661,7 @@ class NetworkEndpointScheduledTestResultsApi:
max=max, max=max,
cursor=cursor, cursor=cursor,
use_all_permitted_aids=use_all_permitted_aids, use_all_permitted_aids=use_all_permitted_aids,
expand=expand,
multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -673,6 +700,7 @@ class NetworkEndpointScheduledTestResultsApi:
max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None, max: Annotated[Optional[StrictInt], Field(description="(Optional) Maximum number of objects to return.")] = None,
cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None, cursor: Annotated[Optional[StrictStr], Field(description="(Optional) Opaque cursor used for pagination. Clients should use `next` value from `_links` instead of this parameter.")] = None,
use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None, use_all_permitted_aids: Annotated[Optional[StrictBool], Field(description="Set to `true` to load data from all accounts the user has access to.")] = None,
expand: Annotated[Optional[List[ExpandEndpointNetworkOptions]], Field(description="This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.")] = None,
multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None, multi_test_id_endpoint_tests_data_rounds_search: Annotated[Optional[MultiTestIdEndpointTestsDataRoundsSearch], Field(description="Test data search filters.")] = None,
_request_timeout: Union[ _request_timeout: Union[
None, None,
@ -705,6 +733,8 @@ class NetworkEndpointScheduledTestResultsApi:
:type cursor: str :type cursor: str
:param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to. :param use_all_permitted_aids: Set to `true` to load data from all accounts the user has access to.
:type use_all_permitted_aids: bool :type use_all_permitted_aids: bool
:param expand: This parameter is optional and determines whether to expand resources related to test results. By default, no expansion occurs when this query parameter is omitted. To expand a specific resource, such as \"user-profile,\" append `?expand=user-profile` to the query.
:type expand: List[ExpandEndpointNetworkOptions]
:param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters. :param multi_test_id_endpoint_tests_data_rounds_search: Test data search filters.
:type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch :type multi_test_id_endpoint_tests_data_rounds_search: MultiTestIdEndpointTestsDataRoundsSearch
:param _request_timeout: timeout setting for this request. If one :param _request_timeout: timeout setting for this request. If one
@ -737,6 +767,7 @@ class NetworkEndpointScheduledTestResultsApi:
max=max, max=max,
cursor=cursor, cursor=cursor,
use_all_permitted_aids=use_all_permitted_aids, use_all_permitted_aids=use_all_permitted_aids,
expand=expand,
multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search, multi_test_id_endpoint_tests_data_rounds_search=multi_test_id_endpoint_tests_data_rounds_search,
_request_auth=_request_auth, _request_auth=_request_auth,
_content_type=_content_type, _content_type=_content_type,
@ -769,6 +800,7 @@ class NetworkEndpointScheduledTestResultsApi:
max, max,
cursor, cursor,
use_all_permitted_aids, use_all_permitted_aids,
expand,
multi_test_id_endpoint_tests_data_rounds_search, multi_test_id_endpoint_tests_data_rounds_search,
_request_auth, _request_auth,
_content_type, _content_type,
@ -779,6 +811,7 @@ class NetworkEndpointScheduledTestResultsApi:
_host = None _host = None
_collection_formats: Dict[str, str] = { _collection_formats: Dict[str, str] = {
'expand': 'csv',
} }
_path_params: Dict[str, str] = {} _path_params: Dict[str, str] = {}
@ -836,6 +869,10 @@ class NetworkEndpointScheduledTestResultsApi:
_query_params.append(('useAllPermittedAids', use_all_permitted_aids)) _query_params.append(('useAllPermittedAids', use_all_permitted_aids))
if expand is not None:
_query_params.append(('expand', expand))
# process the header parameters # process the header parameters
# process the form parameters # process the form parameters
# process the body parameter # process the body parameter

View File

@ -67,7 +67,9 @@ from thousandeyes_sdk.endpoint_test_results.models.endpoint_tests_data_threshold
from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_metrics import EndpointZtaMetrics from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_metrics import EndpointZtaMetrics
from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_segment_type import EndpointZtaSegmentType from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_segment_type import EndpointZtaSegmentType
from thousandeyes_sdk.endpoint_test_results.models.error import Error from thousandeyes_sdk.endpoint_test_results.models.error import Error
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_dynamic_network_options import ExpandEndpointDynamicNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_http_server_options import ExpandEndpointHttpServerOptions from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_http_server_options import ExpandEndpointHttpServerOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_endpoint_network_options import ExpandEndpointNetworkOptions
from thousandeyes_sdk.endpoint_test_results.models.expand_local_network_topology_options import ExpandLocalNetworkTopologyOptions from thousandeyes_sdk.endpoint_test_results.models.expand_local_network_topology_options import ExpandLocalNetworkTopologyOptions
from thousandeyes_sdk.endpoint_test_results.models.gateway_network_ping import GatewayNetworkPing from thousandeyes_sdk.endpoint_test_results.models.gateway_network_ping import GatewayNetworkPing
from thousandeyes_sdk.endpoint_test_results.models.hop import Hop from thousandeyes_sdk.endpoint_test_results.models.hop import Hop
@ -160,6 +162,7 @@ from thousandeyes_sdk.endpoint_test_results.models.trigger import Trigger
from thousandeyes_sdk.endpoint_test_results.models.udp_path_trace_mode_response import UdpPathTraceModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_path_trace_mode_response import UdpPathTraceModeResponse
from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.unauthorized_error import UnauthorizedError from thousandeyes_sdk.endpoint_test_results.models.unauthorized_error import UnauthorizedError
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.validation_error import ValidationError from thousandeyes_sdk.endpoint_test_results.models.validation_error import ValidationError
from thousandeyes_sdk.endpoint_test_results.models.validation_error_item import ValidationErrorItem from thousandeyes_sdk.endpoint_test_results.models.validation_error_item import ValidationErrorItem
from thousandeyes_sdk.endpoint_test_results.models.vpn_network_ping import VpnNetworkPing from thousandeyes_sdk.endpoint_test_results.models.vpn_network_ping import VpnNetworkPing

View File

@ -26,8 +26,9 @@ class DynamicEndpointTestsDataSearchFilter(BaseModel):
DynamicEndpointTestsDataSearchFilter DynamicEndpointTestsDataSearchFilter
""" # noqa: E501 """ # noqa: E501
agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId") agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId")
user_principal_name: Optional[List[StrictStr]] = Field(default=None, description="Filters results based on an array of `userPrincipalName` values.", alias="userPrincipalName")
webex_conference_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `conference-id` of the webex call.", alias="webexConferenceId") webex_conference_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `conference-id` of the webex call.", alias="webexConferenceId")
__properties: ClassVar[List[str]] = ["agentId", "webexConferenceId"] __properties: ClassVar[List[str]] = ["agentId", "userPrincipalName", "webexConferenceId"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -82,6 +83,7 @@ class DynamicEndpointTestsDataSearchFilter(BaseModel):
_obj = cls.model_validate({ _obj = cls.model_validate({
"agentId": obj.get("agentId"), "agentId": obj.get("agentId"),
"userPrincipalName": obj.get("userPrincipalName"),
"webexConferenceId": obj.get("webexConferenceId") "webexConferenceId": obj.get("webexConferenceId")
}) })
return _obj return _obj

View File

@ -21,6 +21,7 @@ from typing import Any, ClassVar, Dict, List, Optional
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -37,8 +38,9 @@ class EndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -97,6 +99,9 @@ class EndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -120,6 +125,7 @@ class EndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None
}) })
return _obj return _obj

View File

@ -26,7 +26,8 @@ class EndpointTestsDataSearchFilter(BaseModel):
EndpointTestsDataSearchFilter EndpointTestsDataSearchFilter
""" # noqa: E501 """ # noqa: E501
agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId") agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId")
__properties: ClassVar[List[str]] = ["agentId"] user_principal_name: Optional[List[StrictStr]] = Field(default=None, description="Filters results based on an array of `userPrincipalName` values.", alias="userPrincipalName")
__properties: ClassVar[List[str]] = ["agentId", "userPrincipalName"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -80,7 +81,8 @@ class EndpointTestsDataSearchFilter(BaseModel):
return cls.model_validate(obj) return cls.model_validate(obj)
_obj = cls.model_validate({ _obj = cls.model_validate({
"agentId": obj.get("agentId") "agentId": obj.get("agentId"),
"userPrincipalName": obj.get("userPrincipalName")
}) })
return _obj return _obj

View File

@ -0,0 +1,40 @@
# coding: utf-8
"""
Endpoint Test Results API
Retrieve results for scheduled and dynamic tests on 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 ExpandEndpointDynamicNetworkOptions(str, Enum):
"""
ExpandEndpointDynamicNetworkOptions
"""
"""
allowed enum values
"""
USER_MINUS_PROFILE = 'user-profile'
UNKNOWN = 'unknown'
@classmethod
def from_json(cls, json_str: str) -> Self:
"""Create an instance of ExpandEndpointDynamicNetworkOptions from a JSON string"""
return cls(json.loads(json_str))
@classmethod
def _missing_(cls, value):
"""Handle unknown values"""
return cls.UNKNOWN

View File

@ -26,6 +26,7 @@ class ExpandEndpointHttpServerOptions(str, Enum):
allowed enum values allowed enum values
""" """
HEADER = 'header' HEADER = 'header'
USER_MINUS_PROFILE = 'user-profile'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -0,0 +1,40 @@
# coding: utf-8
"""
Endpoint Test Results API
Retrieve results for scheduled and dynamic tests on 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 ExpandEndpointNetworkOptions(str, Enum):
"""
ExpandEndpointNetworkOptions
"""
"""
allowed enum values
"""
USER_MINUS_PROFILE = 'user-profile'
UNKNOWN = 'unknown'
@classmethod
def from_json(cls, json_str: str) -> Self:
"""Create an instance of ExpandEndpointNetworkOptions from a JSON string"""
return cls(json.loads(json_str))
@classmethod
def _missing_(cls, value):
"""Handle unknown values"""
return cls.UNKNOWN

View File

@ -26,6 +26,7 @@ class ExpandLocalNetworkTopologyOptions(str, Enum):
allowed enum values allowed enum values
""" """
SYSTEM_MINUS_METRIC_MINUS_DETAIL = 'system-metric-detail' SYSTEM_MINUS_METRIC_MINUS_DETAIL = 'system-metric-detail'
USER_MINUS_PROFILE = 'user-profile'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -24,6 +24,7 @@ from thousandeyes_sdk.endpoint_test_results.models.http_error_type import HttpEr
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -40,6 +41,7 @@ class HttpEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
score: Optional[EndpointHttpDataPointScore] = None score: Optional[EndpointHttpDataPointScore] = None
connect_time: Optional[StrictInt] = Field(default=None, description="Time required to establish a TCP connection to the server in milliseconds.", alias="connectTime") connect_time: Optional[StrictInt] = Field(default=None, description="Time required to establish a TCP connection to the server in milliseconds.", alias="connectTime")
@ -57,7 +59,7 @@ class HttpEndpointTestResult(BaseModel):
wait_time: Optional[StrictInt] = Field(default=None, description="Time elapsed between completion of request and first byte of response in milliseconds.", alias="waitTime") wait_time: Optional[StrictInt] = Field(default=None, description="Time elapsed between completion of request and first byte of response in milliseconds.", alias="waitTime")
wire_size: Optional[StrictInt] = Field(default=None, description="Size of content in bytes.", alias="wireSize") wire_size: Optional[StrictInt] = Field(default=None, description="Size of content in bytes.", alias="wireSize")
throughput: Optional[StrictInt] = Field(default=None, description="Amount of data transmitted, in bytes.") throughput: Optional[StrictInt] = Field(default=None, description="Amount of data transmitted, in bytes.")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "score", "connectTime", "dnsTime", "errorType", "errorDetails", "headers", "numRedirects", "receiveTime", "redirectTime", "responseCode", "responseTime", "sslTime", "totalTime", "waitTime", "wireSize", "throughput"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "score", "connectTime", "dnsTime", "errorType", "errorDetails", "headers", "numRedirects", "receiveTime", "redirectTime", "responseCode", "responseTime", "sslTime", "totalTime", "waitTime", "wireSize", "throughput"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -142,6 +144,9 @@ class HttpEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -171,6 +176,7 @@ class HttpEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"score": EndpointHttpDataPointScore.from_dict(obj["score"]) if obj.get("score") is not None else None, "score": EndpointHttpDataPointScore.from_dict(obj["score"]) if obj.get("score") is not None else None,
"connectTime": obj.get("connectTime"), "connectTime": obj.get("connectTime"),

View File

@ -27,7 +27,8 @@ class HttpEndpointTestsDataSearchFilter(BaseModel):
""" # noqa: E501 """ # noqa: E501
test_id: Optional[List[StrictStr]] = Field(default=None, description="Filter by test", alias="testId") test_id: Optional[List[StrictStr]] = Field(default=None, description="Filter by test", alias="testId")
agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId") agent_id: Optional[List[StrictStr]] = Field(default=None, description="Filter using the `agent-id`.", alias="agentId")
__properties: ClassVar[List[str]] = ["testId", "agentId"] user_principal_name: Optional[List[StrictStr]] = Field(default=None, description="Filters results based on an array of `userPrincipalName` values.", alias="userPrincipalName")
__properties: ClassVar[List[str]] = ["testId", "agentId", "userPrincipalName"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -82,7 +83,8 @@ class HttpEndpointTestsDataSearchFilter(BaseModel):
_obj = cls.model_validate({ _obj = cls.model_validate({
"testId": obj.get("testId"), "testId": obj.get("testId"),
"agentId": obj.get("agentId") "agentId": obj.get("agentId"),
"userPrincipalName": obj.get("userPrincipalName")
}) })
return _obj return _obj

View File

@ -27,6 +27,7 @@ from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemM
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -43,6 +44,7 @@ class NetworkDynamicEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
avg_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Average RTT for packets sent to destination.", alias="avgLatency") avg_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Average RTT for packets sent to destination.", alias="avgLatency")
error_details: Optional[StrictStr] = Field(default=None, description="Error details, if an error was encountered.", alias="errorDetails") error_details: Optional[StrictStr] = Field(default=None, description="Error details, if an error was encountered.", alias="errorDetails")
@ -58,7 +60,7 @@ class NetworkDynamicEndpointTestResult(BaseModel):
tcp_probe_mode: Optional[TestProbeModeResponse] = Field(default=None, alias="tcpProbeMode") tcp_probe_mode: Optional[TestProbeModeResponse] = Field(default=None, alias="tcpProbeMode")
udp_probe_mode: Optional[UdpProbeModeResponse] = Field(default=None, alias="udpProbeMode") udp_probe_mode: Optional[UdpProbeModeResponse] = Field(default=None, alias="udpProbeMode")
webex: Optional[DynamicEndpointTestWebex] = None webex: Optional[DynamicEndpointTestWebex] = None
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "avgLatency", "errorDetails", "jitter", "score", "ztaMetrics", "isIcmpBlocked", "loss", "maxLatency", "minLatency", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "avgLatency", "errorDetails", "jitter", "score", "ztaMetrics", "isIcmpBlocked", "loss", "maxLatency", "minLatency", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -131,6 +133,9 @@ class NetworkDynamicEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -167,6 +172,7 @@ class NetworkDynamicEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"avgLatency": obj.get("avgLatency"), "avgLatency": obj.get("avgLatency"),
"errorDetails": obj.get("errorDetails"), "errorDetails": obj.get("errorDetails"),

View File

@ -23,6 +23,7 @@ from thousandeyes_sdk.endpoint_test_results.models.endpoint_zta_metrics import E
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -39,6 +40,7 @@ class NetworkEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
avg_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Average RTT for packets sent to destination.", alias="avgLatency") avg_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Average RTT for packets sent to destination.", alias="avgLatency")
error_details: Optional[StrictStr] = Field(default=None, description="Error details, if an error was encountered.", alias="errorDetails") error_details: Optional[StrictStr] = Field(default=None, description="Error details, if an error was encountered.", alias="errorDetails")
@ -49,7 +51,7 @@ class NetworkEndpointTestResult(BaseModel):
loss: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Percentage of packets not reaching destination.") loss: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Percentage of packets not reaching destination.")
max_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Maximum RTT for packets sent to destination.", alias="maxLatency") max_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Maximum RTT for packets sent to destination.", alias="maxLatency")
min_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Minimum RTT for packets sent to destination.", alias="minLatency") min_latency: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Minimum RTT for packets sent to destination.", alias="minLatency")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "avgLatency", "errorDetails", "jitter", "score", "ztaMetrics", "isIcmpBlocked", "loss", "maxLatency", "minLatency"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "avgLatency", "errorDetails", "jitter", "score", "ztaMetrics", "isIcmpBlocked", "loss", "maxLatency", "minLatency"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -122,6 +124,9 @@ class NetworkEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -155,6 +160,7 @@ class NetworkEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"avgLatency": obj.get("avgLatency"), "avgLatency": obj.get("avgLatency"),
"errorDetails": obj.get("errorDetails"), "errorDetails": obj.get("errorDetails"),

View File

@ -22,6 +22,7 @@ from thousandeyes_sdk.endpoint_test_results.models.asn_details import AsnDetails
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -38,12 +39,13 @@ class PathVisBaseEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails")
server: Optional[StrictStr] = Field(default=None, description="Target server, including port.") server: Optional[StrictStr] = Field(default=None, description="Target server, including port.")
source_ip: Optional[StrictStr] = Field(default=None, description="IP address of source endpoint agent.", alias="sourceIp") source_ip: Optional[StrictStr] = Field(default=None, description="IP address of source endpoint agent.", alias="sourceIp")
source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix") source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -108,6 +110,9 @@ class PathVisBaseEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -134,6 +139,7 @@ class PathVisBaseEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"server": obj.get("server"), "server": obj.get("server"),

View File

@ -27,6 +27,7 @@ from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemM
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -43,6 +44,7 @@ class PathVisDetailDynamicEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails")
server: Optional[StrictStr] = Field(default=None, description="Target server, including port.") server: Optional[StrictStr] = Field(default=None, description="Target server, including port.")
@ -55,7 +57,7 @@ class PathVisDetailDynamicEndpointTestResult(BaseModel):
tcp_probe_mode: Optional[TestProbeModeResponse] = Field(default=None, alias="tcpProbeMode") tcp_probe_mode: Optional[TestProbeModeResponse] = Field(default=None, alias="tcpProbeMode")
udp_probe_mode: Optional[UdpProbeModeResponse] = Field(default=None, alias="udpProbeMode") udp_probe_mode: Optional[UdpProbeModeResponse] = Field(default=None, alias="udpProbeMode")
webex: Optional[DynamicEndpointTestWebex] = None webex: Optional[DynamicEndpointTestWebex] = None
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "pathTraces", "vpnPathTraces", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "pathTraces", "vpnPathTraces", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -120,6 +122,9 @@ class PathVisDetailDynamicEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -163,6 +168,7 @@ class PathVisDetailDynamicEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"server": obj.get("server"), "server": obj.get("server"),

View File

@ -23,6 +23,7 @@ from thousandeyes_sdk.endpoint_test_results.models.endpoint_path_vis_route impor
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -39,6 +40,7 @@ class PathVisDetailEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails")
server: Optional[StrictStr] = Field(default=None, description="Target server, including port.") server: Optional[StrictStr] = Field(default=None, description="Target server, including port.")
@ -46,7 +48,7 @@ class PathVisDetailEndpointTestResult(BaseModel):
source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix") source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix")
path_traces: Optional[List[EndpointPathVisRoute]] = Field(default=None, description="Shows iterations of path trace, with each iteration specified by a pathId.", alias="pathTraces") path_traces: Optional[List[EndpointPathVisRoute]] = Field(default=None, description="Shows iterations of path trace, with each iteration specified by a pathId.", alias="pathTraces")
vpn_path_traces: Optional[List[EndpointPathVisRoute]] = Field(default=None, description="Shows iterations of the VPN path trace, with each iteration specified by a pathId.", alias="vpnPathTraces") vpn_path_traces: Optional[List[EndpointPathVisRoute]] = Field(default=None, description="Shows iterations of the VPN path trace, with each iteration specified by a pathId.", alias="vpnPathTraces")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "pathTraces", "vpnPathTraces"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "pathTraces", "vpnPathTraces"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -111,6 +113,9 @@ class PathVisDetailEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -151,6 +156,7 @@ class PathVisDetailEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"server": obj.get("server"), "server": obj.get("server"),

View File

@ -27,6 +27,7 @@ from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemM
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.test_probe_mode_response import TestProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse from thousandeyes_sdk.endpoint_test_results.models.udp_probe_mode_response import UdpProbeModeResponse
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -43,6 +44,7 @@ class PathVisDynamicEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails")
server: Optional[StrictStr] = Field(default=None, description="Target server, including port.") server: Optional[StrictStr] = Field(default=None, description="Target server, including port.")
@ -55,7 +57,7 @@ class PathVisDynamicEndpointTestResult(BaseModel):
webex: Optional[DynamicEndpointTestWebex] = None webex: Optional[DynamicEndpointTestWebex] = None
location: Optional[StrictStr] = Field(default=None, description="Geographic location of the path visualization.") location: Optional[StrictStr] = Field(default=None, description="Geographic location of the path visualization.")
path_traces: Optional[List[EndpointPathTrace]] = Field(default=None, description="Shows an iteration of path trace, with each iteration specified by a pathId.", alias="pathTraces") path_traces: Optional[List[EndpointPathTrace]] = Field(default=None, description="Shows an iteration of path trace, with each iteration specified by a pathId.", alias="pathTraces")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex", "location", "pathTraces"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "application", "protocol", "tcpProbeMode", "udpProbeMode", "webex", "location", "pathTraces"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -122,6 +124,9 @@ class PathVisDynamicEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -158,6 +163,7 @@ class PathVisDynamicEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"server": obj.get("server"), "server": obj.get("server"),

View File

@ -23,6 +23,7 @@ from thousandeyes_sdk.endpoint_test_results.models.endpoint_path_trace import En
from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile from thousandeyes_sdk.endpoint_test_results.models.network_profile import NetworkProfile
from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics from thousandeyes_sdk.endpoint_test_results.models.system_metrics import SystemMetrics
from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile from thousandeyes_sdk.endpoint_test_results.models.target_profile import TargetProfile
from thousandeyes_sdk.endpoint_test_results.models.user_profile import UserProfile
from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile from thousandeyes_sdk.endpoint_test_results.models.vpn_profile import VpnProfile
from typing import Optional, Set from typing import Optional, Set
from typing_extensions import Self from typing_extensions import Self
@ -39,6 +40,7 @@ class PathVisEndpointTestResult(BaseModel):
network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile") network_profile: Optional[NetworkProfile] = Field(default=None, alias="networkProfile")
system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics") system_metrics: Optional[SystemMetrics] = Field(default=None, alias="systemMetrics")
original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile") original_target_profile: Optional[TargetProfile] = Field(default=None, alias="originalTargetProfile")
user_profile: Optional[UserProfile] = Field(default=None, alias="userProfile")
vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile") vpn_profile: Optional[VpnProfile] = Field(default=None, alias="vpnProfile")
asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails") asn_details: Optional[AsnDetails] = Field(default=None, alias="asnDetails")
server: Optional[StrictStr] = Field(default=None, description="Target server, including port.") server: Optional[StrictStr] = Field(default=None, description="Target server, including port.")
@ -46,7 +48,7 @@ class PathVisEndpointTestResult(BaseModel):
source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix") source_prefix: Optional[StrictStr] = Field(default=None, description="IP prefix of source endpoint agent.", alias="sourcePrefix")
location: Optional[StrictStr] = Field(default=None, description="Geographic location of the path visualization.") location: Optional[StrictStr] = Field(default=None, description="Geographic location of the path visualization.")
path_traces: Optional[List[EndpointPathTrace]] = Field(default=None, description="Shows an iteration of path trace, with each iteration specified by a pathId.", alias="pathTraces") path_traces: Optional[List[EndpointPathTrace]] = Field(default=None, description="Shows an iteration of path trace, with each iteration specified by a pathId.", alias="pathTraces")
__properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "location", "pathTraces"] __properties: ClassVar[List[str]] = ["aid", "testId", "agentId", "roundId", "serverIp", "networkProfile", "systemMetrics", "originalTargetProfile", "userProfile", "vpnProfile", "asnDetails", "server", "sourceIp", "sourcePrefix", "location", "pathTraces"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -113,6 +115,9 @@ class PathVisEndpointTestResult(BaseModel):
# override the default output from pydantic by calling `to_dict()` of original_target_profile # override the default output from pydantic by calling `to_dict()` of original_target_profile
if self.original_target_profile: if self.original_target_profile:
_dict['originalTargetProfile'] = self.original_target_profile.to_dict() _dict['originalTargetProfile'] = self.original_target_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of user_profile
if self.user_profile:
_dict['userProfile'] = self.user_profile.to_dict()
# override the default output from pydantic by calling `to_dict()` of vpn_profile # override the default output from pydantic by calling `to_dict()` of vpn_profile
if self.vpn_profile: if self.vpn_profile:
_dict['vpnProfile'] = self.vpn_profile.to_dict() _dict['vpnProfile'] = self.vpn_profile.to_dict()
@ -146,6 +151,7 @@ class PathVisEndpointTestResult(BaseModel):
"networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None, "networkProfile": NetworkProfile.from_dict(obj["networkProfile"]) if obj.get("networkProfile") is not None else None,
"systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None, "systemMetrics": SystemMetrics.from_dict(obj["systemMetrics"]) if obj.get("systemMetrics") is not None else None,
"originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None, "originalTargetProfile": TargetProfile.from_dict(obj["originalTargetProfile"]) if obj.get("originalTargetProfile") is not None else None,
"userProfile": UserProfile.from_dict(obj["userProfile"]) if obj.get("userProfile") is not None else None,
"vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None, "vpnProfile": VpnProfile.from_dict(obj["vpnProfile"]) if obj.get("vpnProfile") is not None else None,
"asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None, "asnDetails": AsnDetails.from_dict(obj["asnDetails"]) if obj.get("asnDetails") is not None else None,
"server": obj.get("server"), "server": obj.get("server"),

View File

@ -19,7 +19,7 @@ from typing_extensions import Self
class TestSslVersionId(str, Enum): class TestSslVersionId(str, Enum):
""" """
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
""" """
""" """
@ -30,6 +30,7 @@ class TestSslVersionId(str, Enum):
ENUM_4 = '4' ENUM_4 = '4'
ENUM_5 = '5' ENUM_5 = '5'
ENUM_6 = '6' ENUM_6 = '6'
ENUM_7 = '7'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -0,0 +1,89 @@
# coding: utf-8
"""
Endpoint Test Results API
Retrieve results for scheduled and dynamic tests on 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 typing import Optional, Set
from typing_extensions import Self
class UserProfile(BaseModel):
"""
Details of the logged-in user, including username and user principal name.
""" # noqa: E501
user_name: Optional[StrictStr] = Field(default=None, description="Machine username of the logged-in user.", alias="userName")
user_principal_name: Optional[StrictStr] = Field(default=None, description="User login name in Internet-style format, typically used in Active Directory environments.", alias="userPrincipalName")
__properties: ClassVar[List[str]] = ["userName", "userPrincipalName"]
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 UserProfile 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 UserProfile from a dict"""
if obj is None:
return None
if not isinstance(obj, dict):
return cls.model_validate(obj)
_obj = cls.model_validate({
"userName": obj.get("userName"),
"userPrincipalName": obj.get("userPrincipalName")
})
return _obj

View File

@ -131,6 +131,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -237,6 +241,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -349,7 +357,8 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
} ], } ],
"searchFilters" : { "searchFilters" : {
"agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ], "agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ],
"testId" : [ "5", "5" ] "testId" : [ "5", "5" ],
"userPrincipalName" : [ "joeblogs32@c.com", "joeblogs32@c.com" ]
}, },
"thresholdFilter" : { "thresholdFilter" : {
"conditionalOperator" : "and", "conditionalOperator" : "and",
@ -410,6 +419,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -516,6 +529,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -628,7 +645,8 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
} ], } ],
"searchFilters" : { "searchFilters" : {
"agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ], "agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ],
"testId" : [ "5", "5" ] "testId" : [ "5", "5" ],
"userPrincipalName" : [ "joeblogs32@c.com", "joeblogs32@c.com" ]
}, },
"thresholdFilter" : { "thresholdFilter" : {
"conditionalOperator" : "and", "conditionalOperator" : "and",
@ -689,6 +707,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -795,6 +817,10 @@ class TestHTTPServerEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"errorType" : "connect", "errorType" : "connect",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"responseCode" : 200, "responseCode" : 200,
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,

View File

@ -41,7 +41,8 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
} ], } ],
"searchFilters" : { "searchFilters" : {
"agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ], "agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ],
"webexConferenceId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ] "webexConferenceId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ],
"userPrincipalName" : [ "joeblogs32@c.com", "joeblogs32@c.com" ]
}, },
"thresholdFilter" : { "thresholdFilter" : {
"conditionalOperator" : "and", "conditionalOperator" : "and",
@ -143,6 +144,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -261,6 +266,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
@ -454,6 +463,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"protocol" : "tcp", "protocol" : "tcp",
"systemMetrics" : { "systemMetrics" : {
@ -645,6 +658,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"protocol" : "tcp", "protocol" : "tcp",
"systemMetrics" : { "systemMetrics" : {
@ -920,6 +937,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"protocol" : "tcp", "protocol" : "tcp",
"systemMetrics" : { "systemMetrics" : {
@ -1039,6 +1060,10 @@ class TestNetworkDynamicEndpointTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"tcpProbeMode" : "auto", "tcpProbeMode" : "auto",
"protocol" : "tcp", "protocol" : "tcp",
"systemMetrics" : { "systemMetrics" : {

View File

@ -40,7 +40,8 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"order" : "desc" "order" : "desc"
} ], } ],
"searchFilters" : { "searchFilters" : {
"agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ] "agentId" : [ "52455b09-ff1b-4849-8194-99026cc890e0", "52455b09-ff1b-4849-8194-99026cc890e0" ],
"userPrincipalName" : [ "joeblogs32@c.com", "joeblogs32@c.com" ]
}, },
"thresholdFilter" : { "thresholdFilter" : {
"conditionalOperator" : "and", "conditionalOperator" : "and",
@ -142,6 +143,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
"quality" : "great" "quality" : "great"
@ -250,6 +255,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
"quality" : "great" "quality" : "great"
@ -415,6 +424,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
"quality" : "great" "quality" : "great"
@ -523,6 +536,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"maxLatency" : 168.0, "maxLatency" : 168.0,
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"score" : { "score" : {
"applicationScore" : 100.0, "applicationScore" : 100.0,
"quality" : "great" "quality" : "great"
@ -707,6 +724,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"systemMetrics" : { "systemMetrics" : {
"cpuUtilization" : { "cpuUtilization" : {
"min" : 0.22, "min" : 0.22,
@ -888,6 +909,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"systemMetrics" : { "systemMetrics" : {
"cpuUtilization" : { "cpuUtilization" : {
"min" : 0.22, "min" : 0.22,
@ -1153,6 +1178,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"systemMetrics" : { "systemMetrics" : {
"cpuUtilization" : { "cpuUtilization" : {
"min" : 0.22, "min" : 0.22,
@ -1262,6 +1291,10 @@ class TestNetworkEndpointScheduledTestResultsApi(unittest.TestCase):
"vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ] "vpnClientAddresses" : [ "184.81.113.85", "13.129.91.62" ]
}, },
"sourcePrefix" : "196.40.96.0/20", "sourcePrefix" : "196.40.96.0/20",
"userProfile" : {
"userName" : "joeblogs32",
"userPrincipalName" : "joeblogs32@c.com"
},
"systemMetrics" : { "systemMetrics" : {
"cpuUtilization" : { "cpuUtilization" : {
"min" : 0.22, "min" : 0.22,

View File

@ -5,7 +5,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -1,6 +1,6 @@
# TestSslVersionId # TestSslVersionId
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
## Properties ## Properties

View File

@ -19,7 +19,7 @@ from typing_extensions import Self
class TestSslVersionId(str, Enum): class TestSslVersionId(str, Enum):
""" """
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
""" """
""" """
@ -30,6 +30,7 @@ class TestSslVersionId(str, Enum):
ENUM_4 = '4' ENUM_4 = '4'
ENUM_5 = '5' ENUM_5 = '5'
ENUM_6 = '6' ENUM_6 = '6'
ENUM_7 = '7'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -12,7 +12,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -6,7 +6,7 @@ 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: This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
- API version: 7.0.54 - API version: 7.0.57
- Generator version: 7.6.0 - Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator - Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

View File

@ -63,6 +63,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
## Example ## Example

View File

@ -63,6 +63,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
**agents** | [**List[TestAgent]**](TestAgent.md) | A list of objects with `agentId` (required) and `sourceIpAddress` (optional). | **agents** | [**List[TestAgent]**](TestAgent.md) | A list of objects with `agentId` (required) and `sourceIpAddress` (optional). |
## Example ## Example

View File

@ -63,6 +63,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
**agents** | [**List[AgentResponse]**](AgentResponse.md) | Contains list of agents. | [optional] **agents** | [**List[AgentResponse]**](AgentResponse.md) | Contains list of agents. | [optional]
## Example ## Example

View File

@ -51,6 +51,7 @@ Name | Type | Description | Notes
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**type** | **str** | | [optional] [readonly] **type** | **str** | | [optional] [readonly]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
## Example ## Example

View File

@ -1,6 +1,6 @@
# TestSslVersionId # TestSslVersionId
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
## Properties ## Properties

View File

@ -64,6 +64,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
**credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional] **credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional]
## Example ## Example

View File

@ -64,6 +64,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
**credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional] **credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional]
**agents** | [**List[TestAgent]**](TestAgent.md) | A list of objects with `agentId` (required) and `sourceIpAddress` (optional). | **agents** | [**List[TestAgent]**](TestAgent.md) | A list of objects with `agentId` (required) and `sourceIpAddress` (optional). |

View File

@ -64,6 +64,7 @@ Name | Type | Description | Notes
**browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional] **browser_language** | **str** | Set one of the available browser language that you want to use to configure the browser. | [optional]
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
**credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional] **credentials** | **List[str]** | Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint). | [optional]
**agents** | [**List[AgentResponse]**](AgentResponse.md) | Contains list of agents. | [optional] **agents** | [**List[AgentResponse]**](AgentResponse.md) | Contains list of agents. | [optional]

View File

@ -52,6 +52,7 @@ Name | Type | Description | Notes
**page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional] **page_loading_strategy** | [**TestPageLoadingStrategy**](TestPageLoadingStrategy.md) | | [optional]
**randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False] **randomized_start_time** | **bool** | Indicates whether agents should randomize the start time in each test round. | [optional] [default to False]
**type** | **str** | | [optional] [readonly] **type** | **str** | | [optional] [readonly]
**identify_agent_traffic_with_user_agent** | **bool** | Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). | [optional] [default to False]
## Example ## Example

View File

@ -97,7 +97,8 @@ class PageLoadInstantTest(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime"] identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -256,7 +257,8 @@ class PageLoadInstantTest(BaseModel):
"allowGeolocation": obj.get("allowGeolocation") if obj.get("allowGeolocation") is not None else False, "allowGeolocation": obj.get("allowGeolocation") if obj.get("allowGeolocation") is not None else False,
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False
}) })
return _obj return _obj

View File

@ -96,8 +96,9 @@ class PageLoadInstantTestRequest(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
agents: List[TestAgent] = Field(description="A list of objects with `agentId` (required) and `sourceIpAddress` (optional).") agents: List[TestAgent] = Field(description="A list of objects with `agentId` (required) and `sourceIpAddress` (optional).")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "agents"] __properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent", "agents"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -246,6 +247,7 @@ class PageLoadInstantTestRequest(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False,
"agents": [TestAgent.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None "agents": [TestAgent.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None
}) })
return _obj return _obj

View File

@ -98,8 +98,9 @@ class PageLoadInstantTestResponse(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
agents: Optional[List[AgentResponse]] = Field(default=None, description="Contains list of agents.") agents: Optional[List[AgentResponse]] = Field(default=None, description="Contains list of agents.")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "agents"] __properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent", "agents"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -266,6 +267,7 @@ class PageLoadInstantTestResponse(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False,
"agents": [AgentResponse.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None "agents": [AgentResponse.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None
}) })
return _obj return _obj

View File

@ -81,7 +81,8 @@ class PageLoadProperties(BaseModel):
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
type: Optional[StrictStr] = None type: Optional[StrictStr] = None
__properties: ClassVar[List[str]] = ["authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "type"] identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
__properties: ClassVar[List[str]] = ["authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "pageLoadTargetTime", "pageLoadTimeLimit", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "type", "identifyAgentTrafficWithUserAgent"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -193,7 +194,8 @@ class PageLoadProperties(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"type": obj.get("type") "type": obj.get("type"),
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False
}) })
return _obj return _obj

View File

@ -19,7 +19,7 @@ from typing_extensions import Self
class TestSslVersionId(str, Enum): class TestSslVersionId(str, Enum):
""" """
SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. SSL version options: * Use '0' for automatic selection. * Use '3' for SSLv3. * Use '4' for TLS v1.0. * Use '5' for TLS v1.1. * Use '6' for TLS v1.2. * Use '7' for TLS v1.3.
""" """
""" """
@ -30,6 +30,7 @@ class TestSslVersionId(str, Enum):
ENUM_4 = '4' ENUM_4 = '4'
ENUM_5 = '5' ENUM_5 = '5'
ENUM_6 = '6' ENUM_6 = '6'
ENUM_7 = '7'
UNKNOWN = 'unknown' UNKNOWN = 'unknown'
@classmethod @classmethod

View File

@ -98,8 +98,9 @@ class WebTransactionInstantTest(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).") credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "credentials"] __properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent", "credentials"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -260,6 +261,7 @@ class WebTransactionInstantTest(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False,
"credentials": obj.get("credentials") "credentials": obj.get("credentials")
}) })
return _obj return _obj

View File

@ -97,9 +97,10 @@ class WebTransactionInstantTestRequest(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).") credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).")
agents: List[TestAgent] = Field(description="A list of objects with `agentId` (required) and `sourceIpAddress` (optional).") agents: List[TestAgent] = Field(description="A list of objects with `agentId` (required) and `sourceIpAddress` (optional).")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "credentials", "agents"] __properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent", "credentials", "agents"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -249,6 +250,7 @@ class WebTransactionInstantTestRequest(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False,
"credentials": obj.get("credentials"), "credentials": obj.get("credentials"),
"agents": [TestAgent.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None "agents": [TestAgent.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None
}) })

View File

@ -99,9 +99,10 @@ class WebTransactionInstantTestResponse(BaseModel):
browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage") browser_language: Optional[StrictStr] = Field(default=None, description="Set one of the available browser language that you want to use to configure the browser.", alias="browserLanguage")
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).") credentials: Optional[List[StrictStr]] = Field(default=None, description="Contains a list of credential IDs (get `credentialId` from `/credentials` endpoint).")
agents: Optional[List[AgentResponse]] = Field(default=None, description="Contains list of agents.") agents: Optional[List[AgentResponse]] = Field(default=None, description="Contains list of agents.")
__properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "credentials", "agents"] __properties: ClassVar[List[str]] = ["createdBy", "createdDate", "description", "liveShare", "modifiedBy", "modifiedDate", "savedEvent", "testId", "testName", "type", "_links", "labels", "sharedWithAccounts", "authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "identifyAgentTrafficWithUserAgent", "credentials", "agents"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -269,6 +270,7 @@ class WebTransactionInstantTestResponse(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False,
"credentials": obj.get("credentials"), "credentials": obj.get("credentials"),
"agents": [AgentResponse.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None "agents": [AgentResponse.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None
}) })

View File

@ -82,7 +82,8 @@ class WebTransactionProperties(BaseModel):
page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy") page_loading_strategy: Optional[TestPageLoadingStrategy] = Field(default=None, alias="pageLoadingStrategy")
randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime") randomized_start_time: Optional[StrictBool] = Field(default=False, description="Indicates whether agents should randomize the start time in each test round.", alias="randomizedStartTime")
type: Optional[StrictStr] = None type: Optional[StrictStr] = None
__properties: ClassVar[List[str]] = ["authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "type"] identify_agent_traffic_with_user_agent: Optional[StrictBool] = Field(default=False, description="Determines how agent traffic is identified: * `false`: Adds the `x-thousandeyes-agent: yes` header. * `true`: Appends `(ThousandEyes Agent)` to the `user-agent` header. For more information, see [Notes on Agent ID Strategy](https://docs.thousandeyes.com/product-documentation/browser-synthetics/test-settings-page-load-transaction#notes-on-agent-id-strategy). ", alias="identifyAgentTrafficWithUserAgent")
__properties: ClassVar[List[str]] = ["authType", "agentInterfaces", "bandwidthMeasurements", "clientCertificate", "contentRegex", "customHeaders", "desiredStatusCode", "distributedTracing", "downloadLimit", "dnsOverride", "httpTargetTime", "httpTimeLimit", "httpVersion", "includeHeaders", "mtuMeasurements", "networkMeasurements", "numPathTraces", "oAuth", "password", "pathTraceMode", "probeMode", "protocol", "sslVersion", "sslVersionId", "url", "useNtlm", "userAgent", "username", "verifyCertificate", "allowUnsafeLegacyRenegotiation", "followRedirects", "fixedPacketRate", "overrideAgentProxy", "overrideProxyId", "collectProxyNetworkData", "emulatedDeviceId", "targetTime", "timeLimit", "transactionScript", "blockDomains", "disableScreenshot", "allowMicAndCamera", "allowGeolocation", "browserLanguage", "pageLoadingStrategy", "randomizedStartTime", "type", "identifyAgentTrafficWithUserAgent"]
model_config = ConfigDict( model_config = ConfigDict(
populate_by_name=True, populate_by_name=True,
@ -195,7 +196,8 @@ class WebTransactionProperties(BaseModel):
"browserLanguage": obj.get("browserLanguage"), "browserLanguage": obj.get("browserLanguage"),
"pageLoadingStrategy": obj.get("pageLoadingStrategy"), "pageLoadingStrategy": obj.get("pageLoadingStrategy"),
"randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False, "randomizedStartTime": obj.get("randomizedStartTime") if obj.get("randomizedStartTime") is not None else False,
"type": obj.get("type") "type": obj.get("type"),
"identifyAgentTrafficWithUserAgent": obj.get("identifyAgentTrafficWithUserAgent") if obj.get("identifyAgentTrafficWithUserAgent") is not None else False
}) })
return _obj return _obj

View File

@ -120,6 +120,7 @@ class TestHTTPPageLoadInstantTestsApi(unittest.TestCase):
"savedEvent" : true, "savedEvent" : true,
"userAgent" : "curl", "userAgent" : "curl",
"pageLoadTimeLimit" : 10, "pageLoadTimeLimit" : 10,
"identifyAgentTrafficWithUserAgent" : false,
"networkMeasurements" : true, "networkMeasurements" : true,
"url" : "www.thousandeyes.com", "url" : "www.thousandeyes.com",
"agents" : [ { "agents" : [ {
@ -247,6 +248,7 @@ class TestHTTPPageLoadInstantTestsApi(unittest.TestCase):
"savedEvent" : true, "savedEvent" : true,
"userAgent" : "curl", "userAgent" : "curl",
"pageLoadTimeLimit" : 10, "pageLoadTimeLimit" : 10,
"identifyAgentTrafficWithUserAgent" : false,
"networkMeasurements" : true, "networkMeasurements" : true,
"url" : "www.thousandeyes.com", "url" : "www.thousandeyes.com",
"agents" : [ { "agents" : [ {

Some files were not shown because too many files have changed in this diff Show More