# Bật ROOT ứng dụng

Cấp ROOT cho các package ứng dụng cụ thể trên một cloud phone.
- **Điều kiện tiên quyết**: cloud phone phải đang bật và không bị thành viên khác chiếm giữ. Hỗ trợ trên thiết bị tương thích; với các mẫu thiết bị khác, lệnh gọi thành công nhưng không có hiệu lực.
- **Tác động**: đẩy danh sách package được phép xuống thiết bị và, như một tác dụng kèm theo, bật công tắc ROOT. **MoreLogin không lưu gì cả**, nên không thể đọc lại quyền đã cấp qua API.
- **Hoàn tất**: dịch vụ thiết bị tiếp nhận đồng bộ. Thời điểm ROOT thực sự có hiệu lực trên thiết bị phụ thuộc vào hành vi của dịch vụ thiết bị; MoreLogin không khởi động lại cloud phone.
- **Lưu ý**: hiện chưa có endpoint nào để thu hồi ROOT cho từng package. Dùng `/cloudphone/enableRoot` để tắt công tắc toàn cục.

Các mã lỗi nghiệp vụ đã ghi nhận: `33300`, `33301`. Xem [Error Codes](../Getting%20Started/error-codes.md) để biết ý nghĩa từng mã. Mọi thao tác cũng có thể trả về các mã dùng chung.

Endpoint: POST /api/cloudphone/app/openRoot
Version: 2026-09-05

## Request fields (application/json):

  - `id` (string, required)
    ID điện thoại đám mây
    Example: 12345678

  - `packageNames` (array, required)
    Danh sách tên gói ứng dụng được phép truy cập ROOT
    Example: ["com.test"]

## Response 200:

  - `200` (unknown)
    Thành công. `data` là một giá trị boolean duy nhất.

## Response 200 fields (application/json):

  - `code` (integer)
    Mã phản hồi: 0 = thành công, >0 = lỗi

  - `data` (boolean)

  - `msg` (string | null)
    Thông báo; có giá trị khi code > 0

  - `requestId` (string)
    Định danh yêu cầu duy nhất; hãy cung cấp khi liên hệ hỗ trợ

