REST API và token

Ngoài trình tạo giao diện, GetMyBot cũng mở lập trình: dữ liệu bot có thể quản lý qua REST API. Có hai loại token — để truy cập vào một bot cụ thểcá nhân (để tự động hóa và tích hợp ở cấp tài khoản).

API token của bot

Được tạo trong Cài đặt → API token. Mỗi token được gắn với bot và cho phép truy cập các endpoint REST của nó (phản ứng, người dùng, bộ sưu tập, thống kê, v.v.). Token chỉ hiển thị một lần khi tạo — hãy lưu ở nơi an toàn; danh sách hiển thị tên, mask và ngày tạo. Hãy xóa các token không cần thiết.

Token truy cập cá nhân (PAT)

Token truy cập cá nhân (PAT, bắt đầu bằng mbp_) hoạt động ở cấp tài khoản và được dùng để tự động hóa và tích hợp. Được tạo trong trang cá nhân; truyền trong header Authorization: Bearer mbp_…. Token có phạm vi truy cập (scopes) — tập hợp quyền theo dạng resource:action (ví dụ: reactions:read, bots:write), còn * có nghĩa là toàn quyền truy cập. Thời hạn có thể giới hạn, còn bản thân token được lưu ở dạng hash. Đây là cách thuận tiện để cấp quyền truy cập hạn chế cho script mà không cần cung cấp mật khẩu.

Những gì có thể truy cập qua API

Thông qua API có thể truy cập các thực thể tương tự trong giao diện: bot và cài đặt của chúng, phản ứng (bao gồm import/export), người đăng ký và nhãn, bộ sưu tập và bản ghi, thống kê và nhật ký yêu cầu, các phát đi. Điều này cho phép xây dựng bảng điều khiển, đồng bộ hóa và tự động hóa riêng trên nền GetMyBot.

Kênh và WhatsApp

GetMyBot là đa kênh (Telegram + WhatsApp + VK), và các kênh của một bot cũng được quản lý qua REST. Kênh và template WhatsApp được kiểm soát bởi scope dùng chung bots:read / bots:write — không có scope kênh riêng.

  • GET /api/channels/capabilities — ma trận khả năng của kênh (endpoint phiên, không yêu cầu scope PAT).
  • GET /api/bots/{botID}/channels (bots:read) — liệt kê các kênh của một bot.
  • POST /api/bots/{botID}/channels (bots:write) — kết nối một kênh WhatsApp hoặc VK.
  • DELETE /api/bots/{botID}/channels/{channelID} (bots:write) — ngắt kết nối một kênh.
  • GET /api/bots/{botID}/channels/{channelID}/templates (bots:read) — danh mục template WhatsApp của kênh.
  • POST /api/bots/{botID}/channels/{channelID}/templates (bots:write) — tạo một template và gửi tới Meta để kiểm duyệt.
  • POST /api/bots/{botID}/channels/{channelID}/templates/sync (bots:write) — đồng bộ lại danh mục với Meta.
  • PUT /api/bots/{botID}/channels/{channelID}/templates/{templateID} (bots:write) — chỉnh sửa một template.
  • DELETE /api/bots/{botID}/channels/{channelID}/templates/{templateID} (bots:write) — xóa một template.
  • POST /api/bots/{botID}/channels/{channelID}/templates/media (bots:write) — tải lên một mẫu media header (hình ảnh/video/tài liệu).

Schema yêu cầu/phản hồi, tham số và ví dụ có trong Tài liệu tham khảo API.

Truy cập di động

Nền tảng có ứng dụng di động với xác thực riêng (access- và refresh-token) và bảng tổng quan theo bot — sử dụng cùng backend.

Tài liệu tham khảo API

Tài liệu tham khảo tương tác đầy đủ về API công khai có sẵn trên trang Tài liệu tham khảo API: liệt kê tất cả endpoint có thể truy cập qua PAT, tham số, schema yêu cầu và phản hồi, scopes cần thiết và ví dụ yêu cầu sẵn sàng (curl, JavaScript, Python). Bạn có thể thực hiện yêu cầu thử nghiệm với token của mình ngay từ trang đó.

Bảo mật

  • Token chỉ hiển thị một lần; hãy lưu chúng như bí mật.
  • Bí mật của bot và thông tin xác thực được lưu ở dạng mã hóa.
  • Các thay đổi được ghi vào nhật ký kiểm tra.

Tiếp theo