短信接口指南

更新时间: 2024/02/21 16:27:43

短信接口限制规则

  1. 短信服务属于收费功能,如有疑问请联系客户顾问;
  2. 验证码支持中英文模板,模板的定制可联系客户顾问;
  3. 对接收方手机号码限制1天默认为10条短信验证码;
  4. 对同一个接收方手机号码,一分钟最多接受3条相同的短信;
  5. 对同一个接收方手机号码,一天最多接受5条相同的短信;
  6. 验证码有效时间默认为10分钟,如需修改可在短信配置中修改,单位秒,最长不超过120分钟;
  7. 对一个手机号码的验证调用,连续校验错误10次以后,该验证码立即失效,校验错误接口返回中需告知开发者当前错误次数;
  8. 对未发送短信验证码的手机号码验证调用,一天累计超过1万次会视为恶意攻击,将暂停该appkey的短信验证码服务,一旦发生此情况请联系客户顾问;
  9. 网易云信短信分为验证码短信、通知类短信和运营类短信,在调用短信验证码接口时可以同时调用校验验证码接口进行验证码校验。用户使用短信模版来发送短信则只需调用发送模版短信接口即可。

发送短信验证码

请求说明

POST https://api.netease.im/sms/sendcode.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求中Headers的设置请参考接口概述

接口描述

向指定的手机号码发送文本短信验证码或语音短信验证码。

参数说明

参数类型必须说明
mobileString目标手机号,非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx)
templateid int 模板编号(如不指定则使用配置的默认模版)
codeLen int 验证码长度,默认为 4 位,取值范围为 4-10 (注:语音验证码的取值范围为 4-8位)。
authCode String 客户自定义验证码,长度为 4 ~ 10 位,支持字母和数字。
如果设置了该参数,则codeLen参数无效
needUp Boolean 是否需要支持短信上行。true:需要,false:不需要
说明:如果开通了短信上行抄送功能,该参数需要设置为true,其它情况设置无效

curl请求示例

curl -X POST -H "AppKey: go9dnk49bkd9jd9vmel1kglw0803mgq3" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Nonce: 4tgggergigwow323t23t" -H "Content-Type: application/x-www-form-urlencoded" -d 'mobile=13812345678' 'https://api.netease.im/sms/sendcode.action'

返回说明

http 响应:json

发送成功则返回相关信息。msg字段表示此次发送的sendid;obj字段表示此次发送的验证码。

json"Content-Type": "application/json; charset=utf-8"
{
  "code": 200,
  "msg": "88",
  "obj": "1908"
}

主要的返回码

200、315、403、414、416、500

具体请参考code状态表


校验验证码

请求说明

POST https://api.netease.im/sms/verifycode.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求中Headers的设置请参考接口概述

短信验证码接口描述

校验指定手机号的验证码是否合法。

参数说明

参数类型必须说明
mobileString目标手机号,非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx)
codeString验证码

curl请求示例

curl -X POST -H "AppKey: go9dnk49bkd9jd9vmel1kglw0803mgq3" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Nonce: 4tgggergigwow323t23t" -H "Content-Type: application/x-www-form-urlencoded" -d 'mobile=13812345678&code=1234' 'https://api.netease.im/sms/verifycode.action'

返回说明

http 响应:json

json"Content-Type": "application/json; charset=utf-8"
{
  "code":200
}

主要的返回码

200、301、315、403、404、413、414、500

具体请参考code状态表


发送通知类和运营类短信

请求说明

POST https://api.netease.im/sms/sendtemplate.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求中Headers的设置请参考接口概述

接口描述

向手机号发送内容格式预定义的短信,整个短信的内容由模板和变量组成。

参数说明

参数类型必须说明
templateidint模板编号(由客户顾问配置之后告知开发者)
mobilesString接收者号码列表,JSONArray格式,如["186xxxxxxxx","186xxxxxxxx"],限制接收者号码个数最多为100个;
非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx)
paramsString模板中`若含变量则必须`包含此参数短信参数列表,用于依次填充模板,JSONArray格式,每个变量长度不能超过30字,如`["xxx","yyy"]`;对于不包含变量的模板,不填此参数表示模板即短信全文内容
needUp Boolean 是否需要支持短信上行。true:需要,false:不需要
说明:如果开通了短信上行抄送功能,该参数需要设置为true,其它情况设置无效

curl请求示例

curl -X POST -H "AppKey: go9dnk49bkd9jd9vmel1kglw0803mgq3" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Nonce: 4tgggergigwow323t23t" -H "charset: utf-8" -H "Content-Type: application/x-www-form-urlencoded" -d 'templateid=1007&mobiles=["13812345678"]&params=["hello"]' 'https://api.netease.im/sms/sendtemplate.action'

返回说明

http 响应:json

成功则在obj中返回此次发送的sendid(long),用于查询发送结果

json"Content-Type": "application/json; charset=utf-8"
{
  "code":200,
  "msg":"sendid", 
  "obj":123
}

主要的返回码

200、315、403、413、414、500

具体请参考code状态表


发送视频短信

请求说明

POST https://api.netease.im/sms-new-api/video/template/send HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求中Headers的设置请参考接口概述

接口描述

向手机号发送内容格式预定义的视频短信,整个短信的内容由文本和多媒体组成。

参数说明

参数类型必须说明
templateIdlong模板编号(审核通过的视频短信多媒体模板Id)
mobilesString接收者号码列表,JSONArray格式,如["186xxxxxxxx","186xxxxxxxx"],限制接收者号码个数最多为100个;
目前只支持国内号码
paramsString
否若模板中包含变量则该参数必填
模板参数,JSONObject格式,如{"name":"云信","age":6},其中name,age为视频模板中的参数#{name},#{age}

curl请求示例

curl -X POST -H "AppKey: go9dnk49bkd9jd9vmel1kglw0803mgq3" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Nonce: 4tgggergigwow323t23t" -H "charset: utf-8" -H "Content-Type: application/x-www-form-urlencoded" -d 'templateId=1007&mobiles=["13812345678"]&params={"name":"云信","age":6}' 'https://api.netease.im/sms-new-api/video/template/send'

返回说明

http 响应:json

成功则在obj中返回此次发送的sendid(long),用于查询发送结果

json"Content-Type": "application/json; charset=utf-8"
{
  "code":200,
  "msg":"sendid", 
  "obj":123
}

主要的返回码

200、315、403、413、414、500

具体请参考code状态表


查询通知类和运营类短信发送状态

请求说明

POST https://api.netease.im/sms/querystatus.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求中Headers的设置请参考接口概述

接口描述

根据短信的sendid(sendtemplate.action接口中的返回值),查询短信发送结果。

参数说明

参数类型必须说明
sendidlong发送短信的编号sendid

curl请求示例

curl -X POST -H "AppKey: go9dnk49bkd9jd9vmel1kglw0803mgq3" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Nonce: 4tgggergigwow323t23t" -H "charset: utf-8" -H "Content-Type: application/x-www-form-urlencoded" -d 'sendid=1' 'https://api.netease.im/sms/querystatus.action'

返回说明

http 响应:json

obj中返回JSONArray,格式如下(其中status取值:0-未发送,1-发送成功(提交通道成功),2-发送失败(提交通道失败),3-反垃圾):

json"Content-Type": "application/json; charset=utf-8"
{
  "code": 200,
  "obj": [
    {
      "status": 1,
      "mobile": "13812341234",
      "updatetime": 1471234567812
    }
  ]
}

主要的返回码

200、315、403、404、413、414、500

具体请参考code状态表

此文档是否对你有帮助?
有帮助
去反馈
  • 短信接口限制规则
  • 发送短信验证码
  • 请求说明
  • 接口描述
  • 参数说明
  • curl请求示例
  • 返回说明
  • 主要的返回码
  • 校验验证码
  • 请求说明
  • 短信验证码接口描述
  • 参数说明
  • curl请求示例
  • 返回说明
  • 主要的返回码
  • 发送通知类和运营类短信
  • 请求说明
  • 接口描述
  • 参数说明
  • curl请求示例
  • 返回说明
  • 主要的返回码
  • 发送视频短信
  • 请求说明
  • 接口描述
  • 参数说明
  • curl请求示例
  • 返回说明
  • 主要的返回码
  • 查询通知类和运营类短信发送状态
  • 请求说明
  • 接口描述
  • 参数说明
  • curl请求示例
  • 返回说明
  • 主要的返回码