消息类型设置
检查国家、服务和运营商组合允许的消息类型。
身份验证
| 名称 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
apikey | header | string | 是 | 你的 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": []
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [200]) |
data | array<object> | |
data[].country | string | 要匹配的国家代码,空字符串表示不限国家。 |
data[].service | string | 要匹配的服务代码,空字符串表示不限服务。 |
data[].operator | string | 要匹配的运营商代码,空字符串表示不限运营商。 |
data[].voice | integer | 语音:1 允许,0 禁用。 (enum: [0,1]) |
data[].caller | integer | 来电显示:1 允许,0 禁用。 (enum: [0,1]) |
data[].sms | integer | 短信:1 允许,0 禁用。 (enum: [0,1]) |
HTTP 400
缺少 apikey 请求头、值为空或不足 30 个字符。
响应示例
{
"statusCode": 400,
"error": {
"type": "APIKEY_NOT_SET",
"description": "No ApiKey found"
}
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [400]) |
error | object | |
error.type | string | |
error.description | string |
HTTP 401
未找到此 API 密钥对应的账户。
响应示例
{
"statusCode": 401,
"error": {
"type": "USER_NOT_FOUND",
"description": "Not found"
}
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [401]) |
error | object | |
error.type | string | |
error.description | string |
HTTP 402
请求频率超限;此 API 使用 HTTP 402 表示该错误。
响应示例
{
"statusCode": 402,
"error": {
"type": "RATELIMIT_EXCEED",
"description": "Request ratelimit exeeded"
}
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [402]) |
error | object | |
error.type | string | |
error.description | string |
HTTP 403
账户已被封禁。
响应示例
{
"statusCode": 403,
"error": {
"type": "USER_BANNED",
"description": "User banned"
}
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [403]) |
error | object | |
error.type | string | |
error.description | string |
HTTP 500
服务器内部错误;启用错误详情时,说明可能包含具体异常。
响应示例
{
"statusCode": 500,
"error": {
"type": "SERVER_ERROR",
"description": "An internal error has occurred while processing your request."
}
}响应字段
| 名称 | 类型 | 说明 |
|---|---|---|
statusCode | integer | (enum: [500]) |
error | object | |
error.type | string | |
error.description | string |
相关指南
修改订单的请求发生网络故障时,先检查订单状态,再决定是否重试。