RecaptchaV3TaskProxyless: solve Google Recaptcha v3

This type of task object is required to solve Google Recaptcha V3 on a worker’s computer. This task is executed by our service using our own proxy servers and/or workers’ IP addresses.

Please note that there’s a difference between Recaptcha V2-invisible and Recaptcha V3. They look the same, and it might be confusing. There’s a quick way to determine the correct type: try solving it with our API as V2-invisible and V3. In one of your attempts, you’ll get an error, and in the other you won’t.

We test our workers for their recaptcha “score” and put them in 3 groups (queues): 0.3, 0.7 and 0.9. Each might have slightly different pricing due to the number of idle workers. By passing property minScore you define which queue your task goes into. Most of our available workers have score 0.3, and the minority have 0.9.

An example of Recaptcha v3. There’s usually a logo badge is in the bottom-right corner of the page. But website owners can easily remove it with Javascript.

Task object

PropertyTypeRequiredPurpose
typeStringYesRecaptchaV3TaskProxyless
websiteURLStringYesAddress of a target web page. Can be located anywhere on the web site, even in a member area. Our workers don’t navigate there but simulate the visit instead.
websiteKeyStringYesRecaptcha website key.
minScoreDoubleYesFilters workers with a particular score. It can have one of the following values:
0.3
0.7
0.9
pageActionStringNoRecaptcha’s “action” value. Website owners use this parameter to define what users are doing on the page.
Example:

grecaptcha.execute(‘site_key’, {action:’login_test’})
isEnterpriseBooleanNoSet this flag to “true” if you need this V3 solved with Enterprise API. Default value is “false” and Recaptcha is solved with non-enterprise API. Can be determined by a javascript call like in the following example:

grecaptcha.enterprise.execute(‘site_key’, {..})

Request example

curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"HCaptchaTask",
            "websiteURL":"https://hcaptcha.com/",
            "websiteKey":"00000000-0000-0000-0000-000000000000",
            "proxyType":"http",
            "proxyAddress":"8.8.8.8",
            "proxyPort":8080,
            "proxyLogin":"proxyLoginHere",
            "proxyPassword":"proxyPasswordHere",
            "userAgent":"MODERN_USER_AGENT_HERE"
        }
}' https://api.ocrdatasolutions.com/createTask

Response example

JSON with no errors

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

JSON with an error

{
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}

Retrieve the solution

Use method getTaskResult to request the solution. Give the worker about 5 seconds before making your first request. If the worker is still busy, retry in 3 seconds.

Task solution object

PropertyTypePurpose
gRecaptchaResponseStringToken string required for interacting with the submit form on the target website.

Response example

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}