Bird SMS
推动对话
向前发展的 SMS。
发送人们需要的更新,发起他们想要的营销活动,并在他们回复时保持对话。Bird 将 SMS 发送、受众、内容和投递报告整合在一起,为你的应用程序提供 API,为你的团队提供工作区。
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
const message = await bird.sms.send({
from: "Bird",
to: "+31612345678",
text: "Your order #4821 has shipped. Track it: bird.ly/t/4821x",
category: "transactional",
});
console.log(message.id);
// → "sms_01m11jw130e7svjzv70kgqr38w"
示例消息和 API 响应。
深受构建世界级软件团队的日常信赖
查看更多客户故事营销活动与群发
一个团队可以信赖的营销活动。
选择受众、编辑消息并共同审核发送。预览个性化内容和分段,确认发送者并安排活动时间。控制面板、API 和你的 AI 代理使用同一套群发生命周期。
让授权和目的紧贴内容。跟踪投递和回复,然后将业务衡量的操作关联到触发它们的营销活动。
Fieldnotes · 秋季上线
示例营销活动
一个明确理由,一个下一步。
营销活动
秋季上线
状态
待审核
示意性营销活动。浏览内容和上线审核;此预览不会发送任何消息。
从 npm install 到测试发送
用您熟悉的编程语言发送 SMS。
使用 Node.js、Python、Go 或 PHP 构建,或使用 CLI 和 HTTP API。相同的发送方、消息和投递记录贯穿你的集成。在发送给客户之前,按照发送指南进行受控测试。
const msg = await bird.sms.send({
from: "+15557654321",
to: "+14155550100",
text: "Your verification code is 123456.",
category: "authentication",
});
console.log(msg.id, msg.status);在向客户发送消息之前,请查看各目的地的发送方注册要求。按照SMS 发送指南从请求到投递结果完成全流程,然后使用SMS 事件和入站回复处理投递回执和发送到您号码的消息。
可靠 SMS 计划背后的控制机制。
准备发送方,控制目的地,了解投递结果。
- 01
目的地控制
选择你的工作区可以发送到的国家。在启用新目的地之前,检查发送方支持情况和注册要求。
- 02
运营商连接
Bird 管理运营商连接,并通过统一的消息记录公开报告的投递结果。
- 03
运营商级路由
路由根据目的地和运营商条件做出响应,投递结果可供你的应用程序使用。
- 04
双向 SMS 入站
符合条件的号码上的来信会生成已签名的工作区 webhook,供你的应用程序验证和处理。
- 05
各种类型的号码
选择长号码、免费电话号码、短号码或发送方 ID。可用性和注册取决于目的地。
- 06
A2P 10DLC 控制台内注册
品牌和活动注册在控制台中完成;状态可通过 API 查询。
- 07
发送前 MNP 查询
号码智能帮助识别收件人的网络并支持目的地路由。
- 08
退订和帮助关键词
识别到的 STOP 关键词会阻止该发送方向该订阅者继续发送消息。HELP 返回支持信息。请检查你所在国家支持哪些关键词。
- 09
以 webhook 形式接收送达回执
订阅 SMS 生命周期事件,并在投递需要调查时检查消息记录。
- 10
分段与 Unicode 安全
Bird 计算编码和计费分段。发送前使用分段计算器检查消息正文。
30
据 Airwallex 报告,两个月内完成上线的国家数量
客户故事
让下一个市场触手可及。
Airwallex 与 Bird 合作,解决各地合规要求并提升国际 SMS 送达率。团队报告称,平均国家上线时间从一个月甚至更长缩短至约七天。
阅读 Airwallex 案例SMS 是更大工具集中的一个渠道。通过 Verify 使用一次性验证码验证用户,发送前通过 Lookup 检查号码的线路类型和运营商,或通过 RCS 向同一台手机发送富卡片。
正在将 Bird 与现有方案进行比较?Bird vs Twilio SMS 对比将两者的发送调用、10DLC 接入方式以及各自为编码代理提供的功能逐一对照呈现。
在 API 响应后跟踪消息。
接收关于消息接受、提交以及已报告投递结果的签名事件。在接收端验证签名,并对 webhook 重试进行去重。
{
"type": "sms.delivered",
"timestamp": "2026-05-19T15:42:01.221Z",
"data": {
"sms_id": "sms_01m11jw130e7svjzv70kgqr38w",
"workspace_id": "ws_01m11jw130e7svjzv70kgqr38w",
"to": "+15005550006",
"from": "+12025550188",
"tags": [{ "name": "campaign", "value": "order_update" }],
"metadata": { "user_id": "usr_12345" },
"carrier": "Verizon",
"mcc_mnc": "311480",
"cost": {
"amount": null,
"currency_code": "USD",
"transaction_amount": null,
"passthrough_amount": null
}
}
}
Webhook 投递和 SMS 投递是两个独立的结果。Webhook 尝试失败不代表短信发送失败。使用 webhook 指南处理重试和重放,使用消息时间线查看 SMS 状态。
sms.accepted已被 API 接受并排队等待运营商交接。sms.sent已提交至目标运营商的 SMSC。sms.delivered已收到运营商的送达回执(DLR)。sms.rejected在处理或运营商提交期间被拒绝。检查错误以确定下一步操作。sms.undelivered尝试以可能可恢复的原因未能投递。这不会自动重新提交该 SMS。sms.failed终态失败:消息将不会被送达。
定价
关于发送 SMS 的常见问题
我可以选择发送方吗?
重试如何避免重复短信?
已接受是否意味着已投递?
批量发送和群发是一回事吗?
无需编写任何代码,即可发送第一个请求。
整个公开 API 以 Postman 集合形式提供,从生成 SDK 所用的同一份 OpenAPI 规范转换而来,每个端点都附带示例请求和响应。将它 Fork 到您自己的工作区,设置一个 API 密钥,即可发送实时请求。
付诸实践。
继续查阅此主题的文档、指南和示例。资源为英文。