Get Appium2 Devices
This endpoint returns the DevicePark devices that can be used for Appium2 test plan environments.
The response includes device identity, platform, version, operational status, session status, and availability information.
Endpoint Information
- URL: {gateway-url}/device-park-environment/devices
- Method: GET
- Authentication: Required (Bearer Token)
Request Headers
Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer token used for authentication. Example: Bearer <your_access_token> |
X-Company-Id | Yes | The company ID used by the gateway to authorize and route the request. |
Accept | No | Recommended value: application/json. |
Request Body
This endpoint does not require a request body.
Response Body
{
"data": [
{
"id": 23,
"serial": "***MASKED***",
"marketName": "iPhone 12",
"model": "***MASKED***",
"manufacturer": "Apple",
"platform": "iOS",
"platformVersion": "18.x",
"hubIp": "***.***.***.***",
"isEnabled": true,
"operationalState": "HEALTHY",
"sessionState": "IDLE",
"isAvailable": true
},
{
"id": 25,
"serial": "***MASKED***",
"marketName": "Galaxy A30",
"model": "***MASKED***",
"manufacturer": "Samsung",
"platform": "Android",
"platformVersion": "9",
"hubIp": "***.***.***.***",
"isEnabled": true,
"operationalState": "HEALTHY",
"sessionState": "SESSION_ACTIVE",
"isAvailable": false
}
]
}Response Fields
Field | Type | Description |
|---|---|---|
data | Array | List of DevicePark devices. |
data[].id | Long | Unique identifier of the device. |
data[].serial | String | Device serial number or UDID. |
data[].marketName | String | Commercial device name, such as iPhone 12 or Galaxy A30. |
data[].model | String | Hardware model identifier. |
data[].manufacturer | String | Device manufacturer, such as Apple, Samsung, or Xiaomi. |
data[].platform | String | Device operating system, such as iOS or Android. |
data[].platformVersion | String | Operating system version installed on the device. |
data[].hubIp | String | IP address of the hub where the device is connected. |
data[].isEnabled | Boolean | Indicates whether the device is enabled. |
data[].operationalState | String | Current operational state of the device. Possible values include INITIALIZING, PREPARING, HEALTHY, and OFFLINE. |
data[].sessionState | String | Current session state of the device. Possible values include IDLE, ALLOCATED, and SESSION_ACTIVE. |
data[].isAvailable | Boolean | Indicates whether the device is currently available for a new test session. |
Error Response Format
{
"instance": "/device-park-environment/devices",
"status": 401,
"title": "Unauthorized",
"type": "https://errors.testinium.com/exception",
"timestamp": "2026-08-18T12:08:41.165927056Z",
"errorType": "EXCEPTION",
"errors": {
"code": 10001,
"message": "Authentication is required to access this resource."
}
}HTTP Error Codes
HTTP Code | Error Message | Description |
|---|---|---|
400 | Bad Request | A required gateway header is missing or invalid. |
401 | Unauthorized | Authentication is missing or invalid. |
403 | Forbidden | User does not have permission for this operation or company. |
405 | Method Not Allowed | The endpoint was called with an unsupported HTTP method. |
500 | Internal Server Error | An unexpected error occurred on the server side. |
503 | Service Unavailable | Environment service or DevicePark service is unavailable. |
Application Error Codes
Code | HTTP Status | Source | Description |
|---|---|---|---|
10001 | 401 | Gateway | Authentication is required. |
10002 | 401 | Gateway | Token is invalid or cannot be verified. |
10003 | 403 | Gateway | Authorization failed for the requested resource. |
10004 | 400 | Gateway | A required header, such as X-Company-Id, is missing or invalid. |
10008 | 503 | Gateway | Routed service is unavailable. |
10007 | 503 | Common | Downstream service is unavailable. |
20009 | 405 | Common Validation | HTTP method is not supported. |
Example Request
curl --location '{gateway-url}/device-park-environment/devices' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <your_access_token>' \
--header 'X-Company-Id: <company_id>'