HCaptchaTask : hCaptcha puzzle solving
The object contains data for hCaptcha solving task. To provide solid universality for solving this type of task we have reproduce every piece of environment used for an automation task you plan to complete. This includes:
proxy access
browser's user-agent
(optionally) cookies
This approach will eliminate all possible obstacles which might implement in the future.
This type of captcha might be solved a bit longer than usual image captcha, but this issue is compensated by the fact that g-captcha-response value we send to you is valid for the next 60 seconds after we solves your hCaptcha.
Attention!
hCaptcha seems to have limit of solved tasks from one IP, about 3 items per 12 hours. Take this into account when you build solving process through your proxy.
Attention!
Proxies with IP authorization are not yet supported.
Object structure
Parameter | Type | Required | Value |
type | String | Yes | HCaptchaTask |
websiteURL | String | Yes | Address of a webpage with hCaptcha |
websiteKey | String | Yes | hCaptcha website key. |
isInvisible | Bool | No | Use |
data | String | No | Custom data that is used in some implementations of hCaptcha, mostly with |
proxyType | String | Yes | Type of the proxy http - usual http/https proxy |
proxyAddress | String | Yes | Proxy IP address IPv4/IPv6. Not allowed to use:
|
proxyPort | Integer | Yes | Proxy port |
proxyLogin | String | No | Login for proxy which requires authorizaiton (basic) |
proxyPassword | String | No | Proxy password |
userAgent | String | No | The browser User-Agent used in the emulation. You must use a modern browser signature or Google will return an error asking you to update your browser. |
cookies | String | No | Additional cookies which we must use during interaction with target page. Format: cookiename1=cookievalue1; cookiename2=cookievalue2 |
fallbackToActualUA | Bool | No | true - when specifying this parameter, we ignore the irrelevant User Agent that users send in the request, and return our own (relevant) one with getTaskResult. This will improve the acceptance of tokens. false - we insert the User Agent that is specified in the request. If the User Agent is invalid, you will receive an error ERROR_WRONG_USERAGENT (USERAGENT IS EXPIRED in the log). |
Supported Types
The supported image types are as follows:
|
|
|
|
|
|
Request example
Address https://api.capmonster.cloud/createTask
{
"clientKey":"dce6bcbb1a728ea8d871de6d169a2057",
"task":
{
"type":"HCaptchaTask",
"websiteURL":"https://lessons.zennolab.com/captchas/hcaptcha/?level=easy",
"websiteKey":"472fc7af-86a4-4382-9a49-ca9090474471",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36",
"fallbackToActualUA":true,
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere"
}
}
Response example
{
"errorId":0,
"taskId":407533072
}
Getting result
Use the method getTaskResult to request an answer for hCaptcha. You will get a response within a 10 - 80 secs period depending on service workload.
Property | Type | Description |
gRecaptchaResponse | String | Hash which should be inserted into hCaptcha submit form on target website. |
userAgent | String | During submitting, you should use the same User Agent with which hCaptcha was solved. |
respKey | String | The result of the "window.hcaptcha.getRespKey()" function when available. Some sites use this value for additional verification. |
Example:
{
"errorId":0,
"status":"ready",
"solution":
{
"gRecaptchaResponse": "P1_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.hKdwYXNza2V5xQb9JvlblBqjTdKpourvlRNpOZLvJb0yJRmsXVFVjyxFWlL1wdYBXaPyFtnxwy2ukbMgwWn62-cjSc98Iw2XIPYWg5MNDKS4_7tBIhjY0PienoKy1...",
"respKey": "E0_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJkYXRhIjoidjQ3RjlqZGFYTllFQXlZZFYyRTlaWlBVQUdLaFpPakpRNjBXRTljVW40VnY3NnhuN2V3R0wwVWd1MW1Wai90WEdoYmt5a2NqVGlGdWpsSlpmVjcza...",
"userAgent": "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"
}
}