Cutcaptcha
Token-based method to bypass Cutcaptcha.
The token received must be set as the value
attribute of the input#cap_token
element and/or passed to the callback function.
Task types
- CutCaptchaTaskProxyless - we use our own pool of proxies
- CutCaptchaTask - we use your proxies
CutCaptchaTaskProxyless task type specification
Property | Type | Required | Description |
---|---|---|---|
type | String | Yes | Task type: CutCaptchaTaskProxyless CutCaptchaTask |
websiteURL | String | Yes | The full URL of target web page where the captcha is loaded. We do not open the page, not a problem if it is available only for authenticated users |
miseryKey | String | Yes | The value of CUTCAPTCHA_MISERY_KEY variable defined on page. |
apiKey | String | Yes | The value of data-apikey attribute of iframe's body. Also the name of javascript file included on the page |
CutCaptchaTask task type specification
CutCaptchaTask
extends CutCaptchaTaskProxyless
adding a set of proxy-related parameters listed below
Property | Type | Required | Description |
---|---|---|---|
proxyType | String | Yes | Proxy type: http socks4 socks5 |
proxyAddress | String | Yes | Proxy IP address or hostname |
proxyPort | Integer | Yes | Proxy port |
proxyLogin | String | No | Login for basic authentication on the proxy |
proxyPassword | String | No | Password for basic authentication on the proxy |
Request examples
Method: createTask
API endpoint: https://api.2captcha.com/createTask
CutCaptchaTaskProxyless
json
{ "clientKey": "YOUR_API_KEY", "task": { "type": "CutCaptchaTaskProxyless", "miseryKey": "a1488b66da00bf332a1488993a5443c79047e752", "apiKey": "SAb83IIB", "websiteURL": "https://example.cc/foo/bar.html" } }
CutCaptchaTask
json
{ "clientKey": "YOUR_API_KEY", "task": { "type": "CutCaptchaTask", "miseryKey": "a1488b66da00bf332a1488993a5443c79047e752", "apiKey": "SAb83IIB", "websiteURL": "https://example.cc/foo/bar.html", "proxyType": "http", "proxyAddress": "1.2.3.4", "proxyPort": "8080", "proxyLogin": "user23", "proxyPassword": "p4$w0rd" } }
Response example
Method: getTaskResult
API endpoint: https://api.2captcha.com/getTaskResult
json
{ "errorId": 0, "status": "ready", "solution": { "token": "BazM23cpFUUyAAAdqPwNEDZx0REtH3ss" }, "cost": "0.00299", "ip": "1.2.3.4", "createTime": 1692863536, "endTime": 1692863556, "solveCount": 1 }
Using the token
Use the returned token as a value for input
with id = cap_token
, then submit it's parent form, for example:
js
document.querySelector('input#cap_token').value='BazM23cpFUUyAAAdqPwNEDZx0REtH3ss' document.querySelector('form').submit()
If there's a callback function defined, you can call it passing the token as argument:
js
capResponseCallback('BazM23cpFUUyAAAdqPwNEDZx0REtH3ss')