Введение
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 },
43 "canvas": "off",
44 "webgl": "off",
45 "webrtc": "1.1.1.1",
46 "ports_protection": [
47 3389,
48 5900,
49 5901
50 ]
51 },
52 "proxy": "socks5://user:pass@1.1.1.1:5555",
53 "extensions": [
54 "C:\\extension1",
55 "C:\\extension2"
56 ],
57 "cookies": [
58 {
59 "domain": ".google.com",
60 "name": "1P_JAR",
61 "value": "2021-11-10-11",
62 "path": "/",
63 "expires": 1639134293,
64 "secure": true,
65 "http_only": false,
66 "same_site": "none"
67 }
68 ],
69 "behavior": {
70 "urls": [
71 "https://google.com/"
72 ],
73 "args": [
74 "--flag"
75 ],
76 "headless": false,
77 "remote_debugging_port": 61374,
78 "timeout": 3
79 }
80}
81
82const options = {
83 method: "POST",
84 headers: {
85 "X-Token": "Your Token",
86 "Content-Type": "application/json"
87 },
88 body: JSON.stringify(body)
89};
90
91fetch(url, options)
92 .then((response) => {
93 response.json().then((data) => {
94 console.log(data);
95 });
96 })
97 .catch((error) => {
98 console.error(error);
99 });Ответ
Данные ответа
Пример ответа
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}