Documentation menu

RecaptchaV3TaskProxyless: solve Google Recaptcha v3

This type of task object is required to solve Google Recaptcha V3 on a worker's computer. This task will be 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 correct type: try solving it with our API as V2-invisible and V3. In one of 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 numbers of idle workers. By passing property minScore you define the queue in which your task will enter. Most of our available workers have score 0.3, and the least amount have 0.9.

More information about Recaptcha V3 can be found in this FAQ section.

An example of Recaptcha v3. Usually there are a logo badge located at bottom-right corner of the page. It can be easily removed with Javascript though.

Task object

Property Type Required Purpose
type String Yes RecaptchaV3TaskProxyless
websiteURL String Yes Address of a target web page. Can be located anywhere at the web site, even in a member area. Our workers don't navigate there, but instead simulate the visit.
websiteKey String Yes Recaptcha website key. Learn how to find it in this article.
minScore Double Yes Filters a worker with a required score. The value can be one of the following:
0.3
0.7
0.9
pageAction String No
Recaptcha's "action" value. Website owner defines what user is doing on the page through this parameter.
Example:

grecaptcha.execute('site_key', {action:'login_test'})
isEnterprise Boolean No Set 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
          curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"RecaptchaV3TaskProxyless",
            "websiteURL":"http://mywebsite.com/recaptcha/test.php",
            "websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16",
            "minScore": 0.3,
            "pageAction": "myverify",
            "isEnterprise": false
        }
}' https://api.anti-captcha.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 a worker some time, like 5 seconds, before making first request. If the worker is still busy, retry in 3 seconds.

Task solution object

Property Type Purpose
gRecaptchaResponse String Token string which is required for interacting with submit form on target website.

Response example

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