API documentation to Bypass captchas

To use our service for solving captcha and recaptcha, one has to use the API.

In order to use the API, you need to have an account with bestcaptchasolver.com, some credit into it and the access token string. The access token can be gathered from the /account page.

The authentication against the API endpoints is made using the access token.

To make things easier, we've developed API libraries so that you don't have to worry about implementing our API. For those that want to implement their own API libraries, or they can't find a library for the particular programming language, this document is meant to help you achieve that.

Requests and responds are in JSON.

Libraries

Automation

We've created few automation examples for you, with browser and with pure requests to get a better idea on how to integrate our service with automation software which can be found on our /bypass-captcha-solver-automation page

Balance

GET https://bcsapi.xyz/api/user/balance?access_token=YOUR_ACCESS_TOKEN

Query parameters:

  • access_token

Returns the balance of the user. Balance is shown in USD.

Returns

{
    "status": "success",
    "balance": "5.2164"
}

Image captcha

The process of completing a captcha image, consists of two parts:

  • submission - submit the captcha image as B64 encoded string, which returns an ID
  • retrieval - use the ID received in the submission, to check for captcha completion

Submit

POST https://bcsapi.xyz/api/captcha/image

Body paramaters:

{
    "b64image":"/9j/4AAQSkZJRgAB...iiigD//2Q==",
    "access_token":"your_access_token"
}
  • b64image - image encoded as a B64 string
  • access_token - user's access_token
  • case_sensitive (optional) - set to 1 if case matters
  • affiliate_id (optional) - ID of affiliate check /partner page

Returns

{
    "id": 25,
    "status": "submitted"
}

The ID in this case would be 25. Use that in order to retrieve the actual text of the image.

The limit of post data is 10mb. In other words, image size cannot exceed 10mb

Retrieve

GET https://bcsapi.xyz/api/captcha/CAPTCHA_ID?access_token=ACCESS_TOKEN

Query parameters:

  • captcha_ID - id received from submission
  • access_token - access token with which captcha information was submitted

Returns

{
     "id": 25,
     "text": "polum",
     "status": "completed"
}

The response contains the text of the captcha image, once the captcha was successfully completed by our workers.

When the captcha was not completed yet, you'll see the following response:

{
     "id": 25,
     "status": "pending"
}

If you get the status pending, resubmit the request every 5 seconds, in order to get the text. Status will be changed to completed once the captcha was solved by our workers.

reCaptcha

UPDATE 27.07.2018 - Added reCaptcha V3 support

In order to bypass recaptcha, there are (at least) two things that you need to know:

  • page url - URL on which you encounted the captcha
  • site key - recaptcha (public) sitekey, which can be found in the website's source

Same as with image captcha, the process of solving the reCaptcha consists of two parts:

  • submit captcha details
  • receive g-response (the g-response will be used to bypass the captcha on the page)

The bypassing of recaptcha takes more time then solving regular image captcha.

Once you've submitted the captcha details (page url and sitekey) the completion time will be ~30 seconds.

Submit

POST https://bcsapi.xyz/api/captcha/recaptcha

Body paramaters:

{
    "page_url":"http://website.com",
    "site_key":"6fd45trQJsd...br",
    "access_token": "your_access_token"
}
  • access_token - user's access token
  • page_url - recaptcha page URL
  • site_key - sitekey (public key) of recaptcha
  • type (optional) - 1 - regular recaptcha, 2 - invisible recaptcha, 3 - v3 recaptcha, defaults to 1
  • v3_action (optional) - action value used when solving v3 recaptcha
  • v3_min_score (optional) - minimum score targeting when solving v3
  • user_agent (optional) - User-Agent used to solve recaptcha
  • proxy (optional) - a proxy in the format of 127.0.0.1:8080 or user:pass@127.0.0.1:8080 if it requires authentication
  • proxy_type (optional) - goes with proxy parameter, and for now it can be only HTTP because we support only this type of proxies currently
  • affiliate_id (optional) - ID of affiliate check /partner page

Returns

{
    "id": 26,
    "status": "submitted"
}

Retrieve

Same as captcha image retrieval, request is done in the same way. Only thing that differs is the response. What's different is that instead of the text parameter in return you get the gresponse parameter.

GET https://bcsapi.xyz/api/captcha/RECAPTCHA_ID?access_token=ACCESS_TOKEN

Query parameters:

  • recaptcha_ID - id received from submission
  • access_token - access token with which captcha information was submitted

Returns

{
     "id": 25,
     "gresponse": "03AJpayVFactgTmHlV...",
     "status": "completed",
     "proxy_status": "status of proxy (if used)"
}

The gresponse is used to bypass the captcha on the website. It's very different, depending on the website. Usually, in case of a browser automation, you set the gresponse received from our service, in the page's DOM, using JavaScript.

If it's automation based on pure requests, normally the gresponse is submitted with the request itself, whether that's a login, registration, etc.

Set captcha bad

Use it in case our service solved the captcha but it was incorrect

POST https://bcsapi.xyz/api/captcha/bad/CAPTCHA_ID

Query parameters:

  • captcha_id - is the captcha ID of the the captcha which was completed incorrectly

Body parameters

{"access_token": "FFB0BF8905CA4AD992C8BE256F35682F"}
  • access_token - access_token with which captcha was submitted

Returns

{
    "id": 53,
    "status": "updated"
}

or

{
    "id": 53,
    "status": "set to bad already"
}

Errors

  • invalid or missing access key
    {
       "status": "error",
       "message": "access token is invalid or missing"
    }
    
  • wrong/non-existent access key
    {
    "status": "error",
    "message": "authentication failed"
    }
    
  • no captcha with given ID
    {
      "status": "error",
      "message": "no captcha with given ID"
    }
    
  • timed out
    {
      "status": "error",
      "message": "no captcha with given ID"
    }
    

2captcha,DBC and anticaptcha API support

We've designed a captcha gate, which allows you to redirect traffic from other captcha services through bestcaptchasolver. Currently, we've integrated the following services:

  • 2captcha.com
  • deathbycaptcha.com
  • anti-captcha.com

Redirection

The gates are redirecting the following actions to our service:

  • get balance
  • submit image captcha
  • retrieve image captcha
  • submit recaptcha
  • retrieve recaptcha response

In other words, if you have software that works with any of the above services, using the gate will allow you to use our service, with the same software to bypass all your captchas.

This is achieved by running a batch program, that writes config information into the hosts file of the Windows operating system. All this is done automatically, all you have to do is run it. For linux, we have a python script that allows you to toggle (enable / disable) a pair of IP DOMAIN

The last step, is to use replace access token OR username & password with credentials from /account. In this way, the programs will run even though they were built for one of the services above, but in reality our service will be used for completion.

In case you don't want to use the gate anymore, you can edit the hosts file which is located here: %SystemRoot%\System32\drivers\etc\hosts

On linux, you'll find the hosts file in /etc/hosts

Both operating systems require admin / root access in order to modify the files

For more details about the hosts file check this link

Installation

Clone the github repository git clone https://github.com/bestcaptchasolver/gates

Once you got it, go to scripts/windows folder, and run bat file for the service you want to redirect

It will ask you for administrator rights, because it's writing to a system file, allow it, and the gate should be enabled within few seconds

For linux, here's the usage of the script: ./linux_hosts.py 127.0.0.1 site.com which can be found in scripts/linux

View on github >

Download >