Faucet Captcha
Overview
Ultra-fast faucet captcha solving with excellent pricing, providing automatic antibot-solving extension. Antibot captcha requires users to select the correct sequence of images based on the main image.
💰
Antibot captcha is designed to prevent spam and auto-claiming bots on faucet websites (cryptocurrency faucets), where users can receive free cryptocurrency after completing the captcha.
Illustration
Main image:
![]()
4 choice images (numbered from 0 to 3):

Image 0

Image 1

Image 2

Image 3
1. Create Request
Request
POST https://api.achicaptcha.com/createTask
Parameters
| Parameter name | Data type | Required? | Description |
|---|---|---|---|
clientKey | string | yes | Api key |
task.type | string | yes | AntibotCaptchaTask |
task.image | string | yes | base64 main image|base64 image 0|base64 image 1|base64 image 2|base64 image 3 |
task.subType | string | yes | Value: 0 |
Request Example
POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "AntibotCaptchaTask",
"image": "base64 main image|base64 image 0|base64 image 1|base64 image 2|base64 image 3",
"subType": "0"
}
}Response
On success, server returns errorId = 0 and taskId
{
"errorId": 0,
"taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}2. Get Result
Request
POST https://api.achicaptcha.com/getTaskResult
Parameters
| Parameter name | Data type | Required? | Description |
|---|---|---|---|
clientKey | string | yes | Api key |
taskId | string | yes | TaskId from (1) |
Request Example
POST /getTaskResult HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}Response
{
"errorId": 0,
"status": "ready",
"solution": "swamn"
}Status Explanation
errorId = 0andstatus = ready: Solved successfully, read result insolution, which is the image sequence to click (starting from 0)errorId = 1andstatus = processing: Solving captcha, wait 2 seconds and try againerrorId > 1: System error, returns error code and description
Integration Examples
import requests
import time
def solve_antibot_captcha(image_base64_string, api_key='YOUR_API_KEY'):
"""
image_base64_string format: "base64 main image|base64 image 0|base64 image 1|base64 image 2|base64 image 3"
"""
# Step 1: Create task
create_task_url = 'https://api.achicaptcha.com/createTask'
create_task_payload = {
'clientKey': api_key,
'task': {
'type': 'AntibotCaptchaTask',
'image': image_base64_string,
'subType': '0'
}
}
response = requests.post(create_task_url, json=create_task_payload)
result = response.json()
if result['errorId'] != 0:
raise Exception(result['errorDescription'])
task_id = result['taskId']
# Step 2: Get result
get_result_url = 'https://api.achicaptcha.com/getTaskResult'
while True:
time.sleep(2) # Wait 2 seconds
get_result_payload = {
'clientKey': api_key,
'taskId': task_id
}
response = requests.post(get_result_url, json=get_result_payload)
result = response.json()
if result['errorId'] == 0 and result['status'] == 'ready':
# Returns the image sequence to click (starting from 0)
return result['solution']
if result['errorId'] == 1 and result['status'] == 'processing':
# Processing, continue loop
continue
# Other error
raise Exception(result.get('errorDescription', 'Unknown error'))
# Usage
image_string = 'base64main|base64img0|base64img1|base64img2|base64img3'
solution = solve_antibot_captcha(image_string, 'YOUR_API_KEY')
print('Antibot captcha solution:', solution)
# solution will be the image sequence to click, e.g.: "swamn"Common Error Codes
| Error Code | Description | Notes |
|---|---|---|
| 0 | success | Success |
| 1 | processing | Processing |
| 2 | missing required fields | Missing required field, check parameters again |
| 3 | task not supported | Task type not supported |
| 4 | task creation failed | Task creation failed |
| 5 | client key does not exist | API key does not exist, check API key again |
| 6 | insufficient account balance | Insufficient account balance, top up credits |
| 7 | task failed, please create a new task | Task failed, please create a new task |
| 8 | task ID does not exist | Task ID does not exist |
Best Practices
To achieve the best results when using Achicaptcha API, follow these principles:
1. Image Quality
- Use high-resolution images
- Ensure images are not overly blurred or noisy
- Capture or crop the correct captcha area
2. Rate Limiting
- Faucets usually have time limits between claims
- Respect the faucet's minimum interval
- Don't spam requests to avoid getting banned
3. Polling Interval
- Wait at least 2 seconds between result checks
- Don't spam the API with too many consecutive requests
- Have a timeout to avoid infinite loops
4. Retry Logic
- Implement retry for temporary errors like
ERROR_NO_SLOT_AVAILABLE - Use exponential backoff when retrying
- Limit maximum number of retries
5. API Key Security
- Don't hardcode API key in code
- Use environment variables
- Don't expose API key on client-side
Useful Links: