### Example Request to Start Browser Profile Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba This cURL command demonstrates how to start a browser profile using the specified endpoint with automation and headless mode parameters. Ensure the Accept header is set to application/json. ```curl curl --location 'https://launcher.mlx.yt:45001/api/v2/profile/f/81b5627a-1212-4016-9467-3dbe4d6f78eb/p/81b5627a-1212-4016-9467-3dbe4d6f78eb/start?automation_type=puppeteer&headless_mode=false' \ --header 'Accept: application/json' ``` -------------------------------- ### Quick Profile Start Response Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba This is a successful response (200 OK) when starting a quick browser profile. It confirms the profile has started and provides its ID and port. ```json { "data": { "browser_type": "mimic", "core_version": 132, "id": "d04aa438-d887-11ef-8d6d-0a0027000012", "is_quick": true, "port": "55579" }, "status": { "error_code": "", "http_code": 200, "message": "Quick profile started successfully" } } ``` -------------------------------- ### Example Response for Get Devices for 2FA Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro This is an example of a successful response when retrieving 2FA devices. It includes the status and a list of registered devices with their IDs and names. ```json { "status": { "error_code": "", "http_code": 200, "message": "Success" }, "data": { "devices": [ { "id": "57237f23-d243-498f-8f05-100107f8f5e0", "name": "GoogleAuth" } ] } } ``` -------------------------------- ### Start Quick Profile v3 Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Starts a new quick browser profile with specified configurations. This endpoint allows for detailed customization of browser fingerprints, proxy settings, and other parameters. ```APIDOC ## POST /api/v3/profile/quick ### Description Starts a new quick browser profile with specified configurations. This endpoint allows for detailed customization of browser fingerprints, proxy settings, and other parameters. ### Method POST ### Endpoint https://launcher.mlx.yt:45001/api/v3/profile/quick ### Parameters #### Request Body - **browser_type** (string) - Required - Type of browser to mimic. - **core_version** (integer) - Required - Core version of the browser. - **os_type** (string) - Required - Operating system type. - **script_file** (string) - Required - Name of the script file to use. - **automation** (string) - Required - Automation tool to use (e.g., "selenium"). - **is_headless** (boolean) - Required - Whether the browser should run in headless mode. - **parameters** (object) - Required - Object containing detailed configuration parameters. - **flags** (object) - Flags for various masking and behavior settings. - **fingerprint** (object) - Detailed fingerprint information for the browser. - **proxy** (object) - Proxy configuration details. - **custom_start_urls** (array) - Array of custom URLs to open on startup. ### Request Example ```json { "browser_type": "mimic", "core_version": 124, "os_type": "linux", "script_file": "example_script3.py", "automation": "selenium", "is_headless": false, "parameters": { "flags": { "audio_masking": "mask", "fonts_masking": "custom", "geolocation_masking": "custom", "geolocation_popup": "prompt", "graphics_masking": "custom", "graphics_noise": "mask", "localization_masking": "custom", "media_devices_masking": "custom", "navigator_masking": "custom", "ports_masking": "mask", "proxy_masking": "custom", "quic_mode": "natural", "screen_masking": "custom", "timezone_masking": "custom", "webrtc_masking": "custom", "canvas_noise": "custom", "startup_behavior": "custom" }, "fingerprint": { "navigator": { "hardware_concurrency": 8, "platform": "Win32", "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36", "os_cpu": "" }, "localization": { "languages": "en-US", "locale": "en-US", "accept_languages": "en-US,en;q=0.5" }, "timezone": { "zone": "Asia/Bangkok" }, "graphic": { "renderer": "ANGLE (NVIDIA, NVIDIA GeForce RTX 4070 Ti Direct3D11 vs_5_0 ps_5_0, D3D11)", "vendor": "Google Inc. (NVIDIA)" }, "webrtc": { "public_ip": "123.123.123.123" }, "media_devices": { "audio_inputs": 1, "audio_outputs": 1, "video_inputs": 2 }, "screen": { "height": 1200, "pixel_ratio": 1, "width": 1920 }, "geolocation": { "accuracy": 100, "altitude": 100, "latitude": 52.02, "longitude": -52.1 }, "ports": [ 12345 ], "fonts": [ "81938139" ], "cmd_params": { "params": [ { "flag": "show-fps-counter", "value": "true" } ] } }, "proxy": { "host": "host.com", "type": "http", "port": 8081, "username": "username", "password": "password", "save_traffic": true }, "custom_start_urls": [ "https://jsonformatter.org/", "https://python.org/" ] } } ``` ### Response #### Success Response (200) - **data** (object) - Contains information about the started profile. - **browser_type** (string) - Type of browser started. - **core_version** (integer) - Core version of the browser. - **id** (string) - Unique identifier for the started profile. - **is_quick** (boolean) - Indicates if it's a quick profile. - **port** (string) - Port number assigned to the profile. - **status** (object) - Status of the operation. - **error_code** (string) - Error code, if any. - **http_code** (integer) - HTTP status code. - **message** (string) - Message indicating the result of the operation. #### Response Example ```json { "data": { "browser_type": "mimic", "core_version": 132, "id": "d04aa438-d887-11ef-8d6d-0a0027000012", "is_quick": true, "port": "55579" }, "status": { "error_code": "", "http_code": 200, "message": "Quick profile started successfully" } } ``` ``` -------------------------------- ### Example Response for User Workspace Folders Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 An example JSON response when fetching folders for a specific user. It lists folders with their details, including comments and creation timestamps. ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "folders": [ { "comment": "TestingNew", "created_at": "2024-05-22T04:48:24.700378Z", "folder_id": "398568c9-f5bd-48fd-a071-5a70d74d702a", "name": "monitor_fresh_hills.mpp", "profiles_count": 0 }, { "comment": "test8", "created_at": "2024-05-22T04:35:53.029793Z", "folder_id": "aa524b74-5870-4f51-a801-6b3b5c058fd7", "name": "norwegian_table_dynamic.wdp", "profiles_count": 0 } ] } } ``` -------------------------------- ### Example Response for Workspace Folders Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 An example JSON response when successfully fetching workspace folders. It includes details like folder ID, name, and profile count. ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "folders": [ { "comment": "", "created_at": "2024-04-08T07:35:47.666168Z", "folder_id": "598e7825-45d7-480e-9b2a-7df9338f2efd", "name": "Default folder", "profiles_count": 73 } ] } } ``` -------------------------------- ### Example Response for Get Backup Codes for 2FA Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro This JSON object represents a successful response for retrieving 2FA backup codes. It contains a status message and an array of disposable backup codes. ```json { "status": { "error_code": "", "http_code": 200, "message": "Success" }, "data": { "backup_codes": [ "backup code 1", "backup code 2", "backup code 3", "backup code 4", "backup code 5", "backup code 6", "backup code 7", "backup code 8", "backup code 9", "backup code 10" ] } } ``` -------------------------------- ### Example Response for Workspace Statistics Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 An example JSON response for workspace statistics. It provides counts and limits for cloud and local profiles, as well as user counts. ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "profiles_cloud_count": 73, "profiles_cloud_limit": 1000, "profiles_local_count": 0, "profiles_local_limit": 100, "users_count": 1, "users_limit": 1000 } } ``` -------------------------------- ### Start Browser Profile Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Starts a browser profile. This endpoint supports both Strict and Non-Strict modes for parameter specification. It returns the automation port if an automation type is provided. ```APIDOC ## GET /api/v2/profile/f/:folder_id/p/:profile_id/start ### Description Starts a browser profile. This endpoint supports both Strict and Non-Strict modes for parameter specification. It returns the automation port if an automation type is provided. ### Method GET ### Endpoint https://launcher.mlx.yt:45001/api/v2/profile/f/:folder_id/p/:profile_id/start ### Parameters #### Path Parameters - **folder_id** (uuid) - Required - Specify the ID of the folder where the profile to launch is stored. - **profile_id** (uuid) - Required - Specify the ID of the profile to launch. #### Query Parameters - **automation_type** (string) - Optional - Specify the automation type. Mimic can work with any of the types. Stealthfox can only work with selenium. Defaults to `selenium`. - **headless_mode** (boolean) - Optional - Enable headless mode for all browsers. Defaults to `false`. #### Headers - **X-Strict-Mode** (boolean) - Optional - Default to false. If set to true, you must specify values for all required parameters. ### Request Example ```curl curl --location 'https://launcher.mlx.yt:45001/api/v2/profile/f/81b5627a-1212-4016-9467-3dbe4d6f78eb/p/81b5627a-1212-4016-9467-3dbe4d6f78eb/start?automation_type=puppeteer&headless_mode=false' \ --header 'Accept: application/json' ``` ### Response #### Success Response (200) - **data** (object) - Contains details about the started profile. - **browser_type** (string) - The type of browser launched. - **core_version** (integer) - The core version of the browser. - **id** (string) - The ID of the profile. - **is_quick** (boolean) - Indicates if the profile was started quickly. - **port** (string) - The port for automation. - **status** (object) - Contains the status of the operation. - **error_code** (string) - The error code, if any. - **http_code** (integer) - The HTTP status code. - **message** (string) - A message describing the status. #### Response Example ```json { "data": { "browser_type": "mimic", "core_version": 132, "id": "81b5627a-1212-4016-9467-3dbe4d6f78eb", "is_quick": false, "port": "55513" }, "status": { "error_code": "", "http_code": 200, "message": "Profile started successfully" } } ``` ``` -------------------------------- ### POST Start Quick Profile v3 Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Initiates a quick profile with specified browser and OS configurations. The `fingerprint` parameter is optional for Android OS and defaults to 5. ```APIDOC ## POST /start-quick-profile-v3 ### Description Initiates a quick profile with specified browser and OS configurations. The `fingerprint` parameter is optional for Android OS and defaults to 5. ### Method POST ### Endpoint /start-quick-profile-v3 ### Request Body - **browser_type** (string) - Required - The type of browser to use. - **os_type** (string) - Required - The type of operating system. - **script_file** (string) - Optional - The script file to execute. - **automation** (string) - Optional - Automation type. - **core_version** (integer) - Optional - Core version number. - **core_minor_version** (integer) - Optional - Core minor version number. - **is_headless** (boolean) - Optional - Whether to run in headless mode. - **parameters** (object) - Optional - Additional parameters for the profile. - **flags** (object) - Optional - Flags for various masking and behavior settings. - **audio_masking** (string) - Optional - Audio masking setting. - **fonts_masking** (string) - Optional - Fonts masking setting. - **geolocation_masking** (string) - Optional - Geolocation masking setting. - **geolocation_popup** (string) - Optional - Geolocation popup setting. - **graphics_masking** (string) - Optional - Graphics masking setting. - **graphics_noise** (string) - Optional - Graphics noise setting. - **localization_masking** (string) - Optional - Localization masking setting. - **media_devices_masking** (string) - Optional - Media devices masking setting. - **navigator_masking** (string) - Optional - Navigator masking setting. - **ports_masking** (string) - Optional - Ports masking setting. - **proxy_masking** (string) - Optional - Proxy masking setting. - **screen_masking** (string) - Optional - Screen masking setting. - **timezone_masking** (string) - Optional - Timezone masking setting. - **webrtc_masking** (string) - Optional - WebRTC masking setting. - **canvas_noise:** (string) - Optional - Canvas noise setting. - **startup_behavior** (string) - Optional - Startup behavior setting. - **proxy** (object) - Optional - Proxy configuration. - **host** (string) - Optional - Proxy host. - **type** (string) - Optional - Proxy type. - **port** (integer) - Optional - Proxy port. - **username** (string) - Optional - Proxy username. - **password** (string) - Optional - Proxy password. - **fingerprint** (object) - Optional - Fingerprint configuration. - **navigator** (object) - Optional - Navigator fingerprint details. - **hardware_concurrency** (integer) - Optional - Hardware concurrency. - **platform** (string) - Optional - Platform. - **user_agent** (string) - Optional - User agent string. - **os_cpu** (string) - Optional - OS CPU. - **localization** (object) - Optional - Localization fingerprint details. - **languages** (string) - Optional - Languages. - **locale** (string) - Optional - Locale. - **accept_languages** (string) - Optional - Accept languages. - **timezone** (object) - Optional - Timezone fingerprint details. - **zone** (string) - Optional - Timezone zone. - **graphic** (object) - Optional - Graphic fingerprint details. - **renderer** (string) - Optional - Graphic renderer. - **vendor** (string) - Optional - Graphic vendor. - **webrtc** (object) - Optional - WebRTC fingerprint details. - **public_ip** (string) - Optional - Public IP address. - **media_devices** (object) - Optional - Media devices fingerprint details. - **audio_inputs** (integer) - Optional - Number of audio inputs. - **audio_outputs** (integer) - Optional - Number of audio outputs. - **video_inputs** (integer) - Optional - Number of video inputs. - **screen** (object) - Optional - Screen fingerprint details. - **height** (integer) - Optional - Screen height. - **pixel_ratio** (double) - Optional - Pixel ratio. - **width** (integer) - Optional - Screen width. - **geolocation** (object) - Optional - Geolocation fingerprint details. - **accuracy** (number) - Optional - Accuracy. - **altitude** (number) - Optional - Altitude. - **latitude** (number) - Optional - Latitude. - **longitude** (number) - Optional - Longitude. - **ports** (array) - Optional - List of ports. - (integer) - Optional - Port number. - **fonts** (array) - Optional - List of fonts. - (string) - Optional - Font name. - **cmd_params** (object) - Optional - Command line parameters. - **params** (array) - Optional - List of parameters. - **flag** (string) - Optional - Parameter flag. - **value** (boolean) - Optional - Parameter value. - **custom_start_urls** (array) - Optional - List of custom start URLs. - (string) - Optional - URL. ### Request Example ```json { "browser_type": "", "os_type": "", "script_file": "", "automation": "", "core_version": , "core_minor_version": , "is_headless": , "parameters": { "flags": { "audio_masking": "", "fonts_masking": "", "geolocation_masking": "", "geolocation_popup": "", "graphics_masking": "", "graphics_noise": "", "localization_masking": "", "media_devices_masking": "", "navigator_masking": "", "ports_masking": "", "proxy_masking": "", "screen_masking": "", "timezone_masking": "", "webrtc_masking": "", "canvas_noise:": "", "startup_behavior": "" }, "proxy": { "host": "", "type": "", "port": , "username": "", "password": "" }, "fingerprint": { "navigator": { "hardware_concurrency": , "platform": "", "user_agent": "", "os_cpu": "" }, "localization": { "languages": "", "locale": "", "accept_languages": "" }, "timezone": { "zone": "" }, "graphic": { "renderer": "", "vendor": "" }, "webrtc": { "public_ip": "" }, "media_devices": { "audio_inputs": , "audio_outputs": , "video_inputs": }, "screen": { "height": , "pixel_ratio": , "width": }, "geolocation": { "accuracy": , "altitude": , "latitude": , "longitude": }, "ports": [ ], "fonts": [ "" ], "cmd_params": { "params": [ { "flag": "", "value": } ] } }, "custom_start_urls": [ "" ] } } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the status of the operation. - **message** (string) - A message describing the result of the operation. - **profile_id** (string) - The unique identifier for the created profile. ``` -------------------------------- ### Successful Profile Started Response Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba This JSON object represents a successful response after starting a browser profile. It includes browser details, core version, profile ID, and the assigned port for automation. ```json { "data": { "browser_type": "mimic", "core_version": 132, "id": "81b5627a-1212-4016-9467-3dbe4d6f78eb", "is_quick": false, "port": "55513" }, "status": { "error_code": "", "http_code": 200, "message": "Profile started successfully" } } ``` -------------------------------- ### Start Quick Browser Profile Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Initiates a quick browser profile with specified configurations. Use this to quickly set up a browser environment for automated tasks. The profile includes detailed settings for flags, fingerprints, and proxy configurations. ```curl curl --location 'https://launcher.mlx.yt:45001/api/v3/profile/quick' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ // This is an example of a successful request with 200 created. The created profile has most of the flags set to Custom. Fingerprints flagged as Custom can be passed manually. If set to Mask/Natural/Disabled, no values are needed. "browser_type": "mimic", "core_version": 124, "os_type": "linux", "script_file": "example_script3.py", "automation": "selenium", "is_headless": false, "parameters": { "flags": { "audio_masking": "mask", "fonts_masking": "custom", "geolocation_masking": "custom", "geolocation_popup": "prompt", "graphics_masking": "custom", "graphics_noise": "mask", "localization_masking": "custom", "media_devices_masking": "custom", "navigator_masking": "custom", "ports_masking": "mask", "proxy_masking": "custom", "quic_mode": "natural", "screen_masking": "custom", "timezone_masking": "custom", "webrtc_masking": "custom", "canvas_noise:": "custom", "startup_behavior": "custom" }, "fingerprint": { "navigator": { "hardware_concurrency": 8, "platform": "Win32", "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36", "os_cpu": "" }, "localization": { "languages": "en-US", "locale": "en-US", "accept_languages": "en-US,en;q=0.5" }, "timezone": { "zone": "Asia/Bangkok" }, "graphic": { "renderer": "ANGLE (NVIDIA, NVIDIA GeForce RTX 4070 Ti Direct3D11 vs_5_0 ps_5_0, D3D11)", "vendor": "Google Inc. (NVIDIA)" }, "webrtc": { "public_ip": "123.123.123.123" }, "media_devices": { "audio_inputs": 1, "audio_outputs": 1, "video_inputs": 2 }, "screen": { "height": 1200, "pixel_ratio": 1, "width": 1920 }, "geolocation": { "accuracy": 100, "altitude": 100, "latitude": 52.02, "longitude": -52.1 }, "ports": [ 12345 ], "fonts": [ "81938139" ], "cmd_params": { "params": [ { "flag": "show-fps-counter", "value": "true" } ] } }, "proxy": { "host": "host.com", "type": "http", "port": 8081, "username": "username", "password": "password", "save_traffic": true // false by default }, "custom_start_urls": [ "https://jsonformatter.org/", "https://python.org/" ] } }' ``` -------------------------------- ### POSTStart Quick Profile v3 Request Body Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Use this JSON structure to configure a quick profile for starting a session. The `fingerprint` object is optional for Android OS. ```json { "browser_type": "", "os_type": "", "script_file": "", "automation": "", "core_version": , "core_minor_version": , "is_headless": , "parameters": { "flags": { "audio_masking": "", "fonts_masking": "", "geolocation_masking": "", "geolocation_popup": "", "graphics_masking": "", "graphics_noise": "", "localization_masking": "", "media_devices_masking": "", "navigator_masking": "", "ports_masking": "", "proxy_masking": "", "screen_masking": "", "timezone_masking": "", "webrtc_masking": "", "canvas_noise:": "", "startup_behavior": "" }, "proxy": { "host": "", "type": "", "port": , "username": "", "password": "" }, "fingerprint": { "navigator": { "hardware_concurrency": , "platform": "", "user_agent": "", "os_cpu": "" }, "localization": { "languages": "", "locale": "", "accept_languages": "" }, "timezone": { "zone": "" }, "graphic": { "renderer": "", "vendor": "" }, "webrtc": { "public_ip": "" }, "media_devices": { "audio_inputs": , "audio_outputs": , "video_inputs": }, "screen": { "height": , "pixel_ratio": , "width": }, "geolocation": { "accuracy": , "altitude": , "latitude": , "longitude": }, "ports": [ , ], "fonts": [ "" ], "cmd_params": { "params": [ { "flag": "", "value": } ] } }, "custom_start_urls": [ "" ] } } ``` -------------------------------- ### Example Request to Leave Workspace Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Use this cURL command to send a request to leave a workspace. Ensure the Content-Type and Accept headers are set to application/json. ```curl curl --location 'https://api.multilogin.com/workspace/leave' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --data '{ "workspace_id": "" }' ``` -------------------------------- ### POST Start Quick Profile v3 Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#auth-info-54a9773a-031e-4904-b607-e372445dc2ba Creates a one-time quick browser profile. Supports Strict and Non-Strict modes. Browsing activity is not saved after the profile is stopped. Fingerprint parameters are only needed if flags are set to `Custom`. ```APIDOC ## POST /api/v3/profile/quick ### Description Creates a one-time quick browser profile that opens after the call is successfully made. Browsing activity and its related data are not saved after the profile has been stopped. Supports Strict and Non-Strict modes. ### Method POST ### Endpoint https://launcher.mlx.yt:45001/api/v3/profile/quick ### Headers - **Content-Type**: application/json - **Accept**: application/json - **X-Strict-Mode**: boolean (Optional, defaults to false. If true, all required parameters must be specified.) ### Parameters - **browser_type** (string) - Required. Choose the browser type (`mimic`, `stealthfox`). Defaults to `mimic`. - **os_type** (string) - Required. Specify the OS (`linux`, `macos`, `windows`, `android`). Defaults to `windows`. - **automation** (string) - Optional. `selenium` for working with Script Runner. Defaults to `selenium`. - **auto_update_core** (boolean) - Optional. Enable or disable automatic updates for the browser core. - **core_version** (number) - Optional. Specify a specific core version. Defaults to `latest`. - **core_minor_version** (number) - Optional. Specify the minor version based on availability. - **is_headless** (boolean) - Optional. Enable headless mode. Defaults to `false`. - **parameters** (object) - Required. Specify parameters for your profiles, including `flags`, `fingerprints`, `storage`, and `proxy`. - **flags** (object) - Required within `parameters`. Contains various masking and behavior options. - **audio_masking** (string) - value - **fonts_masking** (string) - value - **geolocation_masking** (string) - value - **geolocation_popup** (string) - value - **graphics_masking** (string) - value - **graphics_noise** (string) - value - **localization_masking** (string) - value - **media_devices_masking** (string) - value - **navigator_masking** (string) - value - **ports_masking** (string) - value - **proxy_masking** (string) - value - **screen_masking** (string) - value - **timezone_masking** (string) - value - **webrtc_masking** (string) - value - **canvas_noise** (string) - value - **startup_behavior** (string) - value - **fingerprint** (object) - Optional within `parameters`. The number of parameters may vary depending on flag values. - **proxy** (object) - Optional within `parameters`. Add a proxy to your profiles. - **host** (string) - Proxy host. - **type** (string) - Proxy type. - **port** (number) - Proxy port. - **username** (string) - Proxy username. - **password** (string) - Proxy password. - **save_traffic** (boolean) - Optional for proxy. Disable image/video loading to save traffic. Defaults to `false`. ### Request Example ```json { "browser_type": "mimic", "os_type": "windows", "automation": "selenium", "auto_update_core": true, "core_version": 124, "is_headless": false, "parameters": { "flags": { "audio_masking": "value", "fonts_masking": "value", "geolocation_masking": "value", "geolocation_popup": "value", "graphics_masking": "value", "graphics_noise": "value", "localization_masking": "value", "media_devices_masking": "value", "navigator_masking": "value", "ports_masking": "value", "proxy_masking": "value", "screen_masking": "value", "timezone_masking": "value", "webrtc_masking": "value", "canvas_noise" :"value", "startup_behavior" :"value" }, "fingerprint": {}, "proxy": { "host": "foo", "type": "foo", "port": 1234, "username": "foo", "password": "foo", "save_traffic": false } } } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. - **profile_id** (string) - The unique identifier for the created profile. #### Response Example ```json { "status": "success", "profile_id": "generated_profile_id" } ``` ``` -------------------------------- ### Workspace Folder Creation Response Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Example JSON response upon successful creation of a workspace folder. Includes the status message and the ID of the newly created folder. ```json { "status": { "error_code": "", "http_code": 201, "message": "Folder successfully created" }, "data": { "id": "aa524b74-5870-4f51-a801-6b3b5c058fd7" } } ``` -------------------------------- ### Get Devices for 2FA Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro Retrieves a list of all devices registered for two-factor authentication (2FA) for the user. Each entry includes the device_id and name. ```APIDOC ## GET /user/get_2fa_devices ### Description This endpoint returns a list of all devices registered for two-factor authentication (2FA) for the user. Each entry in the response includes the `device_id` and `name` associated with the device. ### Method GET ### Endpoint https://api.multilogin.com/user/get_2fa_devices ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```curl curl --location 'https://api.indigobrowser.com/user/get_2fa_devices' \ --data '' ``` ### Response #### Success Response (200) - **devices** (array) - A list of 2FA devices. - **id** (string) - The unique identifier for the device. - **name** (string) - The name of the device. #### Response Example ```json { "status": { "error_code": "", "http_code": 200, "message": "Success" }, "data": { "devices": [ { "id": "57237f23-d243-498f-8f05-100107f8f5e0", "name": "GoogleAuth" } ] } } ``` ``` -------------------------------- ### Automation Token Response Structure Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Example JSON response when successfully fetching an automation token. The 'token' field contains the JWT for authentication. ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "token": "your_automation_JWT_token" } } ``` -------------------------------- ### Get Backup Codes for 2FA Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro Retrieves a list of all available backup codes for the user's two-factor authentication (2FA). Each code can only be used once. ```APIDOC ## GET /user/backup_codes ### Description This endpoint returns a list of all available backup codes for the user's two-factor authentication (2FA). Please note that each backup code can be used only once. Once a code is used, it becomes invalid and will no longer appear in the response. ### Method GET ### Endpoint https://api.multilogin.com/user/backup_codes ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```curl curl --location 'https://app.multilogin.com/user/backup_codes' \ --data '' ``` ### Response #### Success Response (200) - **backup_codes** (array) - A list of backup codes. #### Response Example ```json { "status": { "error_code": "", "http_code": 200, "message": "Success" }, "data": { "backup_codes": [ "backup code 1", "backup code 2", "backup code 3", "backup code 4", "backup code 5", "backup code 6", "backup code 7", "backup code 8", "backup code 9", "backup code 10" ] } } ``` ``` -------------------------------- ### Get Backup Codes for 2FA (cURL) Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro Execute this cURL command to obtain a list of available backup codes for your two-factor authentication (2FA). Each code is single-use and becomes invalid after its first use. ```curl curl --location 'https://app.multilogin.com/user/backup_codes' \ --data '' ``` -------------------------------- ### Get Devices for 2FA (cURL) Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#intro Use this cURL command to retrieve a list of all devices registered for two-factor authentication (2FA) for the user. The response will contain device IDs and names. ```curl curl --location 'https://api.indigobrowser.com/user/get_2fa_devices' \ --data '' ``` -------------------------------- ### GET Workspace Statistics Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Retrieves statistical information for the currently selected workspace. This includes counts and limits for profiles and users, helping to monitor resource usage. ```APIDOC ## GET /workspace/statistics ### Description Get statistics for the selected workspace. The workspace ID is inferred from the token. ### Method GET ### Endpoint https://api.multilogin.com/workspace/statistics ### Headers - **Accept**: application/json - **Authorization**: Bearer [Your Bearer Token] ### Request Example ```json { "example": "curl --location 'https://api.multilogin.com/workspace/statistics' \ --header 'Accept: application/json'" } ``` ### Response #### Success Response (200) - **data** (object) - Contains the statistical data for the workspace. - **profiles_cloud_count** (integer) - The number of cloud profiles. - **profiles_cloud_limit** (integer) - The limit for cloud profiles. - **profiles_local_count** (integer) - The number of local profiles. - **profiles_local_limit** (integer) - The limit for local profiles. - **users_count** (integer) - The number of users. - **users_limit** (integer) - The limit for users. #### Response Example ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "profiles_cloud_count": 73, "profiles_cloud_limit": 1000, "profiles_local_count": 0, "profiles_local_limit": 100, "users_count": 1, "users_limit": 1000 } } ``` ``` -------------------------------- ### GET Workspace Folders For User Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Retrieves a list of available folders for a specific user within a workspace, identified by their email address. This is useful for managing user-specific resources. ```APIDOC ## GET /workspace/folders_for_user ### Description Get a list of available folders by workspace ID and user email. Workspace ID is inferred from the token. ### Method GET ### Endpoint https://api.multilogin.com/workspace/folders_for_user ### Parameters #### Query Parameters - **email** (string) - Required - Specify the user's email. ### Headers - **Accept**: application/json - **Authorization**: Bearer [Your Bearer Token] ### Request Example ```json { "example": "curl --location 'https://api.multilogin.com/workspace/folders_for_user?email=foo%40bar.com' \ --header 'Accept: application/json'" } ``` ### Response #### Success Response (200) - **data** (object) - Contains the list of folders for the specified user. - **folders** (array) - An array of folder objects. - **comment** (string) - Optional comment for the folder. - **created_at** (string) - The timestamp when the folder was created. - **folder_id** (string) - The unique identifier for the folder. - **name** (string) - The name of the folder. - **profiles_count** (integer) - The number of profiles within the folder. #### Response Example ```json { "status": { "error_code": "", "http_code": 200, "message": "" }, "data": { "folders": [ { "comment": "TestingNew", "created_at": "2024-05-22T04:48:24.700378Z", "folder_id": "398568c9-f5bd-48fd-a071-5a70d74d702a", "name": "monitor_fresh_hills.mpp", "profiles_count": 0 }, { "comment": "test8", "created_at": "2024-05-22T04:35:53.029793Z", "folder_id": "aa524b74-5870-4f51-a801-6b3b5c058fd7", "name": "norwegian_table_dynamic.wdp", "profiles_count": 0 } ] } } ``` ``` -------------------------------- ### Workspace Folders Removal Response Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Example JSON response after successfully removing folders. Indicates a successful operation with an HTTP code of 200 and a null data field. ```json { "status": { "error_code": "", "http_code": 200, "message": "Folders successfully removed" }, "data": null } ``` -------------------------------- ### Get Automation Token Source: https://documenter.getpostman.com/view/28533318/2s946h9Cv9#918a9c42-cb0f-497f-9bdd-a44d9d760be5 Retrieves an automation token for workspace operations. Ensure your account has automation enabled. The token can be used for all subsequent API calls. ```bash curl --location 'https://api.multilogin.com/workspace/automation_token?expiration_period=1h' \ --header 'Accept: application/json' ```