Vault 数据 API:云备份、恢复与找回邮箱
Vault 的云端能力围绕保险箱空间展开:POST /v1/auth/session 登录云账号并返回 accessToken 与存储配额;POST /v1/vault/backup 把短信、通话记录、联系人与隐藏文件元数据上传到云端,POST /v1/vault/restore 再按分片拉回。
媒体文件经 GET /v1/vault/media 按 fileId 下载(支持字节区间);POST /v1/account/recovery-email 则绑定用于重置锁屏密码的找回邮箱。
Vault - Hide Pics, App Lock(包名 com.netqin.ps,版本 6.8.12.80)是 Wafer Co. 的安卓隐私保险箱,用于隐藏照片、锁定应用、保存私密联系人、短信与通话记录。云端备份通过一套以 accessToken 认证的私有 API 完成。
应用截图
API 端点一览
云账号登录
POST
/v1/auth/sessionosint认证 Vault 云账号,返回 accessToken 及存储配额 / 已用量计数。
认证方式: Vault password in the JSON body; the returned session token is reused on later cloud calls.
- command
- userInfo
- uid
- userName
- level
- password
- softwareInfo
- version
- os
- partner
- language
- status
- code
- message
- title
- content
- accessToken
- quota
- used
- step
- tag
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/auth/session HTTP/1.1 Content-Type: application/json { "command": "login", "userInfo": { "uid": "10086001", "userName": "vault_user", "level": "1" }, "password": "<vault-password>", "softwareInfo": { "version": "6.8.12.80", "os": "android", "partner": "googleplay", "language": "en" } }{ "status": { "code": 0, "message": { "title": "OK", "content": "login success" } }, "userInfo": { "accessToken": "<access-token>", "quota": 1073741824, "used": 24883200, "step": 0, "tag": 1 } }依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the app's cloud sign-in flowsession token and quota counters match what the backup screens consume
查询云存储配额
POST
/v1/account/storageopendata在备份或恢复前,读取当前保险箱的云存储配额与已用字节数。
认证方式: userInfo.accessToken from sign-in, plus uid/userName/level.
- command
- uid
- userName
- level
- accessToken
- version
- os
- partner
- language
- status
- code
- title
- content
- quota
- used
- step
- tag
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/account/storage HTTP/1.1 Content-Type: application/json { "command": "quota", "userInfo": { "uid": "10086001", "userName": "vault_user", "level": "1", "accessToken": "<access-token>" }, "softwareInfo": { "version": "6.8.12.80", "os": "android", "partner": "googleplay", "language": "en" } }{ "status": { "code": 0, "message": { "title": "OK", "content": "" } }, "userInfo": { "accessToken": "<access-token>", "quota": 1073741824, "used": 24883200, "step": 0, "tag": 1 } }依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the storage meter shown ahead of a cloud backup
云端备份保险箱内容
POST
/v1/vault/backuposint把保险箱内的短信、通话记录、联系人、书签与隐藏文件元数据上传到云端。
认证方式: userInfo.accessToken from sign-in.
- command
- uid
- userName
- level
- accessToken
- smsList
- calllogList
- contactList
- bookmarksList
- fileList
- fileId
- path
- digest
- size
- currentPath
- meta
- contact_result
- smsResult
- calllogResult
- bookmarkResult
- fileResult
- fileUrl
- fileInfo
- uploadSize
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/vault/backup HTTP/1.1 Content-Type: application/json { "command": "backup", "userInfo": { "uid": "10086001", "userName": "vault_user", "level": "1", "accessToken": "<access-token>" }, "softwareInfo": { "version": "6.8.12.80", "os": "android", "partner": "googleplay", "language": "en" }, "smsList": [], "calllogList": [], "contactList": [], "bookmarksList": [], "fileList": [ { "fileId": "img-001", "path": "/vault/hidden/IMG_1001.jpg", "digest": "d41d8cd98f00b204e9800998ecf8427e", "size": 248832, "currentPath": "/vault/hidden/IMG_1001.jpg", "meta": "10002" } ] }{ "status": { "code": 0, "message": { "title": "OK", "content": "" } }, "userInfo": { "accessToken": "<access-token>" }, "contact": { "result": 0 }, "sms": { "result": 0 }, "calllog": { "result": 0 }, "bookmarks": { "result": 0 }, "file": { "result": 0, "url": "/v1/vault/media", "fileInfo": [ { "fileId": "img-001", "path": "/vault/hidden/IMG_1001.jpg", "digest": "d41d8cd98f00b204e9800998ecf8427e", "size": 248832, "currentPath": "/vault/hidden/IMG_1001.jpg", "uploadSize": 0 } ] } }依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the app's cloud backup progress flowfile metadata rows match the hidden-media sync payload
从云端恢复保险箱内容
POST
/v1/vault/restoreosint询问云端需要恢复哪些保险箱分片(联系人、短信、通话记录、书签、文件)并拉回。
认证方式: userInfo.accessToken from sign-in.
- command
- uid
- userName
- level
- accessToken
- contact
- sms
- calllog
- bookmarks
- file
- fileList
- fileId
- path
- digest
- size
- meta
- fileUrl
- fileInfo
- mimeType
- fileResult
- calllogFileid
- bookmarkFileid
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/vault/restore HTTP/1.1 Content-Type: application/json { "command": "restore", "userInfo": { "uid": "10086001", "userName": "vault_user", "level": "1", "accessToken": "<access-token>" }, "softwareInfo": { "version": "6.8.12.80", "os": "android", "partner": "googleplay", "language": "en" }, "contact": "true", "sms": "true", "calllog": "true", "bookmarks": "true", "file": "true", "fileList": [ { "fileId": "img-001", "path": "/vault/hidden/IMG_1001.jpg", "digest": "d41d8cd98f00b204e9800998ecf8427e", "size": 248832 } ] }{ "status": { "code": 0, "message": { "title": "OK", "content": "" } }, "userInfo": { "accessToken": "<access-token>" }, "contact": { "result": 0, "fileId": "contact-001" }, "sms": { "result": 0 }, "calllog": { "result": 0, "fileId": "calllog-001" }, "bookmarks": { "result": 0, "fileId": "bookmark-001" }, "file": { "result": 0, "url": "/v1/vault/media", "fileInfo": [ { "fileId": "img-001", "path": "/vault/hidden/IMG_1001.jpg", "digest": "d41d8cd98f00b204e9800998ecf8427e", "size": 248832, "mimeType": "image" } ] } }依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the app's restore-onto-new-device flow
下载保险箱媒体
GET
/v1/vault/mediaopendata按 fileId 下载此前备份的保险箱照片或视频,支持可选的字节区间。
认证方式: accessToken query parameter from sign-in.
- action
- accessToken
- fileId
- range
- saveFilePath
- startPosition
- endPosition
依据应用界面重构的示意示例,并非实时抓包。
GET /v1/vault/media?action=download&accessToken=<access-token>&fileId=img-001&range=bytes=0-248831 HTTP/1.1<binary octet-stream of the vault file; Range writes into saveFilePath from startPosition>依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the app's hidden-photo download flow with byte-range resume
绑定找回邮箱
POST
/v1/account/recovery-emailosint把找回(安全)邮箱绑定到保险箱空间,用于在忘记锁屏密码时重置。
认证方式: userInfo.uid and level; deviceId identifies the vault space.
- deviceId
- spaceId
- uid
- level
- version
- os
- partner
- language
- result
- userInfo
- softwareInfo
依据应用界面重构的示意示例,并非实时抓包。
POST /v1/account/recovery-email HTTP/1.1 Content-Type: application/json { "deviceId": "a1b2c3d4e5f6", "spaceId": "space-001", "email": "[email protected]", "userInfo": { "uid": "10086001", "level": "1" }, "softwareInfo": { "version": "6.8.12.80", "os": "android", "partner": "googleplay", "language": "en" } }{ "result": "ok", "spaceId": "space-001" }依据应用界面推导;端点细节为示意说明,并非实际抓包。
reconstructed from the app's recovery-email binding and forgot-password screens
数据类别
- 云备份
- 联系人
- 短信
- 通话记录
- 照片
- 账号找回
数据使用场景与案例
换机迁移服务
换机工具经由云端备份/恢复闭环搬运用户的通讯录、短信、通话记录与加密相册,摘要比对确保无一遗漏。
备份配额管理
渠道商看板盯每个账户的云存储配额与用量,在客户夜间备份悄悄失败之前提前告警或触发升级销售。
账号找回流程
客服工具为保险柜账号绑定找回邮箱,用户换机或忘记密码时显著减少锁账户工单。
常见问题
Vault 使用什么数据 API?
应用调用一套私有云 API:POST /v1/auth/session 登录并换取 accessToken,之后备份、恢复、媒体下载与账号管理都凭该令牌访问,数据以 JSON 交换。
云备份包含哪些数据?
POST /v1/vault/backup 上传保险箱内的短信、通话记录、联系人、书签与隐藏文件元数据;实际照片 / 视频文件经 GET /v1/vault/media 按 fileId 下载,支持字节区间请求。
忘记锁屏密码怎么办?
应用提供找回邮箱机制:POST /v1/account/recovery-email 把安全邮箱绑定到保险箱空间(deviceId + spaceId),之后可通过该邮箱重置锁屏密码。
该 API 如何认证?
登录后所有调用都带 accessToken,并以 deviceId / spaceId 区分设备与保险箱空间;这些是第一方私有端点,没有公开密钥。
相关主题
- Vault Hide Pics API
- 保险箱云备份端点
- accessToken 同步
- smsList contactList fileList
- 保险箱照片下载接口
- 找回邮箱 deviceId spaceId