面向开发者和 AI
从一个请求开始。
面向 WhatsApp、Telegram 和 MAX 普通账号的统一 HTTP API。公开文档说明 API 约定;只有使用您自己的密钥才能获取您的账号列表。
1. 创建账号和连接
使用邮箱注册,通过邮件验证地址,然后登录 控制台。选择即时通讯平台,并使用该平台支持的二维码或手机号方式登录。Telegram 需要您自己的 application API credentials。其他可能需要的登录步骤会在控制台中显示。
2. 创建 API 密钥
在“个人资料 → API 密钥”中为项目创建独立密钥。默认允许读取;发送消息及其他修改操作需要 write 权限。密钥值仅显示一次。请将其保存在后端机密配置中,不要放在浏览器、Git 或 AI 提示词中。
3. 获取连接和完整命令目录
curl 'https://api-senden.ru/api/v1/integrations/manifest' \
--header 'Authorization: Bearer YOUR_API_KEY'响应包含 instances, connectedMessengers, commands 和 permissions. Подключения относятся только к вашему пространству, архивные исключены явно. Для отправки выберите аккаунт со state: connected.
4. 选择聊天、发送并检查结果
通过以下接口获取真实聊天 ID: GET /api/v1/instances/{id}/chats。发送文字和文件使用 POST /api/v1/instances/{id}/messages 并使用一个固定的 Idempotency-Key。202 响应表示进入队列,不代表送达。可通过历史、SSE、webhook 和通知队列获取状态及入站消息。具体传输功能见下文。
对于 MAX,contacts.lookup 当前返回的是用户 ID,不能自动将其视为私聊 ID。请使用聊天列表中的 ID 作为目标。如果首次发送的结果尚不明确,不要换用新密钥再次发送。
事件与 webhook 安全
使用 webhook 时,请验证 HMAC 签名,并以幂等方式处理事件。端点必须是公开的 HTTPS 地址;本地和私有网络会被阻止。SSE 用于提供事件流;从队列获取通知会创建 lease,并且需要 write 权限,之后还须通过 ack 确认。完整参数和请求格式见 OpenAPI。
可直接使用的资料
不含密钥、二维码、会话或用户数据。运行客户端时只执行 discovery 请求。
完整目录:70 个 HTTP 命令
这是统一的 API 命令目录;各原生命令的支持情况以及是否需要活动连接会单独注明。/methods 目录仅包含原生命令子集。
| 方法与路径 | 用途 | 支持情况 | 权限 |
|---|---|---|---|
GET/api/v1/health | 进程健康检查 | whatsapp, telegram, max | read |
GET/api/v1/status | 连接与状态 | whatsapp, telegram, max | read |
POST/api/v1/instances | 创建连接 | whatsapp, telegram, max | write |
GET/api/v1/instances | 获取活动或已归档的连接 | whatsapp, telegram, max | read |
DELETE/api/v1/instances/{id} | 停止并归档连接,同时保留历史记录和会话 | whatsapp, telegram, max | write |
PATCH/api/v1/instances/{id} | 重命名连接 | whatsapp, telegram, max | write |
GET/api/v1/instances/{id} | 连接状态 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/restore | 在限制范围内从归档恢复,不自动建立连接 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/connect | 开始登录 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/auth | 继续当前登录步骤 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/stop | 停止并保留会话 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/logout | 请求退出登录 | whatsapp, telegram, max | write |
GET/api/v1/instances/{id}/chats | 获取聊天列表 | whatsapp, telegram, max需要连接 | read |
GET/api/v1/instances/{id}/messages | 已保存的消息历史 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/messages | 将文本或文件加入队列 | whatsapp, telegram, max | writeIdempotency-Key |
POST/api/v1/instances/{id}/messages/from-url | 安全下载 HTTPS 文件并将文档加入队列 | whatsapp, telegram, max | writeIdempotency-Key |
GET/api/v1/instances/{id}/settings | 连接与事件设置 | whatsapp, telegram, max | read |
PUT/api/v1/instances/{id}/settings | 修改设置 | whatsapp, telegram, max | write |
GET/api/v1/instances/{id}/queue | 持久化消息队列 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/queue/clear | 取消所有 queued 消息 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/queue/{messageId}/cancel | 取消一条 queued 消息 | whatsapp, telegram, max | write |
POST/api/v1/instances/{id}/queue/{messageId}/retry | 仅重试已确认的 failed 错误操作 | whatsapp, telegram, max | write |
GET/api/v1/instances/{id}/notifications/stats | 待处理和已处理的通知数量 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/notifications/receive | 通过 lease 和等待获取通知 | whatsapp, telegram, max | write |
DELETE/api/v1/instances/{id}/notifications/{receiptId} | 确认当前回执已处理 | whatsapp, telegram, max | write |
GET/api/v1/instances/{id}/deliveries | webhook 投递结果 | whatsapp, telegram, max | read |
GET/api/v1/instances/{id}/deliveries/stats | webhook 任务计数 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/deliveries/clear | 取消待处理、重试中和 dead-letter webhook | whatsapp, telegram, max | write |
GET/api/v1/instances/{id}/deliveries/{jobId}/attempts | webhook 尝试日志 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/deliveries/{jobId}/retry | 重试 dead-letter 中的 webhook | whatsapp, telegram, max | write |
GET/api/v1/events | 带游标的事件 | whatsapp, telegram, max | read |
GET/api/v1/stream | SSE 事件流 | whatsapp, telegram, max | read |
POST/api/v1/files | 上传不超过 20 MB 的文件 | whatsapp, telegram, max | write |
GET/api/v1/files/{fileId} | 下载之前上传的本地文件 | whatsapp, telegram, max | read |
PUT/api/v1/config | 应用及网络连接设置 | whatsapp, telegram, max | write |
GET/api/v1/methods | 可用操作目录 | whatsapp, telegram, max | read |
GET/api/v1/integrations/manifest | 当前工作空间的连接、命令和可直接使用的集成文件,不含密钥或认证数据 | whatsapp, telegram, max | read |
GET/api/v1/integrations/files/{name} | 下载不含个人数据的集成模板或完整 ZIP 包 | whatsapp, telegram, max | read |
POST/api/v1/instances/{id}/operations/account.settings.get | 已连接账号的资料 | whatsapp, telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/contacts.list | 联系人列表 | whatsapp, telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/contacts.get | 联系人信息 | whatsapp, telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/contacts.lookup | 通过手机号或 ID 检查账号是否存在 | whatsapp, telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/contacts.create | 添加联系人 | telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/contacts.update | 编辑联系人 | telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/contacts.delete | 删除联系人 | telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/profile.avatar.get | 获取头像 | whatsapp需要连接 | read |
POST/api/v1/instances/{id}/operations/messages.history | 从即时通讯平台加载历史记录 | telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/messages.get | 从即时通讯平台获取消息 | telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/messages.read | 将消息标记为已读 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.delete | 删除消息 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.edit | 编辑消息文本 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.forward | 转发选中的消息 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.react | 修改消息回应 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.contact | 发送联系人名片 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.location | 发送位置 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/messages.poll | 发送投票 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/chats.typing | 显示正在输入指示 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/chats.archive | 归档聊天 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/chats.unarchive | 取消聊天归档 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/chats.expiration | 配置阅后即焚消息 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/chats.reactions | 获取可用的消息回应 | telegram需要连接 | read |
POST/api/v1/instances/{id}/operations/groups.get | 群组信息 | whatsapp, telegram, max需要连接 | read |
POST/api/v1/instances/{id}/operations/groups.create | 创建群组 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.rename | 重命名群组 | whatsapp, telegram需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.members.add | 添加成员 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.members.remove | 移除成员 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.admins.add | 指定群组管理员 | whatsapp需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.admins.remove | 撤销群组管理员权限 | whatsapp需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.leave | 退出群组 | whatsapp, telegram, max需要连接 | writeIdempotency-Key |
POST/api/v1/instances/{id}/operations/groups.settings | 修改一项群组权限 | whatsapp需要连接 | writeIdempotency-Key |
从构想到集成
连接您的第一个账号
创建账号、验证邮箱,然后从请求连接列表开始。