# thousandeyes-sdk-emulation
**Note:** All Emulation APIs are not available for ThousandEyes for Government instance.

The Emulation API facilitates the retrieval of user-agent strings for HTTP, pageload, and transaction tests. It also enables the retrieval and addition of emulated devices for pageload and transaction tests.

To access Emulation API operations, the following permissions are required:

* `Settings Tests Read` for read operations.
* `Settings Tests Update` for write operations.


This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 7.0.96
- Generator version: 7.6.0
- Build package: com.thousandeyes.api.codegen.ThousandeyesPythonGenerator

## Requirements.

Python 3.9+

## Installation & Usage
### pip install

Install directly via PyPi:

```sh
pip install thousandeyes-sdk-emulation
```
(you may need to run `pip` with root permission: `sudo pip install thousandeyes-sdk-emulation`)

Then import the package:
```python
import thousandeyes_sdk.emulation
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import thousandeyes_sdk.emulation
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

Please follow the installation procedure and then run the following:

```python

import thousandeyes_sdk.core
import thousandeyes_sdk.emulation
from thousandeyes_sdk.core.exceptions import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.thousandeyes.com/v7
# See configuration.py for a list of all supported configuration parameters.
configuration = thousandeyes_sdk.core.Configuration(
    host = "https://api.thousandeyes.com/v7"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization: BearerAuth
configuration = thousandeyes_sdk.core.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)


# Enter a context with an instance of the API client
with thousandeyes_sdk.core.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = thousandeyes_sdk.emulation.EmulationApi(api_client)
    emulated_device = thousandeyes_sdk.emulation.EmulatedDevice() # EmulatedDevice | 
    aid = '1234' # str | A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter without being assigned to the target account group will result in an error response. (optional)

    try:
        # Create emulated device
        api_response = api_instance.create_emulated_device(emulated_device, aid=aid)
        print("The response of EmulationApi->create_emulated_device:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling EmulationApi->create_emulated_device: %s\n" % e)

```

## Documentation for API Endpoints

All URIs are relative to *https://api.thousandeyes.com/v7*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*EmulationApi* | [**create_emulated_device**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulationApi.md#create_emulated_device) | **POST** /emulated-devices | Create emulated device
*EmulationApi* | [**get_emulated_devices**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulationApi.md#get_emulated_devices) | **GET** /emulated-devices | List emulated devices
*EmulationApi* | [**get_user_agents**](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulationApi.md#get_user_agents) | **GET** /user-agents | List user-agents


## Documentation For Models

 - [EmulatedDevice](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulatedDevice.md)
 - [EmulatedDeviceCategory](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulatedDeviceCategory.md)
 - [EmulatedDeviceResponse](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulatedDeviceResponse.md)
 - [EmulatedDeviceResponses](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/EmulatedDeviceResponses.md)
 - [Error](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/Error.md)
 - [ExpandEmulatedDeviceOptions](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/ExpandEmulatedDeviceOptions.md)
 - [Link](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/Link.md)
 - [SelfLinks](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/SelfLinks.md)
 - [UnauthorizedError](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/UnauthorizedError.md)
 - [UserAgent](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/UserAgent.md)
 - [UserAgents](https://github.com/thousandeyes/thousandeyes-sdk-python//tree/main/thousandeyes-sdk-emulation/docs/UserAgents.md)


<a id="documentation-for-authorization"></a>
## Documentation For Authorization


Authentication schemes defined for the API:
<a id="BearerAuth"></a>
### BearerAuth

- **Type**: Bearer authentication


## Author

<a href="mailto:api-team@thousandeyes.com">ThousandEyes API Team </a>


