Arkose Labs captcha (FunCaptcha) bypass API service
You need to locate two values on the page with Arkose Labs FunCaptcha
Public key
Service URL (surl)
Public key can be found inside
data-pkey
parameter of funcaptcha'sdiv
element or inside aninput
element with namefc-token
- just extract the key indicated afterpk
from the value of this element.Service Url can be also found in
fc-token
- that is a value ofsurl
parameter.Service Url is optional parameter and if you don't provide it we use a default value that is valid for most cases, but we recommend you to provide it.
Submit a HTTP
GET
orPOST
request to our API URL:http://2captcha.com/in.php
with method set tofuncaptcha
, provide values found on previous step forpublickey
andsurl
parameter and full page URL as value forpageurl
. You can find the full list of parameters in the table below.Request URL example ->
http://2captcha.com/in.php?key=1abc234de56fab7c89012d34e56fa7b8&method=funcaptcha&publickey=12AB34CD-56F7-AB8C-9D01-2EF3456789A0&surl=https://client-api.arkoselabs.com&pageurl=http://mysite.com/page/with/funcaptcha/
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.Make a 10-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 plain text or JSON and return the answer token that looks like ->
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.
3084f4a302b176cd7.96368058|r=ap-southeast-1|guitextcolor=%23FDD531|metabgclr=%23FFFFFF|metaiconclr=%23202122|meta=3|lang=en|pk=12AB34CD-56F7-AB8C-9D01-2EF3456789A0|cdn_url=https://cdn.funcaptcha.com/fc|surl=https://funcaptcha.com
Locate the element with id
fc-token
and put the token into value of this element.Do the rest what you need to do on the website: submit a form or click on a button or something else.
Code examples:
Read more - API dоcumentation.
// https://github.com/2captcha/2captcha-php require(__DIR__ . '/../src/autoloader.php'); $solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY'); try { $result = $solver->funcaptcha([ 'sitekey' => '69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC', 'url' => 'https://mysite.com/page/with/funcaptcha', ]); } catch (\Exception $e) { die($e->getMessage()); } die('Captcha solved: ' . $result->code);
# 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.funcaptcha(sitekey='69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC', url='https://mysite.com/page/with/funcaptcha', surl='https://client-api.arkoselabs.com') except Exception as e: sys.exit(e) else: sys.exit('result: ' + str(result))
// https://github.com/2captcha/2captcha-csharp using System; using System.Linq; using TwoCaptcha.Captcha; namespace TwoCaptcha.Examples { public class FunCaptchaExample { public void Main() { TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY"); FunCaptcha captcha = new FunCaptcha(); captcha.SetSiteKey("69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC"); captcha.SetUrl("https://mysite.com/page/with/funcaptcha"); try { solver.Solve(captcha).Wait(); Console.WriteLine("Captcha solved: " + captcha.Code); } catch (AggregateException e) { Console.WriteLine("Error occurred: " + e.InnerExceptions.First().Message); } } } }
// https://github.com/2captcha/2captcha-java package examples; import com.twocaptcha.TwoCaptcha; import com.twocaptcha.captcha.FunCaptcha; public class FunCaptchaExample { public static void main(String[] args) { TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY"); FunCaptcha captcha = new FunCaptcha(); captcha.setSiteKey("69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC"); captcha.setUrl("https://mysite.com/page/with/funcaptcha"); try { solver.solve(captcha); System.out.println("Captcha solved: " + captcha.getCode()); } catch (Exception e) { System.out.println("Error occurred: " + e.getMessage()); } } }
// https://github.com/2captcha/2captcha-go package main import ( "fmt" "log" "github.com/2captcha/2captcha-go" ) func main() { client := api2captcha.NewClient("API_KEY") captcha := api2captcha.FunCaptcha{ SiteKey: "69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC", Url: "https://mysite.com/page/with/funcaptcha", Surl: "https://client-api.arkoselabs.com", Data: map[string]string{"anyKey":"anyValue"}, } code, err := client.Solve(captcha.ToRequest()) if err != nil { log.Fatal(err); } fmt.Println("code "+code) }
// 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::funcaptcha_t captcha; captcha.set_site_key ("69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC"); captcha.set_url ("https://mysite.com/page/with/funcaptcha"); captcha.set_surl ("https://client-api.arkoselabs.com"); 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; }
require 'api_2captcha' client = Api2Captcha.new("YOUR_API_KEY") result = client.funcaptcha({ publickey: "69A21A01-CC7B-B9C6-0F9A-E7FA06677FFC", pageurl: "https://mysite.com/page/with/funcaptcha", surl: "https://client-api.arkoselabs.com" })