调用SendSms发送短信。

使用说明

  • SendSms接口是短信发送接口,支持在一次请求中向多个不同的手机号码发送同样内容的短信。如果您需要在一次请求中分别向多个不同的手机号码发送不同签名和模版内容的短信,请使用SendBatchSms接口。
  • 发送短信会根据发送量计费,价格请参见计费说明
  • 本接口主要适用于短信单发场景,特殊场景下可支持群发(最多可向1000个手机号码发送同样内容的短信),但群发会有一定延迟。

QPS限制

本接口的单用户QPS限制为5000次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String SendSms

系统规定参数。取值:SendSms

PhoneNumbers String 1381111*****

接收短信的手机号码。

格式:无任何前缀的11位手机号码,例如1381111****。

支持对多个手机号码发送短信,手机号码之间以半角逗号(,)分隔。上限为1000个手机号码。批量调用相对于单条调用及时性稍有延迟。

说明 验证码类型短信,建议使用单独发送的方式。
SignName String 阿里云

短信签名名称。

您可以登录短信服务控制台,选择国内消息>签名管理获取。

说明 必须是已添加、并通过审核的短信签名。
TemplateCode String SMS_15305****

短信模板ID。

您可以登录短信服务控制台,选择国内消息>模板管理获取短信模板ID。

说明 必须是已添加、并通过审核的短信模板;且发送国际/港澳台消息时,请使用国际/港澳台短信模版。
TemplateParam String {"code":"1111"}

短信模板变量对应的实际值,JSON格式。支持传入多个参数,示例:{"name":"张三","number":"15038****76"}。

说明 如果JSON中需要带换行符,请参照标准的JSON协议处理。
SmsUpExtendCode String 90999

上行短信扩展码,上行短信,指发送给通信服务提供商的短信,用于定制某种服务、完成查询,或是办理某种业务等,需要收费的,按运营商普通短信资费进行扣费。

说明 无特殊需要此字段的用户请忽略此字段。
OutId String abcdefgh

外部流水扩展字段。

返回数据

名称 类型 示例值 描述
Code String OK

请求状态码。

  • 返回OK代表请求成功。
  • 其他错误码,请参见错误码列表
Message String OK

状态码的描述。

BizId String 9006197469364984****

发送回执ID。

可根据发送回执ID在接口QuerySendDetails中查询具体的发送状态。

RequestId String F655A8D5-B967-440B-8683-DAD6FF8DE990

请求ID。

示例

请求示例

http(s)://dysmsapi.aliyuncs.com/?Action=SendSms
&PhoneNumbers=1381111*****
&SignName=阿里云
&TemplateCode=SMS_1530****
&<公共请求参数>

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<SendSmsResponse>
      <Message>OK</Message>
      <RequestId>44DF7A95-603F-4651-9298-BE1850BEB53F</RequestId>
      <BizId>336006646937050335^0</BizId>
      <Code>OK</Code>
</SendSmsResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "Message" : "OK",
  "RequestId" : "F655A8D5-B967-440B-8683-DAD6FF8DE990",
  "Code" : "OK",
  "BizId" : "900619746936498440^0"
}

错误码

访问错误中心查看更多错误码。

说明 旧版API已不做更新,API文档请参考本文,如需参考旧版,请参见API参考