Skip to main content

Mobile Farm API (1.0.5)

Managing real mobile devices: creating a group of devices (a farm), adding and deleting devices, getting detailed device information, managing ADB keys, and more.

ADB keys

Manages all available RSA keys for Android Debug Bridge (ADB).

Store ADB key

Stores the public part of an ADB key, enabling ADB access.

Authorizations:
iam_token_project_scopediam_token_account_scoped
Request Body schema: application/json
required
publicKey
required
string

The public key associated with the ADB key.

title
string

The title associated with the ADB key (optional).

Responses

Request samples

Content type
application/json
{
  • "publicKey": "string",
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "adbKey": {
    }
}

List ADB keys

Retrieves a list of ADB keys, including their fingerprints and titles.

Authorizations:
iam_token_project_scopediam_token_account_scoped

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "adbKeys": [
    ]
}

Delete ADB key

Deletes a specific ADB key based on the provided fingerprint.

Authorizations:
iam_token_project_scopediam_token_account_scoped
path Parameters
fingerprint
required
string

Fingerprint of the ADB key.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string"
}

User ADB keys

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:
iam_token_account_scoped
path Parameters
userId
required
string

User identifier.

Request Body schema: application/json
required
publicKey
required
string

The public key associated with the ADB key.

title
string

The title associated with the ADB key (optional).

Responses

Request samples

Content type
application/json
{
  • "publicKey": "string",
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "adbKeys": [
    ]
}

List ADB keys for specified user

Retrieves a list of ADB keys associated with a specific user, including their fingerprints and titles.

Authorizations:
iam_token_account_scoped
path Parameters
userId
required
string

User identifier.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "adbKeys": [
    ]
}

Delete ADB key for specified user

Deletes a specific ADB key for a specified user based on the provided fingerprint.

Authorizations:
iam_token_account_scoped
path Parameters
userId
required
string

User identifier.

fingerprint
required
string

Fingerprint of the ADB key.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string"
}

Devices

Gets information about all available mobile devices that you can add to a group and about a specific device in a group.

List available devices

Returns a list of available mobile devices that you can add to a group.

Authorizations:
iam_token_project_scoped

Responses

Response samples

Content type
application/json
{
  • "devices": [
    ]
}

Get device information

Returns information about a device by its serial number.

Authorizations:
iam_token_project_scoped
path Parameters
serial
required
string

Serial number of the device.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "device": {
    }
}

Groups

Manages groups of mobile devices (farms).

Get available groups of devices

Returns a list of groups in a project.

Authorizations:
iam_token_project_scoped

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "groups": [
    ]
}

Create group of devices

Creates a new group of devices using the configuration that you define in the parameters.

Authorizations:
iam_token_project_scoped
Request Body schema: application/json
required
name
string

The name of the group.

required
Array of objects (DevicesFilter)
billingType
required
string

The type of billing for the group ('minutes'|'hours').

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "devices": [
    ],
  • "billingType": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "group": {
    },
  • "devicesLeft": [
    ]
}

Get information about group of devices

Returns information about a specific group of devices.

Authorizations:
iam_token_project_scoped
path Parameters
id
required
string

Group identifier.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "group": {
    }
}

Modify group of devices

Updates the configuration of an existing group of devices such as name or tariff plan.

Authorizations:
iam_token_project_scoped
path Parameters
id
required
string

Group identifier.

Request Body schema: application/json
required
name
string

The name of the group.

billingType
string

The type of billing.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "billingType": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "group": {
    }
}

Delete a device group

Deletes a specified group of devices.

Authorizations:
iam_token_project_scoped
path Parameters
id
required
string

Group identifier.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string"
}

Add devices to group

Adds devices to a specified group of devices based on the provided filters.

Authorizations:
iam_token_project_scoped
path Parameters
id
required
string

Group identifier.

Request Body schema: application/json
required
required
Array of objects (DevicesFilter)
Array
manufacturer
required
string

The manufacturer of the device.

marketName
required
string

The market name of the device.

version
required
string

The version of the operating system the device runs on.

sdk
required
string

The SDK version of the operating system.

platform
string

The device operating system. Available values are Android and iOS.

count
required
number

The number of devices with the same specifications.

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "group": {
    },
  • "devicesLeft": [
    ]
}

Remove device from group

Removes a device from a specified group of devices using its serial number.

Authorizations:
iam_token_project_scoped
path Parameters
id
required
string

Group identifier.

serial
required
string

Serial number of the device.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "group": {
    }
}

User devices

Manages devices used by a user.

Assign device to user

Assigns a device to a user. Works only for Android devices.

Authorizations:
iam_token_project_scoped
Request Body schema: application/json
required
serial
required
string

Filters for the devices.

timeout
number

Device timeout duration, specified in milliseconds. If the device remains idle for this period, it will automatically disconnect. The default timeout is set to 9 hours (32,400,000 milliseconds).

Responses

Request samples

Content type
application/json
{
  • "serial": "string",
  • "timeout": 0
}

Response samples

Content type
application/json
{
  • "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:
iam_token_project_scoped
path Parameters
serial
required
string

Serial number of the device.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string"
}

Start ADB remote connect session

Starts an ADB remote connect session. Works only for Android devices.

Authorizations:
iam_token_project_scoped
path Parameters
serial
required
string

Serial number of the device.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "remoteConnectUrl": "string"
}

End ADB remote connect session

Ends an ADB remote connect session. Works only for Android devices.

Authorizations:
iam_token_project_scoped
path Parameters
serial
required
string

Serial number of the device.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string"
}

Websocket authorization

Issue websocket authorization tickets.

Issue websocket authorization ticket

Issues a new websocket authorization ticket. The ticket allows you to control a device remotely.

Authorizations:
iam_token_project_scoped

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "description": "string",
  • "ticket": "string"
}