短信发送接口2.0
用户通过HTTP的POST方式提交短信发送请求。采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/api/v2/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace9
206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
signId String 可选 123456 平台上申请的接口短信签名Id(须审核通过)
注:signId和sign选择其一,不可全为空值
sign String 可选 【测试签名】 平台上申请的接口短信签名(须审核通过)
templateId String 可选 123456 平台上申请的接口短信模板Id(须审核通过)
注:如果templateId不填写,则content字段必须是完整短信内容,发送后会进入人工审核
mobile String 可选 13900000000,13900000001 接收短信的手机号码,多个号码以半角逗号,隔开
content String 可选 先生##9:40##快递公司##1234567
(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4})
发送的短信内容是模板变量内容,多个变量中间用##或者$$隔开,采用utf8编码
data json字符串 可选 {"13700000001":"女士##10:10##物流公司##000000","13700000000":"先生##9:40##快递公司##1234567"} 该字段用于发送个性短信,mobile和content字段不需要填写,该字段json字符串,json的key是手机号,value是短信内容变量,等同于上面的content 包含多个变量中间用##或者$$隔开,采用utf8编码
scheduleSendTime String 可选 2016-01-01 18:00:00 短信定时发送时间,格式为:2016-01-01 18:00:00;参数如果为空表示立即发送
请求示例
  
/* ---示例代码----*/ package apiserver; import java.net.URLEncoder; import java.security.MessageDigest; import java.util.Random; import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.httpclient.params.HttpMethodParams; import com.alibaba.fastjson.JSONObject; public class ApiTest { //普通短信 private void sendsms() throws Exception { HttpClient httpClient = new HttpClient(); PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/api/v2/send"); postMethod.getParams().setContentCharset("UTF-8"); postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler()); String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥 String random = random(10); //随机字符串 String timestamp = ""+System.currentTimeMillis(); //当前时间戳 String token = MD5(accessScrect+random+timestamp); //计算token NameValuePair[] data = { new NameValuePair("token", token), new NameValuePair("accesskey", accesskey), new NameValuePair("timestamp", timestamp), new NameValuePair("random", random), new NameValuePair("signId", "123"), new NameValuePair("templateId", "100"), new NameValuePair("mobile", "13900000001,13900000002"), new NameValuePair("content", URLEncoder.encode("先生##9:40##快递公司##1234567", "utf-8"))//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4}) }; postMethod.setRequestBody(data); int statusCode = httpClient.executeMethod(postMethod); System.out.println("statusCode: " + statusCode + ", body: " + postMethod.getResponseBodyAsString()); } //个性短信 private void sendsms2() throws Exception { HttpClient httpClient = new HttpClient(); PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/api/v2/send"); postMethod.getParams().setContentCharset("UTF-8"); postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler()); String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥 String random = random(10); //随机字符串 String timestamp = ""+System.currentTimeMillis(); //当前时间戳 String token = MD5(accessScrect+random+timestamp); //计算token //组装个性短信内容 JSONObject jsonObj = new JSONObject(); jsonObj.put("13700000000","先生##9:40##快递公司##1234567"); jsonObj.put("13700000001","女士##10:10##物流公司##000000");//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4}) NameValuePair[] data = { new NameValuePair("token", token), new NameValuePair("accesskey", accesskey), new NameValuePair("timestamp", timestamp), new NameValuePair("random", random), new NameValuePair("signId", "123"), new NameValuePair("templateId", "100"), new NameValuePair("data", URLEncoder.encode(jsonObj.toString(), "utf-8")) }; postMethod.setRequestBody(data); int statusCode = httpClient.executeMethod(postMethod); System.out.println("statusCode: " + statusCode + ", body: " + postMethod.getResponseBodyAsString()); } public static void main(String[] args) throws Exception { ApiTest t = new ApiTest(); // //普通短信 // t.sendsms(); //个性短信 t.sendsms2(); } //生成MD5加密算法 public static String MD5(String value) throws Exception { StringBuffer md5StrBuff = new StringBuffer(); MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update(value.getBytes("UTF-8")); byte[] result = md5.digest(); for (int i = 0; i < result.length; i++) { if (Integer.toHexString(0xFF & result[i]).length() == 1) { md5StrBuff.append("0").append(Integer.toHexString(0xFF & result[i])); } else { md5StrBuff.append(Integer.toHexString(0xFF & result[i])); } } return md5StrBuff.toString(); } private static final char[] cs = new char[] { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; //生成随机字符串 public static String random(int length) { StringBuilder token = new StringBuilder(); Random random = new Random(); for (int i = 0; i < length; i++) { token.append(cs[random.nextInt(cs.length - 1)]); } return token.toString(); } }
/* ---示例代码----*/
JAVA格式
响应示例
                    
{
    code: "0",
    msg: "SUCCESS",
    batchId:""
}
                    
                
JSON格式:code如果为0表示请求成功,非0表示请求失败,参考错误码列表查看具体失败原因; batchId为批次id,如果单次提交的是一个手机号,batchId默认为手机号
国际短信发送接口
用户通过HTTP的POST方式提交短信发送请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/intl/api/v2/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace9
206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
signId String 可选 123456 平台上申请的国际短信签名Id(须审核通过)
sign String 可选 【测试签名】 平台上申请的国际短信签名(须审核通过)
注,signId和sign选择其一,不可全为空值
templateId String 可选 123456 平台上申请的国际短信模板Id(须审核通过)
注:如果templateId不填写,则content字段必须是完整短信内容,发送后会进入人工审核
mobile String 可选 8613900000000,8613900000001 接收短信的手机号码,多个号码以半角逗号,隔开
content String 可选 先生##9:40##快递公司##1234567
(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4})
发送的短信内容是模板变量内容,多个变量中间用##或者$$隔开,采用utf8编码
data json字符串 可选 {"13700000001":"女士##10:10##物流公司##000000","13700000000":"先生##9:40##快递公司##1234567"} 该字段用于发送个性短信,mobile和content字段不需要填写,该字段json字符串,json的key是手机号,value是短信内容变量,等同于上面的content 包含多个变量中间用##或者$$隔开,采用utf8编码
scheduleSendTime String 可选 2016-01-01 18:00:00 短信定时发送时间,格式为:2016-01-01 18:00:00;参数如果为空表示立即发送
请求示例
  
/* ---示例代码----*/ package apiserver; import java.net.URLEncoder; import java.security.MessageDigest; import java.util.Random; import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.httpclient.params.HttpMethodParams; import com.alibaba.fastjson.JSONObject; public class ApiTest { //普通短信 private void sendsms() throws Exception { HttpClient httpClient = new HttpClient(); PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/intl/api/v2/send"); postMethod.getParams().setContentCharset("UTF-8"); postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler()); String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥 String random = random(10); //随机字符串 String timestamp = ""+System.currentTimeMillis(); //当前时间戳 String token = MD5(accessScrect+random+timestamp); //计算token NameValuePair[] data = { new NameValuePair("token", token), new NameValuePair("accesskey", accesskey), new NameValuePair("timestamp", timestamp), new NameValuePair("random", random), new NameValuePair("signId", "123"), new NameValuePair("templateId", "100"), new NameValuePair("mobile", "8613900000001,8613900000002"), new NameValuePair("content", URLEncoder.encode("先生##9:40##快递公司##1234567", "utf-8"))//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4}) }; postMethod.setRequestBody(data); int statusCode = httpClient.executeMethod(postMethod); System.out.println("statusCode: " + statusCode + ", body: " + postMethod.getResponseBodyAsString()); } //个性短信 private void sendsms2() throws Exception { HttpClient httpClient = new HttpClient(); PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/api/v2/send"); postMethod.getParams().setContentCharset("UTF-8"); postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler()); String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥 String random = random(10); //随机字符串 String timestamp = ""+System.currentTimeMillis(); //当前时间戳 String token = MD5(accessScrect+random+timestamp); //计算token //组装个性短信内容 JSONObject jsonObj = new JSONObject(); jsonObj.put("8613700000000","先生##9:40##快递公司##1234567"); jsonObj.put("8613700000001","女士##10:10##物流公司##000000");//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4}) NameValuePair[] data = { new NameValuePair("token", token), new NameValuePair("accesskey", accesskey), new NameValuePair("timestamp", timestamp), new NameValuePair("random", random), new NameValuePair("signId", "123"), new NameValuePair("templateId", "100"), new NameValuePair("data", URLEncoder.encode(jsonObj.toString(), "utf-8")) }; postMethod.setRequestBody(data); int statusCode = httpClient.executeMethod(postMethod); System.out.println("statusCode: " + statusCode + ", body: " + postMethod.getResponseBodyAsString()); } public static void main(String[] args) throws Exception { ApiTest t = new ApiTest(); // //普通短信 // t.sendsms(); //个性短信 t.sendsms2(); } //生成MD5加密算法 public static String MD5(String value) throws Exception { StringBuffer md5StrBuff = new StringBuffer(); MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update(value.getBytes("UTF-8")); byte[] result = md5.digest(); for (int i = 0; i < result.length; i++) { if (Integer.toHexString(0xFF & result[i]).length() == 1) { md5StrBuff.append("0").append(Integer.toHexString(0xFF & result[i])); } else { md5StrBuff.append(Integer.toHexString(0xFF & result[i])); } } return md5StrBuff.toString(); } private static final char[] cs = new char[] { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' }; //生成随机字符串 public static String random(int length) { StringBuilder token = new StringBuilder(); Random random = new Random(); for (int i = 0; i < length; i++) { token.append(cs[random.nextInt(cs.length - 1)]); } return token.toString(); } }
/* ---示例代码----*/
JAVA格式
响应示例
                    
{
    code: "0",
    msg: "SUCCESS",
    batchId:""
}
                    
                
JSON格式:code如果为0表示请求成功,非0表示请求失败,参考错误码列表查看具体失败原因; batchId为批次id,如果单次提交的是一个手机号,batchId默认为手机号
语音验证码发送接口
用户通过HTTP的POST方式提交语音验证码发送请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/voice/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
mobile String 必须 13900000001 接收语音短信的手机号码,多个号码以半角逗号,隔开
voiceCode String 必须 123456 语音数字,4~8位数字
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/voice/send");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y04tzr3IzVYALelt"; //用户开发key
String accessScrect = "TKRLnBJu5tKcKhrqRPpuuQgmeyttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random),
        new NameValuePair("mobile", "13900000001"),
        new NameValuePair("voiceCode", "123456"),
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
国际语音验证码发送接口
用户通过HTTP的POST方式提交国际语音验证码发送请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/intl/voice/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
mobile String 必须 13900000001 接收语音短信的手机号码,多个号码以半角逗号,隔开
voiceCode String 必须 123456 语音数字,4~8位数字
lang String 可选 zh 语言类型,zh为中文,en为英文,只支持中英文
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/intl/voice/send");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y04tzr3IzVYALelt"; //用户开发key
String accessScrect = "TKRLnBJu5tKcKhrqRPpuuQgmeyttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random),
        new NameValuePair("mobile", "13900000001"),
        new NameValuePair("voiceCode", "123456"),
        new NameValuePair("lang", "zh"),
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
语音通知发送接口
用户通过HTTP的POST方式提交语音通知发送请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/noticevoice/api/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
templateId String 可选 123456 平台上申请的接口短信模板Id(须审核通过)
注:如果templateId不填写,则content字段必须是完整短信内容,发送后会进入人工审核
mobile String 可选 13900000000,13900000001 接收短信的手机号码,多个号码以半角逗号,隔开
content String 可选 先生##9:40##快递公司##1234567
(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4})
发送的短信内容是模板变量内容,多个变量中间用##或者$$隔开,采用utf8编码
data json字符串 可选 {"13700000001":"女士##10:10##物流公司##000000","13700000000":"先生##9:40##快递公司##1234567"} 该字段用于发送个性短信,mobile和content字段不需要填写,该字段json字符串,json的key是手机号,value是短信内容变量,等同于上面的content 包含多个变量中间用##或者$$隔开,采用utf8编码
scheduleSendTime String 可选 2016-01-01 18:00:00 短信定时发送时间,格式为:2016-01-01 18:00:00;参数如果为空表示立即发送
请求示例
/* ---示例代码----*/
                
    //普通短信通知
    private void sendsms() throws Exception {
        HttpClient httpClient = new HttpClient();
        PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/noticevoice/api/send");
        postMethod.getParams().setContentCharset("UTF-8");
        postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler());
        String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key
        String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥
        String random = random(10); //随机字符串
        String timestamp = ""+System.currentTimeMillis(); //当前时间戳
        String token = MD5(accessScrect+random+timestamp); //计算token
        NameValuePair[] data = {
                new NameValuePair("token", token),
                new NameValuePair("accesskey", accesskey),
                new NameValuePair("timestamp", timestamp),
                new NameValuePair("random", random),
                new NameValuePair("templateId", "100"),
                new NameValuePair("mobile", "13900000001,13900000002"),
                new NameValuePair("content", URLEncoder.encode("先生##9:40##快递公司##1234567", "utf-8"))//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4})
        };
        postMethod.setRequestBody(data);
        int statusCode = httpClient.executeMethod(postMethod);
        System.out.println("statusCode: " + statusCode + ", body: "
                    + postMethod.getResponseBodyAsString());
    }
    //个性短信通知
    private void sendsms2() throws Exception {
        HttpClient httpClient = new HttpClient();
        PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/noticevoice/api/send");
        postMethod.getParams().setContentCharset("UTF-8");
        postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,new DefaultHttpMethodRetryHandler());
        String accesskey = "y0r3Ize4tzltVYAL"; //用户开发key
        String accessScrect = "TKRLnRPpuuQgmKcKhrqttB7sweyBJu5t"; //用户开发秘钥
        String random = random(10); //随机字符串
        String timestamp = ""+System.currentTimeMillis(); //当前时间戳
        String token = MD5(accessScrect+random+timestamp); //计算token
        //组装个性短信内容
        JSONObject jsonObj = new JSONObject();
        jsonObj.put("13700000000","先生##9:40##快递公司##1234567");
        jsonObj.put("13700000001","女士##10:10##物流公司##000000");//(示例模板:{1}您好,您的订单于{2}已通过{3}发货,运单号{4})

        NameValuePair[] data = {
                new NameValuePair("token", token),
                new NameValuePair("accesskey", accesskey),
                new NameValuePair("timestamp", timestamp),
                new NameValuePair("random", random),
                new NameValuePair("templateId", "100"),
                new NameValuePair("data", URLEncoder.encode(jsonObj.toString(), "utf-8"))
        };
        postMethod.setRequestBody(data);
        int statusCode = httpClient.executeMethod(postMethod);
        System.out.println("statusCode: " + statusCode + ", body: "
                    + postMethod.getResponseBodyAsString());
    }
                
                    
/* ---示例代码----*/
JAVA格式
私密通话发送接口
用户通过HTTP的POST方式提交私密通话发送请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/secrettalk/send
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
mobile String 必须 13900000001 主叫手机号码
mobileCalled String 必须 13900000002 被叫手机号码
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/secrettalk/send");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y04tzr3IzVYALelt"; //用户开发key
String accessScrect = "TKRLnBJu5tKcKhrqRPpuuQgmeyttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random),
        new NameValuePair("mobile", "13900000001"),
        new NameValuePair("mobileCalled", "13900000002"),
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
上行短信推送接口
平台通过HTTP的POST方式提交上行短信数据到用户的接收地址。编码采用UTF-8编码。
上行短信数据格式
{"mobile":"", "content":"", "receiveTime":""}
JSON格式:mobile是发送上行短信的用户手机号;content是上行短信内容;receiveTime是发送上行短信的时间
短信状态推送接口
平台通过HTTP的POST方式提交短信发送状态数据到用户的接收地址。编码采用UTF-8编码。
短信发送状态数据格式
{"smUuid":"","deliverTime":"","deliverResult":"","mobile":"","batchId":""}
JSON格式:smUuid是短信唯一标识;deliverResult是短信发送的状态结果,DELIVED表示发送成功,其他表示失败;deliverTime是状态报告回执的时间 mobile是接收短信的手机号,batchId是批次id
短信余额条数查询接口
用户通过HTTP的POST方式提交短信状态查询请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/query/account
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
请求示例
/* ---示例代码----*/
                    
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/query/account");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y0r3IzVYALe4tzlt"; //用户开发key
String accessScrect = "TKRLnRPpuuQgmeyBJu5tKcKhrqttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random)
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
响应示例
{"code":"0","msg":"SUCCESS","data":{"1":9983,"2":9998}}
JSON格式:code如果为0表示请求成功,非0表示请求失败,参考错误码列表查看具体失败原因
短信模板查询接口
用户通过HTTP的POST方式提交短信状态查询请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/query/templatelist
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/query/templatelist");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y0r3IzVYALe4tzlt"; //用户开发key
String accessScrect = "TKRLnRPpuuQgmeyBJu5tKcKhrqttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random)
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
响应示例
                    
                    {
    "code": "0",
    "msg": "SUCCESS",
    "data": {
        "1": [
            {
                "template": "{1}你好:您的订单已经出库,请注意查收",
                "customerId": 10000,
                "applyStatus": 2,
                "categoryId": 2
            },
            {
                "template": "你的验证码是:{1}",
                "customerId": 10000,
                "applyStatus": 2,
                "categoryId": 1
            }
        ],
        "2": [
            {
                "template": "{1}你好:您的订单已经出库,请注意查收",
                "customerId": 10000,
                "applyStatus": 2,
                "categoryId": 2
            },
            {
                "template": "你的验证码是:{1}",
                "customerId": 10000,
                "applyStatus": 2,
                "categoryId": 1
            }
        ]
    }
}
                  
短信签名查询接口
用户通过HTTP的POST方式提交短信状态查询请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/query/signlist
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/query/signlist");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y0r3IzVYALe4tzlt"; //用户开发key
String accessScrect = "TKRLnRPpuuQgmeyBJu5tKcKhrqttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random)
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
响应示例
                    
                {
    "code": "0",
    "msg": "SUCCESS",
    "data": {
        "1": [
            {
                "extNo": "000005",
                "exemptFlag": 2,
                "customerId": 10000,
                "sign": "【创瑞测试】",
                "applyStatus": 2
            }
        ],
        "2": [
            {
                "extNo": "000006",
                "customerId": 10000,
                "sign": "【创瑞测试】",
                "applyStatus": 2
            }
        ]
    }
} 
短信状态查询接口
用户通过HTTP的POST方式提交短信状态查询请求。编码采用UTF-8编码。
请求地址
环境 HTTP请求地址
正式环境 http://api.1cloudsp.com/query/sms
请求参数
名称 类型 是否必须 示例值 描述
token String 必须 0b83811fb2db238ea1ace
9206d431db0
MD5(AccessSecret + random + timestamp)通过MD5消息摘要算法计算的结果,AccessSecret是平台分配给用户的开发秘钥,random是本次请求携带的随机串,timestamp是本次请求携带的当前时间戳
accesskey String 必须 y0r3Ize4tzltVYAL 平台分配给用户的开发Key,登录系统首页可通过"开发key"功能获取
timestamp String 必须 1465227303037 发送请求时的系统时间戳,参入token的计算
random String 必须 23rfsdf332 发送请求时产生的随机串,参入token的计算
smuuid String 必须 f3e5aeab9bda27f420a443868eff7000fh81fk,
f3e5aeab9bda27f420a443868eff7000fh81fk
smuuid唯一标识一条短信,查询多条短信的状态可以用半角逗号,对smuuid进行分割
请求示例
/* ---示例代码----*/
                
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod("http://api.1cloudsp.com/query/sms");
postMethod.getParams().setContentCharset("UTF-8");
postMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
String accesskey = "y04tzr3IzVYALelt"; //用户开发key
String accessScrect = "TKRLnBJu5tKcKhrqRPpuuQgmeyttB7sw"; //用户开发秘钥
String random = RandomStringUtils.random(10); //随机字符串
String timestamp = ""+System.currentTimeMillis(); //当前时间戳
String token = this.MD5(accessScrect+random+timestamp); //计算token
NameValuePair[] data = {
        new NameValuePair("token", token),
        new NameValuePair("accesskey", accesskey),
        new NameValuePair("timestamp", timestamp),
        new NameValuePair("random", random),
        new NameValuePair("smuuid", "eda232a5e46eb447846ac2fa300d54a7nm1w4t") //短信的uuid
};
postMethod.setRequestBody(data);
int statusCode = httpClient.executeMethod(postMethod);
System.out.println("statusCode: " + statusCode + ", body: "
        + postMethod.getResponseBodyAsString());
                    
/* ---示例代码----*/
JAVA格式
响应示例
                    
                        {
                        code: "0",
                        msg: "SUCCESS",
                        report: [
                            {
                                smuuid: "f3e5aeab9bda27f420a443868eff7000fh81fk",
                                mobile: "13900000001",
                                sendTime: "2016-01-01 18:00:00",
                                sendResult: "0",
                                recvTime: "2016-01-01 18:00:00",
                                recvResult: "DELIVER"
                            },
                            {
                                smuuid: "0b83811fb2db238ea1ace9206d431db08hkkvn",
                                mobile: "13900000002",
                                sendTime: "2016-01-01 18:00:00",
                                sendResult: "0",
                                recvTime: "2016-01-01 18:00:00",
                                recvResult: "DELIVER"
                            }
                        ]
                    }
                    
                
JSON格式:code如果为0表示请求成功,非0表示请求失败,参考错误码列表查看具体失败原因;
错误码列表
错误码 错误描述
9001 签名格式不正确
9002 参数未赋值
9003 手机号码格式不正确
9004 请求已经失效
9005 token验证不正确
9006 用户accessKey不正确
9007 IP白名单限制
9008 短信类别不正确
9009 短信内容参数不正确
9010 用户短信余额不足
9011 用户帐户异常
9012 日期时间格式不正确
9013 不合法的语音验证码,4~8位的数字
9014 超出了最大手机号数量
9015 不支持的国家短信
9016 无效的签名或者签名ID
9017 无效的模板ID
9018 单个变量限制为1-20个字
9019 内容不可以为空
9020 主叫和被叫号码不能相同

注 册

请仔细填写您的信息:

请输入密码:

返回顶部