Skip to content

短信配置 ​

短信渠道、签名、模板与发送记录的维护。

短信服务商配置列表 ​

接口地址 ​

text
GET /admin/sms/config/list

接口参数说明 ​

无请求参数。

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": [
    {
      "id": 1,
      "created_at": "2026-09-25T10:00:00+08:00",
      "updated_at": "2026-09-25T10:00:00+08:00",
      "name": "",
      "provider": 1,
      "access_key_id": "",
      "endpoint": "dysmsapi.aliyuncs.com",
      "is_default": 0,
      "status": 1,
      "remark": ""
    }
  ]
}

响应参数说明 ​

响应字段类型说明
data[].idinteger主键ID
data[].created_atstring创建时间
data[].updated_atstring更新时间
data[].namestring配置名称
data[].providerinteger服务商 1阿里云 2腾讯云 3短信宝 4 SMS.cn 5云片
data[].access_key_idstring渠道账号或访问密钥ID(不返回密钥 Secret)
data[].endpointstring服务地址
data[].is_defaultinteger是否默认渠道 0否 1是;默认渠道必须启用且全局唯一
data[].statusinteger状态 1启用 2禁用
data[].remarkstring备注

新增/修改短信服务商配置 ​

接口地址 ​

text
POST /admin/sms/config/save

接口说明 ​

传 id 为修改,不传为新增;access_key_secret 为空表示不修改原密钥。允许多个渠道启用,但只能有一个默认渠道,默认渠道必须启用。各渠道字段映射见 docs/sms-providers.md。

接口参数说明 ​

Body 参数类型必填说明
idinteger否主键ID,新增时不传
namestring是配置名称
providerinteger是服务商 1阿里云 2腾讯云 3短信宝 4 SMS.cn 5云片
access_key_idstring是阿里云AccessKey ID、腾讯云SDK AppID、短信宝用户名、SMS.cn uid 或云片API Key
access_key_secretstring否阿里云AccessKey Secret、腾讯云Secret Key、短信宝API Key/MD5密码或SMS.cn接口密码;云片无需填写;修改时留空表示不修改
endpointstring否服务地址
is_defaultinteger否是否默认渠道 0否 1是;允许多个渠道启用,但只能有一个启用的默认渠道
statusinteger是状态 1启用 2禁用
remarkstring否备注

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "id": 1,
    "created_at": "2026-09-25T10:00:00+08:00",
    "updated_at": "2026-09-25T10:00:00+08:00",
    "name": "",
    "provider": 1,
    "access_key_id": "",
    "endpoint": "dysmsapi.aliyuncs.com",
    "is_default": 0,
    "status": 1,
    "remark": ""
  }
}

响应参数说明 ​

响应字段类型说明
idinteger主键ID
created_atstring创建时间
updated_atstring更新时间
namestring配置名称
providerinteger服务商 1阿里云 2腾讯云 3短信宝 4 SMS.cn 5云片
access_key_idstring渠道账号或访问密钥ID(不返回密钥 Secret)
endpointstring服务地址
is_defaultinteger是否默认渠道 0否 1是;默认渠道必须启用且全局唯一
statusinteger状态 1启用 2禁用
remarkstring备注

发送短信渠道测试验证码 ​

接口地址 ​

text
POST /admin/sms/config/test

接口说明 ​

使用指定配置及其第一条启用签名和验证码模板发送测试短信;管理端显式测试不要求该渠道为默认或启用。同一配置和手机号每分钟只能测试一次,发送结果写入短信发送记录。

接口参数说明 ​

Body 参数类型必填说明
config_idinteger是短信配置ID
mobilestring是接收测试验证码的中国大陆手机号

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "provider_message_id": ""
  }
}

响应参数说明 ​

响应字段类型说明
provider_message_idstring短信服务商消息ID

删除短信服务商配置 ​

接口地址 ​

text
POST /admin/sms/config/delete

接口参数说明 ​

Body 参数类型必填说明
idinteger是主键ID

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "code": 0,
    "msg": "success",
    "data": null
  }
}

响应参数说明 ​

成功时 data 为 null。

短信签名列表 ​

接口地址 ​

text
GET /admin/sms/signature/list

接口参数说明 ​

无请求参数。

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": [
    {
      "id": 1,
      "created_at": "2026-09-25T10:00:00+08:00",
      "updated_at": "2026-09-25T10:00:00+08:00",
      "config_id": 0,
      "name": "",
      "sign_code": "",
      "status": 1,
      "remark": ""
    }
  ]
}

响应参数说明 ​

响应字段类型说明
data[].idinteger主键ID
data[].created_atstring创建时间
data[].updated_atstring更新时间
data[].config_idinteger所属短信配置ID
data[].namestring签名名称
data[].sign_codestring平台签名编码
data[].statusinteger状态 1启用 2禁用
data[].remarkstring备注

新增/修改短信签名 ​

接口地址 ​

text
POST /admin/sms/signature/save

接口参数说明 ​

Body 参数类型必填说明
idinteger否主键ID,新增时不传
config_idinteger是短信配置ID
namestring是签名名称
sign_codestring否平台签名编码
statusinteger是状态 1启用 2禁用
remarkstring否备注

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "id": 1,
    "created_at": "2026-09-25T10:00:00+08:00",
    "updated_at": "2026-09-25T10:00:00+08:00",
    "config_id": 0,
    "name": "",
    "sign_code": "",
    "status": 1,
    "remark": ""
  }
}

响应参数说明 ​

响应字段类型说明
idinteger主键ID
created_atstring创建时间
updated_atstring更新时间
config_idinteger所属短信配置ID
namestring签名名称
sign_codestring平台签名编码
statusinteger状态 1启用 2禁用
remarkstring备注

删除短信签名 ​

接口地址 ​

text
POST /admin/sms/signature/delete

接口参数说明 ​

Body 参数类型必填说明
idinteger是主键ID

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "code": 0,
    "msg": "success",
    "data": null
  }
}

响应参数说明 ​

成功时 data 为 null。

短信模板列表 ​

接口地址 ​

text
GET /admin/sms/template/list

接口参数说明 ​

无请求参数。

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": [
    {
      "id": 1,
      "created_at": "2026-09-25T10:00:00+08:00",
      "updated_at": "2026-09-25T10:00:00+08:00",
      "config_id": 0,
      "name": "",
      "template_code": "SMS_123456789",
      "type": 1,
      "content": "",
      "status": 1,
      "remark": ""
    }
  ]
}

响应参数说明 ​

响应字段类型说明
data[].idinteger主键ID
data[].created_atstring创建时间
data[].updated_atstring更新时间
data[].config_idinteger所属短信配置ID
data[].namestring模板名称
data[].template_codestring平台模板编码
data[].typeinteger模板类型 1验证码 2通知 3营销
data[].contentstring模板内容
data[].statusinteger状态 1启用 2禁用
data[].remarkstring备注

新增/修改短信模板 ​

接口地址 ​

text
POST /admin/sms/template/save

接口参数说明 ​

Body 参数类型必填说明
idinteger否主键ID,新增时不传
config_idinteger是短信配置ID
namestring是模板名称
template_codestring是平台模板编码;短信宝可填写产品ID,云片可留空
typeinteger是模板类型 1验证码 2通知 3营销
contentstring否模板内容
statusinteger是状态 1启用 2禁用
remarkstring否备注

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "id": 1,
    "created_at": "2026-09-25T10:00:00+08:00",
    "updated_at": "2026-09-25T10:00:00+08:00",
    "config_id": 0,
    "name": "",
    "template_code": "SMS_123456789",
    "type": 1,
    "content": "",
    "status": 1,
    "remark": ""
  }
}

响应参数说明 ​

响应字段类型说明
idinteger主键ID
created_atstring创建时间
updated_atstring更新时间
config_idinteger所属短信配置ID
namestring模板名称
template_codestring平台模板编码
typeinteger模板类型 1验证码 2通知 3营销
contentstring模板内容
statusinteger状态 1启用 2禁用
remarkstring备注

删除短信模板 ​

接口地址 ​

text
POST /admin/sms/template/delete

接口参数说明 ​

Body 参数类型必填说明
idinteger是主键ID

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "code": 0,
    "msg": "success",
    "data": null
  }
}

响应参数说明 ​

成功时 data 为 null。

短信发送记录 ​

接口地址 ​

text
GET /admin/sms/log/list

接口参数说明 ​

Query 参数类型必填说明
mobilestring否手机号
statusinteger否发送状态 1待发送 2成功 3失败
pageinteger否页码,默认 1
page_sizeinteger否每页数量,默认 20,最大 100

响应示例 ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "list": [
      {
        "id": 0,
        "created_at": "2026-09-25T10:00:00+08:00",
        "config_id": 0,
        "signature_id": 0,
        "template_id": 0,
        "mobile": "",
        "content": "",
        "status": 1,
        "provider_message_id": "",
        "error_message": "",
        "sent_at": "2026-09-25T10:00:00+08:00"
      }
    ],
    "total": 0
  }
}

响应参数说明 ​

响应字段类型说明
listarray<SMSLogItem>
list[].idinteger主键ID
list[].created_atstring记录创建时间
list[].config_idinteger短信配置ID
list[].signature_idinteger签名ID
list[].template_idinteger模板ID
list[].mobilestring手机号(脱敏展示,如 138****8001)
list[].contentstring发送内容
list[].statusinteger发送状态 1待发送 2成功 3失败
list[].provider_message_idstring服务商消息ID
list[].error_messagestring失败原因
list[].sent_atstring发送时间
totalinteger数据总数