短信 API 文档

翼星科技短信平台 REST API,支持验证码、通知、营销短信。国内三网合一,5 秒送达,99%+ 到达率。

API 版本 v1   Base URL: https://api.esnlink.cn/v1

概述

所有接口采用 HTTPS POST,请求与响应均为 JSON 格式,字符编码 UTF-8。

环境地址
生产环境https://api.esnlink.cn/v1
沙箱环境https://sandbox.esnlink.cn/v1

鉴权方式

每次请求需携带以下公共参数:

参数类型说明
app_idstring控制台获取的应用 ID
timestampintUnix 时间戳(秒),误差不超过 300 秒
signstring签名,见下方算法

签名算法

sign = MD5(app_id + timestamp + app_secret)

app_secret 妥善保管,切勿写入前端代码或公开仓库。

发送短信

POST /sms/send

请求参数

参数类型必填说明
mobilestring手机号,多个用英文逗号分隔,最多 200 个
template_idstring已审核通过的模板 ID
paramsobject模板变量,如 {"code":"123456"}
sign_namestring短信签名,如【翼星科技】

响应示例

{
  "code": 0,
  "message": "success",
  "data": {
    "msg_id": "20260718120000123456",
    "count": 1
  }
}

状态回调

在控制台配置 callback_url 后,短信状态变更时向该地址 POST 推送:

{
  "msg_id": "20260718120000123456",
  "mobile": "13800138000",
  "status": "DELIVERED",
  "deliver_time": "2026-07-18 12:00:05"
}

状态值:SENT 已发送 · DELIVERED 已送达 · FAILED 失败

错误码

code说明
0成功
1001签名错误
1002时间戳过期
2001手机号格式错误
2002模板不存在或未审核
3001余额不足
5000系统繁忙,请重试

代码示例

cURL

curl -X POST https://api.esnlink.cn/v1/sms/send \
  -H "Content-Type: application/json" \
  -d '{
    "app_id": "your_app_id",
    "timestamp": 1721289600,
    "sign": "生成的MD5签名",
    "mobile": "13800138000",
    "template_id": "TPL_VERIFY_001",
    "sign_name": "翼星科技",
    "params": {"code": "123456"}
  }'

Python

import hashlib, time, requests

APP_ID = "your_app_id"
APP_SECRET = "your_app_secret"
ts = int(time.time())
sign = hashlib.md5(f"{APP_ID}{ts}{APP_SECRET}".encode()).hexdigest()

resp = requests.post("https://api.esnlink.cn/v1/sms/send", json={
    "app_id": APP_ID,
    "timestamp": ts,
    "sign": sign,
    "mobile": "13800138000",
    "template_id": "TPL_VERIFY_001",
    "sign_name": "翼星科技",
    "params": {"code": "123456"}
})
print(resp.json())

PHP

$appId = "your_app_id";
$secret = "your_app_secret";
$ts = time();
$sign = md5($appId . $ts . $secret);

$data = [
    "app_id" => $appId,
    "timestamp" => $ts,
    "sign" => $sign,
    "mobile" => "13800138000",
    "template_id" => "TPL_VERIFY_001",
    "sign_name" => "翼星科技",
    "params" => ["code" => "123456"]
];
$ch = curl_init("https://api.esnlink.cn/v1/sms/send");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Content-Type: application/json"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo curl_exec($ch);

常见问题

短信 API 如何鉴权?

使用 AppID + AppSecret 生成 MD5 签名,每次请求携带 sign、timestamp、app_id 参数。

验证码短信多久能到达?

国内三网短信通常 5 秒内到达,到达率 99%+。

是否支持状态回调?

支持。在控制台配置 callback_url,短信状态变更时 POST 推送回执。

准备好接入了?

免费试用 14 天,含 100 条测试短信额度

免费试用 了解短信平台

相关文档:文档中心 · 智能外呼 · 定价方案