ERROR_NO_SUCH_METHOD code
Something went wrong with a JSON POST request you sent.
Please study our API documentation more carefully.
Please study our API documentation more carefully.
ERROR_INCORRECT_SESSION_DATA - something is missing
Some of the values required for successive user emulation are missing. This means you've posted a task that has something wrong with it.
Please read the full error description generated by the API and you will find out what you did wrong. If you don't know how to do it, contact your app developers, and they will help.
Please read the full error description generated by the API and you will find out what you did wrong. If you don't know how to do it, contact your app developers, and they will help.
I'm getting ERROR_NO_SUCH_CAPCHA_ID code
ERROR_NO_SUCH_CAPCHA_ID appears when we can't find a specified task by its ID in a pool of processing captchas.
We keep each captcha task for an additional 60 seconds after one of our workers has completed it.
After this period, it is deleted from the active captcha pool and becomes unavailable via API.
To avoid this type of error we recommend you do the following:
1. Request the task result with the getTaskResult method every 5 seconds or so after creating the task with the createTask method.
2. Report incorrect/correct captchas within 60 seconds of task completion or sooner.
The period of 60 seconds may seem insufficient, but in most cases, the lifetimes of Recaptcha tokens and image captcha results are about the same.
A certain issue of bad programming can often arise where your software does the following:
1. Sends a task creation request to the createTask method and for some reason does not receive the proper taskId.
2. Assumes that it has received the proper taskId due to bad parsing of the createTask result method.
3. Sends requests to the getTaskResult method with this false ID, which returns ERROR_NO_SUCH_CAPCHA_ID error.
Sometimes we see that some users send NULL, false, 0, "", or similar as a taskId. Such requests always produce ERROR_NO_SUCH_CAPCHA_ID.
If a user account hits 100k ERROR_NO_SUCH_CAPCHA_ID errors per 24 hours, their account key is blocked, and they are required to submit a support ticket to us along with an explanation of the situation. We'll ask for some proof that the fault code has been fixed. It takes a few days to process these support requests.
We keep each captcha task for an additional 60 seconds after one of our workers has completed it.
After this period, it is deleted from the active captcha pool and becomes unavailable via API.
To avoid this type of error we recommend you do the following:
1. Request the task result with the getTaskResult method every 5 seconds or so after creating the task with the createTask method.
2. Report incorrect/correct captchas within 60 seconds of task completion or sooner.
The period of 60 seconds may seem insufficient, but in most cases, the lifetimes of Recaptcha tokens and image captcha results are about the same.
A certain issue of bad programming can often arise where your software does the following:
1. Sends a task creation request to the createTask method and for some reason does not receive the proper taskId.
2. Assumes that it has received the proper taskId due to bad parsing of the createTask result method.
3. Sends requests to the getTaskResult method with this false ID, which returns ERROR_NO_SUCH_CAPCHA_ID error.
Sometimes we see that some users send NULL, false, 0, "", or similar as a taskId. Such requests always produce ERROR_NO_SUCH_CAPCHA_ID.
If a user account hits 100k ERROR_NO_SUCH_CAPCHA_ID errors per 24 hours, their account key is blocked, and they are required to submit a support ticket to us along with an explanation of the situation. We'll ask for some proof that the fault code has been fixed. It takes a few days to process these support requests.
I'm getting ERROR_NO_SLOT_AVAILABLE code
ERROR_NO_SLOT_AVAILABLE appears when there is a lack of workers and the solving queue is overloaded.
However, you may still get into the queue simply by paying more than other clients. This is what the "maximum bid" setting is for.
Manage your maximum bid by fine-tuning the solving process in API settings.
However, you may still get into the queue simply by paying more than other clients. This is what the "maximum bid" setting is for.
Manage your maximum bid by fine-tuning the solving process in API settings.
I'm getting ERROR_KEY_DOES_NOT_EXIST code
This error means that your software is sending queries with the wrong access key.
After 100 incorrect attempts in an hour, we start blocking IPs to prevent brute-forcing.
1. Check that the key in the application is up to date; go to API settings and copy the key.
2. Make sure the key field does not contain spaces or any other special characters.
3. If you’re sure you’re using the correct key every time, ask your software provider for help. We can't help you here – the problem is in your software.
4. If you are the developer of your own software, follow this procedure:
Most probably, you're sending JSON to our API in the wrong way.
The fastest way to avoid this error is to use our official API examples from the documentation.
If you're building something on your own, test your requests at this address: https://api.anti-captcha.com/test .
It will show you what you're actually sending. Remember, you need to send your requests in JSON POST. All your request data must be printed under the "Parsed input JSON" section and should look like an array. Then make sure your requested JSON structure strictly coincides with one in documentation. Note that all property names are case sensitive.
If you pay close enough attention, you'll find the problem.
If you’re still having trouble, provide us with a JSON sample of your request in a ticket.
After 100 incorrect attempts in an hour, we start blocking IPs to prevent brute-forcing.
1. Check that the key in the application is up to date; go to API settings and copy the key.
2. Make sure the key field does not contain spaces or any other special characters.
3. If you’re sure you’re using the correct key every time, ask your software provider for help. We can't help you here – the problem is in your software.
4. If you are the developer of your own software, follow this procedure:
Most probably, you're sending JSON to our API in the wrong way.
The fastest way to avoid this error is to use our official API examples from the documentation.
If you're building something on your own, test your requests at this address: https://api.anti-captcha.com/test .
It will show you what you're actually sending. Remember, you need to send your requests in JSON POST. All your request data must be printed under the "Parsed input JSON" section and should look like an array. Then make sure your requested JSON structure strictly coincides with one in documentation. Note that all property names are case sensitive.
If you pay close enough attention, you'll find the problem.
If you’re still having trouble, provide us with a JSON sample of your request in a ticket.
ERROR_CAPTCHA_UNSOLVABLE - am I billed for tasks like this?
Yes you are billed, and everybody else is billed because workers don't work for free. If we make it free, the next day there will be lots of home-made hackers overloading our API with scrambled image captchas and/or slow proxy tasks, and we'll be done.
On your side, you have to work on proxy speed; we're talking about Recaptcha and filtering scrambled image captchas if it's a usual image captcha.
For Recaptchas, we have a limit of 3 attempts per task.
For image captchas, we have a limit of 5 attempts per task.
This means that 3 or 5 different workers will try to solve your task before it leaves the queue.
On your side, you have to work on proxy speed; we're talking about Recaptcha and filtering scrambled image captchas if it's a usual image captcha.
For Recaptchas, we have a limit of 3 attempts per task.
For image captchas, we have a limit of 5 attempts per task.
This means that 3 or 5 different workers will try to solve your task before it leaves the queue.
ERROR_PROXY_BANNED, proxy banned by Google
Google has banned your proxy, and your task won't be accepted until the beginning of the next hour.
Even if you succeeded in solving a recaptcha with a banned proxy, it doesn't mean that we'll have the same success. You have to replace the proxy or use proxyless mode in the "API override" section in [settings/apisetup]API settings].
Note that Google bans "IP-UserAgent" pairs, so changing the userAgent parameter in the API request may help in some situations.
This is what the error looks on the worker's side:

Even if you succeeded in solving a recaptcha with a banned proxy, it doesn't mean that we'll have the same success. You have to replace the proxy or use proxyless mode in the "API override" section in [settings/apisetup]API settings].
Note that Google bans "IP-UserAgent" pairs, so changing the userAgent parameter in the API request may help in some situations.
This is what the error looks on the worker's side:

ERROR_IMAGE_TYPE_NOT_SUPPORTED code
1. Make sure you're sending the correctly encoded body of the JPG, GIF or PNG image.
2. Make sure you removed "data:image/jpeg;base64," or similar from base64 encoding.
3. Use official code examples to send your captchas. They do work.
2. Make sure you removed "data:image/jpeg;base64," or similar from base64 encoding.
3. Use official code examples to send your captchas. They do work.
ERROR_RECAPTCHA_INVALID_SITEKEY - getting this error when the key is correct
Something is incorrect in these:
a) The sitekey
b) The domain
How to retrieve the correct domain:
1. Follow this tutorial and install the Firebug plugin.
2. Go to the target website, find a similar request to the Google server with the sitekey. Find the address it's referring to. This is the domain you should send to our API.

a) The sitekey
b) The domain
How to retrieve the correct domain:
1. Follow this tutorial and install the Firebug plugin.
2. Go to the target website, find a similar request to the Google server with the sitekey. Find the address it's referring to. This is the domain you should send to our API.

ERROR_TOKEN_EXPIRED and geetest captchas
The Expired Token error appears when a worker fails to complete or cancels a captcha solving, thus expiring the "challenge" token you provided in your captcha task. In this case, your software should grab a new challenge token and try again.
IMPORTANT INFO: These challenge tokens are single-use only, which means the captcha widget can be rendered only once with one single token.
If you continue to get this error for all your tasks, make sure you're sending all the available parameters to our API, like API subdomain. Documentation about them should be carefully studied here. Two working examples that solve these two options can be found here at Github..
IMPORTANT INFO: These challenge tokens are single-use only, which means the captcha widget can be rendered only once with one single token.
If you continue to get this error for all your tasks, make sure you're sending all the available parameters to our API, like API subdomain. Documentation about them should be carefully studied here. Two working examples that solve these two options can be found here at Github..
ERROR_TASK_ABSENT - wtf?
Most probably you're sending JSON to our API in the wrong way.
The easiest way to avoid this error is to use our official API examples from the documentation.
If you're building something on your own, test your requests at this address: https://api.anti-captcha.com/test .
It will show you what you're actually sending.
Remember you need to send your requests in JSON POST. We use it because it can transmit complex objects in HTTP requests.
The easiest way to avoid this error is to use our official API examples from the documentation.
If you're building something on your own, test your requests at this address: https://api.anti-captcha.com/test .
It will show you what you're actually sending.
Remember you need to send your requests in JSON POST. We use it because it can transmit complex objects in HTTP requests.
ERROR_WRONG_FLAGS
Error code ERROR_WRONG_FLAGS is assigned to a text captcha when worker decides that captcha requirements like "numeric", "minimum length" are not accomplishable and presses button in their interface "incorrect flags". You are paying for such images because you're spending worker's time. This button, however, is not available to workers when no flags are sent along with a captcha image. Decision wether to use flags are not is up to the customer.
Full list of available flags is available at ImageToTextTask task description page.
Full list of available flags is available at ImageToTextTask task description page.
ERROR_BAD_DUPLICATES - what is it?
ERROR_BAD_DUPLICATES occurs when a "100% feature" did not have enough captcha copies to match in one acceptable answer.
As all copies are solved individually by different workers, your account is charged for each duplicated task, whether it's correct or not.
As all copies are solved individually by different workers, your account is charged for each duplicated task, whether it's correct or not.