Введение
Vision предоставляет возможность запуска "одноразового" профиля. Данный профиль будет запущен сразу после выполнения запроса на запуск, а по закрытии данный профиль будет удален и недоступен для последующего использования. При этом данные из профиля (Cookies) будут находиться в ответе на запрос закрытия профиля.
Данный функционал полезен автоматизаторам, работа которых не подразумевает использование профиля после его первого запуска и последующей остановки.
Важно! Все параметры, описанные ниже, являются опциональными.
Для старта профиля не требуется никаких параметров, указывайте их только в случае, если необходимо запустить профиль с определёнными значениями.
Базовый URL для запуска Instant профиля
Используйте метод GET для запуска профиля без параметров. В этом случае профиль будет запущен со случайным отпечатком, ОС отпечатка будет совпадать с вашей.
Используйте метод POST для запуска профиля с параметрами, указанными в теле запроса.
Базовый URL для остановки Instant профиля
Запрос
Заголовки запроса
Тело запроса
Объект Fingerprint
Объект navigator
Список доступных тайм-зон можно получить выполнив соответствующий запрос к Local API. Подробнее об этом написано здесь.
Список доступных языков также можно получить аналогичным запросом.
Объект screen
Параметр webgl_renderer
Список доступных видеокарт можно получить выполнив соответствующий запрос к Local API. Подробнее об этом написано здесь.
Объект media_devices
Объект geolocation
Объект noise
В случае, если не требуется накладывать шум ни на один из вышеуказанных параметров - объект noise можно не указывать.
Если шум требуется указать только на одном или двух из трёх параметров, то оставшиеся параметры указывать в объекте noise не обязательно.
Параметр canvas
Если требуется отключить Canvas - значение off, если требуется режим Реальный (Real) - не указывайте параметр canvas в объекте fingerprint.
Параметр webgl
Если требуется отключить WebGL - значение off, если требуется режим Реальный (Real) - не указывайте параметр webgl в объекте fingerprint.
Параметр webrtc
Если требуется отключить WebRTC - значение off, если требуется указать значение Manual (Вручную) - указывается IP адрес в формате строки, например 1.1.1.1, если требуется режим Авто (Auto) - не указывайте параметр webrtc в объекте fingerprint.
Параметр ports_protection
Объект behavior
Запуск Instant профиля
Примеры запроса на запуск Instant профиля без параметров
1const url =
2 "http://127.0.0.1:3030/start/instant";
3
4const options = {
5 method: "GET",
6 headers: {
7 "X-Token": "Your Token",
8 },
9};
10
11fetch(url, options)
12 .then((response) => {
13 response.json().then((data) => {
14 console.log(data);
15 });
16 })
17 .catch((error) => {
18 console.error(error);
19 });Ответ
Данные ответа
Пример ответа
1{
2 success: true,
3 profile_id: "039e50ce-6748-43c3-81ca-9d16aece007e",
4 port: 61453
5}Примеры запроса на запуск Instant профиля со всеми параметрами
1const url =
2 "http://127.0.0.1:3030/start/instant";
3
4const body = {
5 "name": "Profile 1",
6 "os": "macos",
7 "version": 142,
8 "smart": "standard",
9 "fingerprint": {
10 "navigator": {
11 "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
12 "language": "en-GB",
13 "languages": [
14 "en-GB",
15 "en",
16 "en-US",
17 "en"
18 ],
19 "timezone": "America/New_York",
20 "hardware_concurrency": 8,
21 "device_memory": 8
22 },
23 "screen": {
24 "resolution": "1920x1080",
25 "pixel_ratio": 2
26 },
27 "webgl_renderer": "Apple M3",
28 "media_devices": {
29 "audio_input": 1,
30 "audio_output": 1,
31 "video_input": 1
32 },
33 "geolocation": {
34 "latitude": 40.7128,
35 "longitude": -74.006,
36 "accuracy": 100
37 },
38 "noise": {
39 "canvas": true,
40 "webgl": true,
41 "client_rects": true,
42 "audio": true
43 },
44 "canvas": "off",
45 "webgl": "off",
46 "webrtc": "1.1.1.1",
47 "ports_protection": [
48 3389,
49 5900,
50 5901
51 ]
52 },
53 "proxy": "socks5://user:pass@1.1.1.1:5555",
54 "extensions": [
55 "C:\\extension1",
56 "C:\\extension2"
57 ],
58 "cookies": [
59 {
60 "domain": ".google.com",
61 "name": "1P_JAR",
62 "value": "2021-11-10-11",
63 "path": "/",
64 "expires": 1639134293,
65 "secure": true,
66 "http_only": false,
67 "same_site": "none"
68 }
69 ],
70 "behavior": {
71 "urls": [
72 "https://google.com/"
73 ],
74 "args": [
75 "--flag"
76 ],
77 "headless": false,
78 "remote_debugging_port": 61374,
79 "timeout": 3
80 }
81}
82
83const options = {
84 method: "POST",
85 headers: {
86 "X-Token": "Your Token",
87 "Content-Type": "application/json"
88 },
89 body: JSON.stringify(body)
90};
91
92fetch(url, options)
93 .then((response) => {
94 response.json().then((data) => {
95 console.log(data);
96 });
97 })
98 .catch((error) => {
99 console.error(error);
100 });Ответ
Данные ответа
Пример ответа
1{
2 success: true,
3 profile_id: "b437dea0-e465-4a18-b2b4-db2521df9eae",
4 port: 60756
5}Остановка Instant профиля
Пример остановки Instant профиля
Обратите внимание, вместо PROFILE_ID нужно вставить ID запущенного Instant профиля!
1const url =
2 "http://127.0.0.1:3030/stop/instant/PROFILE_ID";
3
4const options = {
5 method: "GET",
6 headers: {
7 "X-Token": "Your Token",
8 },
9};
10
11fetch(url, options)
12 .then((response) => {
13 response.json().then((data) => {
14 console.log(data);
15 });
16 })
17 .catch((error) => {
18 console.error(error);
19 });Ответ
Данные ответа
Пример ответа
1{
2 success: true,
3 profile_id: "75b4f9e6-fa6a-45a9-b272-f35d06a749d1",
4 folder_id: "00000000-0000-0000-0000-000000000000",
5 cookies: [{
6 "domain": ".google.com",
7 "name": "1P_JAR",
8 "value": "2021-11-10-11",
9 "path": "/",
10 "expires": 1639134293,
11 "secure": true,
12 "http_only": false,
13 "same_site": "none"
14 }]
15}