通过 Sendly API(Node.js SDK 或 REST API)发送短信。支持单条消息、批量发送、定时发送、会话及沙箱测试。
使用 Sendly QQ快速启动发送短消息是一项面向实际任务的技能,主要用于所有请求都需要一个 Bearer 令牌;将 API 密钥用 SENDLY API KEY env var..sk testQQQ 密钥 – 沙盒模式保存( 没有发送真正的短消息, 没有信用值 ch)。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
import Sendly from "@sendly/node";
const sendly = new Sendly(process.env.SENDLY_API_KEY!);
const message = await sendly.messages.send({
to: "+15551234567",
text: "您的订单已发货!",
messageType: "transactional",
});
所有请求均需携带 Bearer Token。请将 API 密钥存入环境变量 SENDLY_API_KEY 中。
sk_test_* 开头的密钥 → 沙盒模式(不发送真实短信,不扣除信用额度)sk_live_* 开头的密钥 → 生产环境(仅向已验证号码发送真实短信)基础 URL: https://sendly.live/api/v1
curl -X POST https://sendly.live/api/v1/messages
-H "Authorization: Bearer $SENDLY_API_KEY"
-H "Content-Type: application/json"
-d '{"to": "+15551234567", "text": "Hello!", "messageType": "transactional"}'
必填字段: to(E.164 格式)、text、messageType(可选值:transactional 或 marketing)
可选字段: metadata(对象类型,最大 4KB)、from(发件人 ID)
{
"id": "msg_abc123",
"to": "+15551234567",
"text": "Hello!",
"status": "sent",
"segments": 1,
"creditsUsed": 2,
"createdAt": "2026-03-31T10:00:00Z"
}
curl -X POST https://sendly.live/api/v1/messages/schedule
-H "Authorization: Bearer $SENDLY_API_KEY"
-H "Content-Type: application/json"
-d '{"to": "+15551234567", "text": "Reminder!", "messageType": "transactional", "scheduledAt": "2026-04-01T14:00:00Z"}'
支持的定时窗口:未来 5 分钟至 5 天。
curl -X POST https://sendly.live/api/v1/messages/batch
-H "Authorization: Bearer $SENDLY_API_KEY"
-H "Content-Type: application/json"
-d '{"messages": [{"to": "+15551234567", "text": "Hello"}, {"to": "+15559876543", "text": "Hi"}], "messageType": "transactional"}'
单批次最多支持 10,000 个收件人。
curl "https://sendly.live/api/v1/messages?limit=50" -H "Authorization: Bearer $SENDLY_API_KEY"
支持参数:limit、offset、status、q(全文搜索)。
npm install @sendly/node
import Sendly from "@sendly/node";
const sendly = new Sendly(process.env.SENDLY_API_KEY!);
const msg = await sendly.messages.send({ to: "+15551234567", text: "Hello!", messageType: "transactional" });
const scheduled = await sendly.messages.schedule({ to: "+15551234567", text: "Later!", messageType: "transactional", scheduledAt: "2026-04-01T14:00:00Z" });
const batch = await sendly.messages.batch({ messages: [{to: "+15551234567", text: "Hi"}], messageType: "transactional" });
const list = await sendly.messages.list({ limit: 50 });
const single = await sendly.messages.get("msg_abc123");
将 marketing 类型误标为 transactional 类型,将违反《电话消费者保护法案》(TCPA)。
使用以 sk_test_* 开头的密钥,并配合以下魔术号码进行测试:
| 号码 | 行为 |
|---|---|
| +15005550000 | 始终成功 |
| +15005550001 | 返回无效号码错误 |
| +15005550002 | 返回无法路由错误 |
| +15005550006 | 运营商拒绝 |
短信将自动归入对应会话(Conversation)。如需支持双向通信,请使用 Conversations API:
const convos = await sendly.conversations.list({ status: "active", limit: 20 });
const replies = await sendly.conversations.suggestReplies("conv_abc123");
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章