# Advanced create browser profile

Create a single browser profile with a full fingerprint configuration.

The browser kernel is matched from published kernels using the operating system and kernel
fields in the request. No client version is read.

Endpoint: POST /env/create/advanced
Version: 1.0.0
Security: OpenApiBearer

## Request fields (application/json):

  - `envName` (string)
    Profile name.
    Example: marketing-01

  - `browserTypeId` (integer, required)
    Browser type:
- `1` — Chrome
- `2` — Firefox
    Enum: 1, 2

  - `operatorSystemId` (integer, required)
    Operating system:
- `1` — Windows
- `2` — macOS
- `3` — Android
- `4` — iOS
- `5` — Linux
    Enum: 1, 2, 3, 4, 5

  - `groupId` (string)
    Existing group ID. `0` means ungrouped.
    Example: 0

  - `groupName` (string)
    Group name. The group is looked up or created automatically when supplied.
    Example: Marketing

  - `tagIds` (array)
    Tag IDs. An empty array means no tags.
    Example: ["1800000000000301"]

  - `proxyId` (string)
    Existing proxy ID. `0` means no proxy.
    Example: 0

  - `proxy` (object)
    Proxy connection details. When `proxyId` refers to an existing proxy, that proxy is reused;
otherwise a new proxy is created from these fields.

  - `proxy.proxyId` (string)
    Existing proxy ID.
    Example: 1800000000000101

  - `proxy.proxyIp` (string)
    Proxy host or IP address.
    Example: 127.0.0.1

  - `proxy.proxyPort` (integer)
    Proxy port.
    Example: 1080

  - `proxy.proxyName` (string)
    Proxy name.
    Example: proxy-a

  - `proxy.proxyType` (integer)
    Proxy protocol:
- `0` — HTTP
- `1` — HTTPS
- `2` — SOCKS5
- `3` — SSH
    Enum: 0, 1, 2, 3

  - `proxy.proxyProvider` (integer)
    Proxy provider. `0` to `3` mean a plain proxy of the matching protocol; `4` and above identify a
commercial provider:
- `0` — HTTP
- `1` — HTTPS
- `2` — SOCKS5
- `3` — SSH
- `4` — Oxylabs
- `5` — Proxys.io
- `6` — GeoSurf
- `7` — Luminati
- `8` — Lumauto
- `9` — Oxylabsauto
- `10` — Trojan
- `11` — Shadowsocks
- `12` — vmess
- `13` — ABCProxy
- `14` — LunaProxy
- `15` — IPHTML
- `16` — PiaProxy
- `17` — 922S5
- `18` — 360Proxy

Treat unknown future values as a generic commercial provider.
    Example: 0

  - `proxy.ipMonitor` (boolean)
    Whether to monitor changes to the exit IP.
    Example: true

  - `proxy.ipChangeAction` (integer)
    Action to take after the exit IP changes.
    Example: 0

  - `proxy.username` (string)
    Proxy username.
    Example: user

  - `proxy.password` (string)
    Proxy password.
    Example: pass

  - `proxy.refreshUrl` (string)
    Proxy refresh URL.
    Example: https://example.com/refresh

  - `proxy.encryptionType` (integer)
    Proxy encryption type.
    Example: 0

  - `proxy.country` (string)
    Country or region.
    Example: US

  - `proxy.state` (string)
    State or province.
    Example: CA

  - `proxy.city` (string)
    City.
    Example: Los Angeles

  - `isEncrypt` (integer)
    Whether to encrypt the profile. Defaults to `0`.
    Enum: 0, 1

  - `envRemark` (string)
    Profile remark.
    Example: Created through the Open API

  - `uaVersion` (integer)
    UA major version. Defaults to `0`, meaning any.
    Example: 124

  - `browserCore` (integer)
    Kernel major version. Defaults to `0`, which selects a published kernel automatically.
    Example: 124

  - `systemBitType` (integer)
    System bitness. Defaults to `1`:
- `0` — 32-bit
- `1` — 64-bit
    Enum: 0, 1

  - `architecture` (integer)
    CPU architecture. Defaults to `0`:
- `0` — x86
- `1` — ARM
    Enum: 0, 1

  - `accountInfo` (object)
    Platform account bound to the profile.

  - `accountInfo.username` (string)
    Platform account username.
    Example: account@example.com

  - `accountInfo.password` (string)
    Platform account password.
    Example: secret

  - `accountInfo.siteId` (string)
    Site ID.
    Example: 1800000000000201

  - `accountInfo.platformId` (string, required)
    Platform ID. `9999` means a custom platform.
    Example: 9999

  - `accountInfo.customerUrl` (string)
    Custom platform URL. Required when `platformId` is `9999`. Must be a valid URL.
    Example: https://example.com

  - `accountInfo.otpSecret` (string)
    Two-factor authentication (2FA) secret.
    Example: BASE32SECRET

  - `isShowAccount` (integer)
    Password protection switch.
    Enum: 0, 1

  - `afterStartupConfig` (object)
    Behavior applied after the browser starts.

  - `afterStartupConfig.afterStartup` (integer)
    Startup behavior. Defaults to `1`:
- `1` — reopen the pages from the last session
- `2` — open the specified pages
- `3` — open the specified pages and the platform
- `4` — reopen the last session pages and the platform
    Enum: 1, 2, 3, 4

  - `afterStartupConfig.autoOpenUrls` (array)
    Pages to open automatically. Each entry must be a valid URL.
    Example: ["https://example.com"]

  - `afterStartupConfig.stayOnCheckIPPage` (boolean)
    Whether to stay on the IP check page after startup.
    Example: false

  - `startupParams` (array)
    Browser startup parameters.
    Example: ["--disable-notifications"]

  - `cookies` (string)
    Cookies as a JSON text payload.
    Example: [{"name":"sid","value":"abc"}]

  - `disableAudio` (integer)
    Whether to block audio playback.
    Enum: 0, 1

  - `disableVideo` (integer)
    Whether to block video loading.
    Enum: 0, 1

  - `disableImg` (integer)
    Whether to block image loading.
    Enum: 0, 1

  - `imgLimitSize` (integer)
    Maximum image size to load, in KB.
    Example: 1000

## Response 200 fields (application/json):

  - `code` (integer, required)
    Return result code. `0` means success; other codes indicate exceptions.
    Example: 0

  - `msg` (string | null, required)
    Error message. Usually `null` on success.
    Example: null

  - `requestId` (string)
    Operation request ID. This field may be present when the request passes through the API gateway.
    Example: 1d4f3ea968664593860b94b35d4ebf5e

  - `data` (string, required)
    Browser profile (environment) ID. Serialized as a decimal string to avoid JavaScript
precision loss on 64-bit integers.
    Example: 1800000000000001

