Перейти к основному содержимому
Возникают проблемы с получением токена?
Свяжитесь с поддержкой

DataDome

DataDome
/ 1000 токенов
99%

Данный тип капчи в основном требует от пользователя решить головоломку, перемещая ползунок для подтверждения.

Внимание!

Данная задача будет выполняться с использованием наших прокси-серверов. Используйте полученные куки в своём проекте, чтобы автоматически пройти капчу.

Параметры запроса

type<string>required

CustomTask


class<string>required

DataDome


websiteURL<string>required

Адрес основной страницы, на которой решается капча.


metadata.htmlPageBase64<string>required (если не заполнено metadata.captchaUrl)

Объект, который содержит дополнительные данные о капче: "htmlPageBase64": "..." - закодированная в base64 html-страница, которая приходит с кодом 403 и заголовком Set-Cookie: datadome="..." в ответ на get-запрос к целевому сайту.


metadata.captchaUrl<string>required (если не заполнено metadata.htmlPageBase64)

"captchaUrl" - ссылка на капчу. Обычно имеет следующий вид: "https://geo.captcha-delivery.com/captcha/?initialCid=...".


metadata.datadomeCookie<string>required

Ваши куки от datadome. Можно получить на странице с помощью "document.cookie" или в заголовке запроса Set-Cookie: "datadome=..." (см. пример запроса /createTask)


userAgent<string>optional

User-Agent браузера.
Передавайте только актуальный UA. Сейчас таковым является: Mozilla/5.0 (iPhone; CPU iPhone OS 17_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5.1 Mobile/21F90 Safari/604.1


proxyType<string>optional

http - обычный http/https прокси;
https - попробуйте эту опцию только если "http" не работает (требуется для некоторых кастомных прокси);
socks4 - socks4 прокси;
socks5 - socks5 прокси.


proxyAddress<string>optional

IP адрес прокси IPv4/IPv6. Не допускается:

  • использование имен хостов;
  • использование прозрачных прокси (там где можно видеть IP клиента);
  • использование прокси на локальных машинах.


proxyPort<integer>optional

Порт прокси.


proxyLogin<string>optional

Логин прокси-сервера.


proxyPassword<string>optional

Пароль прокси-сервера.

Метод создания задачи

POST
https://api.capmonster.cloud/createTask

Запрос

{
"clientKey": "API_KEY",
"task": {
"type": "CustomTask",
"class": "DataDome",
"websiteURL": "https://www.leboncoin.fr/",
"userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5.1 Mobile/21F90 Safari/604.1",
"metadata": {
"htmlPageBase64": "PGh0bWw+PGhlYWQ+PHRpdGxlPmJs...PC9odG1sPg==",
"datadomeCookie": "datadome=VYUWrgJ9ap4zmXq8Mgbp...64emvUPeON45z"
}
}
}

Ответ

{
"errorId":0,
"taskId":407533072
}

Метод получения результата задачи

Используйте метод getTaskResult, чтобы получить решение DataDome.

POST
https://api.capmonster.cloud/getTaskResult

Запрос

{
"clientKey":"API_KEY",
"taskId": 407533072
}

Ответ

{
"errorId":0,
"status":"ready",
"solution": {
"domains": {
"site.com": {
"cookies": {
"datadome": "t355hfeuUFbsWpoMzXyIWL_ewfwgre25345323rwgregeFEkG5iju9esKVfWMzuLAjcfCIJUIHU7332At1l~HY78g782hidwfeO4K2ZP_CFHYUFEgygfiYGfGYEUfgyefWrXG6_3sy; Max-Age=31536000; Domain=.site.com; Path=/; Secure; SameSite=Lax"
}
}
}
}
}

Используйте библиотеку SDK

// https://github.com/ZennoLab/capmonstercloud-client-js

import { CapMonsterCloudClientFactory, ClientOptions, DataDomeRequest } from '@zennolab_com/capmonstercloud-client';

document.addEventListener('DOMContentLoaded', async () => {
const cmcClient = CapMonsterCloudClientFactory.Create(new ClientOptions({ clientKey: '<your capmonster.cloud API key>' }));
console.log(await cmcClient.getBalance());

const dataDomeRequest = new DataDomeRequest({
websiteURL: 'site.com',
userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 17_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5.1 Mobile/21F90 Safari/604.1',
metadata: {
captchaUrl: 'https://geo.captcha-delivery.com/captcha/?initialCid=12434324',
datadomeCookie: '',
},
});

console.log(await cmcClient.Solve(dataDomeRequest));
});