AXSolver

AXSolver API Documentation

Welcome to the official AXSolver API. Our highly optimized infrastructure is built to solve Cloudflare and other challenges at unparalleled speeds. This guide will walk you through authenticating, sending tasks, and handling responses securely.

Base URL All API requests should be made to https://axsolver.axeldev.me

Authentication

AXSolver requires a valid API key for every request. You can generate and manage your keys in the Dashboard. We support two methods for passing your API key:

1 HTTP Header (Recommended)

Pass the API key using the standard Authorization header.

Authorization: YOUR_API_KEY

2 URL Parameter

Append the key directly to your request URL using the apikey argument.

/solve?apikey=YOUR_API_KEY

Endpoints

POST /solve

The primary endpoint for submitting JSON payloads. Highly recommended for complex tasks and preventing URL encoding issues.

Content-Type: application/json
GET /solve

Alternative endpoint utilizing URL query parameters. Useful for simple requests or environments where JSON POST requests are difficult to formulate.

?mode=...&url=...&siteKey=...

Parameters

These parameters apply to the JSON body for POST requests, or as URL arguments for GET requests.

Parameter Type Required Description
mode String Yes The task type. Example: turnstile-min
url String Yes The full target website URL containing the challenge.
siteKey String Yes The site key parsed from the target webpage.
timeout Integer No Maximum time to wait for a solution. Default is 60 seconds.
proxy String No Format: ip:port or user:pass@ip:port.
residential Boolean No Set to true if utilizing a residential proxy IP. Default is false.

Code Examples

Python (Requests)
import requests

url = "https://axsolver.axeldev.me/solve"
headers = {
    "Authorization": "YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "mode": "turnstile-min",
    "url": "https://example.com/",
    "siteKey": "1x00000000000000000000AA",
    "timeout": 60,
    "proxy": "user:pass@1.2.3.4:8080"
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())
Node.js (Axios)
const axios = require('axios');

const solveCaptcha = async () => {
    try {
        const response = await axios.post('https://axsolver.axeldev.me/solve', {
            mode: 'turnstile-min',
            url: 'https://example.com/',
            siteKey: '1x00000000000000000000AA',
            timeout: 60
        }, {
            headers: {
                'Authorization': 'YOUR_API_KEY',
                'Content-Type': 'application/json'
            }
        });
        console.log(response.data);
    } catch (error) {
        console.error(error.response ? error.response.data : error.message);
    }
};

solveCaptcha();
cURL
curl -X POST https://axsolver.axeldev.me/solve \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "turnstile-min",
    "url": "https://example.com/",
    "siteKey": "1x00000000000000000000AA"
  }'

Responses & Errors

Successful Response (200 OK)

JSON
{
  "status": "success",
  "solution": "0.xx...yy_generated_token_zz",
  "latency": 2450
}

Common Error Codes

400 Bad Request

Missing required parameters (mode, url, siteKey) or invalid JSON payload formatting.

401 Unauthorized

API Key is missing, invalid, or has been revoked from the dashboard.

402 Payment Required

Insufficient balance to process the request. Please top up your account.

403 Forbidden

Access denied due to account restrictions or an IP ban.

429 Too Many Requests

Rate limit exceeded. Please slow down your request frequency.

504 Gateway Timeout

The solver could not generate a token within the requested timeout period.

500 Internal Error

Upstream solver engine failure. Check the error message in the JSON payload.