VMOS Cloud API
  • 简体中文
  • English
  • 简体中文
  • English
  • Product Introduction
  • Product Type
  • Product Billing
  • OpenAPI
    • User Guide
    • API Documentation
    • Error Code
    • Instance Property List
    • Android device modification attribute list
    • Callback Task Business Type Codes
    • Changelog
  • Android SDK
    • Example Construction
    • API Documentation
    • Callback Functions
    • Error Code
    • Changelog
  • Web H5 SDK
    • Example Build
    • API Documentation
    • H5 SDK Callback Functions
    • Error Code
    • Change log
  • Windows PC SDK
    • Example Setup
    • API Documentation
    • Callback Functions
    • Changelog
  • Edge-Cloud Communication Development
    • AIDL Integration Method
    • System Service API (AIDL)
  • Similar to XP, LSP Hook framework

    • Xposed-like / LSPosed Framework
    • Sensor Data Dynamic Simulation
  • Related agreements

Introduction

This document provides detailed API descriptions, syntax, parameter explanations, and examples, allowing you to manage cloud phone service resources through API calls.

API Overview

Instance Management

APIAPI NameAPI Description
/vcpcloud/api/padApi/setWifiListModify Instance WIFI PropertiesModify the WIFI list properties of the specified instance
/vcpcloud/api/padApi/padDetailsInstance Details (Pending Launch)Query the property information of the specified instance, including system properties and settings (Pending Launch)
/vcpcloud/api/padApi/restartInstance RestartPerform restart operation on the specified instance to resolve issues like system unresponsiveness or freezing
/vcpcloud/api/padApi/resetInstance ResetPerform reset operation on the instance, clearing all cloud instance data
/vcpcloud/api/padApi/padPropertiesQuery Instance PropertiesQuery the property information of the specified instance, including system properties and settings
/vcpcloud/api/padApi/batchPadPropertiesBatch Query Instance PropertiesBatch query the property information of specified instances, including system properties and settings
/vcpcloud/api/padApi/updatePadPropertiesModify Instance PropertiesDynamically modify instance properties, including system and settings
/vcpcloud/api/padApi/updatePadAndroidPropModify Instance Android Modification PropertiesStatic setting of Android modification properties, requires instance restart to take effect
/vcpcloud/api/padApi/updateSIMModify SIM Card Information Based on Country CodeStatic setting of Android modification properties, randomly generates SIM info and restarts instance
/vcpcloud/api/padApi/dissolveRoomStop StreamingStop streaming for specified instance, disconnect connection
/vcpcloud/api/padApi/checkIPSmart IP Proxy DetectionDetect if proxy IP is available and if location information is correct
/vcpcloud/api/padApi/smartIpSet Smart IPSet smart IP for cloud device; automatically change exit IP, SIM info, GPS, etc.
/vcpcloud/api/padApi/notSmartIpCancel Smart IPCancel smart IP, restore exit IP, SIM info, GPS, etc.
/vcpcloud/api/padApi/getTaskStatusDevice Task Execution Result QueryQuery task execution result using task number (for smart IP)
/vcpcloud/api/padApi/getListInstalledAppGet All Installed Apps in Specified Cloud Instance ListGet all installed apps in specified cloud instance list
/vcpcloud/api/padApi/updateTimeZoneModify Instance TimezoneModify instance timezone
/vcpcloud/api/padApi/updateLanguageModify Instance LanguageModify instance language
/vcpcloud/api/padApi/gpsInjectInfoSet Instance Latitude and LongitudeSet instance latitude and longitude
/vcpcloud/open/network/proxy/infoQuery Instance Proxy Information (Pending Launch)Query instance proxy information (Pending Launch)
/vcpcloud/api/padApi/replacePadOne-Key New Device ⭐One-key new device clears all current instance data and resets Android properties
/vcpcloud/api/padApi/countryQuery One-Key New Device Supported Countries ListQuery supported countries list for one-key new device
/vcpcloud/api/padApi/updateContactsUpdate ContactsUpdate contacts
/vcpcloud/api/padApi/setProxyInstance Set ProxySet proxy information for specified instance
/vcpcloud/api/padApi/listInstalledAppReal-Time Query Installed Apps ListReal-time query installed apps list
/vcpcloud/api/padApi/setKeepAliveAppSet App Keep-AliveSet app keep-alive (currently supports Android 13,14,15 only)
/vcpcloud/api/padApi/setHideAppListSet App Hide (Pending Launch)Send hide package list to specified instance (Pending Launch)
/vcpcloud/api/padApi/replaceRealAdiTemplateModify Real Device ADI TemplateModify cloud real device ADI template
/vcpcloud/api/padApi/asyncCmdAsync Execute ADB CommandsAsync execute commands in one or more cloud instances
/vcpcloud/api/padApi/switchRootSwitch Root PermissionsSwitch root permissions in one or more cloud instances
/vcpcloud/api/padApi/screenshotLocal ScreenshotInstance screenshot
/vcpcloud/api/padApi/getLongGenerateUrlGet Instance Real-Time Preview ImageGet current screen screenshot for specified instance
/vcpcloud/api/padApi/upgradeImageUpgrade ImageBatch instance image upgrade
/vcpcloud/api/padApi/virtualRealSwitchUpgrade Real Device ImageBatch real device image upgrade
/vcpcloud/api/padApi/templateListPaginated Get Real Device TemplatesPaginated retrieval of real device templates
/vcpcloud/api/padApi/adbGet ADB Connection InformationGet ADB connection information
/vcpcloud/api/padApi/batch/adbBatch Get ADB Connection Information (Pending Launch)Batch get or disable ADB connection information (Pending Launch)
/vcpcloud/api/padApi/simulateTouchSimulate TouchSimulate touch events in instance via XY coordinates
/vcpcloud/api/padApi/padTaskDetailInstance Operation Task DetailsQuery detailed execution results for specified instance operation task
/vcpcloud/api/padApi/executeScriptInfoGet Instance Script Execution Result (Pending Launch)Get script execution result via task ID (Pending Launch)
/vcpcloud/api/padApi/screenshotInfoGet Instance Screenshot Result (Pending Launch)Get instance screenshot result via task ID (Pending Launch)
/vcpcloud/api/padApi/padExecuteTaskInfoInstance Restart/Reset Execution Result (Pending Launch)Get restart/reset execution result via task ID (Pending Launch)
/vcpcloud/api/padApi/addPhoneRecordImport Call LogsImport call log data into cloud phone
/vcpcloud/api/padApi/inputTextCloud Phone Text InputInput specified text after focusing input box
/vcpcloud/api/padApi/simulateSendSmsSimulate Send SMSSimulate sending SMS to instance
/vcpcloud/api/padApi/resetGAIDReset GAIDReset advertising ID in cloud phone
/vcpcloud/api/padApi/injectAudioToMicInject Audio to Instance MicrophoneInject audio file to instance microphone
/vcpcloud/api/padApi/localPodBackupCreate Local Instance Backup (Pending Launch)Create backup for local instance (Pending Launch)
/vcpcloud/api/padApi/localPodRestoreCreate Local Instance Restore (Pending Launch)Restore from local instance backup (Pending Launch)
/vcpcloud/api/padApi/localPodBackupSelectPageLocal Instance Backup Query (Pending Launch)Get available backups for local instance (Pending Launch)
/vcpcloud/api/padApi/cleanAppHomeClear Processes and Return to Desktop (Pending Launch)Clear all processes except system and return to desktop (Pending Launch)
/vcpcloud/api/padApi/unmannedLiveUnmanned Live StreamingInstance video injection
/vcpcloud/api/padApi/injectPictureImage Injection (Pending Launch)Instance image injection (Pending Launch)
/vcpcloud/api/padApi/replacementDevice ReplacementDevice replacement
[/vcpcloud/api/padApi/confirmTransfer](#Transfer Cloud Phone)Transfer Cloud PhoneTransfer Cloud Phone

Resource Management

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/infosInstance List InformationQuery information about all ordered instances.

Application Management

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/installAppApplication InstallationInstall and deploy a specified application to the specified cloud instance (asynchronous task).
/vcpcloud/api/padApi/startAppStart AppStart App
/vcpcloud/api/padApi/stopAppStop AppStop App
/vcpcloud/api/padApi/restartAppRestart AppRestart App
/vcpcloud/api/padApi/listInstalledAppInstance installed application list queryQuery the list of installed applications for an instance
/vcpcloud/api/padApi/updateSIMModify sim card information according to country codeModify sim card information according to country code
/vcpcloud/api/padApi/uploadFileV3File upload interface directly through linkFile upload interface directly through link
/vcpcloud/api/padApi/setKeepAliveAppSet keepalive application interfaceSet keepalive application interface
/vcpcloud/api/padApi/addUserRomUpload user imageUpload user image

Task Management

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/padTaskDetailInstance Operation Task DetailsQuery detailed execution results of a specified instance operation task.
/vcpcloud/api/padApi/fileTaskDetailFile Task DetailsQuery detailed execution results of a specified file task.

Cloud Phone Management

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/createMoneyOrderCreate Cloud PhoneCreate a new cloud phone instance.
/vcpcloud/api/padApi/userPadListCloud Phone ListList of cloud phones.
/vcpcloud/api/padApi/padInfoCloud Phone Information QueryQuery the information of a cloud phone instance.
/vcpcloud/api/padApi/getCloudGoodListSKU Package ListList of SKU packages.
/vcpcloud/api/padApi/replaceRealAdiTemplateModify Real Machine ADI TemplateModify the ADI template of a physical machine.
/vcpcloud/api/padApi/createMoneyProOrderEquipment Pre-sale PurchaseEquipment Pre-sale Purchase
/vcpcloud/api/padApi/queryProOrderListQuery pre-sale order result detailsQuery pre-sale order result details
/vcpcloud/api/padApi/imageVersionListAndroid image version collectionAndroid image version collection
/vcpcloud/api/padApi/simulateTouchCloud machine simulated touchCloud machine simulated touch

TK Automation

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/autoTaskListAutomated Task List QueryQuery the list of automated tasks.
/vcpcloud/api/padApi/addAutoTaskCreate Automation TaskCreate a new automated task.
/vcpcloud/api/padApi/reExecutionAutoTaskAutomated Task RetryRetry an automated task.
/vcpcloud/api/padApi/cancelAutoTaskAutomated Task CancellationlationCancel an automated task.

SDK Token

API EndpointAPI NameAPI Description
/vcpcloud/api/padApi/stsTokenGet SDK Temporary TokenIssue a temporary SDK token for user authentication of cloud phone services.
/vcpcloud/api/padApi/stsTokenByPadCodeGet SDK Temporary TokenIssue a temporary SDK token for user authentication of cloud phone services, based on pad code.
/vcpcloud/api/padApi/clearStsTokenClear SDK Authorization TokenClear the SDK authorization token.

OpenAPI Interface List

Instance Management

Modify Instance WIFI Properties

Modify the WIFI list properties of the specified instance (this interface and one-key new device WIFI setup are mutually exclusive, otherwise overwriting issues may occur)

API Endpoint

/vcpcloud/api/padApi/setWifiList

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]YesInstance codes
wifiJsonListString[]YesWIFI properties list
├─ SSID110101StringYesWIFI name (Chinese not supported)
├─ BSSID02:31:00:00:00:01StringYesAccess point MAC address
├─ MAC02:00:10:00:00:00StringYesWIFI adapter MAC address
├─ IP192.168.120.15StringYesWIFI network IP
├─ gateway192.168.120.1StringYesWIFI gateway
├─ DNS11.1.1.1StringYesDNS1
├─ DNS28.8.8.8StringYesDNS2
├─ hessid0IntegerNoNetwork identifier
├─ anqpDomainId0IntegerNoANQP (Access Network Query Protocol) domain ID
├─ capabilities""StringNoWPA/WPA2 etc. information
├─ level0IntegerNoSignal strength (RSSI)
├─ linkSpeed500IntegerNoCurrent Wi-Fi connection speed
├─ txLinkSpeed600IntegerNoUpload link speed
├─ rxLinkSpeed700IntegerNoDownload link speed
├─ frequency2134IntegerNoWi-Fi channel frequency
├─ distance-1IntegerNoEstimated AP distance
├─ distanceSd-1IntegerNoEstimated distance standard deviation
├─ channelWidth0IntegerNoChannel bandwidth
├─ centerFreq00IntegerNoCenter frequency 0
├─ centerFreq1-1IntegerNoCenter frequency 1
├─ is80211McRTTResponderfalseBooleanNoWhether supports 802.11mc (Wi-Fi RTT ranging technology)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject
├─ taskId1IntegerTask ID
├─ padCodeAC2025030770RStringInstance code
├─ vmStatus1IntegerInstance online status: 0-offline, 1-online

Request Example

{
    "padCodes":["AC2025030770R92X"],
    "wifiJsonList":[
        {
            "SSID": "110101",
            "BSSID": "02:31:00:00:00:01",
            "MAC": "02:00:10:00:00:00",
            "IP": "192.168.120.15",
            "gateway": "192.168.120.1",
            "DNS1": "1.1.1.1",
            "DNS2": "8.8.8.8",
            "hessid": 0,
            "anqpDomainId": 0,
            "capabilities": "",
            "level": 0,
            "linkSpeed": 500,
            "txLinkSpeed": 600,
            "rxLinkSpeed": 700,
            "frequency": 2413,
            "distance": -1,
            "distanceSd": -1,
            "channelWidth": 0,
            "centerFreq0": -1,
            "centerFreq1": -1,
            "is80211McRTTResponder": true
        }
    ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1741676855566,
    "data": [
        {
            "taskId": 14904,
            "padCode": "AC2025030770R92X",
            "vmStatus": 0
        }
    ]
}

Instance Details

(Pending Launch)
Query the property information of the specified instance, including system properties and settings.

API Endpoint

/vcpcloud/api/padApi/padDetails

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]No
├─AC21020010391StringNoInstance code
padIpsString[]No
├─192.168.1.1StringNoInstance IP
vmStatus1StringNoInstance online status: 0-offline, 1-online
controlStatus1StringNoControlled status (streaming): 1-uncontrolled, 2-controlled
faultStatus14StringNoInstance running status: 14-abnormal, others-normal
deviceStatus0StringNoPhysical machine online status: 0-offline, 1-online

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756360093771LongTimestamp
traceIdewc83bwudvr4StringTrace ID
dataObjectResponse data
├─ page1IntegerCurrent page
├─ rows10IntegerRecords per page
├─ size10IntegerCurrent page count
├─ total13398IntegerTotal records
├─ totalPage1340IntegerTotal pages
├─ pageDataobject[]List
├─ ├─ padId552LongInstance ID
├─ ├─ padCodeACP250331GLMP7YXStringCloud instance code
├─ ├─ customerIdnullLongCustomer ID
├─ ├─ imageIdimg-25032628136StringImage ID
├─ ├─ deviceLevelm2-6StringInstance specification
├─ ├─ dcInfoObjectData center information
├─ ├─ ├─ id1LongData center ID
├─ ├─ ├─ dcName小算测试-机房StringData center name
├─ ├─ ├─ dcCode001StringData center code
├─ ├─ ├─ areachangshaStringRegion
├─ ├─ ├─ ossEndpointnullStringOSS public endpoint
├─ ├─ ├─ ossEndpointInternalnullStringOSS internal endpoint
├─ ├─ ├─ ossFileEndpointnullStringFile access endpoint
├─ ├─ ├─ ossScreenshotEndpointnullStringScreenshot access endpoint
├─ ├─ padStatus15IntegerInstance status (10-running, 11-restarting, 12-resetting, 13-upgrading, 14-abnormal, 15-not ready, 16-backing up, 17-restoring data, 18-shutdown, 19-shutting down, 20-booting, 21-shutdown failed, 22-boot failed, 23-deleting, 24-delete failed, 25-deleted, 26-cloning)
├─ ├─ deviceStatus1IntegerPhysical machine status (0-offline, 1-online)
├─ ├─ online0IntegerInstance online status (0-offline, 1-online)
├─ ├─ streamStatus0IntegerInstance streaming status (0-idle, 1-streaming)
├─ ├─ dataSizenullLongTotal storage capacity (bytes)
├─ ├─ dataSizeUsednullLongUsed storage capacity (bytes)
├─ ├─ adbOpenStatusnullStringADB switch status (1-enabled; empty/0-disabled)
├─ ├─ deviceIp172.31.1.4StringBoard IP
├─ ├─ screenLayoutCodemultiple-portrait-basicStringScreen layout code
├─ ├─ mac""StringMAC address
├─ ├─ netStorageResIdnullStringNet storage ID
├─ ├─ dns192.168.50.15StringInstance DNS
├─ ├─ memorynullIntegerMemory size
├─ ├─ cpu-1IntegerCPU size
├─ ├─ socModelMACS2080StringSoC model
├─ ├─ netStorageResFlag0IntegerNet storage flag (1-net storage instance; 0-local instance)
├─ ├─ netStorageResSizenullLongNet storage instance size (GB)
├─ ├─ realPhoneTemplateId389LongReal device template ID
├─ ├─ clusterCodeZEG3650947StringCluster code
├─ ├─ padIpnullStringInstance IP
├─ ├─ updateNetStorageResFlagfalseBooleanWhether to specify net storage ID for boot
├─ ├─ targetStorageResIdnullStringSpecified net storage ID
├─ ├─ armIp192.168.200.50StringARM server IP
├─ ├─ countryCodenullStringCountry code
├─ ├─ typevirtualStringInstance type (virtual-virtual machine / real-cloud real device)
├─ ├─ armServerId179LongServer ID
├─ ├─ lastComputeUnitCodenullStringLast boot compute unit code
├─ ├─ lastDeviceCodenullStringLast boot device code
├─ ├─ lastDeviceIpnullStringLast boot device IP
├─ ├─ cloneFlagnullStringClone flag (0-no, 1-yes)
├─ ├─ baseResUnitCodenullStringClone instance base storage code
├─ ├─ cbsInfo2.0.14StringCBS information
├─ ├─ firstBoottrueBooleanWhether first boot

Request Example

{
 "page": 1,
 "rows": 10,
 "padCodes": ["AC21020010391"],
 "padIps":["192.168.1.1"],
 "vmStatus":"1",
 "controlStatus":"1",
 "faultStatus":"14",
 "deviceStatus":"0"
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756360093771,
    "data": {
        "page": 1,
        "rows": 10,
        "size": 10,
        "total": 13398,
        "totalPage": 1340,
        "pageData": [
            {
                "padId": 552,
                "padCode": "ACP250331GLMP7YX",
                "customerId": null,
                "imageId": "img-25032628136",
                "deviceLevel": "m2-6",
                "dcInfo": {
                    "id": 1,
                    "dcName": "小算测试-机房",
                    "dcCode": "001",
                    "area": "changsha",
                    "ossEndpoint": null,
                    "ossEndpointInternal": null,
                    "ossFileEndpoint": null,
                    "ossScreenshotEndpoint": null
                },
                "padStatus": 15,
                "deviceStatus": 1,
                "online": 0,
                "streamStatus": 0,
                "dataSize": null,
                "dataSizeUsed": null,
                "adbOpenStatus": null,
                "deviceIp": "172.31.1.4",
                "screenLayoutCode": "multiple-portrait-basic",
                "mac": "",
                "netStorageResId": null,
                "dns": "192.168.50.15",
                "memory": null,
                "cpu": -1,
                "socModel": "MACS2080",
                "netStorageResFlag": 0,
                "netStorageResSize": null,
                "realPhoneTemplateId": 389,
                "clusterCode": "ZEG3650947",
                "padIp": null,
                "updateNetStorageResFlag": false,
                "targetStorageResId": null,
                "armIp": "192.168.200.50",
                "countryCode": null,
                "type": "virtual",
                "armServerId": 179,
                "lastComputeUnitCode": null,
                "lastDeviceCode": null,
                "lastDeviceIp": null,
                "cloneFlag": null,
                "baseResUnitCode": null,
                "cbsInfo": "2.0.14",
                "firstBoot": true
            }
        ]
    },
    "traceId": "ewc83bwudvr4"
}

Instance Restart

Perform restart operation on the specified instance to resolve issues like system unresponsiveness or freezing.

API Endpoint

/vcpcloud/api/padApi/restart

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010001StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists, do not resubmit; 1: task added)

Request Example

{
 "padCodes": [
  "AC22030022693"
 ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313806284,
    "data": [
        {
            "taskId": 4844869,
            "padCode": "ATP250818261XVMO",
            "vmStatus": 0,
            "taskStatus": 1
        }
    ],
    "traceId": "ewab9x88fkzk"
}

Error Codes

Error CodeError DescriptionSuggestion
10001Restart failedContact administrator
110004Restart command execution failedRestart later
110028Instance does not existCheck if instance exists

Instance Reset

Note: Instance reset clears all system data. Use with caution. After each reset, the public IP will be restored to default. Perform reset operation on the instance, clearing all cloud instance data.

API Endpoint

/vcpcloud/api/padApi/reset

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010001StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists, do not resubmit; 1: task added)

Request Example

{
 "padCodes": [
  "AC21020010001"
 ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313781715,
    "data": [
        {
            "taskId": 760459892,
            "padCode": "ATP250817PIJLWRP",
            "vmStatus": 0,
            "taskStatus": 1
        }
    ],
    "traceId": "ewab8lv65yio"
}

Error Codes

Error CodeError DescriptionSuggestion
10002Reset failedContact administrator
110005Reset command execution failedReset later

Query Instance Properties

Query the property information of the specified instance, including system properties and settings.

API Endpoint

/vcpcloud/api/padApi/padProperties

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC21020010001StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject
├─ padCodeAC21020010001StringInstance code
├─ modemPropertiesListObject[]Modem properties list
├─ ├─ propertiesNameIMEIStringProperty name
├─ ├─ propertiesValue412327621057784StringProperty value
├─ systemPropertiesListObject[]System properties list
├─ ├─ propertiesNamero.build.idStringProperty name
├─ ├─ propertiesValueQQ3A.200805.001StringProperty value
├─ settingPropertiesListObject[]Setting properties list
├─ ├─ propertiesNamero.build.tagsStringProperty name
├─ ├─ propertiesValuerelease-keysStringProperty value
├─ oaidPropertiesListObject[]OAID properties list
├─ ├─ propertiesNameoaidStringProperty name
├─ ├─ propertiesValue001StringProperty value

Request Example

{
 "padCode": "AC21020010001"
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts":1713773577581,
 "data": {
  "padCode": "AC21020010001",
  "modemPropertiesList": [
   {
    "propertiesName": "IMEI",
    "propertiesValue": "412327621057784"
   }
  ],
  "systemPropertiesList": [
   {
    "propertiesName": "ro.build.id",
    "propertiesValue": "QQ3A.200805.001"
   }
  ],
  "settingPropertiesList": [
   {
    "propertiesName": "ro.build.tags",
    "propertiesValue": "release-keys"
   }
  ],
  "oaidPropertiesList": [
   {
    "propertiesName": "oaid",
    "propertiesValue": "001"
   }
  ]
 }
}

Error Codes

Error CodeError DescriptionSuggestion
110028Instance does not existCheck if instance is correct

Batch Query Instance Properties

Batch query the property information of specified instances, including system properties and settings.

API Endpoint

/vcpcloud/api/padApi/batchPadProperties

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]YesInstance count not exceeding 200
├─AC21020010001StringYesInstance code
├─AC21020010002StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ padCodeAC21020010001StringInstance code
├─ modemPropertiesListObject[]Modem properties list
├─ ├─ propertiesNameIMEIStringProperty name
├─ ├─ propertiesValue412327621057784StringProperty value
├─ systemPropertiesListObject[]System properties list
├─ ├─ propertiesNamero.build.idStringProperty name
├─ ├─ propertiesValueQQ3A.200805.001StringProperty value
├─ settingPropertiesListObject[]Setting properties list
├─ ├─ propertiesNamero.build.tagsStringProperty name
├─ ├─ propertiesValuerelease-keysStringProperty value
├─ oaidPropertiesListObject[]OAID properties list
├─ ├─ propertiesNameoaidStringProperty name
├─ ├─ propertiesValue001StringProperty value

Request Example

{
    "padCodes": [
        "AC21020010001",
        "AC21020010002"
    ]
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts":1713773577581,
 "data": [
        {
            "padCode": "AC21020010001",
            "modemPropertiesList": [
                {
                    "propertiesName": "IMEI",
                    "propertiesValue": "412327621057784"
                }
            ],
            "systemPropertiesList": [
                {
                    "propertiesName": "ro.build.id",
                    "propertiesValue": "QQ3A.200805.001"
                }
            ],
            "settingPropertiesList": [
                {
                    "propertiesName": "ro.build.tags",
                    "propertiesValue": "release-keys"
                }
            ],
            "oaidPropertiesList": [
                {
                    "propertiesName": "oaid",
                    "propertiesValue": "001"
                }
            ]
        },
        {
            "padCode": "AC21020010002",
            "modemPropertiesList": [
                {
                    "propertiesName": "IMEI",
                    "propertiesValue": "412327621057784"
                }
            ],
            "systemPropertiesList": [
                {
                    "propertiesName": "ro.build.id",
                    "propertiesValue": "QQ3A.200805.001"
                }
            ],
            "settingPropertiesList": [
                {
                    "propertiesName": "ro.build.tags",
                    "propertiesValue": "release-keys"
                }
            ],
            "oaidPropertiesList": [
                {
                    "propertiesName": "oaid",
                    "propertiesValue": "001"
                }
            ]
        }
    ]
}

Error Codes

Error CodeError DescriptionSuggestion
110028Instance does not existCheck if instance is correct

Modify Instance Properties

Dynamically modify instance properties, including system and settings.
Instance must be powered on; this interface takes effect immediately.
Refer to Instance Properties List

API Endpoint

/vcpcloud/api/padApi/updatePadProperties

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010001StringYesInstance code
modemPersistPropertiesListObject[]NoModem persistent properties list
├─ propertiesNameIMEIStringNoProperty name
├─ propertiesValue412327621057784StringNoProperty value
modemPropertiesListObject[]NoModem non-persistent properties list
├─ propertiesNameIMEIStringNoProperty name
├─ propertiesValue412327621057784StringNoProperty value
systemPersistPropertiesListObject[]NoSystem persistent properties list
├─ propertiesNamero.build.idStringNoProperty name
├─ propertiesValueQQ3A.200805.001StringNoProperty value
systemPropertiesListObject[]NoSystem non-persistent properties list
├─ propertiesNamero.build.idStringNoProperty name
├─ propertiesValueQQ3A.200805.001StringNoProperty value
settingPropertiesListObject[]NoSetting properties list
├─ propertiesNamero.build.tagsStringNoProperty name
├─ propertiesValuerelease-keysStringNoProperty value
oaidPropertiesListObject[]NoOAID properties list
├─ propertiesNameoaidStringNoProperty name
├─ propertiesValue001StringNoProperty value

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)

Request Example

{
 "padCodes": [
  "AC21020010001"
 ],
 "modemPersistPropertiesList": [
   {
    "propertiesName": "IMEI",
    "propertiesValue": "412327621057784"
   }
  ],
 "modemPropertiesList": [
   {
    "propertiesName": "IMEI",
    "propertiesValue": "412327621057784"
   }
  ],
  "systemPersistPropertiesList": [
   {
    "propertiesName": "ro.build.id",
    "propertiesValue": "QQ3A.200805.001"
   }
  ],
  "systemPropertiesList": [
   {
    "propertiesName": "ro.build.id",
    "propertiesValue": "QQ3A.200805.001"
   }
  ],
  "settingPropertiesList": [
   {
    "propertiesName": "ro.build.tags",
    "propertiesValue": "release-keys"
   }
  ],
  "oaidPropertiesList": [
   {
    "propertiesName": "oaid",
    "propertiesValue": "001"
   }
  ]
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570916196,
 "data": [
  {
   "taskId": 36,
   "padCode": "AC22030010001",
   "vmStatus": 1
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110011Modify property command failedRetry later
110028Instance does not existCheck instance
110027Duplicate instances in listCheck duplicates

Modify Instance Android Modification Properties

Static setting of Android modification properties, requires instance restart to take effect, generally used for modifying device information.
Difference from [Modify Instance Properties]: this takes effect on each boot initialization.
Properties are persistently stored; no need to call again after restart or reset.
Refer to Android Modification Properties List
Requires understanding of Android system. Some properties may affect normal boot. If abnormal after modification, reset instance to recover.

API Endpoint

/vcpcloud/api/padApi/updatePadAndroidProp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC32010210001StringNoInstance ID
restartfalseBooleanNoAuto restart after setting (default false)
props{}ObjectYesSystem properties (key-value)
├─ ro.product.vendor.nameOP52D1L1StringYesProperty setting

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject
├─ taskId24LongTask ID
├─ padCodeAC32010210001StringInstance ID
├─ taskStatus1IntegerTask status (-1: task exists, do not resubmit; 1: task added)

Request Example

{
 "padCode": "AC32010210001",
 "props": {
  "ro.product.vendor.name": "OP52D1L1"
 },
 "restart": false
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313781338,
    "data": {
        "taskId": 760459884,
        "padCode": "AC32010160134",
        "vmStatus": 0,
        "taskStatus": 1
    },
    "traceId": "ewab8l4lqu4g"
}

Modify SIM Card Information Based on Country Code

Static setting of Android modification properties, requires instance restart to take effect, generally used for modifying device information.
Same function as [Modify Instance Android Modification Properties], difference: randomly generates SIM info and always restarts.
Properties persistently stored.

API Endpoint

/vcpcloud/api/padApi/updateSIM

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC32010210001StringYesInstance ID
countryCodeUSStringNoCountry code
props{}ObjectNoSystem properties (key-value)
├─ ro.product.vendor.nameOP52D1L1StringNoProperty setting

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756360113813LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObjectResponse data
├─ taskId10002486LongTask ID
├─ padCodeACN342712020172800StringInstance code
├─ vmStatus0IntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists, do not resubmit; 1: task added)

Request Example

{
    "padCode": "AC32010250001",
    "props": {
        "persist.sys.cloud.phonenum": "1234578998"
    },
    "countryCode": "US"
}

Response Example 1

{
    "code": 200,
    "msg": "success",
    "ts": 1756360113813,
    "data": {
        "taskId": 10002486,
        "padCode": "ACN342712020172800",
        "vmStatus": 0,
        "taskStatus": 1
    },
    "traceId": "ewc84g8si0oy"
}

Response Example 2

{
   "code": 500,
   "msg": "Currently not supporting country code: XX",
   "ts": 1753521350163,
   "data": null
}

Error Codes

Error CodeError DescriptionSuggestion
110065Invalid request parameters, refer to documentationCheck parameters
110028Instance does not existCheck instance code

Stop Streaming

Stop streaming for specified instance, disconnect connection.

API Endpoint

/vcpcloud/api/padApi/dissolveRoom

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC11010000031StringYesInstance code
├─AC22020020700StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject[]
├─ successListObject[]Success list
├─ ├─ padCodeAC11010000031StringInstance code
├─ failListObject[]Failure list
├─ ├─ padCodeAC22020020700StringInstance code
├─ ├─ errorCode120005IntegerError code
├─ ├─ errorMsgInstance does not existStringFailure reason

Request Example

{
    "padCodes": ["AC11010000031","AC22020020700"]
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts":1713773577581,
 "data": {
     "successList": [
              {
                  "padCode": "AC11010000031"
              }
          ],
          "failList": [
      {
                  "padCode": "AC22020020700",
      "errorCode": 120005,
      "errorMsg": "实例不存在"
              }
    ]
     },
    "traceId": "ewab9njt3gn4"
}

Error Codes

Error CodeError DescriptionSuggestion
120005Instance does not existCheck instance code
120004Stop streaming error, service abnormalRetry later

Smart IP Proxy Detection

Detect if proxy IP is available and if location information is correct.

API Endpoint

/vcpcloud/api/padApi/checkIP

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
host127.0.0.1StringYesProxy info (IP or host)
port8080IntegerYesProxy port (numeric)
accountxxxxStringYesProxy username
passwordxxxxStringYesProxy password
typeSocks5StringYesProxy protocol: Socks5, http, https
countryUSStringNoCountry - required when forcing specification
ip156.228.84.62StringNoIP - required when forcing
loc39.0438,-77.4874StringNoLatitude, longitude - required when forcing
cityAshburnStringNoCity - required when forcing
regionVirginiaStringNoRegion - required when forcing
timezoneAmerica/New_YorkStringNoTimezone - required when forcing

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ proxyLocationUS-Los AngelesStringLocation
├─ publicIp62.112.132.92StringExit IP
├─ proxyWorkingtrueBooleanDetection success - true, failure - false

Request Example

{
    "host": "62.112.132.92",
    "port": 45001,
    "account": "xxxxxxxxxx",
    "password": "xxxxxxxx",
    "type": "Socks5"
    // "country": "US",
    // "ip": "156.228.84.62",
    // "loc": "39.0438,-77.4874",
    // "city": "Ashburn",
    // "region": "Virginia",
    // "timezone": "America/New_York"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "proxyLocation": "US-Los Angeles",
        "publicIp": "62.112.132.92",
        "proxyWorking": true
    },
    "ts": 1737601218580
}

Set Smart IP

Set smart IP for cloud device; exit IP, SIM info, GPS coordinates, timezone etc. automatically change to proxy's country (device restarts after setting, takes effect within 1 minute after restart; status changes to 119-initializing; returns to 100-normal on success/failure/timeout; timeout 5 minutes).

(Smart IP must be detected first via detection interface) Direct setting may cause country mismatch.

API Endpoint

/vcpcloud/api/padApi/smartIp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010182StringYesInstance code
host127.0.0.1StringYesProxy info (IP or host)
port8080IntegerYesProxy port
accountxxxxStringYesProxy username
passwordxxxxStringYesProxy password
typeSocks5StringYesProxy protocol: Socks5, http, https
modevpnStringYesProxy mode: vpn / proxy

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
dataTASK-278784482960609280StringTask number
msgsuccessStringResponse message
ts1721739857317LongTimestamp

Request Example

{
    "padCodes": [
        "AC32010160334"
    ],
    "host": "62.112.132.92",
    "port": 45001,
    "account": "xxxxxx",
    "password": "xxxxxxx",
    "type": "Socks5",
    "mode": "vpn"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": "TASK-278784482960609280",
    "ts": 1737604726812
}

Cancel Smart IP

Cancel smart IP, restore exit IP, SIM info, GPS, timezone (device restarts, takes effect within 1 minute; status 119-initializing; returns to 100-normal on success/failure/timeout; timeout 5 minutes).

API Endpoint

/vcpcloud/api/padApi/notSmartIp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010182StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
dataTASK-278784482960609280StringTask number
msgsuccessStringResponse message
ts1721739857317LongTimestamp

Request Example

{
    "padCodes": [
        "AC32010160334"
    ]
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": "TASK-278784482960609280",
    "ts": 1737604726812
}

Device Task Execution Result Query

Query task execution result using task number (for smart IP).

API Endpoint

/vcpcloud/api/padApi/getTaskStatus

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
taskIdTASK-278784482960609280StringYesTask ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
dataObject[]Task results
├─ padCodeAC32010150162StringInstance code
├─ taskStatusSuccessfullyStringTask status: Executing-in progress, Successfully-success, Failed-failure, Timedout-timeout
├─ taskType10010IntegerTask type: 10010-set smart IP, 10011-cancel smart IP
msgsuccessStringResponse message
ts1721739857317LongTimestamp

Request Example

{
    "taskId": "TASK-278784482960609280"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "padCode": "AC32010150162",
            "taskStatus": "Successfully",
            "taskType": 10010
        }
    ],
    "ts": 1738999472135
}

Get All Installed Apps in Specified Cloud Instance List

API Endpoint

/vcpcloud/api/padApi/getListInstalledApp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeListString[]Yes
├─AC22020020793StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ appNameVMOSCloudStringApp name
├─ packageNamecom.geniuscloud.overseasStringPackage name

Request Example

{
    "padCodeList": ["AC32010601132"]
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "appName": "VMOSCloud",
            "packageName": "com.geniuscloud.overseas"
        },
        {
            "appName": "快手极速版",
            "packageName": "com.kuaishou.nebula"
        }
    ],
    "ts": 1746694111364
}

File Upload via Link Directly

Push file from file management center to cloud phone instance (async task). If file found by md5 or file ID, directly use OSS path for download. If not in OSS, send URL for download and upload content to OSS. If auto install app, check package name; if empty, throw exception. (Auto install grants all permissions by default; use isAuthorization to disable).

API Endpoint

/vcpcloud/api/padApi/uploadFileV3

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─ padCodeAC32010250011StringNoInstance code
autoInstall1IntegerNoAuto install: 1-yes, 0-no (default no). Only for APK
fileUniqueId1e5d3bf00576ee8f3d094908c0456722StringNoFile unique ID
customizeFilePath/Documents/StringNoCustom path (start with /, e.g. "/DCIM/", "/Documents/" etc.)
fileNamethreadsStringNoFile name
packageNamecom.zhiliaoapp.musicallyStringNoPackage name
urlhttps://file.vmoscloud.com/appMarket/2/apk/fe1f75df23e6fe3fd3b31c0f7f60c0af.apkStringNoFile URL
md51e5d3bf00576ee8f3d094908c0456722StringNoFile MD5
isAuthorizationfalseBooleanNoGrant permissions (default all)
iconPathhttps://file.vmoscloud.com/appMarket/2/apk/fe1f75df23e6fe3fd3b31c0f7f60c0af.pngStringNoIcon for install

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ padCodeAC22010020062StringInstance code
├─ taskId1IntegerTask ID
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)

Request Example

{
    "padCodes": [
        "AC32010250022"
    ],
    "customizeFilePath": "/DCIM/",
    "md5": "d97fb05b3a07d8werw2341f10212sdfs3sdfs24",
    "url": "https://file.vmoscloud.com/appMarket/2/apk/fe1f75df23e6fe3fd3b31c0f7f60c0af.apk",
    "autoInstall": 1,
    "packageName": "com.zhiliaoapp.musically",
    "fileName": "market",
    "isAuthorization": false
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1737431505379,
    "data": [
        {
            "taskId": 13469,
            "padCode": "AC32010250022",
            "vmStatus": 0
        }
    ]
}

Error Codes

Error CodeError DescriptionSuggestion
110065Invalid request parametersCheck parameters, refer to doc
120005Instance does not existCheck instance code

Modify Instance Timezone

API Endpoint

/vcpcloud/api/padApi/updateTimeZone

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
timeZoneAsia/ShanghaiStringYesUTC standard timezone
padCodesArrayYesInstance list

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId24LongTask ID
├─ padCodeAC22030010001StringInstance code
├─ vmStatusIntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
 "padCodes": [
  "AC32010140003"
 ],
 "timeZone": "Asia/Shanghai"
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313802157,
    "data": [
        {
            "taskId": 760460229,
            "padCode": "ACP250417QAGGQ3S",
            "vmStatus": 0,
            "taskStatus": 1
        }
    ],
    "traceId": "ewab9p712ww0"
}

Modify Instance Language

API Endpoint

/vcpcloud/api/padApi/updateLanguage

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
languagezhStringYesLanguage
countryCNStringNoCountry
padCodesArrayYesInstance list

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId24LongTask ID
├─ padCodeAC22030010001StringInstance code
├─ vmStatusIntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
 "padCodes": [
  "AC32010140026"
 ],
 "language": "zh",
 "country": ""
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570663080,
 "traceId": "ewab9p712ww0",
 "data": [
  {
   "taskId": 24,
   "padCode": "AC32010140026",
   "vmStatus": 1,
      "taskStatus": 1
  }
 ]
}

Set Instance Latitude and Longitude

API Endpoint

/vcpcloud/api/padApi/gpsInjectInfo

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
longitude116.397455FloatYesLongitude
latitude39.909187FloatYesLatitude
altitude8FloatNoAltitude (requires latest image)
speed8FloatNoSpeed m/s (images after 20251024)
bearing0FloatNoBearing ° (images after 20251024)
horizontalAccuracyMeters0.1FloatNoHorizontal accuracy (images after 20251024)
padCodesArrayYesInstance list

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
traceIdewc84g8si0oyStringTrace ID
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataBoolean

Request Example

{
 "padCodes": [
  "AC32010030001"
 ],
 "longitude": 116.397455,
 "latitude": 39.909187,
 "altitude": 8
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570663080,
 "traceId": "ewab9p712ww0",
 "data": true
}

Query Instance Proxy Information

(Pending Launch)

API Endpoint

/vcpcloud/open/network/proxy/info

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesArrayYesInstance list

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId24LongTask ID
├─ padCodeAC22030010001StringInstance code
├─ vmStatusIntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
  "padCodes": [
    "AC32010140012"
  ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756348835040,
    "data": [
        {
            "taskId": 14294,
            "padCode": "ACP250820SBM4NEU",
            "vmStatus": 0,
            "taskStatus": 1
        }
    ],
    "traceId": "ewbrcry0frb4"
}

One-Key New Device ⭐

Note: One-key new device clears all system data. Use with caution! One-key new device clears all current instance data and resets Android properties.

  • Virtual machine: directly set Android properties, clear all data
  • Cloud real device: clear all data (equivalent to reset), add SIM info; if template ID provided, replace ADI template. If no template and replacementRealAdiFlag true, randomly select template.
  • Note: If no country info or unsupported, default Singapore SIM.
  • Unsupported country returns 500 error: Currently not supporting country code XX

API Endpoint

/vcpcloud/api/padApi/replacePad

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodes[]ArrayYesInstance ID list
countryCodeSGStringNoCountry code (see: https://chahuo.com/country-code-lookup.html)
realPhoneTemplateId65LongNoTemplate ID (refer to [Paginated Get Real Device Templates])
androidProp{"persist.sys.cloud.wifi.mac": "D2:48:83:70:66:0B"}ObjectNoRefer to [Android Modification Properties List]
replacementRealAdiFlagfalseBooleanNoWhether random ADI template for real device (false-no, true-yes)
excludeRealPhoneTemplateIds[101,102]Long[]NoExclude template IDs when random
certificateRefer to [Phone Root Certificate]StringNoPhone root certificate
wipeDatatrueBooleanNoClear user data (default true, CBS2.4.4+ support)
wipeSpecificData["/fonts","/media"]String[]NoEffective when wipeData false; specify data to clear
enableCpuCoreConfigtrueBooleanNoEnable CPU core config (based on Android cpuset for performance stability)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId12818LongTask ID
├─ padCodeAC22030010124StringInstance code
├─ vmStatusIntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
  "padCodes": ["AC32010250031"],
  "countryCode": "SG",
  "realPhoneTemplateId": 210,
  "androidProp": {
    "persist.sys.cloud.battery.level": "67",
    "persist.sys.cloud.gps.lat": "1.3657",
    "persist.sys.cloud.gps.lon": "103.6464",
    "persist.sys.cloud.imsinum": "525050095718767"
  },
  "replacementRealAdiFlag": true,
  "excludeRealPhoneTemplateIds": [101, 102],
  "certificate": "手机根证书",
  "wipeData": false,
  "wipeSpecificData": ["/fonts", "/media"]
}

Response Example 1

{
  "code": 200,
  "msg": "success",
  "ts": 1732270378320,
  "data": {
    "taskId": 8405,
    "padCode": "AC32010250031",
    "vmStatus": 2,
    "taskStatus": 1
  },
  "traceId": "ewab8qjqbaio"
}

Response Example 2

{
   "code": 500,
   "msg": "Currently not supporting country code: xx",
   "ts": 1753521350163,
   "data": null,
    "traceId": "ewab8qjqbaio"
}

Query One-Key New Device Supported Countries List

API Endpoint

/vcpcloud/api/padApi/country

Request Method

GET

Request Content Type

application/json

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject[]
├─ codeADStringCountry code
├─ nameAndorraStringCountry name (English)

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1730192434383,
  "traceId": "ewab8qjqbaio",
  "data": [{
    "code": "AD",
    "name": "Andorra"
  }]
}

Device Replacement

API Endpoint

/vcpcloud/api/padApi/replacement

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC22030010001StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ equipmentId358504LongDevice ID
├─ padCodeAC32011030092StringInstance code

Request Example

{
    "padCode": "AC32010030001"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "padCode": "AC32011030092",
        "equipmentId": 358504
    },
    "ts": 1741078432830
}

Get Instance Real-Time Preview Image

Get current screen screenshot for specified instance. Returns URL and expiration; access URL for real-time screenshot. Supports batch.

API Endpoint

/vcpcloud/api/padApi/getLongGenerateUrl

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodes["AC22030010001"]ArrayYesInstance list
formatpng / jpgStringNoImage format: png, jpg (default png; png no compression)
height800StringNoScaled height (pixels; default original)
width1280StringNoScaled width (pixels; default original)
quality60IntegerNoImage quality (0-100; default 50%; below 60 blurry)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ padCodeAC32011030092StringInstance code
├─ urlhttp://xxx.pngStringAccess URL
├─ expireAt1756024767163LongURL expiration timestamp
├─ successtrueBooleanSuccess generating URL
├─ reasonInstance status abnormalStringFailure reason (empty on success)

Request Example

{
    "padCodes": [
        "AC11010000031",
        "AC11010000032"
    ],
    "format": "png"
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756021167163,
    "data": [
        {
            "padCode": "AC11010000031",
            "url": "http://xxx.png",
            "expireAt": 1756024767163,
            "success": true,
            "reason": ""
        },
        {
            "padCode": "AC11010000032",
            "url": "",
            "expireAt": null,
            "success": false,
            "reason": "实例状态异常"
        }
    ]
}

Update Contacts

fileUniqueId or info required one API Endpoint
/vcpcloud/api/padApi/updateContacts

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodes[]ArrayYesInstance list
fileUniqueIdcfca25a2c62b00e065b417491b0cf07ffcStringNoContacts file ID
operateType-1IntegerNo-1 add, 0 delete, 1 overwrite (default -1)
infoObject[]NoContacts info
├─ firstNametomStringNoName
├─ phone13111111111StringNoPhone
├─ emailtom@gmail.comStringNoEmail

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId12818LongTask ID
├─ padCodeAC22030010124StringInstance code
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)
├─ vmStatusIntegerInstance online status (0: offline; 1: online)

Request Example

{
  "fileUniqueId": "cfca25a2c62b00e065b417491b0cf07ffc",
  "info": [{
    "firstName": "tom",
    "phone": "13111111111",
    "email": "xxxxx@gmail.com"
  }],
  "padCodes": [
    "AC32010180326"
  ]
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1756373645105,
  "data": [
    {
      "taskId": 392077,
      "padCode": "ATP250822LBOD8V7",
      "vmStatus": 0,
      "taskStatus": 1
    }
  ],
  "traceId": "ewcs8ow5u328"
}

Instance Set Proxy

API Endpoint

/vcpcloud/api/padApi/setProxy

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
account2222StringNoUsername
password2222StringNoPassword
ip47.76.241.5StringNoIP
port2222IntegerNoPort
enabletrueBooleanYesEnable
padCodesArrayYesInstance list
proxyTypevpnStringNoSupported: proxy, vpn
proxyNamesocks5StringNoSupported: socks5, http-relay (includes http/https)
bypassPackageListArrayNoBypass packages
bypassIpListArrayNoBypass IPs
bypassDomainListArrayNoBypass domains
sUoTtrueBooleanNoEnable UDP (default false)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject
├─ taskId24LongTask ID
├─ padCodeAC22030010001StringInstance code
├─ vmStatusIntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
 "padCodes": [
  "AC32010140023"
 ],
 "account": "2222",
 "password": "2222",
 "ip": "47.76.241.5",
 "port": 2222,
 "enable": true,
    "bypassPackageList":[],
    "bypassIpList":[],
    "bypassDomainList":[],
    "sUoT":true
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313787216,
    "data": [
        {
            "taskId": 22323879,
            "padCode": "ACN250828ED53YMG",
            "vmStatus": 0,
            "taskStatus": 1
        }
    ],
    "traceId": "ewab8whwonb4"
}

Real-Time Query Installed Apps List

API Endpoint

/vcpcloud/api/padApi/listInstalledApp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesAC32010250001String[]YesInstance codes
appNameStringNoApp name

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewc84g8si0oyStringTrace ID
ts1756021167163LongTimestamp
dataObject
├─ padCodeAC32010250001StringInstance code
├─ appsObject[]App list
├─ ├─ appName测试appStringApp name
├─ ├─ packageNamecom.xxx.xxxStringPackage name
├─ ├─ versionCode150600StringVersion code
├─ ├─ versionName15.6.0StringVersion name
├─ ├─ appState0Integer0-installed, 1-installing, 2-downloading

Request Example

{
 "padCodes": ["AC32010250001"],
 "appName": ""
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313784076,
    "data": [
        {
            "padCode": "ACP250417KYBOAXK",
            "apps": [
                {
                    "appName": "WeChat",
                    "packageName": "com.tencent.mm",
                    "versionCode": "2900",
                    "versionName": "8.0.62",
                    "appState": 0
                }
            ]
        }
    ],
    "traceId": "ewab8qh6vwg1"
}

Set App Keep-Alive

Currently supports Android 13,14,15 only.

API Endpoint

/vcpcloud/api/padApi/setKeepAliveApp

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesAC32010250001String[]NoInstance codes
applyAllInstancesfalseBooleanYesApply to all instances mode
appInfosObject[]No
├─ serverNamecom.example/com.example.service.TaskServiceStringYescom.xxx.xxx (package)/com.xxx.xxx.service.DomeService (full service path)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
datanull

Request Example

{
 "padCodes": [
  "AC002",
  "AC001"
 ],
 "appInfos": [{
   "serverName": "com.example/com.example.service.TaskService"
  }
 ],
 "applyAllInstances": false
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1736326542985,
    "data": [{
        "taskId": 10074,
        "padCode": "AC32010250011",
        "errorMsg": null
    }]
}

Upload User Image

API Endpoint

/vcpcloud/api/padApi/addUserRom

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
nameCloudROM-13StringYesROM name
updateLog更新StringYesUpdate log
androidVersion13StringYesAndroid version
versionv1.0.0StringYesVersion
downloadUrlhttps://file.vmoscloud.com/userFile/userRom/d281d848eff49adee2dda2475235b80b2.tarStringYesDownload URL
packageSize236978175StringYesSize (bytes)

Response Parameters

Field NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736326542985LongTimestamp
dataimg-2505287582886572StringImage ID

Request Example

{
    "name": "CloudROM-13-11",
    "updateLog": "更新日志",
    "androidVersion": "13",
    "version": "v1.0.0",
    "downloadUrl": "https://file.vmoscloud.com/userFile/userRom/d281d848eff49adee2dda2475235b80b2.tar",
    "packageSize": 236978175,
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": "img-2505287582886572",
    "ts": 1748425758327
}

Set App Hide

(Pending Launch)
Send hide package list to instance; empty list clears hide list. Note: If app not installed, setting ineffective; restart after install.

API Endpoint

vcpcloud/api/padApi/setHideAppList

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesAC32010250001String[]YesInstance codes (max 500)
appInfosObject[]YesHide app list (0-500; empty clears)
├─ packageNamecom.tencent.mmStringNoPackage name (empty or empty array clears)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
datanull

Request Example

{
 "padCodes": [
  "AC002",
  "AC001"
 ],
 "appInfos": [{
   "packageName": "com.tencent.mm"
  }]
}

Clear Hide List Example

{
 "padCodes": [
  "AC002",
  "AC001"
 ],
 "appInfos": []
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1736326542985,
    "data": null
}

Modify Real Device ADI Template

Modify cloud real device ADI template with provided template ID.
Conditions:

  1. Instance created as cloud real device type
  2. Instance Android version matches target ADI version

API Endpoint

/vcpcloud/api/padApi/replaceRealAdiTemplate

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010001StringYesInstance code
wipeDatafalseBooleanYesClear data
realPhoneTemplateId186LongYesReal device template ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
 "padCodes": ["AC32010250011"],
 "wipeData": true,
 "realPhoneTemplateId": 186
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1736326542985,
 "data": [{
  "taskId": 10074,
  "padCode": "AC32010250011",
  "errorMsg": null,
   "taskStatus": 1
 }]
}

Error Codes

Error CodeError DescriptionSuggestion
110028Instance does not existContact admin
110064Some instances do not meet real device upgrade conditionsCheck instance type
110099ADI template does not existCheck parameters

Async Execute ADB Commands

Async execute commands in one or more cloud instances.

API Endpoint

/vcpcloud/api/padApi/asyncCmd

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22020020793StringYesInstance code
scriptContentcd /root;lsStringYesADB commands (multiple separated by 😉

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewc84g8si0oyStringTrace ID
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC22020020793StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)

Request Example

{
    "padCodes": [
        "AC22020020793"
    ],
    "scriptContent": "cd /root;ls"
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570297639,
  "traceId": "ewab8whwonb4",
  "data": [
  {
   "taskId": 14,
   "padCode": "AC22030010001",
   "vmStatus": 1
  },
  {
   "taskId": 15,
   "padCode": "AC22030010002",
   "vmStatus": 0
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110003ADB command failedContact admin
110012Command timeoutRetry later

Switch Root Permissions

Switch root permissions in one or more cloud instances. For single app root, specify package name (cloud real device: not recommended global root due to detection risk).

API Endpoint

/vcpcloud/api/padApi/switchRoot

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22020020793StringYesInstance code
globalRootfalseBooleanNoGlobal root (default no)
packageNamecom.exampleStringNoPackage name (required for non-global; multiple comma separated)
rootStatusIntegerYesRoot status: 0-off, 1-on

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC22020020793StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)

Request Example

{
  "padCodes": [
    "AC32010250002"
  ],
  "globalRoot": false,
  "packageName": "com.android.ftpeasys",
  "rootStatus": 0
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570297639,
 "data": [
  {
   "taskId": 14,
   "padCode": "AC32010250002",
   "vmStatus": 1
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110003ADB command failedContact admin
110089Single root package name emptyProvide package name for single app root

Local Screenshot

Instance screenshot.

API Endpoint

/vcpcloud/api/padApi/screenshot

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010231StringYesInstance code
rotation0IntegerYesScreenshot orientation: 0-default, 1-rotate to portrait
broadcastfalseBooleanNoBroadcast event (default false)
definitionIntegerNoClarity 0-100
resolutionHeightIntegerNoHeight >1
resolutionWidthIntegerNoWidth >1

Response Parameters

Parameter NameExample ValueTypeRequiredDescription
code200IntegerYesStatus code
msgsuccessStringYesResponse message
ts1756021167163LongYesTimestamp
dataObject[]No
├─ taskId1IntegerNoTask ID
├─ padCodeAC21020010231StringNoInstance code
├─ vmStatus1IntegerYesInstance online status (0: offline; 1: online)

Request Example

{
 "padCodes": [
  "AC21020010231"
 ],
 "rotation": 0,
 "broadcast": false,
    "definition": 50,
    "resolutionHeight": 1920,
    "resolutionWidth": 1080
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1717570337023,
 "data": [
  {
   "taskId": 16,
   "padCode": "AC22030010001",
   "vmStatus": 1
  },
  {
   "taskId": 17,
   "padCode": "AC22030010002",
   "vmStatus": 0
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110001Screenshot failedRetry
110004Restart failedRestart later
110028Instance not existCheck instance

Generate Preview Image

Get preview image for specified instance.

API Endpoint

/vcpcloud/api/padApi/generatePreview

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC11010000031StringYesInstance code
rotation0IntegerYesScreenshot orientation: 0-default, 1-rotate to portrait
broadcastfalseBooleanNoBroadcast event (default false)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ padCodeAC11010000031StringInstance code
├─ urlhttp://xxx.armcloud.pngStringAccess URL
├─ expireAt1756024767163LongURL expiration
├─ successtrueBooleanSuccess
├─ reasonInstance status abnormalStringFailure reason

Request Example

{
    "padCodes": [
        "AC11010000031",
        "AC11010000032"
    ],
    "format": "png"
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756021167163,
    "data": [
        {
            "padCode": "AC11010000031",
            "url": "http://xxx.armcloud.png",
            "expireAt": 1756024767163,
            "success": true,
            "reason": ""
        },
        {
            "padCode": "AC11010000032",
            "url": "",
            "expireAt": null,
            "success": false,
            "reason": "实例状态异常"
        }
    ]
}

Upgrade Image

Batch instance image upgrade.

API Endpoint

/vcpcloud/api/padApi/upgradeImage

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010182StringYesInstance code
imageIdmg-24061124017StringYesImage ID
wipeDatafalseBooleanYesClear data partition: true-yes, false-no
enableCpuCoreConfigtrueBooleanNoEnable CPU core config

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject[]
├─ padCodeAC22030010182StringInstance code
├─ taskId1IntegerTask ID
├─ errorMsg“”StringError message

Request Example

{
    "padCodes": [
        "AC22030010182"
    ],
    "wipeData": false,
    "imageId": "mg-24061124017"
}

Response Example

{
 "code": 200,
  "traceId": "ewab8whwonb4",
  "msg": "success",
 "ts": 1718594881432,
 "data": [
  {
   "taskId": 63,
   "padCode": "AC22030010182",
   "errorMsg": null
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110041Image does not existCheck image ID
110037Upgrade command failedInstance status issue
110038Upgrade execution failedInstance status issue

Upgrade Real Device Image

Batch real device image upgrade.

API Endpoint

/vcpcloud/api/padApi/virtualRealSwitch

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010182StringYesInstance code
imageIdmg-24061124017StringYesImage ID
wipeDatafalseBooleanYesClear data: true-yes, false-no
realPhoneTemplateId178IntegerNoReal device template ID (required for real)
upgradeImageConvertTypevirtualStringYesConvert type: virtual / real
screenLayoutId14IntegerNoScreen layout ID (required for virtual)
certificateRefer to [Phone Root Certificate]StringNoCustom root certificate
deviceAndroidProps{"persist.sys.cloud.wifi.mac": "D2:48:83:70:66:0B"}ObjectNoAndroid props (CBS <2.4.4 not support)
enableCpuCoreConfigtrueBooleanNoEnable CPU core config

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject[]
├─ padCodeAC22030010182StringInstance code
├─ taskId1IntegerTask ID
├─ errorMsg“”StringError message

Request Example

{
    "padCodes": [
        "AC32010210023"
    ],
        "imageId": "img-24112653977",
        "wipeData": true,
        "realPhoneTemplateId": 178,
        "upgradeImageConvertType": "virtual",
        "screenLayoutId": 14
}

Response Example

{
 "code": 200,
 "msg": "success",
 "ts": 1718594881432,
 "traceId": "ewab8whwonb4",
    "data": [
  {
   "taskId": 63,
   "padCode": "AC22030010182",
   "errorMsg": null
  }
 ]
}

Error Codes

Error CodeError DescriptionSuggestion
110041Image does not existCheck image ID
110037Upgrade command failedInstance status issue
110038Upgrade execution failedInstance status issue
110064Some instances do not meet real device conditionsCheck instances

Paginated Get Real Device Templates

Paginated retrieval of real device templates.

API Endpoint

/vcpcloud/api/padApi/templateList

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
pageIndex1IntegerNoPage number (default 1)
pageSize10IntegerNoRecords per page (default 10, range 1-100)
androidImageVersion14StringNoAndroid image version

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewc84g8si0oyStringTrace ID
dataObject[]Response data list
├─ id178LongAccount ID
├─ brandgoogleStringBrand
├─ modelPixel 7 Pro(12G)StringModel
├─ fingerprintMd5f5da7b97678ac19309f0cf0203e072d7StringAndroid MD5 (ro.build.fingerprint)
├─ fingerprintgoogle/cheetah/cheetah:13/TQ3A.230901.001/10750268:user/release-keysStringAndroid ro.build.fingerprint
├─ resourceSpecificationCodem2-3StringSpecification code
├─ screenLayoutCoderealdevice_1440x3120x560StringScreen layout code
├─ adiTemplateDownloadUrlhttps://example.com/file.zipStringADI template file download path
├─ adiTemplatePwd123456StringADI template file password
├─ propertyJson{"test": "testa"}JSONInstance properties
├─ androidImageVersion13IntegerAndroid image version
├─ deleteFlag0IntegerDeleted (1: yes; 0: no)
├─ createByadminStringCreator
├─ createTime2024-08-28 12:00:00TimestampCreate time
├─ updateByadminStringUpdater
├─ updateTime2024-08-28 12:30:00TimestampUpdate time
├─ deviceNamePixel ProStringDevice name (alias/display)
├─ isOfficial1IntegerOfficial (0: test; 1: official)
├─ status1IntegerEnabled (0: disabled; 1: enabled)
├─ adiTemplateVersionv1.0.2StringADI template version
├─ modelCodecheetahStringModel code
├─ isPublic1IntegerTemplate type (1: public; 0: private)
├─ aospVersion13.0.1StringAOSP version
├─ testCasesDownloadUrlhttps://example.com/cases.zipStringTest cases file download path

Request Example

{
    "pageIndex": 1,
    "pageSize": 10
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313820061,
    "data": [
        {
            "id": 202,
            "createTime": "2025-03-12T02:29:43.000+00:00",
            "createBy": "",
            "updateTime": "2025-04-29T09:44:28.000+00:00",
            "updateBy": "",
            "brand": "HONOR(FIX)",
            "model": "ELZ-AN10(8G)",
            "fingerprint": "HONOR/ELZ-AN10/HNELZ:14/HONORELZ-AN10/8.0.0.185CHNC00E185R4P6:user/release-keys",
            "fingerprintMd5": "9bf2de4b6aa70466a6f76f66539c4613",
            "resourceSpecificationCode": "m2-4",
            "screenLayoutCode": "realdevice_1344x2772x476",
            "adiTemplateDownloadUrl": "https://oss-hk.armcloud.net/adi/35fdc068d6fdc32a691554989008160b_fix2.zip",
            "adiTemplatePwd": "XMDoxJgoKIZKoWbWlnmY",
            "propertyJSON": "{}",
            "androidImageVersion": 14,
            "deleteFlag": false,
            "deviceName": "ELZ-AN10(8G)",
            "isOfficial": 1,
            "status": 1,
            "adiTemplateVersion": null,
            "modelCode": null,
            "isPublic": 1,
            "testCasesDownloadUrl": null,
            "aospVersion": "android14"
        }
    ],
    "traceId": "ewabantnnwn4"
}

Batch Get Instance Device Model Information

(Pending Launch)
Batch get device model information for corresponding instances based on instance codes.

API Endpoint

/vcpcloud/api/padApi/modelInfo

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010182StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewbssur1jbwgStringTrace ID
ts1756021167163LongTimestamp
dataObject[]
├─ padCodeAC22030010182StringInstance code
├─ imei524803173613682StringIMEI
├─ serialno01NM5ON34M4OStringSerial number
├─ wifimac04:3a:6c:e5:e9:8d:62:d6:4aStringWi-Fi MAC address
├─ androididaa6bcedf1426546cStringAndroid instance unique ID
├─ modelMi 10 ProStringModel
├─ brandXiaomiStringBrand
├─ manufacturerXiaomiStringManufacturer
├─ isRoot1StringRooted (1: yes)
├─ width720IntegerCloud phone width (max 1080)
├─ height1280IntegerCloud phone height (max 1920)
├─ memoryLimit1024IntegerMemory limit
├─ bluetoothaddr3A:1F:4B:9C:2D:8EStringBluetooth address
├─ phonenum1112341234StringPhone number
├─ romVersionandroid13StringAndroid version
├─ dataSize2367381504IntegerStorage size (bytes)
├─ dataSizeAvailable365830144IntegerAvailable storage (bytes)
├─ dataSizeUsed2001551360IntegerUsed storage (bytes)
├─ romVersionandroid14StringROM version

Request Example

{
    "padCodes": [
        "AC22030010182"
    ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1752845766596,
    "data": [
        {
            "padCode": "ACN250718J6ZLUYS",
            "imei": "237150320344334",
            "serialno": null,
            "wifimac": "44:5a:56:fb:6a:ec",
            "androidid": "ecb978a3cafff13",
            "model": "SM-A057F",
            "brand": "samsung",
            "manufacturer": "samsung",
            "isRoot": null,
            "width": 1080,
            "height": 2400,
            "memoryLimit": null,
            "bluetoothaddr": null,
            "phonenum": null,
            "dataSize": null,
            "dataSizeAvailable": null,
            "dataSizeUsed": null,
            "romVersion": "android14"
        }
    ],
    "traceId": "esb357am18n4"
}

Set Instance Bandwidth

(Pending Launch)
Set instance bandwidth based on instance code.

API Endpoint

/vcpcloud/api/padApi/setSpeed

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC22030010124StringYesInstance code
upBandwidth10.00floatYesUpload bandwidth Mbps (0: unlimited; -1: block internet)
downBandwidth10.00floatYesDownload bandwidth Mbps (0: unlimited; -1: block internet)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
traceIdewbssur1jbwgStringTrace ID
dataObject[]
├─ taskId679IntegerTask ID
├─ padCodeAC32010140011StringInstance code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
 "padCodes": [
  "AC32010140011"
 ],
 "upBandwidth": 10.00,
 "downBandwidth": 10.00
}

Response Example

{
 "code": 200,
 "msg": "success",
 "traceId": "ewab8qjqbaio",
 "ts": 1721640654237,
 "data": [
  {
   "taskId": 679,
   "padCode": "AC32010140011",
   "vmStatus": 1,
   "taskStatus": 1
  }
 ]
}

Enable/Disable ADB

Enable or disable ADB for instance based on instance code.

API Endpoint

/vcpcloud/api/padApi/openOnlineAdb

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]YesInstance list (1-200 instances)
├─AC32010250032StringYesInstance code
openStatus1IntegerYesADB status (1: enable; 0 or omit: disable)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1721739857317LongTimestamp
dataObject[]
├─ taskId16147IntegerTask ID
├─ padCodeAC32010250032StringInstance code
├─ taskStatus3IntegerTask status (-1: all failed; -2: partial failed; -3: canceled; -4: timeout; -5: abnormal; 1: pending; 2: executing; 3: completed)
├─ taskResultsuccessStringTask result

Request Example

{
    "padCodes":[
        "AC32010250032"
    ],
    "openStatus": 1
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1736920929306,
    "data": [
        {
        "taskId": 16147,
        "padCode": "AC32010250032",
        "taskStatus": 3,
        "taskResult": "success"
        }
    ]
}

Get ADB Connection Information

Get ADB connection information based on instance code. If response data (key, adb) incomplete, call [Enable/Disable ADB] to enable ADB first.

API Endpoint

/vcpcloud/api/padApi/adb

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC32010250032StringYesInstance code
enabletrueBooleanYesADB status: true-enable, false-disable

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewbssur1jbwgStringTrace ID
ts1736922808949LongTimestamp
dataObject[]
├─ padCodeAC32010250032StringInstance code
├─ commandssh -oHostKeyAlgorithms=+ssh-rsa 10.255.3.2_001_1736922765389@156.59.80.166 -p 1824 -L 8572:adb-proxy:53728 -NfStringSSH connection command
├─ expireTime2025-01-16 14:32:00StringADB link expiration
├─ enabletrueBooleanADB status: true-enable, false-disable
├─ key3CXr3FJZ6gbnGuJctDOpP9M6X6Rl786xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==StringConnection key
├─ adbadb connect localhost:8577StringADB connection info

Request Example

{
    "padCode": "AC32010250032",
    "enable": true
}

Response Example

{
    "code": 200,
    "msg": "success",
    "traceId": "ewab8qjqbaio",
    "ts": 1736922808949,
    "data": {
        "padCode": "AC32010250032",
        "command": "ssh -oHostKeyAlgorithms=+ssh-rsa 10.255.3.2_001_1736922765389@156.59.80.166 -p 1824 -L 8572:adb-proxy:53728 -Nf",
        "expireTime": "2025-01-16 14:32:00",
        "enable": true,
        "key": "3CXr3FJZ6gbnGuJctDOpP9M6X6Rl786xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==",
        "adb": "adb connect localhost:8577"
    }
}

Batch Get ADB Connection Information

(Pending Launch)
Batch get or disable ADB connection information based on instance code list. If enable success but connection info incomplete, call [Enable/Disable ADB] to re-enable first. Max 10 instances per call.

API Endpoint

/vcpcloud/api/padApi/batch/adb

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodes["AC32010250032","AC32010250033"]String[]YesInstance code list (max 10)
enabletrueBooleanYesEnable ADB: true-enable and return info, false-disable

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewbssur1jbwgStringTrace ID
ts1736922808949LongTimestamp
dataObject
├─ successListObject[]Success list
│ ├─ padCodeAC32010250032StringInstance code
│ ├─ commandssh -oHostKeyAlgorithms=+ssh-rsa 10.255.3.2_001_1736922765389@156.59.80.166 -p 1824 -L 8572:adb-proxy:53728 -NfStringSSH command
│ ├─ expireTime2025-01-16 14:32:00StringADB expiration
│ ├─ enabletrueBooleanADB status
│ ├─ key3CXr3FJZ6gbnGuJctDOpP9M6X6Rl786xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==StringConnection key
│ ├─ adbadb connect localhost:8577StringADB connection
├─ failedListObject[]Failure list
│ ├─ padCodeAC32010250034StringInstance code
│ ├─ errorMsgInstance not runningStringFailure reason
│ ├─ errorCodePAD_NOT_RUNNINGStringError code

Request Example

{
    "padCodes": [
        "AC32010250032",
        "AC32010250033"
    ],
    "enable": true
}

Response Example

{
    "code": 200,
    "msg": "success",
    "traceId": "ewbssur1jbwg",
    "ts": 1736922808949,
    "data": {
        "successList": [
            {
                "padCode": "AC32010250032",
                "command": "ssh -oHostKeyAlgorithms=+ssh-rsa 10.255.3.2_001_1736922765389@156.59.80.166 -p 1824 -L 8572:adb-proxy:53728 -Nf",
                "expireTime": "2025-01-16 14:32:00",
                "enable": true,
                "key": "3CXr3FJZ6gbnGuJctDOpP9M6X6Rl786xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==",
                "adb": "adb connect localhost:8577"
            }
        ],
        "failedList": [
            {
                "padCode": "AC32010250034",
                "errorMsg": "实例未运行",
                "errorCode": "PAD_NOT_RUNNING"
            }
        ]
    }
}

Transfer Cloud Phone

Transfer specified cloud phone instances to another account (via the recipient account's email).

Interface Address

/vcpcloud/api/padApi/confirmTransfer

Request Method

POST

Request Content-Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodes["ACXXXXXXXXX"]String[]YesList of instance codes to transfer
makeOverMobilePhone"XXXX.gmail.com"StringYesRecipient account email

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1731055053049LongTimestamp
datatrueBooleanWhether the transfer was successful (true/false)

Request Example

{
  "padCodes": [
    "ACXXXXXXXXX"
  ],
  "makeOverMobilePhone": "XXXX.gmail.com"
}

Response Example

{
  "msg": "success",
  "code": 200,
  "data": true,
  "ts": 1731055053049
}

Simulate Touch

Simulate touch events (down, up, move) in instance via XY coordinates.

Exception check: Repeated requests within 2s return error "Do not operate frequently".

API Endpoint

/vcpcloud/api/padApi/simulateTouch

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeDescription
padCodes2200String[]Instances to trigger touch
width120IntegerContainer width
height120IntegerContainer height
pointCount1IntegerMulti-touch (1-10 fingers; default 1)
positions[{"actionType":0,"x":100,"y":100,"nextPositionWaitTime":20}]Object[]Touch coordinate groups
├─ actionType1IntegerAction type (0: down; 1: up; 2: move)
├─ x100floatX coordinate
├─ y100floatY coordinate
├─ nextPositionWaitTime100IntegerWait time (ms) before next group
├─ swipe-1floatSwipe distance (-1: down; 1: up)
├─ touchTypegestureSwipeStringgestureSwipe-swipe, gesture-touch, keystroke-key (default down+up)
├─ keyCode1IntegerKey code
├─ pressure0.5floatTouch pressure
├─ size0.5floatTouch area ratio

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
traceIdewbssur1jbwgStringTrace ID
dataObject[]
├─ padCodeAC32032StringInstance code
├─ taskId10004759LongTask ID
├─ vmStatus0StringInstance online status
├─ taskStatus1IntegerTask status (-1: task exists; 1: added)

Request Example

{
  "padCodes": [
    "实例编号"
  ],
  "width": 1080,
  "height": 1920,
  "pointCount":1,
  "positions": [
    {
      "actionType": 0,
      "x": 100,
      "y": 100,
      "nextPositionWaitTime": 20,
      "swipe":-1,
      "touchType":"gestureSwipe",
      "keyCode":1,
        "pressure":0.5,
        "size":0.5
    },
    {
      "actionType": 2,
      "x": 110,
      "y": 110,
      "nextPositionWaitTime": 22
    },
    {
      "actionType": 2,
      "x": 120,
      "y": 120,
      "nextPositionWaitTime": 23
    },
    {
      "actionType": 1,
      "x": 120,
      "y": 120
    }
  ]
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1743676563784,
  "traceId": "ewab8qjqbaio",
    "data": [
    {
      "taskId": 100059,
      "padCode": "ACP00001",
      "vmStatus": 0,
      "taskStatus": 1
    },
    {
      "taskId": 100060,
      "padCode": "ACP00001",
      "vmStatus": 0,
      "taskStatus": 1
    }
  ]
}

Instance Operation Task Details

Query detailed execution results for specified instance operation task.

API Endpoint

/vcpcloud/api/padApi/padTaskDetail

Request Method

POST

Request Content Type

application/json

Request Query Parameters

Parameter NameExample ValueTypeRequiredDescription
taskIdsInteger[]Yes
├─ taskId1IntegerYesTask ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
traceIdewbssur1jbwgStringTrace ID
dataObject[]Sub-task details
├─ taskId1IntegerSub-task ID
├─ padCodeVP22020020793StringInstance identifier
├─ taskStatus2StringTask status (-1: all failed; -2: partial failed; -3: canceled; -4: timeout; 1: pending; 2: executing; 3: completed; 9: queued)
├─ endTime1713429401000LongSub-task end timestamp
├─ taskContent“”StringTask content
├─ taskResult“”StringTask result
├─ errorMsg“”StringError message

Request Example

{
 "taskIds":[1,2]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1756313781081,
    "data": [
        {
            "taskId": 22323794,
            "padCode": "ACN250828DYJE95Z",
            "taskStatus": 2,
            "endTime": null,
            "taskContent": null,
            "taskResult": null,
            "errorMsg": null
        }
    ],
    "traceId": "ewab8kpxb7k0"
}

Get Instance Script Execution Result

Get script execution result for instance via script task ID.

API Endpoint

/vcpcloud/api/padApi/executeScriptInfo

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
taskIdsInteger[]YesArray length 1-100
├─1IntegerNoTask ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewc84g8si0oyStringTrace ID
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC22020020793StringInstance code
├─ taskStatus3IntegerTask status (-1: all failed; -2: partial failed; -3: canceled; -4: timeout; 1: pending; 2: executing; 3: completed)
├─ endTime1756021166163LongTask end time
├─ taskContentSuccessStringTask content
├─ taskResultSuccessStringTask result
├─ errorMsgInstance does not existStringFailure reason

Request Example

{
 "taskIds": [1]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1752214432301,
    "data": [
        {
            "taskId": 49884,
            "padCode": "ATP250707FNSVRMC",
            "taskStatus": 3,
            "endTime": 1752214271000,
            "taskContent": null,
            "taskResult": null,
            "errorMsg": "调用Adb命令成功"
        }
    ],
    "traceId": "erl0i57h6v40"
}

Get Instance Screenshot Result

(Pending Launch)
Get instance screenshot result via screenshot task ID.

API Endpoint

/vcpcloud/api/padApi/screenshotInfo

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
taskIdsInteger[]Yes
├─1IntegerNoTask ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewbssur1jbwgStringTrace ID
ts1756021167163LongTimestamp
dataObject[]Task details
├─ taskId1IntegerTask ID
├─ taskStatus3IntegerTask status (-1: all failed; -2: partial failed; -3: canceled; -4: timeout; 1: pending; 2: executing; 3: completed)
├─ padCodeAC22020020793StringInstance code
├─ taskContentSuccessStringTask content
├─ taskResultSuccessStringTask result
├─ endTime1756121167163StringTask end time

Request Example

{
 "taskIds": [1]
}

Response Example

{
 "code": 200,
 "msg": "success",
  "traceId": "ewab8qjqbaio",
  "ts":1713773577581,
 "data":[
    {
    "taskId": 1,
    "taskStatus": 3,
    "padCode": "AC22020020793",
    "taskContent": "Success",
    "taskResult": "Success",
    "endTime": 1756121167163
    }
   ]
}

Instance Restart/Reset Execution Result

(Pending Launch)
Get instance restart/reset execution result via task ID.

API Endpoint

/vcpcloud/api/padApi/padExecuteTaskInfo

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
taskIdsInteger[]Yes
├─1IntegerYesTask ID

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
traceIdewbssur1jbwgStringTrace ID
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ taskStatus3IntegerTask status (-1: all failed; -2: partial failed; -3: canceled; -4: timeout; 1: pending; 2: executing; 3: completed)
├─ endTime1756021166163LongTask end time
├─ taskContent“”StringTask content
├─ taskResultSuccessStringTask result

Request Example

{
    "taskIds": [1]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "traceId": "ewab8qjqbaio",
    "ts": 1756021167163
    "data":[
        {
            "taskId": 1,
            "padCode": "AC22030022911",
            "taskStatus": 3,
            "endTime": 1756021166163,
            "taskContent": null,
            "taskResult": "Success"
        }
    ]
}

Instance List Information

Paginated get instance list information based on query conditions.

API Endpoint

/vcpcloud/api/padApi/infos

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
page1IntegerYesPage number
rows10IntegerYesRecords per page
padTyperealStringNoInstance type (virtual: virtual; real: real)
padCodesString[]No
├─AC22010020062StringYesInstance code

Response Parameters

Parameter NameExample ValueTypeDescription
code200Integer
msgsuccessString
ts1713773577581Long
dataObject
├─ page1IntegerCurrent page
├─ rows10IntegerRecords per page
├─ size1IntegerCurrent page count
├─ total1IntegerTotal records
├─ totalPage1IntegerTotal pages
├─ pageDataobject[]List
├─ ├─ padCodeVP21020010391StringInstance code
├─ ├─ padGradeq1-2StringInstance openings
├─ ├─ padStatus10StringInstance status
├─ ├─ idcCoded3c1f580c41525e514330a85dfdecda8StringData center code
├─ ├─ deviceIp192.168.0.0StringCloud machine IP
├─ ├─ padIp192.168.0.0StringInstance IP
├─ ├─ appsString[]Installed apps
├─ ├─ ├─armcloud001StringInstalled app

Request Example

{
"page": 1,
"rows": 10,
"padCodes": [
"AC21020010391"
]
}

Response Example

{
"code": 200,
"msg": "success",
"ts":1713773577581,
"data": {
"page": 1,
"rows": 1,
"size": 1,
"total": 1,
"totalPage": 1,
"pageData": [
{
{
"padCode": "AC21020010391",
"padGrade": "q2-4",
"padStatus": 10,
"idcCode": "8e61ad284bc105b877611e6fef7bdd17",
"deviceIp": "172.31.2.34",
"padIp": "10.255.1.19",
"apps": [
"armcloud001"
]
}
]
}
}

Import Call Logs

This interface imports call log data into cloud phone. During import, it automatically detects saved contacts and displays corresponding names in call logs for quick identification.

API Endpoint

/vcpcloud/api/padApi/addPhoneRecord

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesACP2505060777String[]YesInstances to edit call logs
callRecords[{"number":"18009781201","inputType":1,"duration":30,"timeString":"2025-05-06 14:00:09"}]Object[]YesCall logs
├─ number13900000000StringYesPhone number
├─ inputType1intYesCall type (1: outgoing; 2: incoming; 3: missed)
├─ duration60intYesDuration (seconds; 0 for missed)
├─ timeString2025-05-08 12:30:00StringNoCall time

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
dataObject[]
├─ padCodeAC32032StringInstance code
├─ taskId10004759LongTask ID
├─ vmStatus0StringOnline status

Request Example

{
  "padCodes": [
     "实例编号"
  ],
  "callRecords": [
    {
      "number": "18009781201",
      "inputType": 1,
      "duration": 30,
      "timeString": "2025-05-06 14:00:09"
    },
    {
      "number": "18009781202",
      "inputType": 2,
      "duration": 60,
      "timeString": "2025-05-07 14:00:09"
    },
    {
      "number": "18009781203",
      "inputType": 3,
      "duration": 0
    }
  ]
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1743676563784,
  "data": [
    {
      "taskId": 100059,
      "padCode": "ACP00001",
      "vmStatus": 0
    },
    {
      "taskId": 100060,
      "padCode": "ACP00001",
      "vmStatus": 0
    }
  ]
}

Cloud Phone Text Input

Focus input box in cloud phone first, call this interface with text to display at specified position.

API Endpoint

/vcpcloud/api/padApi/inputText

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesACP2505060777String[]YesInstance codes
texthello123StringYesInput text

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
dataObject[]
├─ padCodeAC32032StringInstance code
├─ taskId10004759LongTask ID
├─ vmStatus0StringOnline status
├─ taskStatus1StringTask status

Request Example

{
   "padCodes": [
      "ACP250509FECQN33",
      "ACP250509T1VME44",
      "ACP25050917AYX11"
   ],
   "text": "12345678"
}

Response Example

{
     "msg": "success",
     "code": 200,
     "data": [
      {
         "padCode": "ACP250509FECQN33",
         "vmStatus": 0,
         "taskId": 10013014,
         "taskStatus": 1
      },
      {
         "padCode": "ACP250509T1VME44",
         "vmStatus": 0,
         "taskId": 10013015,
         "taskStatus": 1
      },
      {
         "padCode": "ACP25050917AYX11",
         "vmStatus": 0,
         "taskId": 10013016,
         "taskStatus": 1
      }
   ],
   "ts": 1746797852244
}

Simulate Send SMS

Simulate sending SMS to instance (supports batch). Limited to AOSP13/14.

API Endpoint

/vcpcloud/api/padApi/simulateSendSms

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodes["ACN2505060777"]String[]YesInstance list (1-100)
senderNumber13800000000StringYesSender number (no mainland; max 16 chars, digits/letters/space/+-)
smsContent这是一条测试短信。StringYesSMS content (max 127 chars)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
traceIdewb123abcStringTrace ID
datatrueBooleanSuccess

Request Example

{
  "padCodes": ["ACN2505060777"],
  "senderNumber": "13800000000",
  "smsContent": "这是一条测试短信。"
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1736922808949,
  "traceId": "ewb123abc",
  "data": true
}

Reset GAID

Reset advertising ID (GAID) in cloud phone via instance code or group.

API Endpoint

/vcpcloud/api/padApi/resetGAID

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesString[]Yes
├─AC21020010001StringYesInstance code
resetGmsTypeGAIDStringYesReset type: GAID
oprByzhangsanStringNoOperator
taskSourceOPEN_PLATFORMStringYesTask source: OPEN_PLATFORM

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance code
├─ vmStatus1IntegerOnline status (0: offline; 1: online)

Request Example

{
   "padCodes": [
      "ACPXXXXXXXXXXXXXXX"
   ],
  "taskSource": "OPEN_PLATFORM",
  "oprBy": "admin",
  "resetGmsType": "GAID"
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1717559681604,
    "data": [
         {
            "taskId": 88,
            "padCode": "AC22030010001",
            "vmStatus": 1
         },
         {
            "taskId": 89,
            "padCode": "AC22030010002",
            "vmStatus": 0
         }
      ]
}

Inject Audio to Instance Microphone

Inject audio file to instance microphone (PCM format only; convert first).

API Endpoint

/vcpcloud/api/padApi/injectAudioToMic

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesACP2505060777String[]YesInstance codes
urlhttp://localhost/abcStringNoAudio download URL (one of url/fileUniqueId)
fileUniqueId8fc73d05371740008ea27a2707496a82StringNoFile unique ID (one of url/fileUniqueId)
enabletrueBooleanYesInject switch

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
dataObject[]
├─ padCodeAC32032StringInstance code
├─ taskId10004759LongTask ID
├─ vmStatus0StringOnline status
├─ taskStatus1StringTask status

Request Example

{
  "padCodes": [
    "ACP250509FECQN33","ACP250509T1VME44","ACP25050917AYX11
  ],
  "url":"http://localhost/abc ",
  "fileUniqueId":"8a6d0df189ef4b0e83858fd9eeb7620c",
  "enable":true
}

Response Example

{
     "msg": "success",
     "code": 200,
     "data": [
      {
         "padCode": "ACP250509FECQN33",
         "vmStatus": 0,
         "taskId": 10013014,
         "taskStatus": 1
      },
      {
         "padCode": "ACP250509T1VME44",
         "vmStatus": 0,
         "taskId": 10013015,
         "taskStatus": 1
      },
      {
         "padCode": "ACP25050917AYX11",
         "vmStatus": 0,
         "taskId": 10013016,
         "taskStatus": 1
      }
   ],
   "ts": 1746797852244
}

Create Local Instance Backup

(Pending Launch)
Create backup for local instance.

API Endpoint

/vcpcloud/api/padApi/localPodBackup

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodePAD_001StringYesInstance code (max 64 chars)
backupNamebacknameinfoStringNoBackup name (max 128 chars)
backupPathbackup/dbStringNoPath (no leading /; default root /{backupID}/ ; max 256 chars)
ossConfig{...}ObjectYesS3-compatible OSS config (permanent auth required)
├─ endpointoss-cn-shanghai.aliyuncs.comStringYesOSS endpoint (max 128 chars)
├─ bucketpad-backupStringYesBucket name (max 128 chars)
├─ accessKeyAKIA123456StringYesAccess key (max 128 chars)
├─ secretKeyxxxxxxxStringYesSecret key (max 128 chars)
├─ protocolhttpsStringYesProtocol: http or https (max 16 chars)
├─ regioncn-shanghaiStringYesRegion (max 32 chars)
├─ securityTokenxxxxxxxxxStringYes if credentialType=2Temporary token
├─ expiration2025-12-01T21:38:49zStringYes if credentialType=2Expiration
credentialType1IntegerNoCredential type: 1-permanent, 2-temporary

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code (200 success)
msgsuccessStringRequest status
ts1758271736814LongTimestamp
data{...}ObjectTask info
├─ taskId59LongTask ID
├─ padCodeACP250919HTTMIBQStringInstance code
├─ vmStatus0IntegerOnline status: 0-offline, 1-online
├─ taskStatus1IntegerTask status: -1 exists, 1 added
├─ errMsgnullStringError message
├─ backupNamebackupNameStringBackup name
├─ backupIdbkp-ACP250919HTTMIBQ-1758271735910StringBackup ID
traceIdeyj68nk6dnuoStringTrace ID

Request Example

{
  "padCode": "ACP25091XXXXXX15",
  "backupName": "backnameinfo",
  "backupPath": "backup/data/",
  "credentialType": 1,
  "ossConfig": {
    "endpoint": "oss-cn-xxxxx.xxxxx.com",
    "bucket": "armcloud-cn",
    "accessKey": "LTAI5txxxxxxxYC",
    "secretKey": "kjgvYxxxxxxxxxxx8URWU",
    "protocol": "httpxxxx",
    "region": "cn-xxxxx"
  }
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1758271736814,
  "data": {
    "taskId": 59,
    "padCode": "ACP25091XXXXXX15",
    "vmStatus": 0,
    "taskStatus": 1,
    "errMsg": null,
    "backupName": "backnameinfo",
    "backupId": "bkp-ACP25091XXXXXX15-1758271735910"
  },
  "traceId": "eyj68nk6dnuo"
}

Error Codes

Error CodeError DescriptionSuggestion
220025Other task running/pending on local instanceWait for task completion
220026Only local instances supportedConfirm local instance
220029Instance not runningConfirm running status
220033CBS version too low for backup/restoreUpgrade CBS to latest

Create Local Instance Restore

(Pending Launch)
Restore from local instance backup file.

API Endpoint

/vcpcloud/api/padApi/localPodRestore

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
backupIdbkp-ACP250917XSYESH3-1758097064458StringYesBackup ID (max 128 chars)
padCodeACP250917CLAQJ15StringYesInstance code (max 64 chars)
ossConfig{...}ObjectYesS3-compatible OSS config
├─ endpointoss-cn-shanghai.aliyuncs.comStringYesOSS endpoint
├─ bucketpad-backupStringYesBucket
├─ accessKeyAKIA123456StringYesAccess key
├─ secretKeyxxxxxxxStringYesSecret key
├─ protocolhttpsStringYesProtocol
├─ regioncn-shanghaiStringYesRegion
├─ securityTokenxxxxxxxxxStringYes if credentialType=2Temporary token
├─ expiration2025-12-01T21:38:49zStringYes if credentialType=2Expiration
credentialType1IntegerNoCredential type

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringRequest status
ts1758271736814LongTimestamp
data{...}ObjectTask info
├─ taskId59LongTask ID
├─ padCodeACP250919HTTMIBQStringInstance code
├─ vmStatus0IntegerOnline status
├─ taskStatus1IntegerTask status
├─ errMsgnullStringError message
traceIdeyj68nk6dnuoStringTrace ID

Request Example

{
  "padCode": "ACP25091XXXXXJ15",
  "backupId": "bkp-ACP25091XXXXXJ15-1758097064458",
  "credentialType": 1
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1758271736814,
  "data": {
    "taskId": 59,
    "padCode": "ACP25091XXXXXX15",
    "vmStatus": 0,
    "taskStatus": 1,
    "errMsg": null
  },
  "traceId": "eyj68nk6dnuo"
}

Error Codes

Error CodeError DescriptionSuggestion
220025Other task running/pendingWait
220027Backup file not existCheck file
220030Instance not running or abnormalConfirm status
220031Backup not belong to current userConfirm ownership
220032Backup ID instance info not existCheck backup ID
220033CBS version too lowUpgrade CBS

Local Instance Backup Query

(Pending Launch)
Get available backups for local instance by code.

API Endpoint

/vcpcloud/api/padApi/localPodBackupSelectPage

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
page1IntegerNoCurrent page
rows10IntegerNoRecords per page
padCodesString[]Yes
├─ padCodeACP5C24S9G6xxxxxStringYesInstance code (max 100)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject
├─ page1IntegerCurrent page
├─ rows10IntegerRecords per page
├─ size1IntegerCurrent count
├─ total1IntegerTotal
├─ totalPage1IntegerTotal pages
├─ pageDataObject[]List
├─ ├─ padCodeACP5C24S9G6xxxxxStringInstance code
├─ ├─ backupIdbkp-xxxxxS4QBMGEW1ZX-1764728535556StringBackup ID
├─ ├─ backupNamebackupNameStringBackup name
├─ ├─ backupPathbackup/dbStringBackup path
├─ ├─ endpointbackupNameStringEndpoint
├─ ├─ bucketpad-backupStringBucket
├─ ├─ protocolhttpsStringProtocol
├─ ├─ regioncn-shanghaiStringRegion
traceIdeyj68nk6dnuoStringTrace ID

Request Example

{
  "padCodes":["ACP5C24S9G6xxxxx"],
  "page":1,
  "rows":10
}

Response Example

{
  "code": 200,
  "msg": "success",
  "ts": 1764819200220,
  "data": {
    "page": 1,
    "rows": 10,
    "size": 1,
    "total": 1,
    "totalPage": 1,
    "pageData": [
      {
        "padCode": "ACP5C24S9G6xxxxx",
        "backupId": "bkp-xxxxxS4QBMGEW1ZX-1764728535556",
        "backupName": "android13-xxxx-虚拟机-img-25112665572-王者荣耀+抖音",
        "backupPath": "backup/data/",
        "endpoint": "oss-cn-xxxxxx.xxxxxxx.com",
        "bucket": "armcloud-xx",
        "protocol": "https",
        "region": "cn-hongkong"
      }
    ]
  },
  "traceId": "f61kq5vu5ts0"
}

Clear Processes and Return to Desktop

(Pending Launch)
Clear all processes except system and return to desktop.

API Endpoint

/vcpcloud/api/padApi/cleanAppHome

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesATP250814USYXXXXString[]YesInstance codes

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736922808949LongTimestamp
traceIdeuz60azzc7i8StringTrace ID
dataObject[]
├─ padCodeAC32032StringInstance code
├─ taskId10004759LongTask ID
├─ vmStatus0StringOnline status
├─ taskStatus1StringTask status

Request Example

{
    "padCodes": [
        "ATP250814USYXXXX"
    ]
}

Response Example

{
    "msg": "success",
        "traceId": "euz60azzc7i8",
        "code": 200,
        "data": [
        {
            "padCode": "ATP250814USYXXXX",
            "vmStatus": 0,
            "taskId": 68951,
            "taskStatus": 1
        }
    ],
        "ts": 1755172215886
}

Unmanned Live Streaming

(Pending Launch)
Instance video injection (only img-25092692759 image supported currently). Use injectUrl or injectUrls (at least one, not both; max 5 for injectUrls).

API Endpoint

/vcpcloud/api/padApi/unmannedLive

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesACN384345141346304String[]YesInstances (1-100)
injectSwitchtrueBooleanNoEnable injection (true: on; false: off; default false)
injectLoopfalseBooleanNoLoop playback (default false)
injectUrlhttps://file.vmoscloud.com/userFile/1eea385b2a6ba3942ebf642badf39aa0.mp4StringNoSingle video URL (http/https/rtmp:// or local; one with injectUrls)
injectUrls["https://file.vmoscloud.com/userFile/1eea385b2a6ba3942ebf642badf39aa0.mp4","rtmp://example.com/live"]String[]NoVideo URL list (max 5; one with injectUrl)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1759134336311LongTimestamp
traceIdezispr1m30n4StringTrace ID
dataObject[]
├─ padCodeACN384345141346304StringInstance code
├─ taskId20503LongTask ID
├─ vmStatus0StringOnline status
├─ taskStatus1StringTask status
├─ errMsgnullStringError message

Request Example

{
        "padCodes": ["ACN384345141346304"],
        "injectSwitch": true,
        "injectLoop": false,
        "injectUrl": "https://file.vmoscloud.com/userFile/1eea385b2a6ba3942ebf642badf39aa0.mp4",
        "injectUrls": [
          "https://file.vmoscloud.com/userFile/1eea385b2a6ba3942ebf642badf39aa0.mp4",
          "rtmp://example.com/live/unmanned01"
        ]
}

Response Example

{
    "code": 200,
        "msg": "success",
        "ts": 1759134336311,
        "data": [
        {
            "taskId": 20503,
            "padCode": "ACN384345141346304",
            "vmStatus": 0,
            "taskStatus": 1,
            "errMsg": null
        }
    ],
        "traceId": "ezispr1m30n4"
}

Image Injection

(Pending Launch)
Instance image injection.

API Endpoint

/vcpcloud/api/padApi/injectPicture

Request Method

POST

Request Content Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodesACN2510166WZUPCJString[]YesInstances (1-100)
injectSwitchtrueBooleanNoEnable (true: on; false: off; default false)
injectLoopfalseBooleanNoLoop (default false)
injectUrlhttps://file.vmoscloud.com/userFile/ac4e112d72f9ed724101f510e774001f.JPGStringYesImage URL (http/https/rtmp://)

Response Parameters

Parameter NameExample ValueTypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1759134336311LongTimestamp
traceIdezispr1m30n4StringTrace ID
dataObject[]
├─ padCodeACN384345141346304StringInstance code
├─ taskId20503LongTask ID
├─ vmStatus0StringOnline status
├─ taskStatus1StringTask status
├─ errMsgnullStringError message

Request Example

{
        "padCodes": ["ACN2510166WZUPCJ"],
        "injectSwitch": true,
        "injectLoop": false,
        "injectUrl": "https://file.vmoscloud.com/userFile/ac4e112d72f9ed724101f510e774001f.JPG"
}

Response Example

{
    "code": 200,
        "msg": "success",
        "ts": 1759134336311,
        "data": [
        {
            "taskId": 28247,
            "padCode": "ACN2510166WZUPCJ",
            "vmStatus": 0,
            "taskStatus": 1,
            "errMsg": null
        }
    ],
        "traceId": "ezispr1m30n4"
}

Application Management

App Start

Start an app on an instance based on the instance ID and app package name.

API Endpoint

/vcpcloud/api/padApi/startApp

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
pkgNamexxx.test.comStringYesPackage Name
padCodesString[]Yes
├─AC22010020062StringYesInstance Code

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus Code
msgsuccessStringResponse Message
ts1756021167163LongTimestamp
dataObject[]
├─ taskId1IntegerTask ID
├─ padCodeAC22010020062StringInstance Code
├─ vmStatus1IntegerInstance Online Status (0: Offline; 1: Online)

Request Example

{
	"padCodes": [
		"AC22010020062"
	],
	"pkgName": "xxx.test.com"
}

Response Example

{
	"code": 200,
	"msg": "success",
	"ts": 1717570663080,
	"data": [
		{
			"taskId": 24,
			"padCode": "AC22010020062",
			"vmStatus": 1
		}
	]
}

Error Codes

Error CodeError DescriptionRecommended Action
110008Failed to start the appRestart the cloud machine and try starting the app again

Stop App

Perform the operation of stopping an app on an instance based on the instance ID and app package name.

API Endpoint

/vcpcloud/api/padApi/stopApp

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
pkgNamexxx.test.comStringYesPackage Name
padCodesString[]YesInstance IDs
├─AC22010020062StringYesInstance ID

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus Code
msgsuccessStringResponse Message
ts1756021167163LongTimestamp
dataObject[]Data List
├─taskId1IntegerTask ID
├─padCodeAC22010020062StringInstance ID
├─vmStatus1IntegerInstance Online Status (0: Offline; 1: Online)

Request Example

{
	"padCodes": [
		"AC22010020062"
	],
	"pkgName": "xxx.test.com"
}

Response Example

{
	"code": 200,
	"msg": "success",
	"ts": 1717570663080,
	"data": [
		{
			"taskId": 24,
			"padCode": "AC22010020062",
			"vmStatus": 1
		}
	]
}

Error Codes

Error CodeError DescriptionSuggested Action
110010Failed to stop appRestart the cloud machine and close the app

Application Restart

Restart an application on an instance based on the instance ID and application package name.

API Endpoint

/vcpcloud/api/padApi/restartApp

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
pkgNamexxx.test.comStringYesPackage name
padCodesString[]YesInstance IDs
├─AC22010020062StringYesInstance ID

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]Response data
├─ taskId1IntegerTask ID
├─ padCodeAC22010020062StringInstance ID
├─ vmStatus1IntegerInstance online status (0: Offline; 1: Online)

Request Example

{
	"padCodes": [
		"AC22010020062"
	],
	"pkgName": xxx.test.com
}

Response Example

{
	"code": 200,
	"msg": "success",
	"ts": 1717570663080,
	"data": [
		{
			"taskId": 24,
			"padCode": "AC22010020062",
			"vmStatus": 1
		}
	]
}

Error Codes

Error CodeError DescriptionSuggested Action
110009Failed to stop appRestart the cloud machine and close the app

Error Codes

Error CodeDescriptionSuggested Action
110009Application restart failedRestart the cloud machine and then start the application

Instance installed application list query

Query the instance installed application list information.

API Address:

/vcpcloud/api/padApi/listInstalledApp

Request Method:

POST

Request Data Type:

application/json

Request Body Parameters:

Parameter NameExample ValueParameter TypeRequiredDescription
padCodesString[]YesInstance identifier list
├─AC22010020062StringYesInstance identifier
appNameString否Application name

Response Parameters:

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1713773577581LongTimestamp
dataObject[]
├─ padCodeAC22010020062StringInstance ID
├─ appsObject[]Application list
│ ├─ appNameTapTapStringApplication name
│ ├─ packageNamecom.taptap.globalStringApplication package name
│ ├─ versionName3.49.0-full.100000StringApplication version name
│ ├─ versionCode349001000StringApplication version code
│ ├─ appState0Integer0 Completed 1 Installing 2 Downloading

Request Example


{
    "padCodes": ["AC32010780841"],
    "appName": null
}

Response Example

{
    "msg": "success",
        "code": 200,
        "data": [
            {
                "padCode": "AC32010780841",
                "apps": [
                    {
                        "appName": "TapTap",
                        "packageName": "com.taptap.global",
                        "versionName": "3.49.0-full.100000",
                        "versionCode": "349001000",
                        "appState": 0
                    }
                ]
            }
        ], 
        "ts": 1740020993436
}

Task Management

Instance Operation Task Details

Query the detailed execution result of a specified instance operation task.

API Address:

/vcpcloud/api/padApi/padTaskDetail

Request Method:

POST

Request Data Type:

application/json

Request Body Parameters:

Parameter NameExample ValueParameter TypeRequiredDescription
taskIdsInteger[]YesList of task IDs
├─ taskId1IntegerYesTask ID

Response Parameters:

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]Subtask list details
├─ taskId1IntegerSubtask ID
├─ padCodeVP22020020793StringInstance identifier
├─ taskStatus2StringTask status (-1: all failed; -2: partial failure; -3: canceled; -4: timeout; 1: pending execution; 2: executing; 3: completed)
├─ endTime1713429401000LongSubtask end timestamp
├─ taskContent“”StringTask content
├─ taskResult“”StringTask result
├─ errorMsg“”StringError message

Request Example

{
	"taskIds":[1,2]
}

Response Example

{
	"code": 200,
	"msg": "success",
	"ts": 1716283460673,
	"data": [
		{
			"taskId": 1,
			"padCode": "AC22030022441",
			"taskStatus": 2,
			"endTime": 1713429401000,
			"taskContent": null,
			"taskResult": null
		},
		{
			"taskId": 2,
			"padCode": "AC22030022442",
			"taskStatus": 2,
			"endTime": 1713429401001,
			"taskContent": null,
			"taskResult": null
		}
	]
}

File Task Details

Query the detailed execution result of a specified file task.

API Address:

/vcpcloud/api/padApi/fileTaskDetail

Request Method:

POST

Request Data Type:

application/json

Request Body Parameters:

Parameter NameExample ValueParameter TypeRequiredDescription
taskIdsInteger[]YesList of task IDs
├─ taskId1IntegerYesTask ID

Response Parameters:

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]Task list details
├─ taskId1IntegerSubtask ID
├─ appId134LongApplication ID
├─ fileUniqueIde2c07491309858c5cade4bfc44c03724StringUnique file identifier
├─ fileNamexx.apkStringFile name
├─ taskStatus2IntegerTask status (-1: all failed; -2: partial failure; -3: canceled; -4: timeout; 1: pending execution; 2: executing; 3: completed)
├─ endTime1713429401000LongSubtask end timestamp

Request Example

{
	"taskIds":[
		1,2
	]
}

Response Example

{
	"code": 200,
	"msg": "success",
	"ts": 1716283460673,
	"data": [
		{
			"taskId": 1,
			"appId": 134,
			"fileUniqueId": "e2c07491309858c5cade4bfc44c03724",
			"fileName": "xx.apk",
			"taskStatus": 2,
			"endTime": 1713429401000
		},
		{
			"taskId": 2,
			"appId": 135,
			"fileUniqueId": "e2c07491309858c5cade4bfc43c03725",
			"fileName": "xx.apk",
			"taskStatus": 2,
			"endTime": 1713429401001
		}
	]
}

Automation Management

When performing automated tasks, do not operate on the cloud machine by performing actions such as rebooting, resetting, upgrading the image, or replacing machines, as this could interfere with the automated tasks.

Automated Task List Query

Query the list of automated tasks.

API Endpoint

/vcpcloud/api/padApi/autoTaskList

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
taskIdsLong[]NoTask ID array
taskType1IntegerNoTask type: 1-login, 2-edit profile, 3-search short videos, 4-randomly browse videos, 5-publish video, 6-publish gallery
page1IntegerYesPage number
rows10IntegerYesNumber of records per page

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736327056700LongTimestamp
dataObjectData details
├─ recordsObject[]Record list
│ ├─ taskId115IntegerTask ID
│ ├─ userId14114IntegerUser ID
│ ├─ equipmentId106588IntegerEquipment ID
│ ├─ padCodeAC32010180421StringInstance ID
│ ├─ padNamezzzzzStringInstance name
│ ├─ taskType1IntegerTask type: 1-login, 2-edit profile, 3-search short videos, 4-randomly browse videos, 5-publish video, 6-publish gallery
│ ├─ taskNametestAddStringTask name
│ ├─ executionStatus0IntegerExecution status: -2-cancelled task, -1-failed, 0-pending, 1-in progress, 2-successful
│ ├─ plannedExecutionTime2025-01-09 00:00:00StringPlanned execution time
│ ├─ executionEndTimenullStringExecution end time
│ ├─ createdTime2025-01-08 14:25:01StringCreation time
│ ├─ failureReasonnullStringFailure reason
├─ total46IntegerTotal records
├─ size10IntegerNumber of records per page
├─ current1IntegerCurrent page
├─ pages5IntegerTotal pages

Request Example

{
    "page": 1,
    "rows": 10
}

Response Example

{
	"msg": "success",
	"code": 200,
	"data": {
		"records": [
			{
				"id": 121,
				"taskId": 121,
				"userId": 14114,
				"equipmentId": 106653,
				"padCode": "AC32010180522",
				"padName": "V04",
				"taskType": 1,
				"taskName": "testAdd",
				"executionStatus": 2,
				"plannedExecutionTime": "2025-01-08 18:02:00",
				"executionEndTime": "2025-01-08 18:08:11",
				"createdTime": "2025-01-08 18:01:03",
				"failureReason": null
			}
		],
		"total": 46,
		"size": 10,
		"current": 1,
		"pages": 5
	},
	"ts": 1736331989341
}

Create Automation Task

Create an automation task. Make sure to pass the correct device number (the cloud phone list interface will return the device number). The task is mainly bound to the device number. If a device swap occurs before execution, it will not affect task loss. (Asynchronous, the system will check if the TK app is installed on the cloud phone. If not, it will automatically download the TK app before executing the task. Do not manually operate the cloud phone during the TK download and task execution). The request parameters for different tasks may vary; examples will be provided.

API Endpoint

/vcpcloud/api/padApi/addAutoTask

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
taskNametestAddStringYesTask name
remarkstestStringNoRemarks
taskType1IntegerYesTask type: 1-login, 2-edit profile, 3-search short videos, 4-randomly browse videos, 5-publish video, 6-publish gallery
listObject[]YesTask list
├─ equipmentId106653IntegerYesEquipment ID
├─ padCodeAC32010180522StringYesInstance ID
├─ plannedExecutionTime2025-01-08 17:20:00StringYesPlanned execution time
├─ addInfoRefer to the request exampleJSONObjectYesTask parameters (Note: Follow the corresponding format based on the task type, otherwise the task will fail)

Request Example

{
    "taskName": "testAdd",
    "remarks": "test",
    "taskType": 1,
    "list": [
        {
            "equipmentId": 106653,
            "padCode": "AC32010180522",
            "plannedExecutionTime": "2025-01-08 17:20:00",
            "addInfo": {
                "password": "zhouxi12....",
                "username": "zzx833454@gmail.com"
            }
        }
    ]
}

Login Task Parameters (Task Type - taskType: 1)

Parameter NameExample ValueParameter TypeRequiredDescription
passwordzzxxxx@gmail.comStringYesAccount
usernamezzxxxx@gmail.comStringYesPassword

Edit Profile Task Parameters (Task Type - taskType: 2)

Parameter NameExample ValueParameter TypeRequiredDescription
linkhttps://xxxx.pngStringYesAvatar URL (greater than 250x250)
usernametestStringYesName

Search Short Video Task Parameters (Task Type - taskType: 3)

Parameter NameExample ValueParameter TypeRequiredDescription
tagTitleStringYesTag
timeout10IntegerYesViewing duration (seconds) Note: The maximum time is 2 hours, otherwise the task will time out and fail

Random Video Browsing Task Parameters (Task Type - taskType: 4)

Parameter NameExample ValueParameter TypeRequiredDescription
timeout10IntegerYesViewing duration (seconds) Note: The maximum time is 2 hours, otherwise the task will time out and fail
tag""StringNoTag

Publish Video Task Parameters (Task Type - taskType: 5)

Parameter NameExample ValueParameter TypeRequiredDescription
linkhttps://xxxxStringNoVideo OSS URL
copywritingtestStringYesCopywriting
productIdnullStringNoproduct id

Publish Image Gallery Task Parameters (Task Type - taskType: 6)

Parameter NameExample ValueParameter TypeRequiredDescription
links[https://xxxx]array[String]YesImage OSS URLs (up to ten images)
copywritingtestStringYesCopywriting
bgmbgmStringYesBackground music name

Video like and comment task parameters (task type - taskType: 7)

Parameter nameExample valueParameter typeRequiredParameter description
timeout10IntegerYesWatching time (seconds) Note: Up to 2 hours, otherwise the task will time out and fail
tag""StringNoTag
contents["wow"]array[String]NoComment content Note: Currently only 1 is supported, and it will be expanded later

Live broadcast heating task parameters (task type - taskType: 8)

Parameter nameExample valueParameter typeRequiredParameter description
timeout10IntegerYesWatching time (seconds) Note: Up to 2 hours, otherwise the task will time out and fail
liveRoomId"xlavandulax"StringYesAnchor ID
contents"wow"StringYesComment content

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code0IntegerStatus Code: 0 - Success
msgsuccessStringResponse Message
ts1736327056700LongTimestamp
dataObject {}Subtask list details
├─ taskIdsLong[]Task ID Array

Response Example

{
	"msg": "success",
	"code": 200,
	"taskIds": [
		116
	],
	"ts": 1736327380399
}

Automated Task Retry

Automated task retry.

API Endpoint

/vcpcloud/api/padApi/reExecutionAutoTask

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
taskIdsLong[]YesTask ID array
plannedExecutionTime2025-01-08 17:30:00DateYesPlanned execution time

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus Code
msgsuccessStringResponse Message
dataObject {}Subtask list details
ts1736327056700LongTimestamp
├─ taskIdsLong[]New task ID array

Request Example

{
    "taskIds": [
        109
    ],
    "plannedExecutionTime": "2025-01-08 17:30:00"
}

Response Example

{
	"msg": "success",
	"code": 200,
	"taskIds": [
		118
	],
	"ts": 1736327771611
}

Automated Task Cancellationlation

Automated task cancellation.

API Endpoint

/vcpcloud/api/padApi/cancelAutoTask

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
taskIdsLong[]YesTask ID array

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus Code
msgsuccessStringResponse Message
ts1736327056700LongTimestamp

Request Example

{
    "taskIds": [
        118
    ]
}

Response Example

{
	"msg": "success",
	"code": 200,
	"ts": 1736327841671
}

Cloud Phone Management

Create Cloud Phone

Create a new cloud phone. (Note that the purchased product package must be available on the web platform, otherwise the purchase will fail.)

API Endpoint

/vcpcloud/api/padApi/createMoneyOrder

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
androidVersionNameAndroid13StringYesAndroid version: Android10、Android13, Android14
goodId1IntegerYesProduct ID (corresponding to the Product ID value of SKU Package List)
goodNum1IntegerYesProduct quantity
autoRenewtrueBooleanYesWhether to auto-renew (enabled by default)
equipmentId106626,106627StringYesRenewal device IDs (comma separated for multiple devices)

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObject[]Data list
├─ id7644IntegerUnique data identifier
├─ orderIdVMOS-CLOUD173630666722957907StringOrder number
├─ equipmentId106662IntegerEquipment ID
├─ createTime2025-01-08 11:24:31StringCreation time
├─ creater14114StringCreator
ts1736306672346LongTimestamp

Request Example

{
    "androidVersionName": "Android13",
    "goodId": 1,
    "goodNum": 1,
    "autoRenew": true
}

Response Example

{
	"msg": "success",
	"code": 200,
	"data": [
		{
			"id": 7644,
			"orderId": "VMOS-CLOUD173630666722957907",
			"equipmentId": 106662,
			"createTime": "2025-01-08 11:24:31",
			"creater": "14114"
		}
	],
	"ts": 1736306672346
}

Cloud Phone List

Cloud phone list.

API Endpoint

/vcpcloud/api/padApi/userPadList

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodenullStringNoInstance code
equipmentIdsInteger[]NoArray of equipment IDs

Response Parameters

Parameter NameExample ValueParameter TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1736235894274LongTimestamp
dataObject[]Data list
├─ padCodeAC32010180421StringCloud phone code
├─ deviceIp172.30.5.43StringCloud phone physical machine IP
├─ padIp10.254.21.225StringCloud phone virtual IP
├─ cvmStatus100IntegerCloud phone status (100 - normal, 101 - capturing screenshot, 102 - restarting, 103 - resetting, 104 - abnormal)
├─ screenshotLinkhttps://XXXXXX.pngStringCloud phone screenshot link
├─ equipmentId106626IntegerEquipment ID
├─ userId14114IntegerUser ID
├─ status1IntegerDevice status
├─ padNameV08StringCloud phone display name
├─ bootTime1735643626263LongCloud phone usage time
├─ cumulativeUseTimenullObjectTotal device usage time
├─ lastBackupTimenullObjectLast backup time
├─ maintainContentnullObjectMaintenance content
├─ goodId1IntegerProduct ID
├─ goodNamei18n_Android13-V08StringProduct name
├─ signExpirationTime2025-01-31 19:13:46StringSigned cloud phone expiration time
├─ signExpirationTimeTamp1738322026000LongSigned cloud phone expiration timestamp
├─ supplierType5StringSupplier type
├─ androidVersionAvatarhttps://XXXX.pngStringAndroid version avatar
├─ configNameV08StringProduct model name
├─ androidVersionAvatar2https://XXX.pngStringAndroid version avatar 2
├─ androidVersionAvatar3https://XXX.pngStringAndroid version avatar 3
├─ androidVersion13StringAndroid version
├─ authorizedUserIdnullObjectAuthorized user ID
├─ authorizedExpirationTimenullObjectAuthorization expiration time
├─ authorizedExpirationTimeTampnullObjectAuthorization expiration timestamp
├─ changeConfig1IntegerSupport for configuration change (0 - no, 1 - yes)
├─ createTime2024-12-31 19:13:46StringCreation time
├─ proxyIpnullObjectProxy IP address
├─ remarkStringRemark
├─ proxyIdnullObjectProxy IP information
├─ ipAddressnullObjectIP address location
├─ publicIpnullObjectPublic IP
├─ groupSortnullObjectGroup sorting order

Cloud Phone Status

Status CodeDescription
99Loading
100Normal
101Getting Screenshot
102Rebooting
103Resetting
104Reboot Failed
105Reset Failed
106Maintenance
107Upgrading Image
108Migrating Instance
109Migration Failed
111Device Configuration
112Anti-Fraud Lockdown
113Config Change
114Over Selling
115Changing Zone
116Cleaning Memory
119Initializing Cloud Machine
120One-click New Machine Initialization
121Task Execution in Progress
201Backing Up
202Restoring

Request Example

{
    "padCode": null,
    "equipmentIds": [
        106626
    ]
}

Response Example

{
  "msg": "success",
  "code": 200,
  "ts": 1736235894274,
  "data": [
    {
      "padCode": "AC32010180421",
      "deviceIp": "172.30.5.43",
      "padIp": "10.254.21.225",
      "cvmStatus": 100,
      "screenshotLink": "https://XXXXXX.png",
      "equipmentId": 106626,
      "userId": 14114,
      "status": 1,
      "padName": "V08",
      "bootTime": 1735643626263,
      "cumulativeUseTime": null,
      "lastBackupTime": null,
      "maintainContent": null,
      "goodId": 1,
      "goodName": "i18n_Android13-V08",
      "signExpirationTime": "2025-01-31 19:13:46",
      "signExpirationTimeTamp": 1738322026000,
      "supplierType": "5",
      "androidVersionAvatar": "https://XXXX.png",
      "configName": "V08",
      "androidVersionAvatar2": "https://XXX.png",
      "androidVersionAvatar3": "https://XXX.png",
      "androidVersion": "13",
      "authorizedUserId": null,
      "authorizedExpirationTime": null,
      "authorizedExpirationTimeTamp": null,
      "changeConfig": 1,
      "createTime": "2024-12-31 19:13:46",
      "proxyIp": null,
      "remark": "",
      "proxyId": null,
      "ipAddress": null,
      "publicIp": null, 
        "groupName": null,
      "groupSort": null
    }
  ]
}

Cloud Phone Information Query

Query cloud phone information.

API Endpoint

/vcpcloud/api/padApi/padInfo

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueTypeRequiredDescription
padCodeAC32010180421StringYesInstance ID

Response Parameters

Parameter NameExample ValueTypeDescription
msgsuccessStringResponse Message
code200IntegerStatus Code
dataObjectResponse Data
├─ explainEnglishStringLanguage - Explanation
├─ simCountrySGStringSIM Card Country
├─ countrySGStringCountry
├─ padCodeAC32010180421StringInstance ID
├─ padTypeV08StringDevice Model
├─ bluetoothAddress3A:1F:4B:9C:2D:8EStringBluetooth Address
├─ initializationData{"explain":"English", ...}StringDevice Information
├─ latitude1.3398StringLatitude
├─ ipAddressHong KongStringIP Address
├─ timeZoneAsia/SingaporeStringTime Zone
├─ publicIp192.169.96.14StringPublic IP
├─ phoneNumber+6510633153StringVirtual Phone Number
├─ androidVersionAndroid13StringAndroid Version
├─ wlanMac4c:7f:11:2f:a6:ccStringWLAN MAC Address
├─ padNameV08StringPad Name
├─ simIsoM1StringSIM Card ISO
├─ longitude103.6967StringLongitude
├─ operatorNumeric52503IntegerOperator Number
├─ padImei525036719631842StringIMEI
ts1736239152927LongTimestamp

Request Example

{
    "padCode": null
}

Response Example

{
	"msg": "success",
	"code": 200,
	"data": {
		"explain": "English",
		"simCountry": "SG",
		"country": "SG",
		"padCode": "AC32010180421",
		"padType": "V08",
		"bluetoothAddress": "3A:1F:4B:9C:2D:8E",
		"initializationData": "{\"explain\":\"English\",\"country\":\"SG\",\"simJson\":{\"simCountry\":\"SG\",\"operatorShortname\":\"M1\",\"imei\":\"979706209497838\",\"imsi\":\"525036719631842\",\"phonenum\":\"6510633153\",\"operatorNumeric\":\"52503\"},\"latitude\":\"1.3398\",\"timeZone\":\"Asia/Singapore\",\"language\":\"en\",\"longitude\":\"103.6967\"}",
		"latitude": "1.3398",
		"ipAddress": "Hong Kong",
		"timeZone": "Asia/Singapore",
		"publicIp": "192.169.96.14",
		"phoneNumber": "+6510633153",
		"androidVersion": "Android13",
		"wlanMac": "4c:7f:11:2f:a6:cc",
		"padName": "V08",
		"simIso": "M1",
		"longitude": "103.6967",
		"operatorNumeric": 52503,
		"padImei": "525036719631842"
	},
	"ts": 1736239152927
}

SKU Package List

Get the SKU package list.

API Endpoint

/vcpcloud/api/padApi/getCloudGoodList

Request Method

GET

Request Data Type

application/json

Response Parameters

Parameter NameExample ValueTypeDescription
msgsuccessStringResponse Message
code200IntegerStatus Code
dataObjectResponse Data
├─ androidVersionNameAndroid13StringAndroid Version Name
├─ cloudGoodsInfoObjectSKU Package Information
│ ├─ configsListProduct Model Information
│ │ ├─ configNameSamsung s23 ultraStringProduct Model Name
│ │ ├─ sellOutFlagfalseBooleanSold Out Flag
│ │ ├─ configBlurbTop technology, comparable to real machine supreme experience!StringProduct Model Description
│ │ ├─ defaultSelectionfalseBooleanDefault Selection Flag
│ │ ├─ reorder0IntegerSort Order
│ │ ├─ goodTimesListProduct Price Information
│ │ │ ├─ oldGoodPrice100IntegerOriginal Price
│ │ │ ├─ showContent1 dayStringProduct Duration Name
│ │ │ ├─ whetherFirstPurchasetrueBooleanFirst Purchase Flag
│ │ │ ├─ reorder1IntegerSort Order
│ │ │ ├─ goodPrice100IntegerProduct Price
│ │ │ ├─ equipmentNumber1IntegerProduct Shipping Equipment Quantity
│ │ │ ├─ goodTime1440IntegerProduct Duration (Minutes)
│ │ │ ├─ autoRenewtrueBooleanSupports Auto Renewal
│ │ │ ├─ recommendContentFirst purchase special offerStringRecommended Content
│ │ │ ├─ id27IntegerProduct ID
ts1737440589859LongTimestamp

Response Example

{
    "msg": "success",
        "code": 200,
        "data": [
        {
            "androidVersionName": "Android13",
            "cloudGoodsInfo": {
                "configs": [
                    {
                        "configName": "Samsung s23 ultra",
                        "sellOutFlag": false,
                        "configBlurb": "顶尖科技,媲美真机至尊体验!",
                        "defaultSelection": false,
                        "reorder": 0,
                        "goodTimes": [
                            {
                                "oldGoodPrice": 100,
                                "showContent": "1天",
                                "whetherFirstPurchase": true,
                                "reorder": 1,
                                "goodPrice": 100,
                                "equipmentNumber": 1,
                                "goodTime": 1440,
                                "autoRenew": true,
                                "recommendContent": "首购特惠",
                                "id": 27
                            }
                        ]
                    }
                ],
                "goodId": 1
            }
        }
    ],
        "ts": 1737440589859
}

Modify Real Machine ADI Template

Modify the cloud real machine ADI template by passing the cloud real machine template ID.

Prerequisites:

  • The instance must be created as a cloud real machine type.
  • The instance's specifications must match the target ADI template specifications.
  • The instance's Android version must match the target ADI Android version.

API Endpoint

/vcpcloud/api/padApi/replaceRealAdiTemplate

Request Method

POST

Request Data Type

application/json

Request BODY Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodesString[]YesList of instance codes
├─AC22010020062StringYesInstance Code
wipeDatafalseBooleanYesWhether to wipe data
realPhoneTemplateId186LongYesCloud Real Machine Template ID

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectResponse data
├─ taskId1IntegerTask ID
├─ padCodeAC21020010001StringInstance Code
├─ vmStatus1IntegerInstance online status (0: offline; 1: online)

Request Example

{
    "padCodes": ["AC32010250011"],
    "wipeData": true,
    "realPhoneTemplateId": 186
}

Response Example

{
    "code": 200,
        "msg": "success",
        "ts": 1736326542985,
        "data": [{
        "taskId": 10074,
        "padCode": "AC32010250011",
        "errorMsg": null
    }]
}

Cloud machine simulated touch

The cloud machine simulates the touch interface. The result can be queried through the Instance operation task details interface.

API Endpoint

/vcpcloud/api/padApi/simulateTouch

Request Method

POST

Request Data Type

application/json

Request BODY Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodesObject[]YesInstance code that needs to trigger a click
├─ ACP250329MMRFCCTStringYesPad Code
width1080IntegerYesTouch container width
height1920IntegerYesTouch container height
positionsObject[]YesTouch coordinate collection
├─ actionType1IntegerYesOperation type (0: pressed; 1: lifted; 2: touching)
├─ x100floatYesx coordinate of click
├─ y100floatYesy coordinate of click
├─ nextPositionWaitTime100IntegerYesWhen there are multiple sets of coordinates, the waiting interval in milliseconds to trigger the next set of click coordinates

Response Example

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectResponse data
├─ padCodeACP250329MMRFCCTStringPadCode
├─ taskId10004759Longtask id
├─ vmStatus0IntegerInstance online status (0: offline; 1: online)

Request Example

{
    "padCodes": [
        "ACP250329MMRFCCT"
    ],
    "width": 1080,
    "height": 1920,
    "positions": [
        {
            "actionType": 0,
            "x": 100,
            "y": 100,
            "nextPositionWaitTime": 20
        },
        {
            "actionType": 2,
            "x": 110,
            "y": 110,
            "nextPositionWaitTime": 22
        },
        {
            "actionType": 2,
            "x": 120,
            "y": 120,
            "nextPositionWaitTime": 23
        },
        {
            "actionType": 1,
            "x": 120,
            "y": 120
        }
    ]
}

Response Example

{
    "code": 200,
    "msg": "success",
    "ts": 1743676563784,
    "data": [
        {
            "taskId": 100059,
            "padCode": "ACP250329MMRFCCT",
            "vmStatus": 0
        },
        {
            "taskId": 100060,
            "padCode": "ACP250329MMRFCCT",
            "vmStatus": 0
        }
    ]
}

Android image version collection

Get the image set that can be upgraded on the current device

API Endpoint

/vcpcloud/api/padApi/imageVersionList

Request Method

POST

Request Data Type

application/json

Request BODY Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodeACP250329MMRFCCTStringYESPadCode

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringresponse message
code200Integerstatus code
dataObject[]Data list
├─ nowImgIdimg-25033129396StringCurrent device image version ID
├─ hasNewVersionfalseBooleanWhether there is an image version that can be upgraded.
├─ imageVersionListObject[]Image version list
├─├─ imageIdimg-25033129396StringImage version ID
├─├─ version20250401IntegerImage version
├─├─ versionName20250401StringImage version Name
├─├─ publishTypereleasedStringRelease type: released-stable, beta-latest
├─├─ imageIllustrateFixed the issue that the Coffee Meet Begal app cannot activate location servicesStringMirror update instructions
├─├─ romSdkint14IntegerAndroid version Code
├─├─ romSdkNameAndroid 14StringAndroid release notes

Request Example

{
    "padCode": "ACP250329MMRFCCT"
}

Response Example

{
    "msg": "success",
        "code": 200,
        "data": {
        "nowImgId": "img-25033129396",
        "imageManageList": [
            {
                "imageId": "img-25040148674",
                "version": 20250401,
                "versionName": "20250401",
                "publishType": "released",
                "imageIllustrate": "Fixed the issue that the Coffee Meet Begal app cannot activate location services",
                "romSdkint": 34,
                "romSdkName": "Android 14"
            },
            {
                "imageId": "img-25033136513",
                "version": 20250331,
                "versionName": "20250331",
                "publishType": "released",
                "imageIllustrate": "Expand the tool model to add a blacklist",
                "romSdkint": 34,
                "romSdkName": "Android 14"
            },
            {
                "imageId": "img-25040129277",
                "version": 20250401,
                "versionName": "20250401",
                "publishType": "released",
                "imageIllustrate": "termux supports root",
                "romSdkint": 29,
                "romSdkName": "Android 10"
            },
            {
                "imageId": "img-25040872272",
                "version": 30000013,
                "versionName": "30000013",
                "publishType": "beta",
                "imageIllustrate": "B",
                "romSdkint": 33,
                "romSdkName": "Android 13"
            },
            {
                "imageId": "img-25032893685",
                "version": 20250328,
                "versionName": "20250328",
                "publishType": "released",
                "imageIllustrate": "1.tools add language",
                "romSdkint": 33,
                "romSdkName": "Android 13"
            }
        ],
        "hasNewVersion": false
    },
    "ts": 1744181920213
}

Equipment Pre-sale Purchase

When stock is insufficient, you can use this API to pre-order a device (only applicable to cloud phone products with a rental period of 30 days or more). Once stock is replenished, the system will prioritize fulfilling pre-sale orders and automatically dispatch the devices. After the order is shipped, users will receive an email notification and an additional one-day usage bonus.

API Endpoint

/vcpcloud/api/padApi/createMoneyProOrder

Request Method

POST

Request Data Type

application/json

Request BODY Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
androidVersionNameAndroid13String是Android Version:Android10、Android13、Android14
goodId1Integer是Product ID (corresponding to the Product ID value of SKU Package List)
goodNum1Integer是Product Number
autoRenewtrueBoolean是Whether to automatically renew (default closed) true-on, false-off

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataVMOS-CLOUD174290228048631464StringPre-sale order number

Request Example

{
    "androidVersionName": "Android13",
    "goodId": 75,
    "goodNum": 1,
    "autoRenew": true
}

Response Example

{
	"msg": "success",
	"code": 200,
	"data": "VMOS-CLOUD174290228048631464",
	"ts": 1736306672346
}

Query pre-sale order result details

Query the details of pre-sale order results. You can query by pre-sale order number, order status (1-to be shipped 2-shipped, empty default all)

API Endpoint

/vcpcloud/api/padApi/queryProOrderList

Request Method

POST

Request Data Type

application/json

Request BODY Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
proBuyStatus2IntegerNo1-To be shipped 2-Shipment If empty, default to all
orderIdVMOS-CLOUD174290228048631464IntegerNoPre-sale order number

Response Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObject[]Data list
├─ proBuyOrderIdVMOS-CLOUD174290228048631464StringPre-sale order number
├─ proBuyStatus2Integer1-To be shipped 2-Shipment
├─ proBuyNumber1IntegerPurchase quantity
├─ createTime2025-03-25 19:31:21Stringcreation time
├─ payTime2025-03-25 19:31:21Stringpayment time
├─ endTime2025-03-25 19:41:33StringShipping time
├─ orderPrice1399IntegerOrder Amount (cents)
├─ goodNameSamsung Galaxy A53StringDevice name
ts1736306672346LongTimestamp

Request Example

{
    "proBuyStatus": "2",
    "orderId": "VMOS-CLOUD174290228048631464"
}

Response Example

{
    "msg": "success",
        "code": 200,
        "data": [
        {
            "proBuyOrderId": "VMOS-CLOUD174290228048631464",
            "proBuyStatus": 2,
            "proBuyNumber": 1,
            "createTime": "2025-03-25 19:31:21",
            "payTime": "2025-03-25 19:31:21",
            "endTime": "2025-03-25 19:41:33",
            "orderPrice": 499,
            "goodName": "V08"
        },
        {
            "proBuyOrderId": "VMOS-CLOUD174323615535421664",
            "proBuyStatus": 2,
            "proBuyNumber": 1,
            "createTime": "2025-03-29 16:16:22",
            "payTime": "2025-03-29 16:16:22",
            "endTime": "2025-03-29 16:18:03",
            "orderPrice": 1399,
            "goodName": "Samsung Galaxy A53"
        }
    ],
        "ts": 1743239203460
}

SDK Token Issuance

Issue a temporary STS Token for user authentication to access the cloud mobile phone service.

Get SDK Temporary Token

API Endpoint

/vcpcloud/api/padApi/stsToken

Request Method

GET

Request Data Type

application/json

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectData list
├─ token18df5803-48ce-4b53-9457-6a15feb1dacaStringSDK communication token

Response Example

{
    "code": 200,
    "msg": "success",
    "ts":1713773577581,
    "data": {
        "token": "18df5803-48ce-4b53-9457-6a15feb1daca"
    }
}

SDK Token Issuance (by padCode)

Issue a temporary STS Token for user authentication to access the cloud mobile phone service (the token can only be used for the specified padCode).

Get SDK Temporary Token by padCode

API Endpoint

/vcpcloud/api/padApi/stsTokenByPadCode

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
padCodeAC32010230001StringYesInstance ID (padCode)

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectData list
├─ token18df5803-48ce-4b53-9457-6a15feb1dacaStringSDK communication token

Request Example

{"padCode":"AC32010230001"}

Response Example

{
    "code": 200,
        "msg": "success",
        "ts":1713773577581,
        "data": {
        "token": "18df5803-48ce-4b53-9457-6a15feb1daca"
    }
}

Clear SDK Authorization Token

API Endpoint

/vcpcloud/api/padApi/clearStsToken

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueParameter TypeRequiredDescription
token123StringYesThe token to be cleared

Response Parameters

Parameter NameExample ValueParameter TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectData list

Request Example

{"token":1234}

Response Example

{
    "code": 200,
        "msg": "success",
        "ts":1713773577581,
        "data": null
}

Cloud Space

Query User File List

Endpoint URL

/vcpcloud/api/padApi/selectFiles

Request Method

POST

Request Data Type

application/json

Request Body Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObject[]Response body
├─appNameKuaishou LiteStringFile name
├─downloadUrlhttps://file.vmoscloud.com/userFile/fd31c45b5a7c3e6249c7d1b1dca6ff77.apkStringFile download link
├─packageNamecom.kuaishou.nebulaStringAPK package name, only for apk files
├─fileId479472IntegerCloud space file ID

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "appName": "Kuaishou Lite",
            "downloadUrl": "https://file.vmoscloud.com/userFile/fd31c45b5a7c3e6249c7d1b1dca6ff77.apk",
            "packageName": "com.kuaishou.nebula",
            "fileId": 479472
        }
    ],
    "ts": 1746711010676
}


Delete Cloud Space Files

Endpoint URL

/vcpcloud/api/padApi/deleteOssFiles

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeRequiredDescription
filesInteger[]YesCollection of unique cloud space file IDs
├─479452IntegerYesUnique cloud space file ID
urlsString[]NoCollection of cloud space file download links
├─479452StringNoCloud space file download link

Response Parameters

Parameter NameExample ValueData TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp

Request Example

{
    "files": [479452]
}


Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1746694236404
}


Upload File to Cloud Space

Upload file to cloud space and get download link

Endpoint URL

/vcpcloud/api/padApi/uploadFile

Request Method

POST

Request Data Type

multipart/form-data

body Note: it is form, not json

Request form-data Parameters

Parameter NameExample ValueData TypeRequiredDescription
fileFourSeasonsPhilly.webpFileYesFile to upload

Response Parameters

Parameter NameExample ValueData TypeDescription
code200IntegerStatus code
msgsuccessStringResponse message
ts1756021167163LongTimestamp
dataObjectResponse body
├─downloadUrlhttps://file.vmoscloud.com/userFile/83bb260163f78e6928c1fe5acda.webpStringFile download link

Request Example

curl --request POST \
  --url /vcpcloud/api/padApi/uploadFile \
  --header 'accept-language: zh' \
  --header 'content-type: multipart/form-data' \
  --form 'file=@C:\FourSeasonsPhilly.webp'

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "downloadUrl": "https://file.vmoscloud.com/userFile/83bb260163f78e6928c1fe5acda.webp"
    },
    "ts": 1746704760360
}


Purchase Cloud Space Expansion

Purchase cloud space expansion

Endpoint URL

/vcpcloud/api/padApi/buyStorageGoods

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeRequiredDescription
storageId1IntegerYesUnique ID of cloud space expansion product
autoRenewOrder0IntegerYesAuto-renew? 0-No 1-Yes

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745569714501LongExecution Timestamp

Request Example

{
    "storageId": 1,
    "autoRenewOrder": 0
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745569714501
}

Storage Resource Package List

List of storage resource packages after shutdown backup

Endpoint URL

/vcpcloud/api/padApi/vcTimingBackupList

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObject[]Resource package collection info
├─ backupIdZSC250425LIOJY2V-ACN250424VU2F6LBStringBackup resource package ID
├─ padCodeACN250424VU2F6LBStringDevice belonging to the backup package
├─ beginTime2025-04-25 16:28:48StringBackup time
├─ remarkTime:20250425162833StringBackup description. If a remark is passed during backup, the custom one is used; otherwise, the default is the backup time
├─ padNameV06StringCustom device name, used to quickly distinguish and find resource packages

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "backupId": "ZSC250425LIOJY2V-ACN250424VU2F6LB",
            "padCode": "ACN250424VU2F6LB",
            "beginTime": "2025-04-25 16:28:48",
            "remark": "Time:20250425162833",
            "padName": "V06"
        }
    ],
    "ts": 1745570858994
}

Cloud Space Product List

Cloud space product list

Endpoint URL

/vcpcloud/api/padApi/getVcStorageGoods

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObject[]Resource package collection info
├─ oldPrice169LongOriginal price
├─ payPrice169LongSales price after discount
├─ subscriptTips15% offStringDiscount description
├─ useTime43200LongValid minutes
├─ storageCapacity107374182400LongCorresponding cloud space size
├─ storageId1IntegerCloud space product unique ID
├─ storageName100GB/MonthStringCloud space product description

Response Example

{
    "msg": "success",
        "code": 200,
        "data": [
            {
                "oldPrice": 199,
                "payPrice": 169,
                "subscriptTips": "15% off",
                "useTime": 43200,
                "reorder": 1,
                "storageCapacity": 107374182400,
                "selected": true,
                "storageId": 1,
                "storageName": "100GB/Month"
            }
        ],
        "ts": 1745572789763
}

Aggregate Renewal of Cloud Space Products

Aggregate renewal of cloud space products

Endpoint URL

/vcpcloud/api/padApi/renewsStorageGoods

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeRequiredDescription
autoRenewOrder0IntegerYesAuto-renew? 0-No 1-Yes

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745569714501LongExecution Timestamp

Request Example

{
    "autoRenewOrder": 0
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745569714501
}

Delete Backup Resource Package Data

Delete backup resource package data

Endpoint URL

/vcpcloud/api/padApi/deleteUploadFiles

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeRequiredDescription
String[]YesCollection of resource package IDs to delete
├─ZSC250425LIOJY2V-ACN250424VU2F6LBStringYesResource package ID to delete

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745569714501LongExecution Timestamp

Request Example

[
    "ZSC250425LIOJY2V-ACN250424VU2F6LB"
]

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745569714501
}

Cloud Space Auto-renew Aggregate Product Switch

Cloud space auto-renew aggregate product switch

Endpoint URL

/vcpcloud/api/padApi/updateRenewStorageStatus

Request Method

GET

Request Data Type

application/json

Request Query Parameters

Parameter NameExample ValueData TypeRequiredDescription
renewStorageStatusfalseStringYesAuto-renew? false-No true-Yes

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745569714501LongExecution Timestamp

Request Example

/vcpcloud/api/padApi/updateRenewStorageStatus?renewStorageStatus=false

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745569714501
}

Query Cloud Space Renewal Details

Query cloud space renewal details

Endpoint URL

/vcpcloud/api/padApi/selectAutoRenew

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObject[]Renewal information
├─ renewStorageStatus0IntegerWhether auto-renew is enabled 0-No 1-Yes
├─ storageSize214748364800LongTotal size of renewed cloud space
├─ storageAmount338LongRenewal amount required (cents)
├─ signExpirationTime2025-05-10 19:22:35StringExpiration Time

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "renewStorageStatus": 0,
        "storageSize": 214748364800,
        "storageAmount": 338,
        "signExpirationTime": "2025-05-10 19:22:35"
    },
    "ts": 1745573906608
}

Cloud Space Remaining Storage Capacity

Cloud space remaining storage capacity

Endpoint URL

/vcpcloud/api/padApi/getRenewStorageInfo

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
dataObjectResource package collection info
├─ accountBalance100LongWallet balance (cents)
├─ storageCapacityLimit112742891520LongAvailable space size 1GB = 1024 x 1024 x 1024 Byte
├─ storageUsedAvail17325201433LongUsed space size
├─ otherObjectAdditional space details
├─├─ signExpirationTime2025-05-10 19:22:35StringAdditional space expiration time
├─├─ storageAmount169LongRenewal amount required for additional space (cents)
├─├─ otherStorageSize107374182400LongAdditional space size

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "accountBalance": 100,
        "storageCapacityLimit": 112742891520,
        "storageUsedAvail": 17325201433,
        "other": {
            "signExpirationTime": "2025-05-10 19:22:35",
            "storageAmount": 169,
            "otherStorageSize": 107374182400
        }
    },
    "ts": 1745571643583
}


Static Residential Service

Get Static Residential Product List

Endpoint URL

/vcpcloud/api/padApi/proxyGoodList

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─proxyGoodName5 daysStringProduct Name
├─proxyGoodId1IntegerUnique Product ID
├─proxyGoodPrice200IntegerProduct price (cents)
├─proxyGoodType2IntegerProxy product type: 0-General 1-socket5 2-http 3-https
├─proxyGoodTime7200IntegerProduct duration (minutes)

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "proxyGoodName": "5 days",
            "proxyGoodId": 4,
            "proxyGoodTime": 7200,
            "proxyGoodType": 2,
            "proxyGoodPrice": 200
        }
    ],
    "ts": 1747734076860
}


Get Supported Countries/Cities for Static Residential Products

Endpoint URL

/vcpcloud/api/padApi/getProxyRegion

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]
├─countrycnStringSupported country code
├─countryZhChinaStringSupported country description
├─countryId15IntegerUnique country ID

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "country": "cn",
            "countryZh": "China",
            "countryId": 15
        },
    ],
    "ts": 1747734076860
}


Purchase Static Residential Product

Endpoint URL

/vcpcloud/api/padApi/createProxyOrder

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
proxyGoodId4IntegerUnique ID of the corresponding static residential product
regioncnStringRegion of static residential proxy-country
num1IntegerPurchase quantity
countrycnStringCountry of static residential proxy-country
proxyAddressChinaStringAddress of static residential proxy-countryZh
autoRenewtrueBooleanEnable auto-renew false-off true-on

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "proxyGoodId": 4,
    "region": "cn",
    "num": 1,
    "country": "cn",
    "proxyAddress": "China",
    "autoRenew": true
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Static Residential Proxy Order Details

Endpoint URL

/vcpcloud/api/padApi/selectProxyOrderList

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
page1IntegerPage number
rows10IntegerItems per page

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject
├─total1IntegerTotal count
├─size10IntegerNumber of items per page
├─pages1IntegerTotal pages
├─recordsObject[]Order information
├─├─buyNumber1StringPurchase quantity
├─├─goodNameNew Purchase5-day agency productStringProduct name
├─├─createTime1747734544000LongCreation time
├─├─orderIdVMOS-CLOUD174773454378660285StringOrder ID
├─├─payPrice200StringPayment amount
├─├─orderStatusvpnStringOrder status 0-unpaid 1-paid
├─├─orderPricecnStringOrder amount
├─├─goodPriceSichuanStringUnit price
├─├─goodNumSichuanStringProduct quantity

Request Example

{
    "page": 1,
    "rows": 10
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "current": 1,
        "total": 30,
        "pages": 3,
        "size": 10,
        "records": [
            {
                "buyNumber": 1,
                "goodName": "New Purchase5-day agency product",
                "createTime": 1747734544000,
                "orderId": "VMOS-CLOUD174773454378660285",
                "payPrice": 200,
                "orderStatus": 1,
                "orderPrice": 200,
                "goodPrice": 200,
                "goodNum": 1
            }
        ]
    },
    "ts": 1747734706973
}


Static Residential Proxy Renewal

Endpoint URL

/vcpcloud/api/padApi/createRenewProxyOrder

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
proxyGoodId4IntegerUnique ID of the corresponding static residential product
proxyIps154.81.41.161,154.81.41.162StringIPs to renew, separated by commas
autoRenewtrueBooleanEnable auto-renew false-off true-on

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "proxyGoodId": 4,
    "proxyIps": "154.81.41.161,154.81.41.162",
    "autoRenew": true
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Query Static Residential Proxy List

Endpoint URL

/vcpcloud/api/padApi/queryProxyList

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
current1IntegerPage number
size10IntegerItems per page

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject
├─total1IntegerTotal count
├─size10IntegerNumber of items per page
├─pages1IntegerTotal pages
├─recordsObject[]Order information
├─├─proxyStatus1IntegerProxy status: 0-checking 1-normal -1-check failed 2-pending check
├─├─proxyGoodId4StringProduct ID
├─├─proxyName154.81.40.200LongProxy name
├─├─proxyUseNumber0StringNumber of mounted cloud phones
├─├─proxyType1StringProxy type: 1-Socks5 2-http 3-https
├─├─proxyHost154.81.40.200StringOrder status 0-unpaid 1-paid
├─├─proxyPort63007StringProxy port (odd-socks5 even-http) 63007 (63008)
├─├─passwordxxxxxxStringProxy password
├─├─proxyCountryCNStringProxy country
├─├─expectedExpireTime1748166543StringExpiration timestamp
├─├─expireTime1748166543StringExpiration timestamp (same as above, use expireTime)
├─├─accountxxxxxxStringUsername
├─├─proxyId86930StringProxy unique ID (used for mounting cloud phone)

Request Example

{
    "current": 1,
    "size": 10
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "current": 1,
        "total": 30,
        "pages": 3,
        "size": 10,
        "records": [
            {
                "proxyStatus": 2,
                "proxyGoodId": 4,
                "proxyName": "154.81.40.200",
                "proxyUseNumber": 0,
                "proxyType": 1,
                "proxyHost": "154.81.40.200",
                "proxyPort": 63007,
                "password": "xxxxxx",
                "proxyCountry": "CN",
                "expireTime": 1748166543,
                "expectedExpireTime": 1748166543,
                "account": "xxxxxxx",
                "proxyId": 86930
            },
        ]
    },
    "ts": 1747734706973
}


Dynamic Proxy Service

Query Dynamic Proxy Product List

Endpoint URL

/vcpcloud/api/padApi/getDynamicGoodService

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─goodName2GBStringProduct Name
├─goodId1IntegerProduct unique ID
├─goodPrice1StringProduct price
├─protocolDescriptionGithubStringSupported protocol info
├─totalTrafficObject[]Traffic package size

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "goodName": "2GB",
            "goodId": 1,
            "goodPrice": 1000,
            "protocolDescription": "HTTP(S)/SOCKS5",
            "totalTraffic": 2048
        }
    ],
    "ts": 1740643153803
}


Query Dynamic Proxy Region List

Endpoint URL

/vcpcloud/api/padApi/getDynamicProxyRegion

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─CountryNameUnited Arab EmiratesStringCountry Name
├─CountryCodeAEStringCountry Code
├─StateObject[]Region list
├─├─cityObject[]City list
├─├─├─MusaffahcityStringCity name
├─├─nameAbudhabiStringRegion name

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "CountryName": "United Arab Emirates",
            "CountryCode": "AE",
            "State": [
                {
                    "city": [
                        "Musaffahcity",
                        "Abudhabi"
                    ],
                    "name": "Abudhabi"
                },
            ],
        }
    ],
    "ts": 1740643153803
}


Get Dynamic Proxy Current Balance

Endpoint URL

/vcpcloud/api/padApi/queryCurrentTrafficBalance

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─accumulatedTraffic2048StringTotal traffic
├─remainingTraffic1024Object[]Remaining traffic
├─useTraffic1024Object[]Used traffic

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "accumulatedTraffic": 2048,
        "remainingTraffic": 1024,
        "useTraffic": 1024
    },
    "ts": 1740659529379
}


Query Supported Server Regions

Endpoint URL

/vcpcloud/api/padApi/getDynamicProxyHost

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─nameAmerica Region (South America & North America)StringContinent Name
├─valuexxxxxxx:1234StringContinent Server Address

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "name": "America Region (South America & North America)",
            "value": "xxxxxxx:1234"
        }
    ],
        "ts": 1740660551742
}


Purchase Dynamic Proxy Traffic Package

Endpoint URL

/vcpcloud/api/padApi/buyDynamicProxy

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
goodId1IntegerUnique ID of the corresponding dynamic traffic package
goodNum1IntegerPurchase quantity
autoRenewOrder1IntegerEnable auto-renew 0-off 1-on. When remaining traffic is less than 50MB, auto-renew is triggered

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "goodId": 1,
    "goodNum": 1,
    "autoRenewOrder": 0
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Create Dynamic Proxy

Endpoint URL

/vcpcloud/api/padApi/createProxy

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
city""StringCity, pass "" if not selected
countryCodeAEStringCountry Code
goodNum1IntegerPurchase quantity
proxyHostxxxxx:7778StringContinent website
proxyTypesocks5StringProxy type socks5 / http / https
proxyUseTypeproxyStringMount type proxy / vpm
stateAbudhabiStringRegion, pass "" if not selected
time1StringAuto change ip frequency (minutes) Options: 5, 10, 15, 30, 45, 60, 90

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObjectResponse body
├─id82750IntegerProxy ID
├─proxyHostStringDynamic proxy

Request Example

{
    "proxyHost": "xxxxx:7778",
    "countryCode": "CN",
    "state": "Sichuan",
    "city": "Sichuan",
    "time": 5,
    "proxyType": "socks5",
    "proxyUseType": "vpn"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "id": 82750,
            "proxyHost": "E44S5YaWP660_custom_zone_HK_st_Kowloon_city_sid_27165697_time_10"
        }
    ],
    "ts": 1760068573317
}


Query Dynamic Proxy List (Supports Pagination)

Endpoint URL

/vcpcloud/api/padApi/getProxys

Request Method

GET

Request Data Type

application/json

Request Query Parameters

Parameter NameExample ValueData TypeDescription
page1IntegerCurrent page
rows10IntegerItems per page

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObjectStatus code
├─recordsObject[]Dynamic proxy information
├─├─id1StringUnique proxy ID
├─├─proxyHostxxxxxxxStringContinent server domain
├─├─proxyPort1234StringContinent server port
├─├─userNameE44S5YaWP660_time_5StringDynamic proxy username
├─├─password1234StringDynamic proxy password
├─├─proxyTypesocks5StringDynamic proxy protocol type
├─├─proxyUseTypevpnStringDynamic proxy mount type
├─├─countryCodecnStringCountry Code
├─├─stateSichuanStringRegion
├─├─citySichuanStringCity
├─├─time5IntegerRefresh frequency
├─total1IntegerProxy count
├─size10IntegerItems per page
├─pages1IntegerTotal pages

Response Example

{
    "msg": "success",
        "code": 200,
        "data": {
        "records": [
            {
                "id": 1,
                "proxyHost": "xxxxxx",
                "proxyPort": 7778,
                "userName": "E44S5YaW",
                "password": "1111",
                "proxyType": "socks5",
                "proxyUseType": "vpn",
                "countryCode": "cn",
                "state": "Sichuan",
                "city": "Sichuan",
                "time": 5
            }
        ],
        "total": 2,
        "size": 10,
        "current": 1,
        "pages": 1
    },
    "ts": 1740725704758
}

Query Dynamic Proxy Order List (Supports Pagination)

Endpoint URL

/vcpcloud/api/padApi/getDynamicProxyOrders

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
page1IntegerCurrent page
rows10IntegerItems per page
completeStartTime2025-02-27 23:20:36StringPayment start time
completeEndTime2025-02-28 23:20:36StringPayment end time

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObjectStatus code
├─recordsObject[]Dynamic proxy info
├─├─orderIdVMOS-CLOUD174066963648092563StringPlatform unique ID
├─├─orderPrice1000IntegerOrder amount in cents
├─├─payPrice1000IntegerPayment amount in cents
├─├─createTime2025-02-27T23:20:36.000+0800StringCreate Time
├─├─completeTime2025-02-27T23:20:36.000+0800StringPayment Time
├─├─orderStatus1IntegerOrder status 0-unpaid 1-paid
├─├─goodId1IntegerProduct unique ID
├─├─goodNum1IntegerPurchase quantity
├─├─goodName2GBStringProduct Name
├─├─goodPrice1000IntegerProduct unit price
├─├─goodSize2048IntegerProduct traffic package size
├─├─sumSize2048IntegerTotal order traffic package size
├─├─orderOtherInfoPurchase 2GB traffic package, purchase quantity: 1StringOrder description
├─├─autoRenewOrder1IntegerWhether to enable renewal 1-on 0-off (Globally effective)
├─total1IntegerProxy count
├─size10IntegerItems per page
├─pages1IntegerTotal pages

Request Example

{
   "page": 1,
   "rows": 10,
   "completeStartTime": "2025-02-27 23:20:36",
   "completeEndTime": "2025-02-28 23:20:36"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
    "records": [
            {
                "orderId": "VMOS-CLOUD174066963648092563",
                "orderPrice": 1000,
                "payPrice": 1000,
                "createTime": "2025-02-27T23:20:36.000+0800",
                "completeTime": "2025-02-27T23:20:36.000+0800",
                "orderStatus": 1,
                "goodId": 1,
                "goodNum": 1,
                "goodName": "2GB",
                "goodPrice": 1000,
                "goodSize": 2048,
                "sumSize": 2048,
                "orderOtherInfo": "Purchase 2GB traffic package, purchase quantity: 1",
                "autoRenewOrder": 0
            }
        ],
        "total": 2,
        "size": 10,
        "current": 1,
        "pages": 1
    },
    "ts": 1740726141853
}

Create Dynamic Proxy

Endpoint URL

/vcpcloud/api/padApi/createProxy

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
city""StringCity, pass "" if not selected
countryCodeAEStringCountry Code
goodNum1IntegerPurchase quantity
proxyHostxxxxx:7778StringContinent website
proxyTypesocks5StringProxy type socks5 / http / https
proxyUseTypeproxyStringMount type proxy / vpm
stateAbudhabiStringRegion, pass "" if not selected
time1StringAuto change ip frequency (minutes) Options: 5, 10, 15, 30, 45, 60, 90

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "proxyHost": "xxxxx:7778",
    "countryCode": "CN",
    "state": "Sichuan",
    "city": "Sichuan",
    "time": 5,
    "proxyType": "socks5",
    "proxyUseType": "vpn"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Configure Dynamic Proxy for Cloud Phone

Endpoint URL

/vcpcloud/api/padApi/batchPadConfigProxy

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
padCodesString[]Cloud phone collection
├─AC32010921223StringCloud phone number
setProxyFlagtrueBooleanWhether device proxies to cloud phone
proxyIds[ 82750 ]ArrayDynamic Proxy unique ID

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
data1cb0ba24-cdc2-47d3-909d-d7ea2ab10576StringBatch ID

Request Example

{
    "padCodes": [
        "AC32010921223"
    ],
    "setProxyFlag": true,
    "proxyIds":  [
        82750
    ]
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860,
    "data": "1cb0ba24-cdc2-47d3-909d-d7ea2ab10576"
}


Query Batch Cloud Phone Proxy Setting Task

Endpoint URL

/vcpcloud/api/padApi/selectBatchPadProxyTask

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
taskId1cb0ba24-cdc2-47d3-909d-d7ea2ab10576IntegerBatch ID, mounting proxy is an asynchronous operation, so need to wait 5s or loop query

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
data[]ArrayBatch ID
├─padCodeACP250317BH33TR6StringDevice number
├─taskId994365372LongTask ID, query result via cloud phone task

Request Example

{
    "taskId": "1cb0ba24-cdc2-47d3-909d-d7ea2ab10576"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "padCode": "ACP250317BH33TR6",
            "taskId": 994365372
        }
    ],
    "ts": 1760102034102
}


Query Dynamic Proxy Auto-Renew Information

Endpoint URL

/vcpcloud/api/padApi/getDynamicProxyAutomaticRenewal

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─good_size2048IntegerRenewal traffic package size
├─auto_renew_order1IntegerWhether auto-renew is enabled 0-off 1-on
├─order_price199IntegerAmount to be deducted for auto-renew
├─good_nameTraffic packageStringAuto-renew product name
├─good_number1IntegerAuto-renew product quantity

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "good_size": 2048,
            "auto_renew_order": 1,
            "order_price": 199,
            "good_name": "Traffic package",
            "good_number": 1
        }
    ],
    "ts": 1745308893191
}


Set Dynamic Proxy Auto-Renew Switch

Endpoint URL

/vcpcloud/api/padApi/setAutoRenewSwitch

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
autoRenewOrder0IntegerAuto-renew switch 0-off 1-on

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "autoRenewOrder": 0
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Delete Dynamic Proxy

Endpoint URL

/vcpcloud/api/padApi/delProxyByIds

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
idsInteger[]Collection of dynamic proxy IDs to delete
├─1IntegerDynamic proxy unique ID

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "ids": [
        1
    ]
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Email Verification Service

Purchase email and get verification codes for related services

Get Email Service List

Endpoint URL

/vcpcloud/api/padApi/getEmailServiceList

Request Method

GET

Request Data Type

application/json

Request Query Parameters

None

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─price0.01FloatPrice
├─stockNum300IntegerRemaining stock
├─serviceId1StringService list ID
├─serviceNameGithubStringService name
├─itemsObject[]Sub-service list
├─├─serviceItemId1IntegerSub-service unique ID (ID used when purchasing)
├─├─serviceItemNameGithub RegisterStringSub-service name

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "price": 0.01,
            "stockNum": 300,
            "serviceId": 1,
            "serviceName": "Github",
            "items": [
                {
                    "serviceItemId": 1,
                    "serviceItemName": "Github Register"
                }
            ]
        }
    ],
    "ts": 1745825162018
}


Get Email Type and Remaining Stock

Endpoint URL

/vcpcloud/api/padApi/getEmailTypeList

Request Method

GET

Request Data Type

application/json

Request Query Parameters

Parameter NameExample ValueData TypeDescription
serviceId1IntegerCorresponds to serviceItemId field

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp
dataObject[]Status code
├─price0.01FloatPrice
├─nameOutlookStringType name
├─stockNum630IntegerRemaining stock
├─id1IntegerEmail type ID

Request Example

{
    "serviceId": "1"
}

Response Example

{
    "msg": "success",
    "code": 200,
    "data": [
        {
            "price": 0.01,
            "name": "Outlook",
            "stockNum": 300,
            "id": 1
        }
    ],
    "ts": 1745823575860
}


Create Email Purchase Order

Endpoint URL

/vcpcloud/api/padApi/getEmailTypeList

Request Method

POST

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
serviceId1IntegerCorresponds to serviceItemId field
emailTypeId1IntegerCorresponds to ID field returned by /getEmailTypeList
goodNum1IntegerPurchase quantity

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1736922808949IntegerTimestamp

Request Example

{
    "serviceId": 1,
    "emailTypeId": 1,
    "goodNum": 1
}

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745823575860
}


Query Purchased Email List

When the verification code cannot be obtained through the refresh interface, you can query the result through: https://api.vmoscloud.com/vcpcloud/api/padApi/code?orderId= + outOrderId (external order number)

Endpoint URL

/vcpcloud/api/padApi/getEmailOrder

Request Method

GET

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
page1IntegerRequired, pagination parameter, current page
size10IntegerRequired, pagination parameter, items per page
serviceId1IntegerOptional, corresponds to serviceItemId field
emailyzxovmqStringOptional, email fuzzy query
status0IntegerOptional, email status 0-unused 1-receiving 2-used 3-expired

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745835489149LongTimestamp (milliseconds)
dataObjectData object
├─ current1IntegerCurrent page number
├─ total1IntegerTotal records
├─ pages1IntegerTotal pages
├─ size10IntegerPage size
├─ recordsObject[]Data record list
├─├─ id1LongPrimary key ID
├─├─ userId10667LongUser ID
├─├─ emailyzxovmqi828@outlook.comStringEmail address
├─├─ emailStatus0IntegerEmail status (0-unused)
├─├─ emailTypeId1IntegerEmail type ID
├─├─ emailTypeNameOutlookStringEmail type name
├─├─ emailServiceId2IntegerEmail service provider ID
├─├─ emailServiceNameAppleStringEmail service provider name
├─├─ emailCode767170StringEmail verification code
├─├─ useSize1IntegerUsage count
├─├─ orderIdVMOS-CLOUD174583355706782096StringSystem order number
├─├─ outOrderId1916791090664861697StringExternal order number

Request Example

/vcpcloud/api/vcEmailService/getEmailOrder?page=1&size=10&serviceId=2&email=yzxovmq&status=0

Response Example

{
    "msg": "success",
    "code": 200,
    "data": {
        "current": 1,
        "total": 1,
        "pages": 1,
        "size": 10,
        "records": [
            {
                "emailServiceName": "Tiktok",
                "emailTypeName": "Gmail",
                "useSize": 2,
                "orderId": "VMOS-CLOUD174592947484442767",
                "updateTime": 1747135883000,
                "goodPrice": 0.03,
                "userId": 10667,
                "emailTypeId": 3,
                "emailCode": "767170",
                "emailStatus": 3,
                "createTime": 1745929475000,
                "emailServiceId": 3,
                "outOrderId": "1917193290790019073",
                "id": 468,
                "email": "jessicaadams316490@gmail.com"
            }
        ]
    },
    "ts": 1745835489149
}


Refresh to Get Email Verification Code

This interface refreshes the verification code list result, need to be used together with the [Query Purchased Email List] interface

Endpoint URL

/vcpcloud/api/padApi/getEmailCode

Request Method

GET

Request Data Type

application/json

Request Body Parameters

Parameter NameExample ValueData TypeDescription
orderId1917193290790019073StringRequired, corresponds to outOrderId field

Response Parameters

Parameter NameExample ValueData TypeDescription
msgsuccessStringResponse message
code200IntegerStatus code
ts1745835489149LongTimestamp (milliseconds)

Request Example

/vcpcloud/api/vcEmailService/getEmailCode?orderId=1917193290790019073

Response Example

{
    "msg": "success",
    "code": 200,
    "ts": 1745835489149
}


Callback-Related Information

Configuration Instructions

Customers need to configure the callback URL on the WEB side. Once the address is configured successfully, receiving callback information will be enabled by default.


Asynchronous ADB Command Callback

Use Case

When a customer calls the asynchronous execution of ADB commands, they will be notified through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1002Task business type
taskIdInteger1Task ID
padCodeStringAC22030022001Instance identifier
taskStatusInteger3Task status (-1: Total failure; -2: Partial failure; -3: Cancel; -4: Timeout; 1: Pending; 2: Executing; 3: Completed)
endTimeLong1756021166163Task end time
taskResultStringSuccessTask result
taskContentStringTask content
cmdStringcd /root;lsExecuted command
cmdResultString/wsCommand return value

Example

{
    "cmd": "cd /root;ls",
    "cmdResult": "/system/bin/sh: <stdin>[1]: cd: /root: No such file or directory",
    "endTime": 1734942133000,
    "padCode": "AC22030022001",
    "taskContent": null,
    "taskId": 10614,
    "taskResult": "/system/bin/sh: <stdin>[1]: cd: /root: No such file or directory",
    "taskStatus": 3
}


Instance File Upload Callback

Use Case

When a customer calls the instance file upload API, they will be notified through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1009Task business type
taskIdInteger1Task ID
resultbooleantrueExecution result: true-success, false-failure
errorCodeStringError code
padCodeStringAC22030022001Instance number
fileIdStringcf08f7b685ab3a7b6a793b30de1b33ae34File ID

Example

{
    "errorCode": null,
    "fileId": "cfec132ab3c4e1aff5515c4467d9bbe460",
    "padCode": "AC22030022001",
    "result": true,
    "taskBusinessType": 1009,
    "taskId": 10659,
    "taskResult": "Success", 
    "taskStatus": 3
}


App Installation Callback

Use Case

When a customer calls for app installation, the installation status will be notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1003Task business type
taskIdInteger1Task ID
appsObject[]App information
├─ appIdInteger10001App ID
├─ appNameStringdemoApp Name
├─ pkgNameStringcom.xxx.demoPackage Name
├─ padCodeStringAC22030022001Instance number
├─ resultbooleantrueInstallation result flag. true: success, false: failure
├─ failMsgStringThis app is blacklisted and forbidden from installationFailure message

Example

{
    "endTime": 1734939747000,
    "padCode": "AC22030022001",
    "taskBusinessType": 1003,
    "taskContent": "",
    "taskId": 10613,
    "taskResult": "Success",
    "taskStatus": 3
}


App Uninstallation Callback

Use Case

When a customer calls for app uninstallation, the uninstallation status will be notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1004Task business type
taskIdInteger1Task ID
appsObjectApp information
├─ appIdInteger10001App ID
├─ appNameStringdemoApp Name
├─ pkgNameStringcom.xxx.demoPackage Name
├─ padCodeStringAC22030022001Instance number
├─ resultbooleantrueUninstallation result flag. true: success, false: failure

Example

{
    "endTime": 1734940052000,
    "padCode": "AC22030022001",
    "taskBusinessType": 1004,
    "taskContent": "",
    "taskId": null,
    "taskResult": "Success",
    "taskStatus": 3
}


App Start Callback

Use Case

When a customer calls for app startup, the startup status will be notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1007Task business type
taskIdInteger1Task ID
taskStatusInteger3Task status (-1: Total failure; -3: Cancel; -4: Timeout; 1: Pending; 2: Executing; 3: Completed)
padCodeStringAC22030022001Instance identifier
pkgNameStringxxx.test.comPackage Name

Example

{
    "taskBusinessType": 1007,
    "packageName": "com.quark.browser",
    "padCode": "AC22030022001",
    "taskId": 10618,
    "taskStatus": 3
}


App Stop Callback

Use Case

When a customer calls for app stopping, the stop status will be notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1005Task business type
taskIdInteger1Task ID
taskStatusInteger3Task status (-1: Total failure; -3: Cancel; -4: Timeout; 1: Pending; 2: Executing; 3: Completed)
padCodeStringAC22030022001Instance identifier
pkgNameStringxxx.test.comPackage Name

Example

{
    "taskBusinessType": 1005,
    "packageName": "com.quark.browser",
    "padCode": "AC22030022001",
    "taskId": 10618,
    "taskStatus": 3
}


App Restart Callback

Use Case

When a customer calls for app restart, the restart status will be notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1006Task business type
taskIdInteger1Task ID
taskStatusInteger3Task status (-1: Total failure; -3: Cancel; -4: Timeout; 1: Pending; 2: Executing; 3: Completed)
padCodeStringAC22030022001Instance identifier
pkgNameStringxxx.test.comPackage Name

Example

{
    "taskBusinessType": 1006,
    "packageName": "com.quark.browser",
    "padCode": "AC22030022001",
    "taskId": 10618,
    "taskStatus": 3
}


User Image Upload Callback

Use Case

When a user image is uploaded, the result is notified to the customer through this callback interface.

FieldTypeExampleDescription
taskBusinessTypeInteger4001Task business type
imageIdStringimg-2505244083302766Image ID
taskStatusInteger3Task status (-1: Failure; 3: Completed)

Example

{
    "imageId": "img-2505244083302766",
    "taskBusinessType": 4001,
    "taskStatus": 3
}


One-Click New Device Callback

Use Case: After the One-Click New Device task is completed, the system notifies the customer through this interface.

FieldTypeExampleDescription
taskBusinessTypeInteger1124Task business type
padCodeString212254Instance number
taskStatusInteger3Task status (-1: Total failure; -3: Cancel; -4: Timeout; 1: Pending; 2: Executing; 3: Completed)
taskIdInteger1Task ID
taskContentString-Task content
endTimeLong1756021166163End time (millisecond timestamp)
taskResultStringSuccessTask result description

Instance Image Upgrade Task Callback

Use Case: Notification sent when the status of the instance image upgrade task changes.

FieldTypeExampleDescription
taskBusinessTypeInteger1012Task business type
padCodeString212254Instance number
taskStatusInteger3Task status (same as above)
taskIdInteger1Task ID
taskContentString-Task content
endTimeLong1756021166163End time
taskResultStringSuccessTask result

Instance Status Callback

Use Case: Notification sent to the customer when the running status or connection status of the instance itself changes.

FieldTypeExampleDescription
taskBusinessTypeInteger999Task business type
padCodeString212254Instance identifier
padStatusInteger10Instance Status: -1: Deleted; 10: Running; 11: Restarting; 12: Resetting; 13: Upgrading; 14: Abnormal; 15: Not Ready; 16: Backing up; 17: Restoring; 18: Power Off; 19: Shutting down; 20: Powering on; 21: Shutdown Failed; 22: Boot Failed
padConnectStatusInteger1Instance Connection Status: 1: Online; 0: Offline

Instance Restart/Reset Task Callback

Use Case: Notification regarding the results of instance restart (1000) or reset (1001) operations.

FieldTypeExampleDescription
taskBusinessTypeInteger1000/10011000 for restart, 1001 for reset
padCodeString212254Instance number
taskStatusInteger3Task status (-1: Failure; 1: Pending; 2: Executing; 3: Completed)
taskIdInteger1Task ID
endTimeLong1756021166163End time
taskResultStringSuccessTask result
Prev
User Guide
Next
Error Code