Шаблон создания профиля через API в Dolphin {anty}
Ниже описано несколько важных моментов по созданию профиля через API и пример запроса для его создания ⬇️
Юзер-агент 🌐
Сам юзер агент можно получить для нужной платформы (операционной системы) профиля, сделав GET-запрос на адрес:
Так же в конце адреса, после &platform=, можно указать нужную платформу из вариантов: MacOS, Windows, Linux. Выдача юзер агента доступна только при указании заголовка Authorization со значением Bearer API_ТОКЕН
WEBGLinfo 👾
Значения для требуемой платформы (операционной системы) профиля можно получить, сделав GET-запрос на
Так же в конце адреса, после &platform=, можно указать нужную платформу из вариантов: MacOS, Windows, Linux. Выдача конфига WebGL доступна только при указании заголовка Authorization со значением Bearer API_ТОКЕН
Совместимость железа 🧩
Параметры platform (ОС), webglInfo (видеокарта), cpu (ядра) и memory (память) проверяются на совместимость по таблице реально существующих конфигураций. Например, macOS с видеокартой NVIDIA или 2 ядра с 64 ГБ памяти будут считаться некорректным сочетанием.
Если в запросе несовместимое сочетание, профиль не создастся: API вернёт ошибку, в которой будет указано, какая именно комбинация некорректна.
💡 Чтобы не получить ошибку, бери WebGL info запросом из раздела выше для той же платформы, что и в профиле. Если профиль перестал создаваться, хотя раньше всё работало, проверь ответ API: скорее всего, дело в несовместимом железе.
Уже созданные профили продолжают работать как раньше.
Пример рабочего кода для создание профиля 🛠️
Этот код написан на языке Python. Он отправляет POST-запрос к API для создания профиля браузера с указанными настройками (в данном случае Win профиль с юзерагентом на 140 версию ядра Chrome).
import requests
url = "https://dolphin-anty-api.com/browser_profiles"
headers = {"Content-Type": "application/json", "Authorization": "Bearer API_ТОКЕН"}
payload = {
"name": "Profile",
"platform": "windows",
"browserType": "anty",
"mainWebsite": "",
"useragent": {
"mode": "manual",
"value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36"
},
"webrtc": {"mode": "altered", "ipAddress": None},
"canvas": {"mode": "real"},
"webgl": {"mode": "real"},
"webglInfo": {
"mode": "manual",
"vendor": "Google Inc. (Intel)",
"renderer": "ANGLE (Intel, Intel(R) Iris(R) Xe Graphics Direct3D11 vs_5_0 ps_5_0, D3D11)",
"webgl2Maximum": "{"UNIFORM_BUFFER_OFFSET_ALIGNMENT":256,"MAX_TEXTURE_SIZE":16384}"
},
"timezone": {"mode": "auto", "value": None},
"locale": {"mode": "auto", "value": None},
"cpu": {"mode": "manual", "value": 4},
"memory": {"mode": "manual", "value": 8},
"screen": {"mode": None, "resolution": None},
"doNotTrack": False,
"osVersion": "10"
}
resp = requests.post(url, headers=headers, json=payload)
print(resp.status_code, "
", resp.text)
ℹ️ Большинство запросов и подробно расписанные их параметры можно найти в нашей полной документации по этому адресу 🧑💻
ℹ️ Параметр User-agent может быть только в режиме manual (вручную)
Как WebGL info, так и User-agent можно получить только заранее запросом, но рекомендуем использовать значения, предоставленные Dolphin{anty}.