# Local API tương thích AdsPower

> Chạy script viết cho AdsPower Local API với Browlix trên cùng máy, kèm khoá API Browlix ở mọi lệnh gọi.

Nếu bạn có script viết cho AdsPower Local API, máy chạy Browlix worker có thể trả lời một phần API đó ngay trên máy. Mỗi lệnh gọi được dịch thành thao tác Browlix API v1 bằng chính khoá API Browlix của bạn, nên quyền, giới hạn, kiểm toán và chống trùng lệnh giống hệt API công khai.

## Bật

Trên web mở trang máy và bật API tương thích AdsPower, hoặc gọi `devices.adspower_api.set` với `enabled: true` và tuỳ chọn `port` (mặc định `50325`, đúng cổng mặc định của AdsPower).

## Lệnh gọi được hỗ trợ (manifest `adspower-8.9.23`)

| Lệnh gọi | Ghi chú |
|---|---|
| `GET /status` | Kiểm tra còn sống |
| `GET /api/v1/browser/start`, `POST /api/v2/browser-profile/start` | Chỉ báo thành công khi phiên Browlix đã sẵn sàng |
| `GET /api/v1/browser/stop`, `POST /api/v2/browser-profile/stop` | Chờ phiên đóng hẳn |
| `GET /api/v1/browser/active`, `GET /api/v1/browser/local-active`, `GET /api/v2/browser-profile/active` | Các phiên đang mở |
| `GET /api/v1/user/list`, `POST /api/v2/browser-profile/list` | Hồ sơ khoá thấy được |
| `GET /api/v1/group/list` | Nhóm hồ sơ |

Mọi lệnh khác — tạo, sửa, xoá hồ sơ, cookie, proxy, thẻ, chia sẻ — trả lời "không hỗ trợ"; hãy dùng Browlix API cho các việc đó.

## Khác với AdsPower

- Chỉ nghe trên `127.0.0.1`, từ chối `Host` lạ và yêu cầu gửi từ trang web.
- Bắt buộc khoá API Browlix ở mọi lệnh gọi `/api/*` (`Authorization: Bearer bxk_…`), kể cả trường hợp AdsPower bỏ qua.
- `ws.puppeteer` là URL trên chính listener này, chuyển tiếp tới broker có kiểm vé của phiên. Không bao giờ mở cổng DevTools, nên `ws.selenium`, `debug_port` và `webdriver` luôn trống.
- Id hồ sơ là id của Browlix.
