接码 API 接入指南与接口文档

兼容主流接码协议的 API 文档:查询余额、获取号码价格、购买虚拟号码、自动短信在线接收验证码,助您快速集成虚拟手机号码接码能力。

欢迎使用 SMS-Activation API

API是您的软件和我们的服务器之间的互动协议,我们的API与主流网站保持兼容。所有请求都应发送至https://www.sms-activation.net/stubs/handler_api.php,使用GET/POST请求, 所有请求都必须有一个 API 密钥作为参数api_key


基本信息(Overview)

项目说明
Base URLhttps://www.sms-activation.net/stubs/handler_api.php
请求方法GET/POST
返回格式文本 或 JSON
鉴权方式api_key 参数

所有请求都必须携带以下两个公共参数:

参数类型必填说明
api_keystring您的 API 密钥,可在 API 文档页点击「查看 API Key」获取
actionstring要调用的接口方法,见下方 Action 总览

如果 api_key 无效或缺失,将返回 BAD_KEY,

如果 action 不存在,将返回 BAD_ACTION


Action 总览

Action说明返回类型
getBalance查询账户余额文本
getPrices获取号码价格与库存JSON
getNumber购买一个手机号用于接收验证码文本
setStatus更新某个激活订单的状态(确认/重发/取消)文本
getActiveActivations获取当前账户所有进行中的激活订单JSON

1. 查询余额 getBalance

返回账户当前可用余额。

请求参数

参数类型必填说明
api_keystringAPI 密钥
actionstring固定值 getBalance

请求示例

curl "https://www.sms-activation.net/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getBalance"

返回示例

ACCESS_BALANCE:128.50

可能的错误

返回值说明
BAD_KEYapi_key 无效

2. 获取价格 getPrices

获取各国家/各服务的号码单价与库存数量,可按 servicecountry 进行过滤。

请求参数

参数类型必填说明
api_keystringAPI 密钥
actionstring固定值 getPrices
servicestring服务代码,例如 tg(Telegram),不传则返回全部服务
countrynumber国家代码,例如 187(美国),不传则返回全部国家

请求示例

curl "https://www.sms-activation.net/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getPrices&service=tg&country=187"

返回示例

{
  "187": {
    "tg": {
      "cost": 13.5,
      "count": 5000,
      "physicalCount": 4800
    }
  }
}

返回结构为 { 国家代码: { 服务代码: { cost, count, physicalCount } } }

字段说明
cost该号码单价(人民币元,已根据账户等级折算)
count该国家/服务当前可用库存数量
physicalCount实体号码库存数量(部分服务可能没有此字段)

3. 获取号码 getNumber

购买一个临时手机号,用于接收指定服务的短信验证码。

请求参数

参数类型必填说明
api_keystringAPI 密钥
actionstring固定值 getNumber
servicestring服务代码,例如 tg
countrynumber国家代码,例如 187

请求示例

curl "https://www.sms-activation.net/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getNumber&service=tg&country=187"

返回示例

ACCESS_NUMBER:38223344:12015550123

返回格式为 ACCESS_NUMBER:{activationId}:{phoneNumber},请保存 activationId,后续查询/更新状态时需要用到。

可能的错误

返回值说明
NO_NUMBERS当前服务/国家暂无可用号码
NO_BALANCE账户余额不足
BAD_SERVICEservice / country 参数不正确

4. 更新激活状态 setStatus

用于在获取号码之后,告知系统下一步操作:重新发送短信、确认完成、或取消该次激活。

请求参数

参数类型必填说明
api_keystringAPI 密钥
actionstring固定值 setStatus
idstringgetNumber 返回的 activationId
statusnumber目标状态,见下表

状态值说明

status含义
3请求重发一条短信(等待下一条验证码)
6确认激活完成
8取消本次激活(购买后 2 分钟内不可取消)

status=1(号码已准备好)由系统自动设置,客户端调用 getNumber 后无需也不能手动传入。

请求示例

curl "https://www.sms-activation.net/stubs/handler_api.php?api_key=YOUR_API_KEY&action=setStatus&id=38223344&status=6"

返回示例

ACCESS_ACTIVATION

可能的错误

返回值说明
BAD_STATUSstatus 取值不在允许范围内
WRONG_ACTIVATION_IDid 不存在或不属于当前账户
EARLY_CANCEL_DENIED购买后 2 分钟内尝试取消(status=8

5. 查询进行中的激活 getActiveActivations

返回当前账户所有尚未结束(未确认/未取消)的激活订单详情。

请求参数

参数类型必填说明
api_keystringAPI 密钥
actionstring固定值 getActiveActivations

请求示例

curl "https://www.sms-activation.net/stubs/handler_api.php?api_key=YOUR_API_KEY&action=getActiveActivations"

返回示例

[
  {
    "activationId": "38223344",
    "phoneNumber": "12015550123",
    "countryCode": 187,
    "countryName": "美国",
    "countryNameCN": "美国",
    "serviceCode": "tg",
    "serviceNameCN": "Telegram",
    "activationStatus": 2,
    "status": 0,
    "activationCost": 13.5,
    "price_cn": 13.5,
    "activationTime": "2026-06-27T08:00:00.000Z",
    "canGetAnotherSms": true,
    "activationOperator": "",
    "discount": "",
    "repeated": "",
    "smsCode": ["123456"],
    "smsText": ["Your Telegram code: 123456"]
  }
]

字段说明

字段说明
activationId激活订单 ID
phoneNumber分配到的手机号
countryCode / countryName国家代码 / 中文名称
serviceCode / serviceNameCN服务代码 / 中文名称
activationCost / price_cn订单价格
smsCode已收到的验证码列表
smsText已收到的完整短信内容列表
canGetAnotherSms是否允许继续请求下一条短信

错误码一览(Error Codes)

错误码说明
BAD_KEYapi_key 无效
BAD_ACTIONaction 参数无效
BAD_SERVICEservicecountry 参数无效
BAD_STATUSstatus 参数无效
NO_NUMBERS当前服务/国家暂无可用号码
NO_BALANCE账户余额不足
WRONG_ACTIVATION_ID激活订单 ID 不存在或不属于当前账户
EARLY_CANCEL_DENIED购买后 2 分钟内尝试取消激活