API FAQ
Подробная документация по API расположена по ссылке: https://documenter.getpostman.com/view/1801428/UVC6i6eA
Можно ли массово создать профили и заполнить их Cookies/подключить расширения/назначить теги?
Вы можете воспользоваться нашим API для массового создания профилей с Cookies и определенными параметрами, которые вам требуются. Это возможно реализовать, используя цикл языка программирования, удобного для вас, и используя текстовый файл с Cookies и другими данными, который вы можете обработать/разделить методами языка программирования и последовательно передавать эти параметры в запрос создания профиля.
У вас возможна автоматизация с помощью библиотек автоматизации - Puppeteer, Pyppeteer, Playwright, Selenium?
Да, вы можете использовать данные библиотеки для автоматизации. В нашей документации по API представлены примеры кода для старта профиля и подключения библиотеки к запущенному профилю.
Запустил профиль через API, в клиенте на кнопке "START" надпись "Auto", но интерфейс профиля не отображается.
Проверьте аргументы запуска профиля, а именно параметр headless. Чтобы интерфейс профиля отображался, требуется в данном параметре выставлять значение false.
Можно ли получить название всех профилей на аккаунте через API?
Да, для этого вы можете воспользоваться методом GET Get Profiles из нашей API документации.
Если на вашем аккаунте более 100 профилей, вам потребуется в URL адресе запроса изменять номер страницы в запросе, также в параметрах вывода fields выставить title. Вы можете реализовать это в цикле языка программирования, который используете.
Отправив GET запрос по данному URL адресу, вы получите UUID и Title 100 профилей на первой странице.
https://app.octobrowser.net/api/v2/automation/profiles?page_len=100&page=0&fields=title
Можно ли выгрузить все Cookies профиля через API?
Полноценно экспортировать все Cookies профиля, используя API, на данный момент невозможно. Используя библиотеки автоматизации (Selenium, Puppeteer, Playwright), можно записывать Cookies только открытой страницы.
Консультация по получению Cookies открытой страницы в профиле через библиотеку автоматизации технической поддержкой не производится.
При выполнении запроса получаю ошибку 429
Остановите ваш скрипт и приостановите запросы на некоторое время. С лимитами API для вашего аккаунта вы можете ознакомиться в соответствующих заголовках ответа сервера.
Retry-After: 0 # Если 0 - можете слать следующий запрос
X-Ratelimit-Limit: 200 # RPM - Общий лимит количества запросов в минуту
X-Ratelimit-Limit-Hour: 3000 # RPH - Общий лимит количества запросов в час
X-Ratelimit-Remaining: 4 # remaining RPM - Оставшееся количество запросов в минуту
X-Ratelimit-Remaining-Hour: 2999 # remaining RPH - Оставшееся количество запросов в час
X-Ratelimit-Reset: 1671789217 # unix timestamp - Время по UNIX, через которое сбросится лимит
ВАЖНО!
Не отправляйте запросы, если у вас исчерпаны лимиты, иначе время ограничения будет увеличено и могут быть применены более строгие ограничения. Проверяйте заголовки лимитов в ваших скриптах, прежде чем слать запрос.
Какой драйвер использовать для Selenium?
Вам требуется использовать драйвер Chromium с версией, которая соответствует версии текущего ядра Octo. Текущую версию ядра вы можете посмотреть, введя в адресной строке запущенного профиля chrome://version. Если драйвер под новое ядро еще не выпущен, используйте драйвер для предыдущей версии.
Какие запросы к Local API израсходуют количество допустимых запросов?
Из всех запросов, которые доступны в колонке Local API, израсходует RPM (количество запросов в минуту) и RPH (количество запросов в час) только запрос Start Profile.
Следующие запросы не расходуют лимиты запросов:
- List Active Profiles
- Stop Profile
- Force Stop Profile
- Login
- Logout
- Get Client Version
- Update Client
Как получить UUID расширений?
Вы можете получить UUID расширений 3 способами:
1 способ
- Подключите расширение вручную в любой профиль через редактирование профиля.
- Получите параметры данного профиля через API с помощью запроса GET Get Profile.
- В ответе сервера вы увидите параметры профиля, включая UUID подключенных расширений.
2 способ
Используйте запрос GET Get Extensions из нашей документации.
3 способ
- Откройте профиль с подключенным расширением.
- В адресной строке профиля введите chrome://extensions/ и нажмите Enter.
- На нужном расширении нажмите кнопку "Сведения".
- Внизу в графе "Источник" скопируйте UUID расширения вместе с версией.
Как получить UUID иконки?
- Сохраните иконку в любой профиль.
- Выполните запрос GET Get Profile из нашей документации для получения информации о профиле, в котором вы сохранили иконку.
- В ответе сервера в поле "image" будет UUID данной иконки, который вы сможете использовать для установки иконки в другие профили.
Как сделать так, чтобы профиль при запуске открывался в полный размер?
Для того, чтобы окно профиля растягивалось на максимальный размер при старте через API, вы можете передать флаг --start-maximized в аргументах запуска профиля.
flags: ["--start-maximized"]
Можно ли через ваше API менять IP прокси?
Если у вашего прокси предусмотрена ссылка для смены IP адреса, вы можете выполнить обычный GET запрос по данной ссылке. Наше API для этого не требуется.
Пример запроса для Python и библиотеки requests.
import requests
response = requests.get('ссылка на смену IP адреса’)
Пример запроса для Node.js и библиотеки Axios.
const axios = require('axios');
axios.get('ссылка на смену IP адреса');
При использовании параллельной автоматизации нескольких профилей одновременно скрипты некорректно отрабатывают в окнах, которые не в фокусе (на заднем плане).
Попробуйте добавить в аргументы запуска ваших профилей флаг --disable-backgrounding-occluded-windows.
Пример:
flags:["--disable-backgrounding-occluded-windows"]
Можно ли запустить Cookie робот по API?
Cookie robot невозможно запустить через API. Если вы используете API, вы достаточно легко можете реализовать подобный или еще более продвинутый функционал, используя библиотеки автоматизации (Puppeteer, Playwright, Selenium).
Как передать параметры при создании профиля через API?
const body = {
title: "profile_title", /* обязательное поле */
fingerprint: {
os: "mac", /* обязательное поле, или "win" */
os_arch: "arm", /* необязательное поле, или "x86", если хотим создать профиль mac с процессорами Intel */
os_version: "11" /* необязательное поле
для win профилей - 10/11,
для mac arm - 11/12/13,14,
для mac x86 (Intel) - 11,12,13,14
*/
}
}
Как передавать остальные параметры в запросе на создание профиля:
- С подробной информацией вы можете ознакомиться в нашей API документации. Выберите запрос POST Create Profile и пролистайте страницу до блока кода Body, где доступна структура принимаемых параметров.
- Создайте профиль и получите его параметры через запрос GET Get Profile. В ответе сервера вы увидите структуру и параметры профиля.