API
当您的账户余额到达
$30以后,我们会自动为您开通api权限, 开通权限之后,余额下降至$30以下不会影响api调用.
端点
端点是 api 请求发起的根路劲,所有的 api 请求都需要通过以下端点发起
https://smswudi.com/api/v1鉴权方式
apiKey 可以在 我的 > apiKey 找到, 将 apiKey 放在请求的 header 中, 格式如下:
Authorization: $apiKey请求&响应
请求方法一律为 POST, Content-Type 一律为 application/json , 响应格式为 json 格式, 接口响应的基本格式如下:
{
"code": 0,
"msg": "error message",
"data": { ... }
}- 如果请求成功,那么
code一律为0 - 如果请求失败, 首先需要区分
http的响应状态码, 如果状态码不等于200, 则可能不会存在 上述 json 信息,返回的是服务器内部错误, 如果请求状态码是200并且code不等于0, 那么程序返回了错误,异常信息以 错误码 列表 或者msg提示为准
用户信息接口
获取账户余额
API地址:
/user/balance- 请求参数
无需额外参数
json
{}- 响应参数
json
{
"code": 0,
"msg": "",
"data": {
"balance": 0.78, ### float 类型
"freeze": 1.1 ### 正在冻结的资产.
}
}充值确认
该接口可以缩短充值到账时间,正常情况下服务器是 每隔
5分钟查询一次充值结果,该接口可以在调用之后立即向区块链发起查询.
API地址
/user/recharge/confirm- 请求参数
blockHash参数中的接收方地址必须是正确的官方收款地址.
json
{
"blockHash": "a3c14ff57d39c3ce05e340b0ebaf1fd2e5f32e5b213428061cccae963d06d6af", # 交易hash, 能在区块链浏览器查询到交易详情.
}- 响应信息
json
{
"code": 0,
"msg": "",
"data": {
"result": true # true 代表充值成功,false 代表充值失败 或者未到账, 也可能是blcokHash 地址错误
}
}公共信息接口
获取支持的运营商列表
API地址
/common/platform- 请求
{}- 响应
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # platformid
"name": "国内平台" # 名称
},
{
"id": 2,
"name": "国外平台"
}
]
}获取国家/地区列表
API地址
/common/area- 请求
json
{
"platformId": 1 ### platform 接口获取的platformid
}- 响应
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # 国家/地区 id
"name": "美国" # 名称
}
]
}获取支持的应用列表
API地址
/common/apps- 请求
json
{
"platformId": 1, ### platform 接口获取的platformid
}- 响应
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # 应用id
"name": "微信", #名称
"price": 1.1 # 价格
}
]
}接码接口
获取手机号码 (批量)
获取手机号之后,手机号会针对当前的 app 进行锁定状态,期间会对账户的部分余额冻结,在超过 30 分钟的限制之后,对手机号进行回收,回收之后,未使用的金额会原路返回,使用过的金额则直接扣除. 比如: 账号余额为
$10, 批量购买 价值$5的5个 微信的手机号,账户余额为$5, 冻结资产为$5, 30 分钟内,使用了2个成功接码,3个未使用,
最终余额为:$7, 冻结$0
API地址
/mobile/batch- 请求参数
json
{
"platformId": 1, # platformid
"areaId": 1, # area id
"appId": 1, # 应用id
"requestNumber": 10 # 请求号码的数量
}- 响应参数
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # 接码 id
"mobile": "13800138000", # 手机号
"appId": 1, # appId
"appName": "Wechat" , # app名称
"areaId": 1, # area id
"areaName": "美国", # 地区名称
"platformId": 1, # platformid
"platformName": "平台名称", # 平台名称,
"status": 1, # 接码状态 , 1 轮训读取验证码中, 2 用户主动确定已下发, 3 已收到验证码, 4 获取验证码失败
}
]
}确定验证码下发
该接口为可选接口,调用该接口可以使接收到验证码的速度更快.
API地址
/mobile/confirm- 请求参数
json
{
"id": 1, # 获取手机号码 返回的业务id
}- 响应参数
json
{
"code": 0,
"msg": "",
"data": {}
}查询验证码信息
API地址
/mobile/getcode- 请求
json
{
"id": 1 # 获取手机号码 返回的业务id
}- 响应
json
{
"code": 0
"msg": "",
"data": {
"id": 1, # 接码 id
"mobile": "13800138000", # 手机号
"appId": 1, # appId
"appName": "Wechat" , # app名称
"areaId": 1, # area id
"areaName": "美国", # 地区名称
"platformId": 1, # platformid
"platformName": "平台名称", # 平台名称,
"status": 1, # 接码状态 , 1 轮训读取验证码中, 2 用户主动确定已下发, 3 已收到验证码, 4 获取验证码失败
"code": "1234", # 匹配出来的验证码
"text": "【腾讯】您正在登录微信账号,验证码是: 1234。请勿告知他人。" # 短信内容
}
}重新租用历史手机号 (必须之前有租用过)
API地址
/mobile/gethistory- 请求参数
json
{
"mobile": "13800138000", # 手机号
"appId": 1, # appid
"platformId": 1, # platformid
"areaId": 1 # area id
}- 响应参数
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # 接码 id
"mobile": "13800138000", # 手机号
"appId": 1, # appId
"appName": "Wechat" , # app名称
"areaId": 1, # area id
"areaName": "美国", # 地区名称
"platformId": 1, # platformid
"platformName": "平台名称", # 平台名称,
"status": 1, # 接码状态 , 1 轮训读取验证码中, 2 用户主动确定已下发, 3 已收到验证码, 4 获取验证码失败
}
]
}租号接口
租号(批量)
租号不会冻结余额,会直接扣除已租号剩余的余额,如果号码不需要了,可以使用退租接口将号码归还,返还费用按天计算,不足 1 天按 1 天计算, 返还费用计算公式为:
(total - day * perDayUse) * 0.8, 也就是需要扣除20 %的手续费
API地址
/mobile/rent- 请求参数
json
{
"platformId": 1,
"areaId": 1,
"type": 1, # 租用类型, 1=日租, 2=周租, 3=月租, 4=季租
"callbackMobile": "13800138000", # 转发号码,收到的短信会转发到这个地址,
"callbackUrl": "https://baidu.com" # 和 callbackMobile 二选一,收到号码之后会回调这个接口发送号码,如果失败,则会重试3次. 回调格式见文档下方回调号码参数处.
}- 响应参数
json
{
"code": 0,
"msg": "",
"data": [
{
"id": 1, # 租用id
"mobile": "13800138000", # 手机号
"appId": 1, # appId
"appName": "Wechat" , # app名称
"areaId": 1, # area id
"areaName": "美国", # 地区名称
"platformId": 1, # platformid
"platformName": "平台名称" # 平台名称,
}
]
}- 回调方式如下:
h
POST https://yourcallbackurl.com
Authorization: $apiKey
Content-Type: application/json
{
"mobile": "13800138000",
"id": 1 # 租用id
"code": "1234" # 验证码
"text": "【google】your code is: 1234"
}错误码
下面是错误码列表, 错误码指的是 http 响应的 json 中对应的 code 字段的值
| 错误码 | 原因 |
|---|---|
| -1 | 参数错误 |
| 401 | 身份认证失败 |
| 429 | 请求 api 的速率超过账户额定速率,会提示该错误 |
| 500 | 服务器错误 |
| 600 | 暂无在线的手机号 |
| 601 | 手机号已离线,无法获取验证码 |
| 602 | 用户余额不足 |
| 603 | 超过额外获取短信限制 |
| 604 | 手机号数量不足,获取失败 |
| 605 | 通道 id 错误, 通道不存在 |
| 606 | 业务编码错误 |
| 607 | 获取短信号码超时 |
| 608 | 账号已被封禁,请联系客服处理 |