Skip to main content
Are you experiencing issues obtaining the token?
Contact support

Binance - Binance captcha

Attention!
  • CapMonster Cloud uses built-in proxies by default — their cost is already included in the service. You only need to specify your own proxies in cases where the website does not accept the token or access to the built-in services is restricted.

  • If you are using a proxy with IP authorization, make sure to whitelist the address 65.21.190.34.

  • Use only to log in with your account.

Request parameters

type<string>required

BinanceTask


websiteURL<string>required

The address of the main page where the captcha is solved.


websiteKey<string>required

A unique parameter for your website's section. The value of the parameter bizId, bizType, or bizCode. It can be taken from the traffic (see the description below).


validateId<string>required

A dynamic key. The value of the parameter validateId, securityId, or securityCheckResponseValidateId. It can be taken from the traffic (see the description below).


userAgent<string>optional

Browser User-Agent.
Pass only a valid UA from Windows OS. Currently it is: userAgentPlaceholder


proxyType<string>optional

http - regular http/https proxy;
https - try this option only if "http" doesn't work (required for some custom proxies);
socks4 - socks4 proxy;
socks5 - socks5 proxy.


proxyAddress<string>optional

IPv4/IPv6 proxy IP address. Not allowed:

  • using transparent proxies (where you can see the client's IP);
  • using proxies on local machines.

proxyPort<integer>optional

Proxy port.


proxyLogin<string>optional

Proxy-server login.


proxyPassword<string>optional

Proxy-server password.

Create task method

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

Request

{
"clientKey": "API_KEY",
"task":
{
"type": "BinanceTask",
"websiteURL": "https://example.com",
"websiteKey": "login",
"validateId": "cb0bfefa598b4c3887661fde54ecd57b",
"userAgent": "userAgentPlaceholder"
}
}

Response

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

Get task result method

Use the method getTaskResult to obtain the Binance solution.

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

Request

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

Response

{
"errorId":0,
"status":"ready",
"solution":
{
"token":"captcha#09ba4905a79f44f2a99e44f234439644-ioVA7neog7eRHCDAsC0MixpZvt5kc99maS943qIsquNP9D77",
"userAgent":"userAgentPlaceholder"
}
}

How to obtain websiteKey and validateId

Enable Developer Tools, go to the Network tab, activate the CAPTCHA, and look at the requests. Some of them will contain the required parameter values. For example, the parameters:

bizCode: "CMC_register", securityId: "09295759baca4d4fbeae80d9ffeaefd8"

or

bizId: "CMC_register", securityCheckResponseValidateId: "09295759baca4d4fbeae80d9ffeaefd8"

or

bizType: "login", validateId: "ff965ea6216b46f3825fa827ecaf297f"

or

bizId: "login", securityCheckResponseValidateId: "ff965ea6216b46f3825fa827ecaf297f"

The necessary parameters to solve the captcha can be obtained by executing JavaScript:

let originalBCaptcha = window.BCaptcha;
let BCaptchaData;

Object.defineProperty(window, 'BCaptcha', {
get: function() {
return function(args) {
const BCaptcha = new originalBCaptcha(args);
let BCaptchaShow = BCaptcha.__proto__.show;

BCaptcha.__proto__.show = function(args) {
BCaptchaData = args;
return 1;
};

return BCaptcha;
};
}
});

Then, you can retrieve the parameters, for example, like this BCaptchaData.securityCheckResponseValidateId.

Use the SDK library

Show code (for browser)
// https://github.com/ZennoLab/capmonstercloud-client-js

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

const API_KEY = "YOUR_API_KEY"; // Specify your CapMonster Cloud API key

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

// Basic example without proxy
// CapMonster Cloud automatically uses its own proxies
let binanceRequest = new BinanceRequest({
websiteURL: 'https://example.com', // URL of the page with Binance captcha
websiteKey: 'login', // Replace with the correct value
validateId: 'cb0bfefa598b4c3887661fde54ecd57b'
});

// Example of using your own proxy
// Uncomment this block if you want to use your own proxy
/*
const proxy = {
proxyType: "http",
proxyAddress: "123.45.67.89",
proxyPort: 8080,
proxyLogin: "username",
proxyPassword: "password"
};

binanceRequest = new BinanceRequest({
websiteURL: 'https://example.com',
websiteKey: 'login',
validateId: 'cb0bfefa598b4c3887661fde54ecd57b',
proxy
});
*/

// Optionally, you can check the balance
const balance = await client.getBalance();
console.log("Balance:", balance);

const result = await client.Solve(binanceRequest);
console.log("Solution:", result);
});
Show code (Node.js)
// https://github.com/ZennoLab/capmonstercloud-client-js

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

const API_KEY = "YOUR_API_KEY"; // Specify your CapMonster Cloud API key

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

// Basic example without proxy
// CapMonster Cloud automatically uses its own proxies
let binanceRequest = new BinanceRequest({
websiteURL: 'https://example.com', // URL of the page with Binance captcha
websiteKey: 'login', // Replace with the correct value
validateId: 'cb0bfefa598b4c3887661fde54ecd57b'
});

// Example of using your own proxy
// Uncomment this block if you want to use your own proxy
/*
const proxy = {
proxyType: "http",
proxyAddress: "123.45.67.89",
proxyPort: 8080,
proxyLogin: "username",
proxyPassword: "password"
};

binanceRequest = new BinanceRequest({
websiteURL: 'https://example.com',
websiteKey: 'login',
validateId: 'cb0bfefa598b4c3887661fde54ecd57b',
proxy
});
*/

// Optionally, you can check the balance
const balance = await client.getBalance();
console.log("Balance:", balance);

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

solveBinanceCaptcha().catch(console.error);