logo
logo
请输入关键词搜索产品或者文档
中国

中国站

创蓝云智

国际站

Innopaas

短信发送

更新时间:2026-07-30 16:05:56

接入准备

准备事项说明


完成企业认证+实名认证


  • 根据运营商实名发送短信的要求,使用国内文本短信之前需要登录控制台完成企业认证 + 实名认证。否则无法报备签名以及使用。
  • 所需材料清单请查阅实名材料说明文档。
获取API账号和密码 调用短信接口需要用到的账号和密码,登录控制台获取,登录账号为注册开户的手机号。
  • 先选择对应账号类型,有验证码、通知、营销三大类型账号。
  • 子账号可单独登录控制台,也可以在其主账号上面查看到,详情查看下方图片示例。
主账号获取示例
子账号获取示例


加白请求IP



登录控制台在对应API账号下加白您的服务器出口IP,否则接口将拦截本次请求。
  • 子账号的IP加白需要登录对应子账号后进行操作。
加白IP示例


获取模板ID



审核通过后才能使用,获取方式可以登录控制台获取,也可以接入API模板管理接口获取。
  • 主账号后台无法直接查看到子账号的模板,需要单独登录子账号或者使用API获取。
模板查看示例


获取短信签名



审核通过后才能使用,获取方式可以登录控制台获取,也可以接入API签名管理接口获取。
  • 主账号后台可以查看子账号的签名。
签名查看示例
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

短信格式

注:正文可以包含链接、地址、换行等文案。退订语目前只支持“拒收请回复R”,不支持小写r,并且只能放在整个短信内容的最末尾,后续可能会随工信部政策调整。


短信类型短信模板示例短信格式短信内容示例
验证码账号

您正在申请手机注册,验证码为:{s},5分钟内有效!


【短信签名】+ 正文(只包含用于验证类的文案)向用户手机发送: 【创蓝云智】您正在申请手机注册,验证码为:123456,5分钟内有效!
通知短信账号

尊敬的客户,您购买的会员卡已于{s}正式到期。如您要继续使用,请于{s}前及时续费或重新购买。


【短信签名】+ 正文(除推广外的通知文案,例如物流通知)向用户手机发送: 【创蓝云智】尊敬的客户,您购买的会员卡已于11月29日正式到期。如您要继续使用,请于11月29日前及时续费或重新购买。
会员营销账号

双十一重磅来袭,晚20点满600送{s}!详见www.chuanglan.com{s}拒收请回复R


【短信签名】+ 正文(推广类文案专用账号) + 退订语向用户手机发送: 【创蓝云智】双十一重磅来袭,晚20点抢600送600!详见www.chuanglan.com/dsdf5162拒收请回复R

发送时间限制

  • 验证码(YZM开头)、通知(N开头)、会员营销(M开头)这三类账号没有限制,但M账号22点之后成功率会受到较大影响,会出现拦截,如有疑问请联系我方商务人员。
  • 特殊类型账号发送时间默认是早8到晚8点,不在发送时间内提交短信,接口将会拦截您的请求并返回提交报错。如有时间上的调整,请联系我方商务人员。

发送短信接口

接口注意事项

  • 如果您需要状态回执,请记得传入report参数,即"report"="true",否则将无法获得状态回执。
  • 如果调用短信接口后返回错误,您需要根据返回的响应码提示检查传入的请求参数及其取值是否正确。更多信息请见文档末尾提交响应码说明。
  • 更多发送问题,请查阅短信发送FAQ
  • 如您需要了解计费规则,请查阅计费说明
  • 账户有默认的余额提醒,详情查阅余额提醒文档。

模板Id发送方式接口

请求地址:

  • 请求方式:json 格式封装的字符串,采用 post 方式提交请求
  • Content-Type:application/json
  • 编码格式:utf-8
  • 请求地址:https://smssh.253.com/msg/sms/v2/tpl/send

加密算法:

  • 根据留存在创蓝的密钥md5Password与请求参数中的timestamp和nonce进行HmacSHA256Hex签名并生成makeSignature,并将此makeSignature通过Request Header传递。
  • md5Password=API密码的MD5加密(32 位小写值),如:md5(password)
// 第三方工具类,需引入以下Maven依赖
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.codec.digest.HmacUtils;

public String makeSignature(String md5Password, String timestamp, String nonce) {
   String str = generateStr(md5Password, timestamp, nonce);
    return HmacUtils.hmacSha256Hex(md5Password, str.replaceAll("\\s+", ""));
} 

/**
 * 签名待处理的字符串拼接
 */
public static String generateStr(String md5Password, String timestamp, String nonce){
    String[] array = new String[] { md5Password, timestamp, nonce};
    StringBuffer sb = new StringBuffer();
    // 字符串排序
    Arrays.sort(array);
    for (int i = 0; i < 3; i++) {
        sb.append(array[i]);
    }
    return sb.toString();
}

RequestHeader:

参数名称类型是否必传描述示例
X-QA-Hmac-SignatureString可选
    加密鉴权
  • 使用上述加密鉴权时,传递makeSignature的结果,无需传递password。

  • 不加密鉴权时,该Header填空字符串"",body里password必传。
"nonce + md5Password(API密码的MD5的32位小写值)+ timestamp"(取决于排序结果)

body参数:

参数名称类型是否必传描述示例
accountString API 账号 "account":"N6000001"
passwordString API 密码 "password":"123456"
nonceString 32位随机字符串
  • 自定义即可。
"nonce":"2e6eceb5737b473284c930c8ef79090e"
timestampString 秒级时间戳
  • 时间戳1分钟过期
"timestamp":"1631865523"
phoneNumbersString 短信接收的手机号
  • 号码格式无需添加区号或者+号,只填写11位手机号。
  • 多个手机号使用英文逗号间隔,一次不要超过1000个。
批量群发:
"phoneNumbers":"15800000000,15300000000"
templateParamJsonString 变量参数值,JSON数组格式。
  • 变量模板为必传。短信模板变量对应的实际值,多个手机号即传入多组JSON对象,且传入每组对象的键名个数要与模板变量个数一致。
  • 键名用param1、param2、param3、param4以此类增,param1对应第一个变量{s},param2对应第二个变量。
  • 示例:
    短信模板:尊敬的{s},恭喜您成功充值{s}元。
    templateParamJson:[{\"param1\":\"张三\",\"param2\":\"13\"},{\"param1\":\"李四\",\"param2\":\"88\"}]
    填充后的第一个手机号内容:尊敬的张三,恭喜您成功充值13元。
    填充后的第二个手机号内容:尊敬的李四,恭喜您成功充值88元。
"templateParamJson":
"[
{\"param1\":\"张三\",\"param2\":\"13\"},
{\"param1\":\"李四\",\"param2\":\"88\"}
]"
templateIdString 模版Id
  • 模板跟单个API账号为绑定关系,不可主子账号混淆传入。
  • 可通过模板列表接口查询或登录控制台“模板管理”查看。
"templateId":"1111111"
signatureString 短信签名
  • 如果之前报备的模板没有选择关联签名,则为必传,需要通过此参数带上签名。
  • 自25年7月起最新的模板报备中会选择关联签名,则可以不用传递此参数。
"signature":"【创蓝云智】"
reportString 状态回执开关
  • 需要传"true",不传默认为"false",则无法获取状态回执。
  • 回执是判断短信是否成功接收的重要依据,回执详情请查阅状态回执文档。
"report":"true"
callbackUrlString 状态回执的回调地址
  • 请传入完整带http协议头开头的地址,不传默认为空,请勿传入空格,否则会造成地址推送错误。
  • 地址可通过接口入参传入,也可在控制台手动配置,可查看控制台操作指引
"callbackUrl":"https://"
uidString 自定义参数
  • 如订单号或短信发送记录流水号,状态回执会回传,最大支持256位。
"uid":"321abc"
extendString 下发短信号码扩展码
  • 用于匹配上行回复,上行报告会回传。一般5位以内(只支持传数字),不传默认为空。
"extend":"555"

请求示例:

{
  "account": "N6000001",
  "timestamp": "1752143733",
  "nonce": "x4zfk0y5foqwx6cbnw3bfmimy98abqs1",
  "phoneNumbers": "17601337176,15100159057",
  "templateId": "1021143438",
  "templateParamJson": "[{\"param1\":\"张三\",\"param2\":\"13\"},{\"param1\":\"李四\",\"param2\":\"88\"}]",
  "signature": "【创蓝云智】",
  "report": "true",
  "callbackUrl": "",
  "uid": "test_001",
  "extend": "01"
}

响应参数:

参数名称类型描述示例

code

String提交响应状态码,返回“0”表示提交成功(其他错误请参考提交响应码)"code":"000000"
msgIdString消息 id(32 位纯数字)"msgId":"25071516453300902203000007708373"

time

String响应时间"time":"20251204162433"
successNumString提交成功数量,参数校验失败时不返回"successNum":"1"

failNum

String提交失败数量,参数校验失败时不返回"failNum":"0"
errorMsgString提交响应状态码中文说明(提交成功返回空)"errorMsg":""

响应示例:

{
  "code": "000000",
  "failNum": "0",
  "successNum": "2",
  "msgId": "25071018345400902898000000000001",
  "time": "20250710183454",
  "errorMsg": ""
}

提交响应码说明

状态码描述问题处理人
000000提交成功
101无此用户(account参数要传API账号不是登录后台的账号,如N111111;或API账号关停了需要联系官网客服解禁)技术支持
102密码错(请确认密码是否一致正确,请直接复制避免手动输入错误)技术支持
103提交过快(提交速度超过流速限制)技术支持
104系统忙(因平台侧原因,暂时无法处理提交的短信)技术支持
105敏感短信(短信内容包含敏感词)客服
106消息长度错(>1036 或<=0)技术支持
107包含错误的手机号码技术支持
108手机号码个数错(手机号包含了中文符号;手机号个数错了,群发>1000 或<=0)技术支持
109无发送额度(当前使用的API账号下没有发送额度)商务
110不在发送时间内(联系客服或商务解决)商务
111超出该账户当月发送额度限制(联系客服或商务解决)商务
112产品错误(通道出现异常,联系商务解决)商务
113扩展码格式错(非数字或者长度不对)技术支持
114可用参数组个数错误(msg参数的变量符号固定使用"{$var}";变量符号在20个以内)技术支持
116签名不合法或未带签名(短信签名需要报备通过后才能使用;重保签名不可用)客服
117客户端IP错误(登录控制台在对应使用的API账号下加白ip)客服
118用户没有相应的发送权限(账号被禁止发送,联系客服或商务解禁)客服
119用户已过期客服
120违反防盗用策略(日发送限制,联系客服或商务解决)客服
123发送类型错误(cmpp协议的账户不能使用https协议方式,请联系我方技术修改)技术支持
124白模板匹配错误(接口传递的内容与报备的模板内容要完全一致,包括标点符号)客服
125匹配驳回模板,提交失败(联系客服或商务解决)客服
127定时发送时间格式错误(格式为 yyyyMMddHHmm)技术支持
128内容编码失败技术支持
129JSON 格式错误(header请求头是否生效:Content-Type:application/json;请求参数不是json格式)技术支持
130请求参数错误(缺少必填参数;参数跟接口地址不匹配,例如变量参数请求普通短信接口地址)技术支持
132消息长度错(>3500或<=0),超过短信最大支持字数技术支持
133单一手机号错误技术支持
134违反防盗策略, 超过月发送限制(联系客服或商务解决)技术支持
135超过同一手机号相同内容发送限制技术支持
136不可批量提交"验证码"短信技术支持
139超出安全发送时间(时间戳过期,时间戳时间跟请求接口的时间差异控制在30s以内)技术支持
140短信内容解密错误(秘钥没有使用正确)技术支持
144产品未上线限制日发送数量(签名报备选择的未上线会日限100条,联系客服调整)客服
145验签失败(验签不过,请参考对应接口的DEMO加签代码示例)技术支持
152MATERIAL_EXIST_ERROR (模板不存在)客服
153MESSAGE_LY_ERROR 消息长度错(>2000或者≤0)技术支持
154长短信拼接错误技术支持
155AIM_SEND_FAIL 转发失败技术支持
158退订语不符合规范,退订语现在只支持“拒收请回复R”。技术支持
159触发反轰炸策略技术支持
24小时热线 400-9669-253