Help Center> Cloud Phone Host> API Reference> Cloud Phone APIs> ADB Commands> Running the Synchronous ADB shell Commands

Running the Synchronous ADB shell Commands

Function Description

  • API Name

    RunSyncCommand

  • Function

    Synchronously execute commands and return the command execution output on a cloud phone. This API supports only the execution of the ADB shell command. The command execution timeout on each cloud phone is 2 seconds, and the API timeout cannot exceed 30 seconds. The more cloud phones are executed, the longer the API consumes.

URI

POST /v1/{project_id}/cloud-phone/phones/sync-commands

For details, see Table 1.
Table 1 Parameter description

Parameter

Mandatory

Type

Description

project_id

Yes

String

Specifies the project ID.

For details about how to obtain the project ID, see Obtaining a Project ID.

Request

  • Parameter description

    Parameter

    Mandatory

    Type

    Description

    command

    Yes

    String

    Currently, only shell is supported.

    content

    Yes

    String

    Specifies the command to be executed.

    The value can contain a maximum of 1024 bytes, including only uppercase letters, lowercase letters, digits, underscores (_), periods (.), slashes (/), colons (:), and hyphens (-).

    server_ids

    No

    This parameter is mandatory when parameter phone_ids does not exist.

    Array of strings

    Specifies the ID list of the Cloud Phone servers.

    Obtain it from Querying the Cloud Phone Servers.

    phone_ids

    No

    This parameter is mandatory when parameter server_ids does not exist.

    Array of strings

    Specifies the cloud phone ID list.

    Obtain it from Querying the Cloud Phones.

  • Example request
    POST https://{CPH Endpoint}/v1/{project_id}/cloud-phone/phones/sync-commands
    {
        "command": "shell",
        "content": "ls -l /system",
        "phone_ids": [
            "1234567b8bab40ffb711234cb80d0234",
            "1678567b8bab40f93711234cb80d0764"
        ]
    }

Response

  • Parameter description

    Parameter

    Type

    Description

    request_id

    String

    Specifies the request ID, which is unique.

    jobs

    Array of objects

    Specifies the task information. For details, see Table 2.

    Table 2 job field description

    Parameter

    Type

    Description

    phone_id

    String

    Specifies the unique ID of a cloud phone. This parameter is contained in tasks related to cloud phones.

    job_id

    String

    Specifies the unique ID of a task.

    status

    Integer

    Specifies the task status.

    • 2: The task succeeds.
    • -1: The task fails.

    error_code

    String

    Specifies the task error code.

    error_msg

    String

    Specifies the task error code description.

    execute_msg

    String

    Specifies the content returned after a task is executed. The value can contain a maximum of 1024 bytes. The command output is returned regardless of whether the command is successfully executed.

  • Example response
    {
        "request_id": "6837531fd3f54550927b930180a706bf",
        "jobs": [{
            "phone_id": "1234567b8bab40ffb711234cb80d0234",
            "job_id": "3fc17538866a4ff3a014d8bc6aaa4b69",
            "status": -1
            "error_code": "CPS.0191", 
            "error_msg": "Run command failed.",
            "execute_msg": "ls: cannot access '/system': No such file or directory" 
        },
        {
            "phone_id": "1678567b8bab40f93711234cb80d0764",
            "job_id": "1564567b8bab40f34711234cb80d5678",
            "status": 2
            "error_code": "", 
            "error_msg": "",
            "execute_msg": "xxxxx"
        }]
    }

Returned Values

See Returned Values.

Error Codes

See Error Codes.