SMSPVAdevelopers
Activation V2
SMSPVA / API REFERENCE

获取号码

为指定国家和服务申请激活号码。

SMSPVA API
GEThttps://api.smspva.com/activation/number/{country}/{service}

此请求可能修改订单或产生费用。 示例不会自动重试。即使使用 GET,读取新收到的短信也可能触发计费。

身份验证

名称位置类型必填说明
apikeyheaderstring是你的 API 密钥

参数

名称位置类型必填说明
countrypathstring是大写两字符国家代码,采用 API 指定的 ISO 3166-2 格式。 国家列表
servicepathstring是服务代码。 服务列表
voicequeryinteger否类型:0 短信,1 来电显示,2 语音。默认值为 0。 (enum: [0,1,2]; default: 0)

无需请求体。

使用说明

为所选 country 和 service 申请号码。

代码见基础数据。下单前请检查价格、余量及消息类型设置,也可比较运营商价格和各国价格。

保存 data.orderId,用于接收短信及管理订单。用 data.orderExpireIn 计算到期时间。请求超时后,先查当前订单再申请新号码:上一次请求可能已经创建订单。

请求示例

运行环境及配置. cURL 使用 POSIX shell。JavaScript 示例也可用于 Node.js TypeScript 项目。Java 使用标准 HTTP 客户端并输出原始 JSON;请使用应用的 JSON 库读取响应字段。

: "${SMSPVA_API_KEY:?Set SMSPVA_API_KEY}"
curl --fail-with-body --max-time 30 --request GET \
  --url "https://api.smspva.com/activation/number/BD/opt20?voice=0" \
  --header "apikey: $SMSPVA_API_KEY"

响应

下方示例用于说明响应格式。价格、余量和账户数据仅为示例,实际数值请以 API 响应为准。

HTTP说明
200操作成功
405参数不正确
407余额不足以接收所选国家和服务的短信。
411karma 过低或请求过于频繁,API 访问受限。
500未能获取号码。
501未找到号码。
502未找到号码。
503服务器繁忙,请稍后再试。
HTTP 200

操作成功

响应示例

{
  "statusCode": 200,
  "data": {
    "orderId": 123456,
    "phoneNumber": 9876544321,
    "countryCode": "BD",
    "orderExpireIn": 600
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
dataobject响应数据
data.orderIdinteger订单 ID
data.phoneNumberinteger不含国家区号的电话号码
data.countryCodestring符合 ITU-T E.123 和 E.164 的国家代码。 国家列表
data.orderExpireIninteger距订单到期的秒数
HTTP 405

参数不正确

响应示例

{
  "statusCode": 405,
  "error": {
    "type": "INVALID_PARAMS",
    "description": "Invalid params."
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstring错误说明
HTTP 407

余额不足以接收所选国家和服务的短信。

响应示例

{
  "statusCode": 407,
  "error": {
    "type": "LOW_BALANCE",
    "description": "Low balance."
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstring错误说明
HTTP 411

karma 过低或请求过于频繁,API 访问受限。

响应示例

{
  "statusCode": 411,
  "error": {
    "type": "ACCESS_LIMITED",
    "description": "Access is temporary limited."
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstring错误说明
HTTP 500

未能获取号码。

响应示例

{
  "statusCode": 500,
  "error": {
    "type": "NUMBER_FETCH_FAIL",
    "description": "Failed to fetch number"
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring
error.descriptionstring
HTTP 501

未找到号码。

响应示例

{
  "statusCode": 501,
  "error": {
    "type": "PRICE_FETCH_FAIL",
    "description": "Failed to fetch price"
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstringFailed to fetch price
HTTP 502

未找到号码。

响应示例

{
  "statusCode": 502,
  "error": {
    "type": "NUMBER_NOT_FOUND",
    "description": "Number not found."
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstring错误说明
HTTP 503

服务器繁忙,请稍后再试。

响应示例

{
  "statusCode": 503,
  "error": {
    "type": "SERVER_BUSY",
    "description": "Server overload, try later."
  }
}

响应字段

名称类型说明
statusCodeinteger结果状态码
errorobject错误详情
error.typestring错误类型
error.descriptionstring错误说明

相关指南

修改订单的请求发生网络故障时,先检查订单状态,再决定是否重试。

本页内容