Mobile Farm API (1.1.0)
Managing real mobile devices: adding and deleting devices, getting detailed device information, managing ADB keys, and more.
Store ADB key
Stores the public part of an ADB key, enabling ADB access.
Authorizations:
Request Body schema: application/jsonrequired
| publicKey required | string The public key associated with the ADB key. |
| title | string The title associated with the ADB key (optional). |
Responses
Request samples
- Payload
{- "publicKey": "string",
- "title": "string"
}Response samples
- 200
- default
{- "success": true,
- "description": "string",
- "adbKey": {
- "fingerprint": "string",
- "title": "string",
- "userId": "string"
}
}List ADB keys
Retrieves a list of ADB keys, including their fingerprints and titles.
Authorizations:
Responses
Response samples
- 200
{- "success": true,
- "description": "string",
- "adbKeys": [
- {
- "fingerprint": "string",
- "title": "string",
- "userId": "string"
}
]
}Delete ADB key
Deletes a specific ADB key based on the provided fingerprint.
Authorizations:
path Parameters
| fingerprint required | string Fingerprint of the ADB key. |
Responses
Response samples
- 200
- default
{- "success": true,
- "description": "string"
}Manages RSA keys for Android Debug Bridge (ADB) of a specific user. Applicable only to user administrators.
Store ADB key for specified user
Stores the public part of an ADB key for a specified user and enables ADB access.
Authorizations:
path Parameters
| userId required | string User identifier. |
Request Body schema: application/jsonrequired
| publicKey required | string The public key associated with the ADB key. |
| title | string The title associated with the ADB key (optional). |
Responses
Request samples
- Payload
{- "publicKey": "string",
- "title": "string"
}Response samples
- 200
- default
{- "success": true,
- "description": "string",
- "adbKeys": [
- {
- "fingerprint": "string",
- "title": "string",
- "userId": "string"
}
]
}List ADB keys for specified user
Retrieves a list of ADB keys associated with a specific user, including their fingerprints and titles.
Authorizations:
path Parameters
| userId required | string User identifier. |
Responses
Response samples
- 200
- default
{- "success": true,
- "description": "string",
- "adbKeys": [
- {
- "fingerprint": "string",
- "title": "string",
- "userId": "string"
}
]
}Delete ADB key for specified user
Deletes a specific ADB key for a specified user based on the provided fingerprint.
Authorizations:
path Parameters
| userId required | string User identifier. |
| fingerprint required | string Fingerprint of the ADB key. |
Responses
Response samples
- 200
- default
{- "success": true,
- "description": "string"
}List available devices
Returns a list of available mobile devices that you can add to a project.
Authorizations:
query Parameters
| fields | Array of strings Fields of filters to return in response |
Responses
Response samples
- 200
- 400
- 401
- 403
[- {
- "count": 0,
- "manufacturer": "string",
- "marketName": "string",
- "osVersion": "string",
- "platform": "string",
- "sdk": "string",
- "abi": "string",
- "cpuPlatform": "string",
- "resolution": "string"
}
]Add devices to project
Adds devices to the project based on the provided filters.
Authorizations:
Request Body schema: application/jsonrequired
Body
| billingType | string The tariffication type for the device. Available values are minutes, hours, and months. |
Array of objects (entity.Filter) |
Responses
Request samples
- Payload
{- "billingType": "string",
- "filters": [
- {
- "count": 0,
- "manufacturer": "string",
- "marketName": "string",
- "osVersion": "string",
- "platform": "string",
- "sdk": "string",
- "abi": "string",
- "cpuPlatform": "string",
- "resolution": "string"
}
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 409
{- "devices": [
- {
- "adminStatus": "string",
- "cpuPlatform": "string",
- "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "osVersion": "string",
- "owner": {
- "name": "string"
}, - "platform": "string",
- "present": true,
- "ready": true,
- "resolution": "string",
- "sdk": "string",
- "serial": "string",
- "status": {
- "ACTIVE": 0,
- "IN_USE": 0,
- "BUSY": 0,
- "MAINTENANCE": 0,
- "ERROR": 0
}
}
]
}List devices
Returns a list of devices in a project.
Authorizations:
Responses
Response samples
- 200
- 401
- 403
[- {
- "adminStatus": "string",
- "cpuPlatform": "string",
- "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "osVersion": "string",
- "owner": {
- "name": "string"
}, - "platform": "string",
- "present": true,
- "ready": true,
- "resolution": "string",
- "sdk": "string",
- "serial": "string",
- "status": {
- "ACTIVE": 0,
- "IN_USE": 0,
- "BUSY": 0,
- "MAINTENANCE": 0,
- "ERROR": 0
}
}
]Remove device from project
Removes a device from the project using its serial number.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Request Body schema: application/jsonrequired
Body
| slotID | string The slot identifier. |
Responses
Request samples
- Payload
{- "slotID": "string"
}Response samples
- 200
- 400
- 401
- 403
- 404
- 409
- 429
{- "adminStatus": "string",
- "cpuPlatform": "string",
- "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "osVersion": "string",
- "owner": {
- "name": "string"
}, - "platform": "string",
- "present": true,
- "ready": true,
- "resolution": "string",
- "sdk": "string",
- "serial": "string",
- "status": {
- "ACTIVE": 0,
- "IN_USE": 0,
- "BUSY": 0,
- "MAINTENANCE": 0,
- "ERROR": 0
}
}Get device information
Returns information about a device by its serial number.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Responses
Response samples
- 200
- 400
- 401
- 403
{- "abi": "string",
- "adminStatus": "string",
- "airplaneMode": true,
- "battery": {
- "health": "string",
- "level": 0,
- "scale": 0,
- "source": "string",
- "status": "string",
- "temp": 0,
- "voltage": 0
}, - "browser": {
- "apps": [
- {
- "id": "string",
- "name": "string",
- "selected": true,
- "system": true,
- "type": "string"
}
]
}, - "channel": "string",
- "cpuPlatform": "string",
- "display": {
- "density": 0,
- "fps": 0,
- "height": 0,
- "rotation": 0,
- "secure": true,
- "size": 0,
- "url": "string",
- "width": 0,
- "xdpi": 0,
- "ydpi": 0
}, - "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "model": "string",
- "network": {
- "connected": true,
- "failover": true,
- "roaming": true,
- "subtype": "string",
- "type": "string"
}, - "openGLESVersion": "string",
- "operator": "string",
- "osVersion": "string",
- "owner": {
- "name": "string"
}, - "phone": {
- "iccid": "string",
- "imei": "string",
- "imsi": "string",
- "network": "string",
- "phoneNumber": "string"
}, - "platform": "string",
- "presenceChangedAt": "string",
- "present": true,
- "product": "string",
- "ready": true,
- "remoteConnect": true,
- "remoteConnectUrl": "string",
- "resolution": "string",
- "reverseForwards": [
- "string"
], - "sdk": "string",
- "serial": "string",
- "status": 0,
- "statusChangedAt": "string",
- "usage": "string",
- "usageChangedAt": "string",
- "wifiAutoConnectFeatureAvailable": true
}Replace device
Replaces the device based on the provided filters.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Request Body schema: application/jsonrequired
Body
object (entity.FilterReplace) | |
| slotId | string The slot identifier. |
Responses
Request samples
- Payload
{- "filter": {
- "manufacturer": "string",
- "marketName": "string",
- "osVersion": "string",
- "platform": "string",
- "sdk": "string",
- "abi": "string",
- "cpuPlatform": "string",
- "resolution": "string"
}, - "slotId": "string"
}Response samples
- 200
- 400
- 401
- 403
- 404
- 409
- 429
{- "adminStatus": "string",
- "cpuPlatform": "string",
- "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "osVersion": "string",
- "owner": {
- "name": "string"
}, - "platform": "string",
- "present": true,
- "ready": true,
- "resolution": "string",
- "sdk": "string",
- "serial": "string",
- "status": {
- "ACTIVE": 0,
- "IN_USE": 0,
- "BUSY": 0,
- "MAINTENANCE": 0,
- "ERROR": 0
}
}Change settings on device
Updates settings on the device. For example, you can enable Wi-FI.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Request Body schema: application/jsonrequired
Body
| wifi | boolean Enables or disables Wi-Fi on the device. |
Responses
Request samples
- Payload
{- "wifi": true
}Response samples
- 400
- 401
- 403
- 404
- 409
{- "error": {
- "message": "string"
}
}Update device tariffication
Updates a tariffication of the device.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Request Body schema: application/jsonrequired
Body
| autoPayDateTime | string The next payment date. Applicable only to a monthly subscription. |
| type | string The tariffication type for the device. Available values are minutes, hours, and months. |
object (entity.Update) |
Responses
Request samples
- Payload
{- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}Response samples
- 200
- 400
- 401
- 403
- 404
- 409
- 429
{- "adminStatus": "string",
- "cpuPlatform": "string",
- "manufacturer": "string",
- "marketName": "string",
- "meta": {
- "billing": {
- "autoPayDateTime": "string",
- "type": "string",
- "updates": {
- "at": "string",
- "type": "string"
}
}, - "slot": {
- "id": "string"
}
}, - "osVersion": "string",
- "owner": {
- "name": "string"
}, - "platform": "string",
- "present": true,
- "ready": true,
- "resolution": "string",
- "sdk": "string",
- "serial": "string",
- "status": {
- "ACTIVE": 0,
- "IN_USE": 0,
- "BUSY": 0,
- "MAINTENANCE": 0,
- "ERROR": 0
}
}Assign device to user
Assigns a device to a user. Works only for Android devices.
Authorizations:
Request Body schema: application/jsonrequired
| serial required | string Filters for the devices. |
| timeout | number Device timeout in milliseconds. If the device remains idle for this period, it will be automatically disconnected. The default timeout is 9 hours (32,400,000 milliseconds). |
Responses
Request samples
- Payload
{- "serial": "string",
- "timeout": 0
}Response samples
- 200
{- "success": true,
- "description": "string"
}Remove device from user
Removes a device from the user and makes it available for other users. Works only for Android devices.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Responses
Response samples
- 200
{- "success": true,
- "description": "string"
}Start ADB remote connect session
Starts an ADB remote connect session. Works only for Android devices.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Responses
Response samples
- 200
- default
{- "success": true,
- "description": "string",
- "remoteConnectUrl": "string"
}End ADB remote connect session
Ends an ADB remote connect session. Works only for Android devices.
Authorizations:
path Parameters
| serial required | string The serial number of the device. |
Responses
Response samples
- 200
{- "success": true,
- "description": "string"
}