Skip to content

Profile Management

Create, update, clone, move, lock, and delete browser profiles via the Cloud API.

Base URL: https://api.multilogin.com

Create Profile

POST /profile/create

Supports Strict and Non-Strict modes. In Non-Strict mode, unspecified parameters receive default values.

Required Parameters (Strict Mode)

ParameterTypeDescription
namestringProfile name
browser_typestringmimic or stealthfox
os_typestringwindows, macos, linux, android
folder_idUUIDTarget folder
parametersobjectFingerprint and flag configuration

Fingerprint Flags

The flags object inside parameters controls browser fingerprinting:

FlagTypeDescription
audio_maskingstringAudioContext fingerprint masking
fonts_maskingstringFont enumeration masking
media_devices_maskingstringMedia devices masking
screen_maskingstringScreen resolution masking
graphics_maskingstringWebGL/Canvas masking
graphics_noisestringCanvas noise injection
webrtc_maskingstringWebRTC IP leak prevention
geolocation_maskingstringGeolocation spoofing
timezone_maskingstringTimezone masking
locale_maskingstringLocale/language masking
ports_maskingstringPort scanning protection
navigator_maskingstringNavigator API masking

Masking Values

Each flag accepts one of these values:

ValueMeaning
maskApply masking based on profile fingerprint
realUse real system values
customUse user-specified custom values
bash
curl -X POST https://api.multilogin.com/profile/create \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-profile",
    "browser_type": "mimic",
    "os_type": "windows",
    "folder_id": "FOLDER_UUID",
    "parameters": {
      "fingerprint": {
        "cmd_params": "",
        "flags": {
          "audio_masking": "mask",
          "fonts_masking": "mask",
          "media_devices_masking": "mask",
          "screen_masking": "real",
          "graphics_masking": "mask",
          "graphics_noise": "mask",
          "webrtc_masking": "mask",
          "geolocation_masking": "mask",
          "timezone_masking": "mask",
          "locale_masking": "mask"
        }
      },
      "storage": {
        "is_local": false,
        "save_service_worker": false
      },
      "proxy": {
        "type": "none"
      }
    }
  }'

Response:

json
{
  "status": {
    "error_code": "",
    "http_code": 200,
    "message": ""
  },
  "data": {
    "ids": ["8feb79fc-2b42-4d54-a3eb-f26fddd31499"]
  }
}

Update Profile

POST /profile/update

Update an existing profile's configuration. Supports Strict and Non-Strict modes.

bash
curl -X POST https://api.multilogin.com/profile/update \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "profile_id": "PROFILE_UUID",
    "name": "updated-name",
    "parameters": {
      "proxy": {
        "type": "http",
        "host": "proxy.example.com",
        "port": 8080,
        "username": "user",
        "password": "pass"
      }
    }
  }'

Clone Profile

POST /profile/clone

Create a copy of an existing profile with a new ID.

ParameterTypeRequiredDescription
profile_idUUIDYesSource profile to clone
countnumberNoNumber of clones (default: 1)
bash
curl -X POST https://api.multilogin.com/profile/clone \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_id": "SOURCE_UUID", "count": 3}'

Remove Profile

POST /profile/remove

Delete one or more profiles.

ParameterTypeRequiredDescription
profile_idsUUID[]YesArray of profile IDs to delete
permanentlybooleanNoSkip trash bin (default: false)
bash
curl -X POST https://api.multilogin.com/profile/remove \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_ids": ["UUID1", "UUID2"]}'

Move Profiles to Folder

POST /profile/move

Move profiles between folders.

bash
curl -X POST https://api.multilogin.com/profile/move \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "profile_ids": ["UUID1", "UUID2"],
    "folder_id": "TARGET_FOLDER_UUID"
  }'

Lock/Unlock Profiles

POST /profile/lock / POST /profile/unlock

Lock profiles to prevent concurrent editing or launching.

bash
# Lock
curl -X POST https://api.multilogin.com/profile/lock \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_ids": ["UUID1"]}'

# Unlock
curl -X POST https://api.multilogin.com/profile/unlock \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_ids": ["UUID1"]}'

Restore Profiles from Trash

POST /profile/restore

Restore previously deleted profiles from the trash bin.

bash
curl -X POST https://api.multilogin.com/profile/restore \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"profile_ids": ["UUID1"]}'

Profile Lifecycle