# Tạo hồ sơ trình duyệt nâng cao

Endpoint: POST /api/env/create/advanced
Version: 1.0.0

## Request fields (application/json):

  - `browserTypeId` (integer, required)
    Browser type ID; 1=Chrome, 2=Firefox

  - `operatorSystemId` (integer, required)
    OS type ID; 1:Windows 2:macOS 3:Android 4:IOS 5:Linux

  - `isEncrypt` (integer)
    Whether to encrypt the profile; 0=No, 1=Yes

  - `startupParams` (array)
    Additional browser startup parameters

  - `accountInfo` (object)

  - `accountInfo.customerUrl` (string)
    URL nền tảng tùy chỉnh — bắt buộc nếu platformId=9999, phải là một URL hợp lệ.

  - `accountInfo.password` (string)
    Mật khẩu; độ dài tối đa: 50 ký tự

  - `accountInfo.platformId` (integer)
    Mã định danh nền tảng; sử dụng 9999 cho URL tùy chỉnh. Tham khảo /api/system/platform/list.

  - `accountInfo.siteId` (integer)
    Mã định danh trang web; lấy thông qua API "Lấy các nền tảng có thể cấu hình" (/api/system/platform/list)

  - `accountInfo.username` (string)
    Tên người dùng; độ dài tối đa: 64 ký tự

  - `advancedSetting` (object)
    Cấu hình nâng cao về dấu vân tay và hành vi trình duyệt.

  - `advancedSetting.ua` (string)
    Tùy chỉnh thông tin User-Agent (UA) của hồ sơ. Phải tuân theo định dạng UA chuẩn.
Có thể thực hiện thông qua API “Get Browser UA”.

  - `advancedSetting.time_zone` (object)

  - `advancedSetting.time_zone.switcher` (integer)
    Tùy chọn múi giờ. Mặc định: 1. 1 = Khớp địa chỉ IP, 2 = Tùy chỉnh.

  - `advancedSetting.time_zone.value` (string)
    Bắt buộc khi switcher=2.
ID múi giờ từ API “Lấy danh sách múi giờ và ngôn ngữ”.

  - `advancedSetting.web_rtc` (object)

  - `advancedSetting.web_rtc.switcher` (integer)
    Chính sách WebRTC. Mặc định: 2. 1 = Bảo mật, 2 = Thay thế, 3 = Thực, 4 = Vô hiệu hóa, 5 = Chuyển tiếp.

  - `advancedSetting.geo_location` (object)

  - `advancedSetting.geo_location.switcher` (integer)
    Chính sách định vị địa lý. Mặc định: 1. 1 = Yêu cầu xác nhận, 2 = Vô hiệu hóa.

  - `advancedSetting.geo_location.base_on_ip` (boolean)
    Tạo vị trí dựa trên địa chỉ IP? Mặc định: true. true = yêu cầu xác nhận, false = xác nhận thủ công.

  - `advancedSetting.geo_location.latitude` (number)
    Vĩ độ. Bắt buộc nếu base_on_ip=false.

  - `advancedSetting.geo_location.longitude` (number)
    Kinh độ. Bắt buộc nếu base_on_ip=false.

  - `advancedSetting.geo_location.accuracy` (number)
    Độ chính xác tính bằng mét. Bắt buộc nếu base_on_ip=false.

  - `advancedSetting.language` (object)

  - `advancedSetting.language.switcher` (integer)
    Chính sách ngôn ngữ. Mặc định: 1. 1 = Khớp IP, 2 = Tùy chỉnh.

  - `advancedSetting.language.value` (string)
    Bắt buộc khi switcher=2.
ID ngôn ngữ được phân tách bằng dấu phẩy từ API “Lấy danh sách múi giờ và ngôn ngữ”.

  - `advancedSetting.resolution` (object)

  - `advancedSetting.resolution.switcher` (integer)
    Chính sách độ phân giải. Mặc định: 1. 1 = Thực tế, 2 = Tùy chỉnh.

  - `advancedSetting.resolution.id` (string)
    Bắt buộc khi switcher=2.
ID độ phân giải từ API “Lấy danh sách độ phân giải”.

  - `advancedSetting.font` (object)

  - `advancedSetting.font.switcher` (integer)
    Chính sách phông chữ. Mặc định: 1. 1 = Phông chữ thật, 2 = Phông chữ tùy chỉnh.

  - `advancedSetting.font.value` (string)
    Tên phông chữ tùy chỉnh được phân tách bằng dấu phẩy (bắt buộc nếu switcher=2).

  - `advancedSetting.canvas` (object)

  - `advancedSetting.canvas.switcher` (integer)
    Chính sách Canvas. Mặc định: 1. 1 = Nhiễu, 2 = Thực.

  - `advancedSetting.webgl_image` (object)

  - `advancedSetting.webgl_image.switcher` (integer)
    Chính sách hình ảnh WebGL. Mặc định: 1. 1 = Nhiễu, 2 = Thực.

  - `advancedSetting.webgl_metadata` (object)

  - `advancedSetting.webgl_metadata.switcher` (integer)
    Chính sách siêu dữ liệu WebGL. Mặc định: 3. 1 = Thực, 2 = Tắt tăng tốc phần cứng, 3 = Tùy chỉnh.

  - `advancedSetting.webgl_metadata.provider` (string)
    Chuỗi nhà cung cấp WebGL (ví dụ: "Google Inc.")

  - `advancedSetting.webgl_metadata.render` (string)
    Chuỗi hiển thị WebGL (ví dụ: "ANGLE (...)")

  - `advancedSetting.audio_context` (object)

  - `advancedSetting.audio_context.switcher` (integer)
    Chính sách AudioContext. Mặc định: 1. 1 = Tiếng ồn, 2 = Chân thực.

  - `advancedSetting.media_device` (object)

  - `advancedSetting.media_device.switcher` (integer)
    Chính sách thiết bị đa phương tiện. Mặc định: 1. 1 = Nhiễu, 2 = Thực.

  - `advancedSetting.client_rects` (object)

  - `advancedSetting.client_rects.switcher` (integer)
    Chính sách ClientRects. Mặc định: 1. 1 = Nhiễu, 2 = Thực.

  - `advancedSetting.speech_voise` (object)

  - `advancedSetting.speech_voise.switcher` (integer)
    Chính sách SpeechVoices. Mặc định: 1. 1 = Riêng tư, 2 = Thực tế

  - `advancedSetting.hardware_concurrency` (integer)
    Số lõi CPU logic được mô phỏng.
Mặc định: 4. Tùy chọn: 0 (thực), 2, 3, 4, 6, 8, 10, 12.

  - `advancedSetting.memery_device` (integer)
    Bộ nhớ thiết bị mô phỏng (GB).
Mặc định: 8. Tùy chọn: 0 (thực), 2, 4, 6, 8.

  - `advancedSetting.do_not_track` (integer)
    Chế độ "Không theo dõi". Mặc định: 2. 1 = bật, 2 = tắt.

  - `advancedSetting.bluetooth` (object)

  - `advancedSetting.bluetooth.switcher` (integer)
    Chính sách Bluetooth. Mặc định: 1. 1 = Quyền riêng tư, 2 = Xác thực.

  - `advancedSetting.battery` (object)

  - `advancedSetting.battery.switcher` (integer)
    Chính sách pin. Mặc định: 1. 1 = Quyền riêng tư, 2 = Tính xác thực.

  - `advancedSetting.port_scan_protection` (object)

  - `advancedSetting.port_scan_protection.switcher` (integer)
    Bảo vệ chống quét cổng. Mặc định: 1. 1 = Bật, 2 = Tắt.

  - `advancedSetting.port_scan_protection.value` (string)
    Các cổng mạng cục bộ được phép kết nối (phân cách bằng dấu phẩy).

  - `advancedSetting.os_version` (string)
    Phiên bản hệ điều hành macOS (ví dụ: macOS 12, macOS 13, macOS 14).

  - `advancedSetting.web_gpu` (object)

  - `advancedSetting.web_gpu.switcher` (integer)
    Chính sách WebGPU. Mặc định: 1. 1 = khớp dựa trên WebGL, 2 = đúng, 3 = tắt.

  - `advancedSetting.ciphers` (object)

  - `advancedSetting.ciphers.switcher` (integer)
    Chính sách mã hóa TLS. Mặc định: 1. 1 = Mặc định, 2 = Tùy chỉnh.

  - `advancedSetting.ciphers.value` (string)
    Bắt buộc khi switcher=2.
Danh sách các giao thức TLS cần vô hiệu hóa, được phân tách bằng dấu phẩy (ví dụ: "TLSv1,TLSv1.1").

  - `advancedSetting.mobile_device` (string)
    Mã định danh kiểu điện thoại (dưới dạng chuỗi). Lấy thông qua API "Lấy danh sách kiểu điện thoại".
Ví dụ: "1826502391344832512"

  - `afterStartupConfig` (object)

  - `afterStartupConfig.afterStartup` (integer)
    Hành động sau khi khởi động. Mặc định: 1.
1 = Tiếp tục trang trước,
2 = Mở URL được chỉ định,
3 = Mở URL + nền tảng,
4 = Tiếp tục trang trước + nền tảng.

  - `afterStartupConfig.autoOpenUrls` (array)
    Danh sách các URL hợp lệ cần tự động mở (bắt buộc đối với tùy chọn 2–3).

  - `browserCore` (integer)
    Kernel version; default:0 (auto-match). Fetch available versions via `/api/env/advanced/ua/versions`.

  - `cookies` (string)
    Cookie string to preload (optional)

  - `envName` (string)
    Environment name

  - `envRemark` (string)
    Environment remark; max length:1500 chars

  - `groupId` (integer)
    Environment group ID; default:ungrouped (0)

  - `groupName` (string)
    Tên nhóm (tối đa 50 ký tự). Nếu được cung cấp, hệ thống sẽ kiểm tra groupId trước: nếu tìm thấy nhóm hợp lệ thì sử dụng nhóm đó; nếu không, tìm kiếm theo groupName. Nếu nhóm có tên đó tồn tại thì tham chiếu nhóm đó; nếu không thì tạo nhóm mới. Mỗi đội bị giới hạn 1.000 nhóm.

  - `proxyId` (integer)
    Proxy ID; default:0

  - `tagIds` (array)
    Tag IDs; default:none

  - `uaVersion` (integer)
    UA preset version; default:0 (all)

  - `disableAudio` (integer)
    Disable audio:0 = off, 1 = on

  - `disableImg` (integer)
    Disable image loading:0 = off, 1 = on

  - `disableVideo` (integer)
    Disable video loading:0 = off, 1 = on

  - `imgLimitSize` (integer)
    Max image size (KB)

  - `proxy` (object)
    Proxy information

  - `proxy.proxyId` (integer)
    Proxy ID

  - `proxy.proxyName` (string)
    Proxy name (maximum 600 characters)

  - `proxy.proxyType` (integer)
    Proxy type, 0: http, 1: https. Cannot be empty when proxyProvider is 7/8

  - `proxy.proxyProvider` (string)
    Proxy provider 0: http, 1: https, 2: socks5, 3: ssh, 4: Oxylabs, 5: Proxys.io, 7: Luminati, 8: Lumauto, 9: Oxylabsauto, 10: Trojan, 11: Shadowsocks, 13: ABCPROXY, 14: LunaProxy, 15: IPHTML, 16: PiaProxy, 17: 922S5, 18: 360Proxy

  - `proxy.proxyIp` (string)
    Proxy IP. Can be empty when proxyProvider is 16/17/18; required for others

  - `proxy.proxyPort` (integer)
    Proxy port (only numbers 1-65535 allowed). Can be empty when proxyProvider is 16/17/18; required for others

  - `proxy.username` (string)
    Username (maximum 200 characters)

  - `proxy.password` (string)
    Password (maximum 100 characters)

  - `proxy.refreshUrl` (string)
    Refresh URL

  - `proxy.country` (string)
    Country code (e.g. `us`). See [Country Time Zone Table](/api-reference/appendix/country-time-zone) for supported codes. Required when proxyProvider is 16/17/18

  - `proxy.city` (string)
    City

  - `proxy.state` (string)
    State/Province

  - `proxy.encryptionType` (integer)
    Encryption method. Cannot be empty when proxyProvider is 11. 1: aes-128-gcm, 2: aes-192-gcm, 3: aes-256-gcm, 4: aes-128-cfb, 5: aes-192-cfb, 6: aes-256-cfb, 7: aes-128-ctr, 8: aes-192-ctr, 9: aes-256-ctr, 10: rc4-md5, 11: chacha20-ietf, 12: xchacha20, 13: chacha20-ietf-poly1305, 14: xchacha20-ietf-poly1305

  - `proxy.ipMonitor` (boolean)
    Enable IP change monitoring? true: On, false: Off

  - `proxy.ipChangeAction` (integer)
    IP change monitoring 0: Block access, 1: Warn

## Response 200 fields (application/json):

  - `code` (integer, required)

  - `msg` (null, required)

  - `data` (string, required)

  - `requestId` (string, required)

