Solving Capy Puzzle Captcha

Convenient and reliable captcha based on the principle of assembling jigsaw puzzles - hence the name of the product. The user needs to compose a complete picture using the missing piece in the form of a puzzle

Start now

Capy Puzzle Captcha statistics

How to solve Capy Puzzle

  1. Find the value of capy_captchakey parameter in the source code of the page or in the script source link that looks like:

    https://api.capy.me/puzzle/get_js/?k=PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v
    Also find the root part of the script URL, for example: https://api.capy.me/ and use it in api_server parameter.

  2. Submit a HTTP GET or POST request to our API URL: http://2captcha.com/in.php with method set to capy and provide the values found on previous step as captchakey and api_server and the full page URL as value for pageurl. You can find the full list of parameters in the table below.

    Request URL example:

    http://2captcha.com/in.php?key=1abc234de56fab7c89012d34e56fa7b8&method=capy&captchakey=PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v&pageurl=http://mysite.com/

    PHP

    // https://github.com/2captcha/2captcha-php
    
    $solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY');
    
    try {
        $result = $solver->capy([
            'sitekey' => 'PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v',
            'url'     => 'https://www.mysite.com/captcha/',
            'api_server' => 'https://jp.api.capy.me/'
        ]);
    } catch (\Exception $e) {
        die($e->getMessage());
    }
    
    die('Captcha solved: ' . $result->code);

    Java

    // https://github.com/2captcha/2captcha-java
    
    package examples;
    
    import com.twocaptcha.TwoCaptcha;
    import com.twocaptcha.captcha.Capy;
    
    public class CapyExample {
        public static void main(String[] args) {
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            Capy captcha = new Capy();
            captcha.setSiteKey("PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v");
            captcha.setUrl("https://www.mysite.com/captcha/");
            captcha.setApiServer("https://jp.api.capy.me/");
            try {
                solver.solve(captcha);
                System.out.println("Captcha solved: " + captcha.getCode());
            } catch (Exception e) {
                System.out.println("Error occurred: " + e.getMessage());
            }
        }
    }

    C#

    // https://github.com/2captcha/2captcha-csharp
    
    using System;
    using System.Linq;
    using TwoCaptcha.Captcha;
    
    namespace TwoCaptcha.Examples
    {
        public class CapyExample
        {
            public void Main()
            {
                TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
                Capy captcha = new Capy();
                captcha.SetSiteKey("PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v");
                captcha.SetUrl("https://www.mysite.com/captcha/");
                captcha.SetApiServer("https://jp.api.capy.me/");
                try
                {
                    solver.Solve(captcha).Wait();
                    Console.WriteLine("Captcha solved: " + captcha.Code);
                }
                catch (AggregateException e)
                {
                    Console.WriteLine("Error occurred: " + e.InnerExceptions.First().Message);
                }
            }
        }
    }    

    Python

    # https://github.com/2captcha/2captcha-python
    
    import sys
    import os
    sys.path.append(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
    
    from twocaptcha import TwoCaptcha
    
    api_key = 'YOUR_API_KEY'
    
    solver = TwoCaptcha(api_key)
    
    try:
        result = solver.capy(
            sitekey='PUZZLE_Cz04hZLjuZRMYC3ee10C32D3uNms5w',
            url='https://www.mysite.com/page/captcha/',
            api_server="https://jp.api.capy.me/",
        )
    
    except Exception as e:
        sys.exit(e)
    
    else:
        sys.exit('result: ' + str(result))

    Go

    // https://github.com/2captcha/2captcha-go
    
    package main
    
    import (
        "fmt"
        "log"
        "github.com/2captcha/2captcha-go"
    )
    
    func main() {
        client := api2captcha.NewClient("API_KEY")
      cap := api2captcha.Capy{
        SiteKey: "PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v",
        Url: "https://www.mysite.com/captcha/",   
      }
        code, err := client.Solve(cap.ToRequest())
        if err != nil {
            log.Fatal(err);
        }
        fmt.Println("code "+code)
    }

    C++

    // https://github.com/2captcha/2captcha-cpp
    
    #include <cstdio>
    
    #include "curl_http.hpp"
    #include "api2captcha.hpp"
    
    int main (int ac, char ** av)
    {
    api2captcha::curl_http_t http;
    http.set_verbose (true);
    
    api2captcha::client_t client;
    client.set_http_client (&http);
    client.set_api_key (API_KEY);
    
    api2captcha::capy_t captcha;
    captcha.set_site_key ("PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v");
    captcha.set_url ("https://www.mysite.com/captcha/");
    
    try
    {
        client.solve (cap);
        printf ("code '%s'\n", cap.code ().c_str ());
    }
    catch (std::exception & e)
    {
        fprintf (stderr, "Failed: %s\n", e.what ());
    }
    
    return 0;   
    }

  3. If everything is fine server will return the ID of your captcha as plain text, like: OK|2122988149 or as JSON {"status":1,"request":"2122988149"} if json parameter was used. Otherwise server will return an error code.

  4. Make a 15-20 seconds timeout then submit a HTTP GET request to our API URL: http://2captcha.com/res.php to get the result. The full list of parameters is in the table below.

    If captcha is already solved server will respond in JSON and return the answer containing three values: captchakey, challengekey and answer

    {
      "captchakey": "PUZZLE_Abc1dEFghIJKLM2no34P56q7rStu8v",
      "challengekey": "y1Pu234nCwq56WnqB7y8TSZq0Qzp0ltK",
      "answer": "0xax8ex0xax84x0xkx7qx0xux7qx0xux7gx0x18x7gx0x1sx76x0x26x6ix0x2qx6ix0x3ex68x0"
    }

    If captcha is not solved yet server will return CAPCHA_NOT_READY result. Repeat your request in 5 seconds.

    If something went wrong server will return an error code.

  5. Use the values returned in your request to the target website passing them in the corresponding request fields:

    • capy_captchakey

    • capy_challengekey

    • capy_answer

GithubFull documentation and code examplesRead more at 2Captcha API

Recognition price

The recognition cost is very low, less than $0.01 for one recaptcha. For convenience, the entire price is indicated for recognizing 1000 recaptchas, but billing in the system occurs separately for each recaptcha. Different types of recaptchas are recognized at different prices.

$2.99

Per 1000 recaptchas

Supported captchas

The process of solving a normal captcha is as follows: we take the captcha image from the page and send it to the 2Captcha service, where an employee solves it typing the indicated text, then the answer is returned to us, which must be entered in the appropriate field to solve the captcha

API demoHow to solve

The process of solving text captcha is as follows: we take the text question of the captcha from the page of its placement and transfer it to the 2Captcha service, where it is solved by the employee, after which the answer is returned to us, which must be entered in the appropriate field to solve the captcha

API demoHow to solve

The solution process is as follows: we take the captcha image from the page of its placement and the instructions on which pictures to click on and transfer it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of a set of point coordinates, which we need to click for solving the captcha

API demoHow to solve

The process of solving Rotate Captcha is as follows: we take an image or several images of a captcha from the page of its placement and transfer it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of the value of the image rotation angle, we need to rotate the image on the angle to solve captcha

API demoHow to solve

The process of solving reCAPTCHA V2 is as follows: we take the captcha parameters from the page in the form of the data-sitekey parameter and the page URL and transfer it to the 2Captcha service, where the employee solves it, then the response is returned to us in the form of a token, which must be entered into the appropriate field for the solution captcha

API demoHow to solve

The process of solving reCAPTCHA V2 Callback does not differ from the similar process of solving reCAPTCHA V2: we take the captcha parameters from the page in the form of the data-sitekey parameter and the page URL and transfer it to the 2Captcha service, where the employee solves it, then the response is returned to us in as a token, which we should be entered into the appropriate field to solve the captcha. Sometimes you won't find a button submitting a form. A callback function can be used instead. This function is executed when the captcha is recognized. Usually the callback function is defined in the data-callback parameter or as the callback parameter of the grecaptcha.render method call

API demoHow to solve

The process of solving reCAPTCHA V2 Invisible is similar to the recognition of reCAPTCHA V2: we take the captcha parameters from the page in the form of the data-sitekey parameter and the page URL and transfer it to the 2Captcha service, where the employee solves it, after which the response is returned to us in the form of a token, which we need enter in the appropriate field to solve the captcha

API demoHow to solve

The process for solving reCAPTCHA V3 is as follows: we take the captcha parameters from the page in the form of the data-sitekey, action and the page URL and transfer it to the 2Captcha service, where it is solved by an employee with the appropriate “humanity” rating, after that the response is returned to us in the form of a token, which must be entered into the appropriate field to solve the captcha. In many ways, the new type of captcha is similar to reCAPTCHA V2, i.e. the basic principle remains the same - the user receives a token from the 2Captcha API, which is sent in a POST request to the site, and the site verifies the token through the 2Captcha API

API demoHow to solve

The process of solving ReCaptcha Enterprise is as follows: we determine the type of reCaptcha, it can be V2 or V3, after which we take the captcha image from the page of its placement in the form of the data-sitekey parameter and transfer it to the 2Captcha service, where it is solved by the employee, after which it is returned to us answer in the form of a token, which must be entered in the appropriate field to solve the captcha

How to solve

The process of solving KeyCaptcha is as follows: we take a set of necessary parameters from the page of its placement and pass it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of a set of other parameters, which must be passed to the appropriate fields to solve the captcha

API demoHow to solve

The process of solving GeeTest Captcha is as follows: we take a set of necessary parameters from the page of its placement and transfer it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of a set of already other parameters, which must be passed to the appropriate fields to solve the captcha

API demoHow to solve

The solution process is as follows: we take the captcha image from the page of its placement and transfer it to the 2Captcha service, where the employee solves it, after which the response is returned to us in the form of a token, which must be entered into the appropriate field to solve the captcha

API demoHow to solve

The process of solving FunCaptcha by Arkose Labs is as follows: we take a set of necessary parameters from the page of its placement and transfer it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of a set of already other parameters, which must be passed to the appropriate fields to solve the captcha

How to solve

The process of solving Capy Puzzle Captcha is as follows: we take a set of necessary parameters from the page of its placement and transfer it to the 2Captcha service, where the employee solves it, after which the answer is returned to us in the form of a set of already other parameters, which must be passed to the appropriate fields to solve the captcha

The TikTok Captcha solution process is based on cookies, which must be used no later than three seconds after our employees solve the captcha. It is necessary to collect all cookies from the page where the captcha is placed, transfer it to the 2Captcha service, where the solution will occur, and apply the set of cookies received in response and then perform a captcha protected action on the page

How to solve