SMSPVAdevelopers
Activation V2
SMSPVA / API REFERENCE

消息类型设置

检查国家、服务和运营商组合允许的消息类型。

SMSPVA API
GEThttps://api.smspva.com/activation/countryservicesettings

身份验证

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

参数

无需路径参数、查询参数或请求体。

使用说明

检查 country、service、operator 组合允许的消息类型。传入 apikey 请求头即可,无需路径或查询参数。响应按设置 ID 升序返回全部规则,但不包含 ID 本身。

规则中每个非空条件都必须匹配;空字符串表示不限。匹配规则中,非空条件越多,优先级越高。例如,国家加服务的规则覆盖仅有国家的规则;再匹配运营商时,优先级更高。请同时使用选中规则的 sms、caller、voice 三个标记:1 表示允许,0 表示禁用。

没有匹配规则时,默认允许全部三种类型。data 为空数组表示查询成功,但没有配置规则。允许某种类型并不保证有可用号码。

查询价格和申请号码时,查询参数 voice 的含义不同:0 短信、1 来电显示、2 语音。比较价格与下单时请选择同一类型,并单独检查余量。

请求示例

运行环境及配置. 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/countryservicesettings" \
  --header "apikey: $SMSPVA_API_KEY"

响应

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

HTTP说明
200消息类型设置;空列表同样表示查询成功。
400缺少 apikey 请求头、值为空或不足 30 个字符。
401未找到此 API 密钥对应的账户。
402请求频率超限;此 API 使用 HTTP 402 表示该错误。
403账户已被封禁。
500服务器内部错误;启用错误详情时,说明可能包含具体异常。
HTTP 200

消息类型设置;空列表同样表示查询成功。

服务范围规则与特定国家规则

{
  "statusCode": 200,
  "data": [
    {
      "country": "",
      "service": "opt20",
      "operator": "",
      "voice": 0,
      "caller": 0,
      "sms": 1
    },
    {
      "country": "FR",
      "service": "opt20",
      "operator": "",
      "voice": 1,
      "caller": 0,
      "sms": 1
    }
  ]
}

未配置规则

{
  "statusCode": 200,
  "data": []
}

响应字段

名称类型说明
statusCodeinteger(enum: [200])
dataarray<object>
data[].countrystring要匹配的国家代码,空字符串表示不限国家。
data[].servicestring要匹配的服务代码,空字符串表示不限服务。
data[].operatorstring要匹配的运营商代码,空字符串表示不限运营商。
data[].voiceinteger语音:1 允许,0 禁用。 (enum: [0,1])
data[].callerinteger来电显示:1 允许,0 禁用。 (enum: [0,1])
data[].smsinteger短信:1 允许,0 禁用。 (enum: [0,1])
HTTP 400

缺少 apikey 请求头、值为空或不足 30 个字符。

响应示例

{
  "statusCode": 400,
  "error": {
    "type": "APIKEY_NOT_SET",
    "description": "No ApiKey found"
  }
}

响应字段

名称类型说明
statusCodeinteger(enum: [400])
errorobject
error.typestring
error.descriptionstring
HTTP 401

未找到此 API 密钥对应的账户。

响应示例

{
  "statusCode": 401,
  "error": {
    "type": "USER_NOT_FOUND",
    "description": "Not found"
  }
}

响应字段

名称类型说明
statusCodeinteger(enum: [401])
errorobject
error.typestring
error.descriptionstring
HTTP 402

请求频率超限;此 API 使用 HTTP 402 表示该错误。

响应示例

{
  "statusCode": 402,
  "error": {
    "type": "RATELIMIT_EXCEED",
    "description": "Request ratelimit exeeded"
  }
}

响应字段

名称类型说明
statusCodeinteger(enum: [402])
errorobject
error.typestring
error.descriptionstring
HTTP 403

账户已被封禁。

响应示例

{
  "statusCode": 403,
  "error": {
    "type": "USER_BANNED",
    "description": "User banned"
  }
}

响应字段

名称类型说明
statusCodeinteger(enum: [403])
errorobject
error.typestring
error.descriptionstring
HTTP 500

服务器内部错误;启用错误详情时,说明可能包含具体异常。

响应示例

{
  "statusCode": 500,
  "error": {
    "type": "SERVER_ERROR",
    "description": "An internal error has occurred while processing your request."
  }
}

响应字段

名称类型说明
statusCodeinteger(enum: [500])
errorobject
error.typestring
error.descriptionstring

相关指南

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

本页内容