VSPhone API
  • 简体中文
  • English
  • 简体中文
  • English
  • Product Introduction
  • Product Type
  • Product Billing
  • OpenAPI
    • User Guide
    • API Documentation
    • OpenAPI Spec (for AI & tools)
    • Developer Quick Reference
    • Error Code
    • Instance Property List
    • Android device modification attribute list
  • 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

VSPhone OpenAPI 3.1 Spec

This page describes how to get the VSPhone OpenAPI 3.1 spec file for AI assistants, code generators, and tools. The spec matches the API Documentation in content; only the format is machine-readable OpenAPI.

📥 Download OpenAPI spec file — For Postman, Swagger Editor, AI tools

How to get it:

  • Browser download: Click here to download openapi.yaml, or open https://api.vsphone.com/vsphone/doc/en/server/openapi.yaml. If the browser opens the file instead of downloading, right‑click the link and choose "Save link as".
  • Command line: curl https://api.vsphone.com/vsphone/doc/en/server/openapi.yaml -o vsphone-openapi.yaml
  • Direct import: Use the URL above in Postman, Swagger Editor, or other tools to import the spec.

About the spec

  • Scope: Same endpoints as in API Documentation — instance management, resources, apps, tasks, cloud phone, TK automation, SDK token.
  • Request/response: Paths, methods, summaries, and parameter names match the API doc; for full types and examples see API Documentation.
  • Authentication: HMAC-SHA256 (headers x-date, x-host, Content-Type, authorization). See Getting Started.

Full spec

Full OpenAPI 3.1 spec below. You can copy from this page or download via the link above.

openapi: 3.1.0
info:
  title: VSPhone OpenAPI
  description: |
    VSPhone server OpenAPI spec for AI/LLM/code assistants and tools.
    API descriptions and request/response params match OpenAPI.md.
    Auth and signing see Getting Started example.md.
  version: "1.0.0"

servers:
  - url: https://api.vsphone.com
    description: VSPhone API server

security:
  - VSPhoneHMAC: []

tags:
  - name: Instance Management
  - name: Resource Management
  - name: Application Management
  - name: Task Management
  - name: Cloud Phone Management
  - name: TK Automation
  - name: SDK Token

paths:
  /vsphone/api/padApi/setWifiList:
    post:
      tags:
        - Instance Management
      summary: Modify instance WIFI properties
      operationId: vsphone_api_padApi_setWifiList_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], wifiJsonList[], SSID, BSSID, MAC, IP, gateway, DNS1, DNS2, hessid, anqpDomainId, capabilities, level, linkSpeed, txLinkSpeed, rxLinkSpeed, frequency, distance, distanceSd, channelWidth"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/restart:
    post:
      tags:
        - Instance Management
      summary: Instance restart
      operationId: vsphone_api_padApi_restart_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/reset:
    post:
      tags:
        - Instance Management
      summary: Instance reset
      operationId: vsphone_api_padApi_reset_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/padProperties:
    post:
      tags:
        - Instance Management
      summary: Query instance properties
      operationId: vsphone_api_padApi_padProperties_post
      description: |
        Request params (names/types per OpenAPI.md): padCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/batchPadProperties:
    post:
      tags:
        - Instance Management
      summary: Batch query instance properties
      operationId: vsphone_api_padApi_batchPadProperties_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/updatePadProperties:
    post:
      tags:
        - Instance Management
      summary: Modify instance properties (dynamic)
      operationId: vsphone_api_padApi_updatePadProperties_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], modemPersistPropertiesList[], propertiesName, propertiesValue, modemPropertiesList[], systemPersistPropertiesList[], systemPropertiesList[], settingPropertiesList[], oaidPropertiesList[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/updatePadAndroidProp:
    post:
      tags:
        - Instance Management
      summary: Modify instance Android modification props (restart required)
      operationId: vsphone_api_padApi_updatePadAndroidProp_post
      description: |
        Request params (names/types per OpenAPI.md): padCode, restart, props, ro.product.vendor.name
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/updateSIM:
    post:
      tags:
        - Instance Management
      summary: Modify SIM by country code
      operationId: vsphone_api_padApi_updateSIM_post
      description: |
        Request params (names/types per OpenAPI.md): padCode, countryCode, props, ro.product.vendor.name
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/dissolveRoom:
    post:
      tags:
        - Instance Management
      summary: Stop streaming
      operationId: vsphone_api_padApi_dissolveRoom_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/smartIp:
    post:
      tags:
        - Instance Management
      summary: Set smart IP
      operationId: vsphone_api_padApi_smartIp_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], host, port, account, password, type, mode, bypassPackageList[], bypassIpList[], bypassDomainList[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/notSmartIp:
    post:
      tags:
        - Instance Management
      summary: Cancel smart IP
      operationId: vsphone_api_padApi_notSmartIp_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/updateTimeZone:
    post:
      tags:
        - Instance Management
      summary: Modify instance timezone
      operationId: vsphone_api_padApi_updateTimeZone_post
      description: |
        Request params (names/types per OpenAPI.md): "timeZone, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/updateLanguage:
    post:
      tags:
        - Instance Management
      summary: Modify instance language
      operationId: vsphone_api_padApi_updateLanguage_post
      description: |
        Request params (names/types per OpenAPI.md): "language, country, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/gpsInjectInfo:
    post:
      tags:
        - Instance Management
      summary: Set instance GPS
      operationId: vsphone_api_padApi_gpsInjectInfo_post
      description: |
        Request params (names/types per OpenAPI.md): "longitude, latitude, altitude, speed, bearing, horizontalAccuracyMeters, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/replacePad:
    post:
      tags:
        - Instance Management
      summary: One-key new device
      operationId: vsphone_api_padApi_replacePad_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], countryCode, realPhoneTemplateId, androidProp, replacementRealAdiFlag, excludeRealPhoneTemplateIds[], certificate, wipeData, wipeSpecificData[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/country:
    get:
      tags:
        - Instance Management
      summary: Query one-key new device supported countries
      operationId: vsphone_api_padApi_country_get
      description: |
        Request params (names/types per OpenAPI.md): None
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/setProxy:
    post:
      tags:
        - Instance Management
      summary: Set instance proxy
      operationId: vsphone_api_padApi_setProxy_post
      description: |
        Request params (names/types per OpenAPI.md): "account, password, ip, port, enable, padCodes[], proxyType, proxyName, bypassPackageList[], bypassIpList[], bypassDomainList[], sUoT"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/listInstalledApp:
    post:
      tags:
        - Instance Management
      summary: Real-time query installed app list
      operationId: vsphone_api_padApi_listInstalledApp_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], appName"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/setKeepAliveApp:
    post:
      tags:
        - Instance Management
      summary: Set app keep-alive
      operationId: vsphone_api_padApi_setKeepAliveApp_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], applyAllInstances, appInfos[], serverName"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/asyncCmd:
    post:
      tags:
        - Instance Management
      summary: Async execute ADB command
      operationId: vsphone_api_padApi_asyncCmd_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], scriptContent"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/switchRoot:
    post:
      tags:
        - Instance Management
      summary: Switch Root permission
      operationId: vsphone_api_padApi_switchRoot_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], globalRoot, packageName, rootStatus"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/screenshot:
    post:
      tags:
        - Instance Management
      summary: Local screenshot
      operationId: vsphone_api_padApi_screenshot_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], rotation, broadcast, definition, resolutionHeight, resolutionWidth"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/getLongGenerateUrl:
    post:
      tags:
        - Instance Management
      summary: Get instance real-time preview image
      operationId: vsphone_api_padApi_getLongGenerateUrl_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], format, height, width, quality"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/upgradeImage:
    post:
      tags:
        - Instance Management
      summary: Upgrade image
      operationId: vsphone_api_padApi_upgradeImage_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], imageId, wipeData, enableCpuCoreConfig"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/virtualRealSwitch:
    post:
      tags:
        - Instance Management
      summary: Upgrade real device image
      operationId: vsphone_api_padApi_virtualRealSwitch_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], imageId, wipeData, realPhoneTemplateId, upgradeImageConvertType, screenLayoutId, certificate, deviceAndroidProps, enableCpuCoreConfig"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/templateList:
    post:
      tags:
        - Instance Management
      summary: Paginated get real device templates
      operationId: vsphone_api_padApi_templateList_post
      description: |
        Request params (names/types per OpenAPI.md): page, rows
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/openOnlineAdb:
    post:
      tags:
        - Instance Management
      summary: Enable/disable ADB
      operationId: vsphone_api_padApi_openOnlineAdb_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], openStatus"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/adb:
    post:
      tags:
        - Instance Management
      summary: Get ADB connection info
      operationId: vsphone_api_padApi_adb_post
      description: |
        Request params (names/types per OpenAPI.md): padCode, enable
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/simulateTouch:
    post:
      tags:
        - Instance Management
      summary: Simulate touch
      operationId: vsphone_api_padApi_simulateTouch_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], width, height, pointCount, positions[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/padTaskDetail:
    post:
      tags:
        - Instance Management
      summary: Instance operation task details
      operationId: vsphone_api_padApi_padTaskDetail_post
      description: |
        Request params (names/types per OpenAPI.md): "taskIds[], taskId"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/infos:
    post:
      tags:
        - Instance Management
      summary: Instance group list / instance list info
      operationId: vsphone_api_padApi_infos_post
      description: |
        Request params (names/types per OpenAPI.md): "page, rows, padType, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/addPhoneRecord:
    post:
      tags:
        - Instance Management
      summary: Import call records
      operationId: vsphone_api_padApi_addPhoneRecord_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], callRecords[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/inputText:
    post:
      tags:
        - Instance Management
      summary: Cloud phone text input
      operationId: vsphone_api_padApi_inputText_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], text, code, msg, ts, data[], padCode, taskId, vmStatus, taskStatus"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/simulateSendSms:
    post:
      tags:
        - Instance Management
      summary: Simulate send SMS
      operationId: vsphone_api_padApi_simulateSendSms_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], senderNumber, smsContent"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/resetGAID:
    post:
      tags:
        - Instance Management
      summary: Reset GAID
      operationId: vsphone_api_padApi_resetGAID_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], resetGmsType, oprBy, taskSource"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/injectAudioToMic:
    post:
      tags:
        - Instance Management
      summary: Inject audio to instance microphone
      operationId: vsphone_api_padApi_injectAudioToMic_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], url, fileUniqueId, enable"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/addUserRom:
    post:
      tags:
        - Instance Management
      summary: Upload user image
      operationId: vsphone_api_padApi_addUserRom_post
      description: |
        Request params (names/types per OpenAPI.md): name, updateLog, androidVersion, version, downloadUrl, packageSize
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/replacement:
    post:
      tags:
        - Instance Management
      summary: Device replacement
      operationId: vsphone_api_padApi_replacement_post
      description: |
        Request params (names/types per OpenAPI.md): padCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/confirmTransfer:
    post:
      tags:
        - Instance Management
      summary: Transfer cloud phone
      operationId: vsphone_api_padApi_confirmTransfer_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], makeOverMobilePhone"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/uninstallApp:
    post:
      tags:
        - Application Management
      summary: Uninstall app
      operationId: vsphone_api_padApi_uninstallApp_post
      description: |
        Request params (names/types per OpenAPI.md): "apkPackageList[], padCodeList[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/startApp:
    post:
      tags:
        - Application Management
      summary: Start app
      operationId: vsphone_api_padApi_startApp_post
      description: |
        Request params (names/types per OpenAPI.md): "pkgName, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/stopApp:
    post:
      tags:
        - Application Management
      summary: Stop app
      operationId: vsphone_api_padApi_stopApp_post
      description: |
        Request params (names/types per OpenAPI.md): "pkgName, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/restartApp:
    post:
      tags:
        - Application Management
      summary: Restart app
      operationId: vsphone_api_padApi_restartApp_post
      description: |
        Request params (names/types per OpenAPI.md): "pkgName, padCodes[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/uploadFileV3:
    post:
      tags:
        - Application Management
      summary: Upload file via URL
      operationId: vsphone_api_padApi_uploadFileV3_post
      description: |
        Request params (names/types per OpenAPI.md): "padCodes[], padCode, autoInstall, fileUniqueId, customizeFilePath, fileName, packageName, url, md5, isAuthorization, iconPath"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/uploadFile:
    post:
      tags:
        - Application Management
      summary: Upload file to cloud storage
      operationId: vsphone_api_padApi_uploadFile_post
      description: |
        Request params (names/types per OpenAPI.md): file
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/selectFiles:
    post:
      tags:
        - Application Management
      summary: Query user file list
      operationId: vsphone_api_padApi_selectFiles_post
      description: |
        Request params (names/types per OpenAPI.md): None
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/fileTaskDetail:
    post:
      tags:
        - Task Management
      summary: File task details
      operationId: vsphone_api_padApi_fileTaskDetail_post
      description: |
        Request params (names/types per OpenAPI.md): "taskIds[], taskId"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/createMoneyOrder:
    post:
      tags:
        - Cloud Phone Management
      summary: Create/renew cloud phone
      operationId: vsphone_api_padApi_createMoneyOrder_post
      description: |
        Request params (names/types per OpenAPI.md): androidVersionName, goodId, goodNum, autoRenew, equipmentId
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/userPadList:
    post:
      tags:
        - Cloud Phone Management
      summary: Cloud phone list
      operationId: vsphone_api_padApi_userPadList_post
      description: |
        Request params (names/types per OpenAPI.md): "padCode, equipmentIds[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/padInfo:
    post:
      tags:
        - Cloud Phone Management
      summary: Cloud phone info query
      operationId: vsphone_api_padApi_padInfo_post
      description: |
        Request params (names/types per OpenAPI.md): padCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/getCloudGoodList:
    get:
      tags:
        - Cloud Phone Management
      summary: SKU package list
      operationId: vsphone_api_padApi_getCloudGoodList_get
      description: |
        Request params (names/types per OpenAPI.md): androidVersion
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/createMoneyProOrder:
    post:
      tags:
        - Cloud Phone Management
      summary: Device presale purchase
      operationId: vsphone_api_padApi_createMoneyProOrder_post
      description: |
        Request params (names/types per OpenAPI.md): androidVersionName, goodId, goodNum, autoRenew
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/queryProOrderList:
    post:
      tags:
        - Cloud Phone Management
      summary: Query presale order result details
      operationId: vsphone_api_padApi_queryProOrderList_post
      description: |
        Request params (names/types per OpenAPI.md): proBuyStatus, orderId
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/imageVersionList:
    post:
      tags:
        - Cloud Phone Management
      summary: Android image version list
      operationId: vsphone_api_padApi_imageVersionList_post
      description: |
        Request params (names/types per OpenAPI.md): padCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/autoTaskList:
    post:
      tags:
        - TK Automation
      summary: Automation task list query
      operationId: vsphone_api_padApi_autoTaskList_post
      description: |
        Request params (names/types per OpenAPI.md): "taskIds[], taskType, page, rows"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/addAutoTask:
    post:
      tags:
        - TK Automation
      summary: Create automation task
      operationId: vsphone_api_padApi_addAutoTask_post
      description: |
        Request params (names/types per OpenAPI.md): "taskName, remarks, taskType, list[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/reExecutionAutoTask:
    post:
      tags:
        - TK Automation
      summary: Automation task retry
      operationId: vsphone_api_padApi_reExecutionAutoTask_post
      description: |
        Request params (names/types per OpenAPI.md): "taskIds[], plannedExecutionTime"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/cancelAutoTask:
    post:
      tags:
        - TK Automation
      summary: Automation task cancel
      operationId: vsphone_api_padApi_cancelAutoTask_post
      description: |
        Request params (names/types per OpenAPI.md): "taskIds[]"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/stsToken:
    get:
      tags:
        - SDK Token
      summary: Get SDK temporary token
      operationId: vsphone_api_padApi_stsToken_get
      description: |
        Request params (names/types per OpenAPI.md): None
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/stsTokenByPadCode:
    post:
      tags:
        - SDK Token
      summary: Get SDK temporary token by padCode
      operationId: vsphone_api_padApi_stsTokenByPadCode_post
      description: |
        Request params (names/types per OpenAPI.md): padCode
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"
  /vsphone/api/padApi/clearStsToken:
    post:
      tags:
        - SDK Token
      summary: Clear SDK authorization token
      operationId: vsphone_api_padApi_clearStsToken_post
      description: |
        Request params (names/types per OpenAPI.md): token
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: See OpenAPI.md request body/params for this API
      responses:
        "200":
          description: JSON { code, msg, ts, data }; code=200 success
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiResponse"

components:
  securitySchemes:
    VSPhoneHMAC:
      type: http
      scheme: custom
      description: |
        HMAC-SHA256 signature. Required headers: x-date (UTC ISO 8601), x-host (api.vsphone.com),
        Content-Type (application/json), authorization (HMAC-SHA256).
        Format: HMAC-SHA256 Credential={AccessKey}, SignedHeaders=content-type;host;x-content-sha256;x-date, Signature={Signature}
        Steps see Getting Started example.md.
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          description: Business code; 200 = success
        msg:
          type: string
          description: Message
        ts:
          type: integer
          description: Timestamp
        data:
          description: Business data; structure per OpenAPI.md per-API response

Usage

  1. AI / codegen: Pass the openapi.yaml URL or file to your AI or OpenAPI code generator.
  2. Testing: Import into Postman or Insomnia; implement HMAC-SHA256 auth as in Getting Started.

Related docs

  • API Documentation — Full API reference
  • Getting Started — Auth and signing
  • LLMs.txt (AI Quick Reference) — Plain-text quick reference
Prev
API Documentation
Next
Developer Quick Reference