来源:紫鸟帮助中心/博客/主站资讯 + HubStudio API 文档/帮助中心 + 三个官方 skill 仓库。 只入库 Markdown 与元数据;原始 HTML 与 tarball 留在本机。
59 KiB
复制页面
Hubstudio
-
API 使用说明文档
-
Linux Server 部署与自动化指南
-
Hubstudio CLI 命令行操作指南
Hubstudio local API
环境管理
-
获取环境列表
-
创建环境
-
更新环境
-
更新环境代理
-
导入Cookie
-
导出Cookie
-
删除环境
-
获取随机UA
-
清除环境本地缓存
-
清理环境内插件缓存
-
刷新指纹
-
查询webglVendor和webglRenderer
-
批量修改备注
-
下载内核
-
更新环境基础信息
-
更新环境标签
浏览器环境
-
打开环境
-
关闭环境
-
关闭所有环境
-
获取浏览器状态
-
切�换浏览器窗口
-
获取所有打开环境
-
获取全部屏幕(物理机的屏幕)
-
浏览器窗口自定义排列
云手机
-
应用管理
-
APP列表(分页)\查询可安装应用列表
-
已安装应用列表查询
-
新增团队应用
-
app应用安装
-
APP启动
-
APP重启
-
APP停止
-
APP卸载
-
添加自定义到团队应用
-
设置隐藏无障碍服务
-
文件管理
-
选择本地上传文件到云手机
-
公网文件上传文件到云手机
-
设置keyBox
-
RPA
-
RPA模板参数填写规范
-
RPA-计划分页查询
-
RPA-个人模板分页查询
-
RPA-市场模板分页查询
-
RPA-保存计划
-
RPA-取消计划
-
RPA-执行记录分页查询
-
RPA-取消记录
-
RPA-记录详情查询
-
RPA-快速保存一次性计划
-
云手机商品列表
-
云手机分页列表
-
添加云手机
-
国家时区语言列表
-
批量开启云手机
-
批量关闭云手机
-
更新代理
-
批量获取云手机ADB状态
-
批量更新云手机ADB状态
-
一键新机
-
获取一键新机状态及可用数量
-
查询品牌机型
-
执行shell命令
-
修改云手机信息
-
发送短信到云手机
-
批量删除云手机
-
批量修改云手机分组
-
截图
-
Base64截图
-
查询团队预装应用列表
-
触控-单击
-
触控-双击
-
触控-拖拽
-
触控-长按
-
触控-滑动
平台账号管理
-
账号分页列表
-
账号删除
-
添加环境账号
-
账号更新
分组管理
-
删除环境分组
-
新建环境分组
-
获取环境分组列表
TK 运营自动化
-
创建批量发视频任务
-
创建TikTok智能养号任务
-
创建批量改资料任务
-
分页查询自动化任务
-
分页查询自动化任务执行明细
-
查询自动化任务结果
-
取消自动化任务
团队工具
-
创建或覆盖团队 Webhook
-
获取云手机远程连接
-
查询团队账户余��额
-
查询团队环境打开次数
用户登录态
-
退出登录
-
账号登录
-
Hubstudio open API
认证
-
获取调用凭证
-
查询当前凭证信息
环境管理
-
获取环境列表
-
创建环境
-
更新环境
-
更新环境代理
-
删除环境
-
导入Cookie
-
导出Cookie
-
获取随机UA
-
刷新指纹
-
批量修改备注
-
查询webglVendor和webglRenderer
平台账号
-
账号分页列表
-
账号更新
-
添加环境账号
-
账号删除
环境分组
-
获取环境分组列表
-
新建环境分组
-
删除环境分组
云手机
-
云手机商品列表
-
云手机分页列表
-
添加云手机
-
批量删除云手机
-
国家时区语言列表
-
批量开启云手机
-
批量关闭云手机
-
更新代理
-
批量获取云手机ADB状态
-
批量更新云手机ADB状态
-
查询品牌机型
-
一键新机
-
获取一键新机状态及可用数量
-
公网文件上传文件到云手机
-
APP列表(分页)\查询可安装应用列表
-
新增团队应用
-
已安装应用列表查询
-
app应用安装
-
APP启动
-
APP重启
-
APP停止
-
APP卸载
-
执行shell命令
-
设置keyBox
-
修改云手机信息
-
批量修改云手机分组
-
发送短信到云手机
-
获取云手机远程连接
-
截图
-
Base64截图
-
触控-单击
-
触控-双击
-
触控-长按
-
触控-滑动
-
触控-拖拽
-
查询团队预装应用列表
-
设置隐藏无障碍服务
TK自动化
-
创建批量发视频任务
-
创建TikTok智能养号任务
-
创建批量改资料任务
-
分页查询自动化任务
-
查询自动化任务结果
-
分页查询自动化任务执行明细
-
取消自动化任务
Hubstudio CLI 命令行操作指南
复制页面
hubstudio-cli 是随 Hubstudio 客户端分发的独立命令行工具,用于通过命令行调用 Hubstudio 客户端的 Local API。
它不会启动 Hubstudio 客户端,也不依赖 Node.js。使用前需要先启动 Hubstudio 客户端、完成登录,并在客户端中开启本地 API。
官网 Local API 文档
适用对象
本文档适合需要通过命令行完成以下操作的用户:
打开、关闭或查询浏览器环境。
查询或管理环境、账号、分组。
调用云手机、RPA 等 Local API 能力。
在 Linux 服务器或自动化环境中配合无头 Hubstudio 客户端使用 CLI。
登录 或者 退出 客户端
下载与安装
1. 下载地址
请根据您的操作系统和处理器架构下载对应的 hubstudio-cli 命令行工具:
| 操作系统 / 架构 | 下载链接 | 默认二进制文件名
| macOS (Intel / x64) | 点击下载 | hubstudio-cli
| macOS (Apple Silicon / arm64) | 点击下载 | hubstudio-cli
| Linux (x64) | 点击下载 | hubstudio-cli
| Windows (x64) | 点击下载 | hubstudio-cli.exe
2. 安装与权限配置
macOS / Linux 系统
1 .
赋予可执行权限 :下载后的二进制文件默认可能没有执行权限,�请在终端中执行以下命令赋予权限:
2 .
(可选)配置全局环境变量 :若希望在任意目录下直接调用,可将二进制文件移动到系统的 PATH 路径下(例如 /usr/local/bin ):
Windows 系统
1 .
下载后得到 hubstudio-cli.exe 。
2 .
(可选)配置全局环境变量 :将 hubstudio-cli.exe 所在的文件夹路径添加到系统的“环境变量 -> Path”中,即可在任意目录下通过命令行直接运行。
快速开始
确认 Hubstudio 客户端已经启动并开启 Local API 后,可以直接在命令行中执行。
[!TIP]
在 macOS / Linux 系统中,如果未将工具加入全局环境变量,执行时需带上当前路径前缀(如 ./hubstudio-cli )。
在 Windows 系统中,可通过命令提示符(CMD)或 PowerShell 运行 hubstudio-cli.exe 。
如果客户端开启了「本地 API 安全认证」,需要传入客户端里配置的 API Key:
hubstudio-cli --local-api-key "你的API Key" start-browser containerCode=11895682
查看帮助:
hubstudio-cli --help
hubstudio-cli help start-browser
hubstudio-cli start-browser --help
如果命令连接失败,请优先查看本文末尾的“常见问题”。
常用命令速查
| 场景 | 命令示例
| 查询客户端版本 | hubstudio-cli client-version
| 打开环境 | hubstudio-cli start-browser containerCode=11895682
| 关闭环境 | hubstudio-cli stop-browser containerCode=11895682
| 查询运行状态 | hubstudio-cli browser-status
| 查询指定环境 | hubstudio-cli browser-status --json '{"containerCodes":["11895682"]}'
| 列出屏幕 | hubstudio-cli list-displays
| 查询环境列表 | hubstudio-cli env-list --json '{"page":1,"pageSize":20}'
| 查看帮助 | hubstudio-cli --help
| 登录客户端 | `echo '{"account":"用户名","password":"密码"}'
| 退出客户端 | hubstudio-cli --help
使用前提
Hubstudio 图形客户端必须已经启动。
当前账号必须已登录。
客户端里的 Local API 必须已开启。
如果开启了本地 API 安全认证,使用 CLI 时必须传入 API Key 参数(使用 --local-api-key 选项或设置 HUBSTUDIO_LOCAL_API_KEY 环境变量)。
Local API 默认地址是 http://127.0.0.1:6873 。如果客户端使用了其它端口,CLI 会优先通过客户端 IPC 查询当前端口,也可以用 -p 手动指定。
Linux AppImage 可以用无头方式启动客户端,启动后再使用 hubstudio-cli 调用 Local API。无头模式必须提供 App Key 登录参数:
./Hubstudio.AppImage \
--no-sandbox \
--headless=true \
--app-id="你的 app_id" \
--app-secret="你的 app_secret" \
--login-group-code=你的团队code
无头模式不会展示登录页和主界面,但仍会启动本地服务、完成 App Key 登录,并提供 Local API 给 hubstudio-cli 调用。
全局选项
全局选项需要放在子命令前面,例如:
hubstudio-cli --local-api-key "你的API Key" start-browser containerCode=11895682
-p, --port <n> Local API 端口
-H, --host <h> 主机,默认 127.0.0.1
--local-api-key <key> Local API 安全认证密钥
--timeout <seconds> HTTP 请求超时秒数,默认 30 秒,0 表示不限制
-j, --json <json> 整段 JSON 请求体,覆盖 key=value
--json-stdin 从标准输入读取 JSON 请求体
-h, --help 显示帮助
-V, --version 显示版本
等价环境变量:
| 环境变量 | 说明
| HUBSTUDIO_LOCAL_API_PORT | IPC 查询失败且未传 -p 时使用
| HUBSTUDIO_LOCAL_API_KEY | 等价 --local-api-key
| HUBSTUDIO_CLI_TIMEOUT | 等价 --timeout
超时控制
默认情况下,CLI 会通过客户端 IPC 查询一次端口;端口发现不受 --timeout 影响。HTTP 请求阶段默认最多等待 30 秒,如果希望调整 HTTP 请求等待时间,可以使用 --timeout :
hubstudio-cli --timeout 30 browser-status
HUBSTUDIO_CLI_TIMEOUT=30 hubstudio-cli browser-status
--timeout 的单位是秒。未传时默认 30 秒;传入 0 表示不限制 HTTP 请求等待时间。
如果 HTTP 请求阶段超过指定时间仍未收到 Local API 响应,CLI 会先退出,并输出类似下面的超时响应:
{"code":408,"msg":"CLI request timeout after 30s. The Local API operation may still be running in Hubstudio client."}
请注意:超时只表示 CLI 停止等待 HTTP 响应,不代表 Hubstudio 客户端内部操作已取消。对于打开环境、创建环境、云手机开机、RPA 任务等可能继续在客户端中执行的操作,建议随后通过状态查询接口确认最终结果。
端口发现
通常不需要手动指定端口。Hubstudio 客户端启动 Local API 后,会同时启动一个本机 IPC 服务,CLI 会向该服务查询当前 Local API 端口。
IPC 服务地址:
| 平台 | IPC 地址
| Windows | \.\pipe\Hubstudio-cli
| macOS/Linux | /tmp/Hubstudio-cli
如果 IPC 查询失败,CLI 会依�次使用 HUBSTUDIO_LOCAL_API_PORT 和默认端口 6873 。
手动指定端口示例:
hubstudio-cli -p 6873 browser-status
HUBSTUDIO_LOCAL_API_PORT=6873 hubstudio-cli browser-status
请求体写法
CLI 支持三种请求体写法:简单参数推荐使用 key=value ,复杂参数推荐使用 --json 或 --json-stdin 。
key=value
CLI 会把子命令后的 key=value 转成 JSON 请求体:
hubstudio-cli client-version
hubstudio-cli start-browser containerCode=11895682 isHeadless=true pageZoom=100
转换规则:
| 输入 | JSON 类型
| true / false | boolean
| null | null
| 100 / 1.5 | number
| {...} / [...] | object / array
| 其它 | string
--json
复杂请求体建议直接使用 --json :
hubstudio-cli arrange-browsers --json '{"x":10,"y":10,"width":600,"height":500,"gapX":20,"gapY":20,"colNum":3}'
--json-stdin
也可以从标准输入读取 JSON:
echo '{"containerCode":"11895682"}' | hubstudio-cli start-browser --json-stdin
客户端信息命令
client-version
通过 Hubstudio 客户端启动后的 Hubstudio-cli IPC Server 获取当前客户端版本号。该命令不调用 Local API,也不需要请求体参数。
hubstudio-cli client-version
成功时返回:
{"code":0,"msg":"Success","data":{"version":"3.52.0","pid":12345}}
如果客户端尚未启动,或 IPC Server 不可连接,会返回错误信息。
子命令
hubstudio-cli 的每个子命令都对应一个 Local API POST 接口。命令名由 API 路径去掉 /api/v1/ 后将 / 替换为 - 得到,例如 /api/v1/env/list 对应 env-list 。
下面按官网 API 使用说明文档 的分组列出当前 CLI 支持的子命令。每个子命令都包含命令名称、Local API、官网文档和请求体参数清单。
说明:
表格中的“参数清单”主要列请求体 JSON 字段;全局选项和认证方式见上文。
所有接口均通过 POST 调用本地 Local API。
如果请求体字段较多,建议直接使用 --json ,避免 shell 对特殊字符的转义问题。
字段是否必填以官网 OpenAPI required 标记为准;部分业务必填字段可能由接口逻辑校验,调用前请结合官网文档确认。
1. 环境管理
env-list
Local API: POST /api/v1/env/list
官网文档: 获取环境列表
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCodes | array | 否 | 指定环境ID查询环境
| containerName | string | 否 | 指定环境名称查询环境
| createEndTime | string | 否 | 创建时间-截止时间 example: yyyy-MM-dd HH:mm:ss
| createStartTime | string | 否 | 创建时间-起始时间 example: yyyy-MM-dd HH:mm:ss
| ipAddress | string | 否 | IP地址查询
| proxyTypeNames | array | 否 | 代理类型 HTTP、HTTPS、SSH、Socks5、Oxylabsauto、Lumauto 、Luminati、 smartproxy、IPIDEA、Iphtml、不使用代理
| remark | string | 否 | 指定环境备注信息查询环境
| tagCode | integer | 否 | 分组编号 默认不传参,若需要查询“未分组”的环境,传任意
| tagNames | array | 否 | 环境分组名称数组 查询指定分组的环境
| current | integer | 否 | 当前页面
| size | integer | 否 | 分页条数 最多200条。
| serviceProvider | string | 否 | 环境内代理所属服务商 ROLA_IP 、 922S5 、 通用api
调用示例
方式 A:简单参数过滤(key=value 格式)
方式 B:指定环境 ID 列表(--json 格式,包含数组)
env-create
Local API: POST /api/v1/env/create
官网文档: 创建环境
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerName | string | 是 | 环境名 限制60字以内
| remark | string | 否 | 环境备注信息
| tagName | string | 否 | 指定环境所属分组的名称 若分组名称不存在,将默认环境未分组。
| cookie | string | 否 | 设置cookie 支持JSON格式的cookie
| asDynamicType | integer | 是 | IP变更提醒 0-关闭提醒(默认)1-开启提醒
| proxyTypeName | string | 是 | 1. 自定义代理类型: HTTP 、 HTTPS 、 SSH 、 Socks5 、 Oxylabsauto 、 Lumauto_HTTP 、 Lumauto_HTTPS 、 Luminati_HTTP 、 Luminati_HTTPS 、 smartproxy 、 Iphtml_HTTP 、 Iphtml_Socks5 、 IPIDEA 、 不使用代理 2. API提取代理类型: Socks5_ROLA_IP 、 HTTPS_ROLA_IP 、 Socks5_922S5 、 HTTP_922S5 、 HTTPS_922S5 、 Socks5_通用api 、 HTTP_通用api 、 HTTPS_通用api 、 Socks5_IPIDEA-API 、 HTTP_IPIDEA-API 、 HTTPS_IPIDEA-API
| ipGetRuleType | integer | 否 | IP提取方式 1-IP失效时提取新IP ,2-,每次打开环境时提取新IP。API提取代理时必填
| linkCode | string | 否 | 提取链接 API提取代理时必填
| proxyServer | string | 否 | 代理主机 自定义代理时必填
| proxyPort | integer | 否 | ��代理端口 自定义代理时必填
| proxyAccount | string | 否 | 代理帐号
| proxyPassword | string | 否 | 代理密码
| referenceCountryCode | string | 否 | 环境内帐号需要登录的指定的国家 Oxylabsauto、Lumauto、Smartproxy必须填写国家或者IP
| referenceIp | string | 否 | 根据IP自动填充环境内帐号需要登录的指定的国家 Oxylabsauto、Lumauto、Smartproxy必须填写国家或者IP
| referenceCity | string | 否 | 参考城市
| referenceRegionCode | string | 否 | 参考州
| ipDatabaseChannel | integer | 否 | 代理查询渠道 用户未指定时使用全局默认值。支持设置查询渠道选项,1-IP2Location 2-DB-IP 3-MaxMind
| ipProtocolType | integer | 否 | IP协议选项 支持设置IP协议,新环境默认使用速度优先 1.速度优先 2.IPv4 3.IPv6
| type | string | 否 | 操作系统。可选值: windows 、 android 、 ios 、 macos (不传默认 windows )
| phoneModel | string | 否 | 手机机型。当 type 选择 android 或 ios 时为必填项。可选参数值: google Pixel 4 、 红米8 、 红米7 、 google Pixel 5a 、 三星Galaxy Note8 、 小米10 、 三星Galaxy S9+ 、 小米9 、 iPhone 6 Plus 、 iPhone 8 Plus 、 iPhone SE 2 、 iPhone 7 Plus 、 iPhone X 、 iPhone13 Pro 、 iPhone XS 、 iPhone 13 Pro Max 、 iPhone 12 mini 、 iPhone 8 、 iPhone 13 mini 、 iPhone 6 、 iPhone 12 Pro Max 、 iPhone 7 、 iPhone 12 、 iPhone 12 Pro 、 iPhone 11 Pro 、 iPhone 13 、 iPhone 14 、 iPhone 14 Pro 、 iPhone 14 Pro Max 、 iPhone 15 、 iPhone 15 Pro 、 iPhone 15 Pro Max 、 google Pixel 6 、 google Pixel 6a 、 google Pixel 6 Pro 、 google Pixel 7 、 google Pixel 7 Pro 、 google Pixel 7a 、 google Pixel 8 、 google Pixel 8 Pro 、 google Pixel 8a 、 Samsung Galaxy S20 、 Samsung Galaxy S20 + 、 Samsung Galaxy S21 、 Samsung Galaxy S21 + 、 Samsung Galaxy S21 Ultra 、 Samsung Galaxy S22 、 Samsung Galaxy S22 + 、 Samsung Galaxy S22 Ultra
| browser | string | 否 | 浏览器类型 firefox/chrome,不填默认创建谷歌环境,
| coreVersion | integer | 否 | 内核版本号 支持100~126。用selenium时,可以根据这个字段来判断驱动chromedriver的版本号。
| videoThrottle | integer | 否 | 视频限流 0关闭 1开启 2跟随团队。不传参默认跟随团队。
| imgThrottle | integer | 否 | 图片限流 0关闭 1自定义 2跟随团队。不传参默认跟随团队。
| imgThrottleSize | integer | 否 | 图片尺寸大小
| advancedBo | object | 否 | Hubstudio浏览器高级指纹参数配置
| advancedBo.uaVersion | string | 否 | ua版本
| advancedBo.ua | string | 否 | 自定义UA 要求传参格式符合标准。举例:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36
| advancedBo.languageType | integer | 否 | 语言 0-跟随IP,1-自定义,2-跟随电脑
| advancedBo.languages | array | 否 | 语言列表 默认使用第一个传入的语言作为渲染语言
| advancedBo.gmt | string | 否 | 时区 timezone时区,不传参默认使用系统默认。自定义时格式举例:GMT-12:00
| advancedBo.geography | string | 否 | 地理位置 timezone地理,不传参默认使用系统默认。自定义时格式举例: Etc/GMT + 12
| advancedBo.geoTips | integer | 否 | 网站请求获取您当前地理位置时的选择 0-ask(询问)、2-block(禁止)
| advancedBo.geoRule | integer | 否 | 地理位置规则 不传参默认使用系统默认。0-基于IP生成对应位置,1-使用自定义设置的位置
| advancedBo.longitude | string | 否 | 地理位置 自定义时必填,格式如“-40.123”(范围-180到180)
| advancedBo.latitude | string | 否 | 纬度 地理位置自定义时必填,格式如“30.123”(范围-90到90)
| advancedBo.radius | string | 否 | 经度 地理位置自定义时必填,,格式如“10“(范围10-5000)
| advancedBo.height | string | 否 | 分辨率-高 type为Android或IOS时,不支持设置分辨率。分辨率高、宽都传-1时,分辨率随机
| advancedBo.width | string | 否 | 分辨率-宽 type为Android或IOS时,不支持设置分辨。分辨率高、宽都传-1时,分辨率随机
| advancedBo.fontsType | integer | 否 | 字体设置规则 0-隐私,1-真实
| advancedBo.fonts | array | 否 | 字体 按照字体的英文传入(编辑环境时,请将所有的字体传入。若传入的字体过少,可能会导致网页数据显示不全)
| advancedBo.fontFingerprint | integer | 否 | 字体指纹 0-开启ClientRects隐私保护,1-使用电脑默认的ClientRects
| advancedBo.webRtc | integer | 否 | webrtc设置规则 0-开启WebRTC,但禁止获取IP,1-开启WebRTC,将公网IP替换为代理IP,2-开启WebRTC,跟随电脑真实IP,3-禁用WebRTC,网站会检测到您关闭了WebRTC,4-转发WebRTC,将公网IP替换为代理IP
| advancedBo.webRtcLocalIp | string | 否 | 内网IP。10.0.0.0/8;10.0.0.0 - 10.255.255.255;172.16.0.0/12;172.16.0.0 - 172.31.255.255;192.168.0.0/16;192.168.0.0 - 192.168.255.255
| advancedBo.canvas | integer | 否 | canvas设置规则 0-开启Canvas隐私保护,1-跟随电脑的Canvas
| advancedBo.webgl | integer | 否 | webgl设置规则 0-开启WebGL隐私保护,1-跟随电脑的WebGL
| advancedBo.hardwareAcceleration | integer | 否 | webgl参数 0-关闭硬件加速,1-开启硬件加速
| advancedBo.webglInfo | integer | 否 | 开启硬件加速时可传参,不传参默认使用系统默认。0-webglvendor和webglRenderer信息将根据ua进行匹配,1-跟随电脑的WebGL Info
| advancedBo.audioContext | integer | 否 | 音频设置规则 0-开启AudioContext隐私保护,1-跟随电脑的AudioContext
| advancedBo.speechVoices | integer | 否 | 讲述人设置规则 0-开启SpeechVoices,1-关闭SpeechVoicess
| advancedBo.media | integer | 否 | 媒体设置规则 0-开启媒体设备隐私保护,1-使用Chrome原生隐私保护(不授权则不会暴露真实媒体设备数量)
| advancedBo.cpu | integer | 否 | cpu设置规则 2,4,6,8,10,12,16,0(0代表真实)
| advancedBo.memory | integer | 否 | 内存设置规则 2,4,6,8,0(0代表真实)
| advancedBo.doNotTrack | integer | 否 | donottrack设置规则 0-默认不设置,1-默认不允许追踪,2-默认允许追踪
| advancedBo.battery | integer | 否 | 电池设置规则 0-开启电池隐私保护,1-使用电脑真实的电池信息,2-禁止访问电池信息
| advancedBo.portScan | integer | 否 | 端口扫描保护设置规则 0-不允许网站检测您使用的本地网络端口,1-允许网站检测您使用的本地网络端口
| advancedBo.whiteList | string | 否 | 端口扫描保护白名单 端口扫描保护开启后,设置的本地端口可以访问,多个端口逗号隔开
调用示例
方式 A:创建简易 Windows 环境(key=value 格式)
方式 B:配置高级指纹和自定义代理(--json 格式)
env-update
Local API: POST /api/v1/env/update
官网文档: 更新环境
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCode | integer | 是 | 环境ID
| containerName | string | 是 | 环境名 若无需更改环境名称传入原有名称即可
| remark | string | 否 | 环境备注信息 不传视为留空,会覆盖原备注
| type | string | 是 | 操作系统类型 操作系统类型传值:windows/android/ios/macos 四个中的一个
| tagName | string | 是 | 环境所属分组信息 若分组名称不存在,将默认不修改环境分组
| coreVersion | integer | 是 | 内核版本号 支持100~126。用selenium时,可以根据这个字段来判断驱动chromedriver的版本号。
| videoThrottle | integer | 否 | 视频限流 0关闭 1开启 2跟随团队。不传参默认跟随团队。
| imgThrottle | integer | 否 | 图片限流 0关闭 1自定义 2跟随团队。不传参默认跟随团队�。
| imgThrottleSize | integer | 否 | 图片尺寸大小
| advancedBo | object | 否 | Hubstudio浏览器高级指纹参数配置
| advancedBo.uaVersion | string | 否 | ua版本
| advancedBo.ua | string | 否 | 自定义UA要求传参格式符合标准 举例:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36
| advancedBo.languageType | integer | 否 | 界面语言类型 0-跟随IP,1-自定义,2-跟随电脑
| advancedBo.languages | array | 否 | 默认使用第一个传入的语言作为渲染语言
| advancedBo.gmt | string | 否 | timezone时区 不传参默认使用系统默认。自定义时格式举例:GMT-12:00
| advancedBo.geography | string | 否 | timezone地理 不传参默认使用系统默认。自定义时格式举例: Etc/GMT + 12
| advancedBo.geoTips | integer | 否 | 网站请求获取您当前地理位置 ,0-ask(询问)、2-block(禁止)
| advancedBo.geoRule | integer | 否 | 地理位置规则 不传参默认使用系统默认。0-基于IP生成对应位置,1-使用自定义设置的位置
| advancedBo.longitude | string | 否 | 地理位置自定义时必填,格式如“-40.123”(范围-180到180)
| advancedBo.latitude | string | 否 | 地理位置自定义时必填,格式如“30.123”(范围-90到90)
| advancedBo.radius | string | 否 | 地理位置自定义时必填,,格式如“10“(范围10-5000)
| advancedBo.height | string | 否 | 分辨率-高,type为Android或IOS时,不支持设置分辨率。分辨率高、宽都传-1时,分辨率随机
| advancedBo.width | string | 否 | 分辨率-宽,type为Android或IOS时,不支持设置分辨。分辨率高、宽都传-1时,分辨率随机
| advancedBo.fontsType | integer | 否 | 字体列表保护,0-隐私,1-真实
| advancedBo.fonts | array | 否 | 按照字体的英文传入(编辑环境时,请将所有的字体传入。若传入的字体过少,可能会导致网页数据显示不全)
| advancedBo.fontFingerprint | integer | 否 | 字体指纹,0-开启ClientRects隐私保护,1-使用电脑默认的ClientRects
| advancedBo.webRtc | integer | 否 | 0-开启WebRTC,但禁止获取IP,1-开启WebRTC,将公网IP替换为代理IP,2-开启WebRTC,跟随电脑真实IP,3-禁用WebRTC,网站会检测到您关闭了WebRTC,4-转发WebRTC,将公网IP替换为代理IP
| advancedBo.webRtcLocalIp | string | 否 | 内网IP。10.0.0.0/8;10.0.0.0 - 10.255.255.255;172.16.0.0/12;172.16.0.0 - 172.31.255.255;192.168.0.0/16;192.168.0.0 - 192.168.255.255
| advancedBo.canvas | integer | 否 | 0-开启Canvas隐私保护,1-跟随电脑的Canvas
| advancedBo.webgl | integer | 否 | 0-开启WebGL隐私保护,1-跟随电脑的WebGL
| advancedBo.hardwareAcceleration | integer | 否 | 0-关闭硬件加速,1-开启硬件加速
| advancedBo.webglInfo | integer | 否 | 开启硬件加速时可传参,不传参默认使用系统默认。0-webglvendor和webglRenderer信息将根据ua进行匹配,1-跟随电脑的WebGL Info
| advancedBo.audioContext | integer | 否 | 0-开启AudioContext隐私保护,1-跟随电脑的AudioContext
| advancedBo.speechVoices | integer | 否 | 0-开启SpeechVoices,1-关闭SpeechVoicess
| advancedBo.media | integer | 否 | 0-开启媒体设备隐私保护,1-使用Chrome原生隐私保护(不授权则不会暴露真实媒体设备数量)
| advancedBo.cpu | integer | 否 | 2,4,6,8,10,12,16,0(0代表真实)
| advancedBo.memory | integer | 否 | 2,4,6,8,0(0代表真实)
| advancedBo.doNotTrack | integer | 否 | 0-默认不设置,1-默认不允许追踪,2-默认允许追踪
| advancedBo.battery | integer | 否 | 0-开启电池隐私保护,1-使用电脑真实的电池信息,2-禁止访问电池信息
| advancedBo.portScan | integer | 否 | 0-不允许网站检测您使用的本地网络端口,1-允许网站检测您使用的本地网络端口
| advancedBo.whiteList | string | 否 | -
调用示例
方式 A:更新环境名称和分组(--json 格式)
env-proxy-update
Local API: POST /api/v1/env/proxy/update
官网文档: 更新环境代理
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCode | integer | 是 | 环境ID
| asDynamicType | integer | 是 | IP变更提醒 0-关闭提醒(默认)1-开启提醒
| proxyTypeName | string | 是 | 1. 自定义代理类型: HTTP 、 HTTPS 、 SSH 、 Socks5 、 Oxylabsauto 、 Lumauto_HTTP 、 Lumauto_HTTPS 、 Luminati_HTTP 、 Luminati_HTTPS 、 smartproxy 、 Iphtml_HTTP 、 Iphtml_Socks5 、 IPIDEA 、 不使用代理 2. API提取代理类型: Socks5_ROLA_IP 、 HTTP_ROLA_IP 、 HTTPS_ROLA_IP 、 Socks5_922S5 、 HTTP_922S5 、 HTTPS_922S5 、 Socks5_通用api 、 HTTP_通用api 、 HTTPS_通用api 、 Socks5_IPIDEA-API 、 HTTP_IPIDEA-API 、 HTTPS_IPIDEA-API
| ipGetRuleType | integer | 否 | IP提取方式 1-IP失效时提取新IP ,2-,每次打开环境时提取新IP。API提取代理时必填
| linkCode | string | 否 | 提取链接 API提取代理时必填
| proxyHost | string | 否 | 代理主机
| proxyPort | integer | 否 | 代理端口
| proxyAccount | string | 否 | 代理帐号
| proxyPassword | string | 否 | 代理密码
| referenceCountryCode | string | 否 | 环境内帐号需要登录的指定的国家 Oxylabsauto、Lumauto、Smartproxy必须填写国家或者IP
| referenceCity | string | 否 | 参考城市
| referenceRegionCode | string | 否 | 参考州
| ipDatabaseChannel | integer | 否 | 代理查询渠道 支持设置查询渠道选项,1-IP2Location 2-DB-IP 3-MaxMind
| ipProtocolType | integer | 否 | IP协议选项 支持设置IP协议 1.速度优先 2.IPv4 3.IPv6
调用示例
方式 A:更新为不使用代理(key=value 格式)
方式 B:更新为自定义 Socks5 代理(key=value 格式)
env-import-cookie
Local API: POST /api/v1/env/import-cookie
官网文档: 导入 Cookie
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCode | string | 是 | 环境ID
| cookie | string | 是 | 设置cookie 值为空字符串是清空cookie
调用示例
方式 A:导入 Cookie(--json 格式)
env-export-cookie
Local API: POST /api/v1/env/export-cookie
官网文档: 导出 Cookie
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCode | integer | 是 | 环境ID
调用示例
方式 A:导出环境 Cookie(key=value 格式)
env-del
Local API: POST /api/v1/env/del
官网文档: 删除环境
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCodes | array | 是 | 环境ID列表
调用示例
方式 A:批量删除指定环境(--json 格式,包含数组)
env-random-ua
Local API: POST /api/v1/env/random-ua
官网文档: 获取随机 UA
参数清单:
| 参数 | 类型 | 必填 | 说明
| type | string | 否 | 操作系统参数 windows、android、ios(不传参数默认windows)
| phoneModel | string | 否 | 手机机型 type选择android和ios时,机型必填。机型参数包括:“google Pixel 4、红米8、红米7、google Pixel 5a、三星Galaxy Note8、小米10、三星Galaxy S9+、小米9、iPhone 6 Plus、iPhone 8 Plus、iPhone SE 2、iPhone 7 Plus、iPhone X、iPhone 13 Pro、iPhone XS、iPhone 13 Pro Max、iPhone 12 mini、iPhone 8、iPhone 13 mini、iPhone 6、iPhone 12 Pro Max、iPhone 7、iPhone 12 、iPhone 12 Pro、iPhone 11 Pro、iPhone 13、iPhone 14、iPhone 14 Pro、iPhone 14 Pro Max、iPhone 15、iPhone 15 Pro、iPhone 15 Pro Max、google Pixel 6、google Pixel 6a、google Pixel 6 Pro、google Pixel 7、google Pixel 7 Pro、google Pixel 7a、google Pixel 8、google Pixel 8 Pro、google Pixel 8a、Samsung Galaxy S20、Samsung Galaxy S20 +、Samsung Galaxy S21、Samsung Galaxy S21 +、Samsung Galaxy S21 Ultra、Samsung Galaxy S22、Samsung Galaxy S22 +、Samsung Galaxy S22 Ultra ”
| version | array | 否 | 内核版本 支持数组,不传参默认随机。
调用示例
方式 A:生成随机 Windows UA(key=value 格式)
方式 B:生成指定机型和内核范围的移动端 UA(--json 格式)
clear-cache
Local API: POST /api/v1/cache/clear
官网文档: 清除环境本地缓存
参数清单:
| 参数 | 类型 | 必填 | 说明
| browserOauths | array | 否 | 打开环境时返回的browserID 参数不传则删除所有环境的本地缓存
| localStorage | boolean | 否 | 是否清除 LocalStorage 默认为否
| indexedDB | boolean | 否 | 是否清除 IndexedDB 默认为否
| cookie | boolean | 否 | 是否清除 cookie 默认为否
| extension | boolean | 否 | 是否清除扩展数据 默认为否,不清除
| extensionFile | boolean | 否 | 是否清除扩展 默认为否,不清除
调用示例
方式 A:清除所有环境的本地缓存
方式 B:清除指定环境的 Cookie 和 LocalStorage(--json 格式)
reset-extension
Local API: POST /api/v1/browser/reset-extension
官网文档: 清理环境内插件缓存
参数清单:
| 参数 | 类型 | 必填 | 说明
| browserOauth | integer | 是 | 打开环境时返回的browserID
| pluginIds | array | 是 | 指定要清除的插件的ID 可通过chrome://extensions/查看环境内所有插件的ID
调用示例
方式 A:清除指定插件的缓存(--json 格式,包含数组)
env-refresh-fingerprint
Local API: POST /api/v1/env/refresh-fingerprint
官网文档: 刷新指纹
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCode | integer | 是 | 环境ID
| uaVersion | integer | 否 | UA版本 不传 uaVersion ,默认随机最新UA
| coreVersion | integer | 否 | 客户端内核版本 不传,不会改变
| type | string | 否 | 操作系统类型 不传默认为windows
调用示例
方式 A:刷新指定环境的指纹(key=value 格式)
container-webgl-renderer-list
Local API: POST /api/v1/container/webgl-renderer-list
官网文档: 查询 webglVendor 和 webglRenderer
参数清单:
| 参数 | 类型 | 必填 | 说明
| browser | string | 否 | 浏览器 chrome、firefox。默认chrome
| hardwareAcceleration | integer | 否 | 开启硬件加速 ,0-关闭硬件加速。默认:1
| type | string | 否 | 操作系统类型 windows,android,ios, macos。 默认windows
| uaVersion | string | 是 | ua版本 例如:117
调用示例
方式 A:查询 WebGL 渲染器列表(key=value 格式)
container-batch-update-remark
Local API: POST /api/v1/container/batch-update-remark
官网文档: 批量修改备注
参数清单:
| 参数 | 类型 | 必填 | 说明
| containerCodes | array | 是 | 环境ID
| remark | string | 否 | 备注
| type | integer | 是 | 修改类型 1覆盖 2追加
调用示例
方式 A:批量覆盖环境备注(--json 格式,包含数组)
download-browser-core
Local API: POST /api/v1/browser/download-core
官网文档: 下载内核
参数清单:
| 参数 | 类型 | 必填 | 说明
| Cores | array