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

DataDome

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

Внимание!
  • Для выполнения данной задачи используйте ваши собственные прокси.

  • Если прокси с авторизацией по IP, то необходимо добавить адрес 65.21.190.34 в белый список.

  • После решения вы получите специальные cookie, которые необходимо добавить в браузер.

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

type<string>required

CustomTask


class<string>required

DataDome


websiteURL<string>required

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


captchaUrl (внутри metadata)<string>required

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


datadomeCookie (внутри metadata)<string>required

Ваши куки от datadome. Можно получить на странице с помощью document.cookie (если куки не имеют флага HttpOnly), в заголовке запроса Set-Cookie: "datadome=...", либо напрямую из HTML-кода страницы initialCid (см. примеры, как найти datadomeCookie)


proxyType<string>required

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


proxyAddress<string>required

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

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


proxyPort<integer>required

Порт прокси.


proxyLogin<string>required

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


proxyPassword<string>required

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


userAgent<string>optional

User-Agent браузера.
Передавайте только актуальный UA от ОС Windows. Сейчас таковым является: userAgentPlaceholder


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

Важно

В процессе загрузки на странице DataDome может использовать один из двух скриптов: c.js или i.js. Если на целевом сайте используется c.js, извлечённые куки могут не сработать при подтверждении решения. Перед решением рекомендуется проверить, какой скрипт загружается (DevTools → Network / HTML).

Вариант с c.js:

Вариант с i.js:

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

Запрос

{
"clientKey": "API_KEY",
"task": {
"type": "CustomTask",
"class": "DataDome",
"websiteURL": "https://example.com",
"userAgent": "userAgentPlaceholder",
"metadata": {
"captchaUrl": "https://geo.captcha-delivery.com/interstitial/?initialCid=AHrlqAAAAAMA9UvsL58YLqIAXNLFPg%3D%3D&hash=C0705ACD75EBF650A07FF8291D3528&cid=7sfa5xUfDrR4bQTp1c2mhtiD7jj9TXExcQypjdNAxKVFyIi1S9tE0~_mqLa2EFpOuzxKcZloPllsNHjNnqzD9HmBA4hEv7SsEyPYEidCBvjZEaDyfRyzefFfolv0lAHM&referer=https%3A%2F%2Fwww.example.com.au%2F&s=6522&b=978936&dm=cm",
"datadomeCookie": "datadome=VYUWrgJ9ap4zmXq8Mgbp...64emvUPeON45z"
},
"proxyType": "http",
"proxyAddress": "123.45.67.89",
"proxyPort": 8080,
"proxyLogin": "proxyUsername",
"proxyPassword": "proxyPassword"
}
}

Ответ

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

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

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

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

Запрос

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

Ответ

{
"errorId": 0,
"status": "ready",
"solution": {
"domains": {
"www.example.com": {
"cookies": {
"datadome": "P1w0VnjFcTFslfps0J4FaPpY_QPbPBW4MeYxj4LW~pztIfJiSSuBPr8oQTUHzdrfgv137FbOBd3kCUOOgny7LhIkhm5e1qdtzYM4s2e46U_qfERK4KiCy22MOSIDsDyh"
},
"localStorage": null
}
},
"url": null,
"fingerprint": null,
"headers": null,
"data": null
}
}

Как найти datadomeCookie

Через Инструменты разработчика

Вариант 1:

  1. Откройте сайт, защищённый DataDome, в браузере (Chrome, Firefox).

  2. Нажмите F12 → откройте вкладку ApplicationCookies.

  3. Найдите домен сайта (например, www.example.com).

Среди cookie будет ключ datadome — это нужный параметр datadomeCookie.

Вариант 2:

  1. Откройте сайт, где срабатывает DataDome-капча.

  2. Перейдите в DevToolsNetwork, перезагрузите страницу и найдите запрос, в котором загружается страница с параметром initialCid.

Пример URL:

https://geo.captcha-delivery.com/interstitial/?initialCid=...&hash=...&cid=...

или:

  1. Откройте Response этого запроса. В HTML-коде страницы найдите объект:

var ddm = { ... };

  1. Внутри этого объекта будет параметр cid. Его значение и есть актуальное значение cookie datadome.

Вариант 3:

  1. Откройте сайт, где срабатывает DataDome-капча.

  2. Перейдите в DevToolsNetwork, перезагрузите страницу и найдите запрос со статусом 403.

  3. Перейдите на вкладку Headers → Response Headers. В списке заголовков найдите Set-Cookie: и скопируйте значение параметра datadome (формат datadome=<значение>).

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

Показать код (для браузера)
// https://github.com/ZennoLab/capmonstercloud-client-js

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

const API_KEY = "YOUR_API_KEY"; // Укажите ваш API-ключ CapMonster Cloud

document.addEventListener("DOMContentLoaded", async () => {
const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY })
);

// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);

// DataDome решается только с вашими прокси
const proxy = {
proxyType: "http",
proxyAddress: "123.45.67.89",
proxyPort: 8080,
proxyLogin: "username",
proxyPassword: "password"
};

const datadomeRequest = new DataDomeRequest({
_class: 'DataDome',
websiteURL: "https://example.com/", // URL страницы с капчей
userAgent: "userAgentPlaceholder",
proxy,
metadata: {
captchaUrl: "https://geo.captcha-delivery.com/interstitial/?initialCid=AHrlqAAAAAMA9UvsL58YLqIAXNLFPg%3D%3D&hash=C0705ACD75EBF650A07FF8291D3528&cid=7sfa5xUfDrR4bQTp1c2mhtiD7jj9TXExcQypjdNAxKVFyIi1S9tE0~_mqLa2EFpOuzxKcZloPllsNHjNnqzD9HmBA4hEv7SsEyPYEidCBvjZEaDyfRyzefFfolv0lAHM&referer=https%3A%2F%2Fwww.example.com.au%2F&s=6522&b=978936&dm=cm",
datadomeCookie: "datadome=VYUWrgJ9ap4zmXq8Mgbp...64emvUPeON45z"
}
});

const result = await client.Solve(datadomeRequest);
console.log("Solution:", result);
});
Показать код (Node.js)
// https://github.com/ZennoLab/capmonstercloud-client-js

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

const API_KEY = "YOUR_API_KEY"; // Укажите ваш API-ключ CapMonster Cloud

async function solveDataDome() {
const client = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: API_KEY })
);

// При необходимости можно проверить баланс
const balance = await client.getBalance();
console.log("Balance:", balance);

// DataDome решается только с вашими прокси
const proxy = {
proxyType: "http",
proxyAddress: "123.45.67.89",
proxyPort: 8080,
proxyLogin: "username",
proxyPassword: "password"
};

const datadomeRequest = new DataDomeRequest({
_class: 'DataDome',
websiteURL: "https://example.com/", // URL страницы с капчей
userAgent: "userAgentPlaceholder",
proxy,
metadata: {
captchaUrl: "https://geo.captcha-delivery.com/interstitial/?initialCid=AHrlqAAAAAMA9UvsL58YLqIAXNLFPg%3D%3D&hash=C0705ACD75EBF650A07FF8291D3528&cid=7sfa5xUfDrR4bQTp1c2mhtiD7jj9TXExcQypjdNAxKVFyIi1S9tE0~_mqLa2EFpOuzxKcZloPllsNHjNnqzD9HmBA4hEv7SsEyPYEidCBvjZEaDyfRyzefFfolv0lAHM&referer=https%3A%2F%2Fwww.example.com.au%2F&s=6522&b=978936&dm=cm",
datadomeCookie: "datadome=VYUWrgJ9ap4zmXq8Mgbp...64emvUPeON45z"
}
});

const result = await client.Solve(datadomeRequest);
console.log("Solution:", result);
}

solveDataDome().catch(console.error);