pachca-bots
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesepachca-bots
pachca-bots
Base URL:
Авторизация:
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
https://api.pachca.com/api/shared/v1Authorization: Bearer <ACCESS_TOKEN>基础URL:
授权方式:
令牌来源:机器人(自动化 → 集成 → API)或用户(自动化 → API)。
https://api.pachca.com/api/shared/v1Authorization: Bearer <ACCESS_TOKEN>Когда использовать
适用场景
- настроить бота
- вебхук
- webhook
- обработать событие
- подпись вебхука
- нажатие кнопки
- callback
- дайджест
- алерт
- polling
- unfurl
- развернуть ссылку
- link preview
- 配置机器人
- Webhook
- webhook
- 处理事件
- Webhook签名
- 按钮点击
- callback
- 摘要
- 告警
- polling
- unfurl
- 展开链接
- link preview
Когда НЕ использовать
不适用场景
- получить профиль, мой профиль, установить статус → pachca-profile
- найти сотрудника, создать пользователя, список сотрудников → pachca-users
- создать канал, создать беседу, создать чат → pachca-chats
- отправить сообщение, ответить в тред, прикрепить файл → pachca-messages
- показать форму, интерактивная форма, модальное окно → pachca-forms
- создать задачу, список задач, напоминание → pachca-tasks
- аудит, журнал событий, безопасность → pachca-security
- 获取个人资料、我的资料、设置状态 → pachca-profile
- 查找员工、创建用户、员工列表 → pachca-users
- 创建频道、创建群聊、创建聊天 → pachca-chats
- 发送消息、回复线程、附加文件 → pachca-messages
- 显示表单、交互式表单、模态窗口 → pachca-forms
- 创建任务、任务列表、提醒 → pachca-tasks
- 审计、事件日志、安全 → pachca-security
Пошаговые сценарии
分步场景教程
Настроить бота с исходящим вебхуком
配置带出站Webhook的机器人
- Создай бота в интерфейсе Пачки: Автоматизации → Интеграции → Webhook
- Получи бота во вкладке «API» настроек бота
access_token - Укажи Webhook URL для получения событий
- Выбери типы событий: новые сообщения, реакции, кнопки, участники
Бот создаётся через UI, не через API. Единственный эндпоинт для ботов — PUT /bots/{id} (обновление webhook URL). API используется для отправки сообщений от имени бота.
- 在Pachca界面中创建机器人:自动化 → 集成 → Webhook
- 在机器人设置的「API」标签页获取机器人的
access_token - 指定用于接收事件的Webhook URL
- 选择事件类型:新消息、反应、按钮、成员变动
机器人通过UI创建,而非API。机器人相关的唯一API端点是PUT /bots/{id}(更新webhook URL)。API用于以机器人名义发送消息。
Обработать входящий вебхук-событие
处理入站Webhook事件
- Получи POST-запрос на свой Webhook URL
- Проверь подпись (Signing secret) для безопасности
- Проверь — должен быть в пределах 1 минуты
webhook_timestamp - Разбери JSON: тип события, данные
- Для полной информации сделай запрос к API: GET /messages/{id} — особенно важно для получения вложений (), которых нет в вебхуке
files[]
Вебхук содержит минимум данных — файлы () в нём отсутствуют. Если сообщение может содержать вложения, всегда запрашивай GET /messages/{id}.files
- 在你的Webhook URL上接收POST请求
- 验证签名(Signing secret)以确保安全
- 验证— 必须在1分钟内
webhook_timestamp - 解析JSON:事件类型、数据
- 如需完整信息,调用API接口:GET /messages/{id} — 对于获取附件()尤为重要,因为Webhook中不包含附件信息
files[]
Webhook仅包含最少数据 — 其中没有文件()。如果消息可能包含附件,请务必调用GET /messages/{id}。files
Разворачивание ссылок (unfurling)
链接展开(unfurling)
- Создай специального Unfurl-бота и укажи отслеживаемые домены в его настройках
- При появлении ссылки бот получает вебхук с массивом
"event": "link_shared"(links+url) иdomainmessage_id - Извлеки данные из своей системы по URL из
links - Отправь POST /messages/{id}/link_previews с превью-данными
bash
curl "https://api.pachca.com/api/shared/v1/messages/56431/link_previews" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"link_previews":{"https://example.com/article":{"title":"Заголовок статьи","description":"Краткое описание","image_url":"https://example.com/img.png"}}}'Эндпоинт привязан к конкретному сообщению. Необходим специальный Unfurl-бот с указанными доменами.
- 创建专用的Unfurl机器人,并在其设置中指定要监控的域名
- 当出现链接时,机器人会收到的Webhook,其中包含
"event": "link_shared"数组(links+url)和domainmessage_id - 根据中的URL从你的系统中提取数据
links - 调用POST /messages/{id}/link_previews接口发送预览数据
bash
curl "https://api.pachca.com/api/shared/v1/messages/56431/link_previews" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"link_previews":{"https://example.com/article":{"title":"文章标题","description":"简短描述","image_url":"https://example.com/img.png"}}}'该端点绑定到特定消息。需要使用指定了域名的专用Unfurl机器人。
Обработать нажатие кнопки (callback)
处理按钮点击(callback)
- Получи вебхук с — в payload:
"event": "message_button_clicked"(из кнопки),data,user_idmessage_id - Выполни нужное действие (запись в БД, запрос к API и т.д.)
- Ответь пользователю: POST /messages с ,
"entity_type": "user"из вебхука"entity_id": user_id - Опционально: обнови исходное сообщение через PUT /messages/{id} — чтобы убрать кнопки передай , чтобы изменить текст — передай
"buttons": []"content"
Кнопка сотправляет событие на вебхук. Кнопка сdata— открывает ссылку (вебхука не будет).url
- 接收包含的Webhook — 负载中包含:
"event": "message_button_clicked"(来自按钮)、data、user_idmessage_id - 执行所需操作(写入数据库、调用API等)
- 回复用户:调用POST /messages接口,指定和Webhook中的
"entity_type": "user""entity_id": user_id - 可选操作:通过PUT /messages/{id}更新原消息 — 若要移除按钮,传递;若要修改文本,传递
"buttons": []"content"
带的按钮会向Webhook发送事件。带data的按钮会直接打开链接(不会触发Webhook)。url
Периодический дайджест/отчёт
定期摘要/报告
- По расписанию (cron/scheduler): собери данные из своей системы
- Сформируй текст сообщения с нужными метриками или сводкой
- POST /messages с нужного канала
"entity_id": chat_id
Нет встроенного планировщика — используй cron, celery, sidekiq и т.п. на своей стороне.
- 按计划(cron/调度器):从你的系统中收集数据
- 生成包含所需指标或摘要的消息文本
- 调用POST /messages接口,指定目标频道的
"entity_id": chat_id
平台无内置调度器 — 请在你的系统中使用cron、celery、sidekiq等工具。
Мониторинг и алерты
监控与告警
- Внешняя система (CI, мониторинг, сервис) обнаруживает событие (ошибка, деплой, порог метрики)
- Делает POST запрос к твоему боту или напрямую вызывает Pachca API
- POST /messages в канал алертов с описанием события и кнопками «Взять в работу» / «Игнорировать»
- При нажатии кнопки — обработай callback и обнови статус алерта
- 外部系统(CI、监控、服务)检测到事件(错误、部署、指标阈值触发)
- 向你的机器人发送POST请求,或直接调用Pachca API
- 向告警频道发送POST /messages请求,包含事件描述和「接手处理」/「忽略」按钮
- 点击按钮时 — 处理回调并更新告警状态
Обработка событий через историю (polling)
通过历史记录处理事件(polling)
- В настройках бота включи «Сохранять историю событий» (вкладка «Исходящий webhook»). Webhook URL указывать не обязательно.
- По расписанию или по запросу: GET /webhooks/events — получи накопленные события с пагинацией (,
limit)cursor - Обработай каждое событие (тот же формат payload, что и в real-time вебхуке)
- После обработки: DELETE /webhooks/events/{id} — удали событие, чтобы не обработать повторно
bash
curl "https://api.pachca.com/api/shared/v1/webhooks/events?limit=50" \
-H "Authorization: Bearer $TOKEN"Polling — альтернатива real-time вебхуку, если у бота нет публичного URL или нужна отложенная обработка. Подходит для batch-сценариев, скриптов, serverless-функций по расписанию.
- 在机器人设置中启用「保存事件历史」(「出站webhook」标签页)。无需指定Webhook URL。
- 按计划或按需调用:GET /webhooks/events — 获取带分页的累积事件(,
limit)cursor - 处理每个事件(负载格式与实时Webhook一致)
- 处理完成后:调用DELETE /webhooks/events/{id} — 删除事件,避免重复处理
bash
curl "https://api.pachca.com/api/shared/v1/webhooks/events?limit=50" \
-H "Authorization: Bearer $TOKEN"轮询是实时Webhook的替代方案,适用于机器人无公网URL或需要延迟处理的场景。适合批量场景、脚本、按计划运行的无服务器函数。
Обработка ошибок
错误处理
| Код | Причина | Что делать |
|---|---|---|
| 422 | Неверные параметры | Проверь обязательные поля, типы данных, допустимые значения enum |
| 429 | Rate limit | Подожди и повтори. Лимит: ~50 req/sec, сообщения ~4 req/sec |
| 403 | Нет доступа | Недостаточно скоупов ( |
| 404 | Не найдено | Неверный id. Проверь что сущность существует |
| 401 | Не авторизован | Проверь токен в заголовке Authorization |
| 代码 | 原因 | 处理方式 |
|---|---|---|
| 422 | 参数错误 | 检查必填字段、数据类型、枚举值的合法范围 |
| 429 | 请求频率超限 | 等待后重试。限制:约50请求/秒,消息类约4请求/秒 |
| 403 | 无权限 | 权限范围不足( |
| 404 | 未找到 | ID错误。检查实体是否存在 |
| 401 | 未授权 | 检查Authorization头中的令牌 |
Доступные операции
可用操作
Редактирование бота
编辑机器人
PUT /bots/{id}скоуп:bots:write
json
{
"bot": {
"webhook": {
"outgoing_url": "https://www.website.com/tasks/new"
}
}
}PUT /bots/{id}权限范围:bots:write
json
{
"bot": {
"webhook": {
"outgoing_url": "https://www.website.com/tasks/new"
}
}
}Unfurl (разворачивание ссылок)
链接展开(Unfurl)
POST /messages/{id}/link_previewsскоуп:link_previews:write
json
{
"link_previews": {}
}POST /messages/{id}/link_previews权限范围:link_previews:write
json
{
"link_previews": {}
}История событий
事件历史
GET /webhooks/eventsскоуп:webhooks:events:read
GET /webhooks/events权限范围:webhooks:events:read
Удаление события
删除事件
DELETE /webhooks/events/{id}скоуп:webhooks:events:delete
DELETE /webhooks/events/{id}权限范围:webhooks:events:delete
Ограничения и gotchas
限制与注意事项
- : максимум 50
limit - Пагинация: cursor-based (limit + cursor), НЕ page-based
- : 最大为50
limit - 分页方式:基于cursor(limit + cursor),而非基于页码
Подробнее
更多详情
см. references/endpoints.md
请查看 references/endpoints.md