Skip to main content

Authentication

ClearProxy supports two authentication methods: API Key Header
X-API-Key: clearpx_yourkey
Bearer Token
Authorization: Bearer clearpx_yourkey

Base URL

https://api.clearproxy.io

Endpoints

Check Proxies (JSON)

Check proxies using JSON format.
POST /check
Request Body:
{
  "proxies": ["1.2.3.4:8080", "user:pass@5.6.7.8:3128"],
  "region": "us1",
  "type": "http",
  "timeout": 5000
}
Parameters:
ParameterTypeRequiredDescription
proxiesarrayYesArray of proxy addresses
regionstringNoRegion code (default: us1)
typestringNoProxy type: http, socks4, socks5 (default: http)
timeoutintegerNoTimeout in ms (1000-20000)
Example:
curl -X POST https://api.clearproxy.io/check \
  -H "X-API-Key: clearpx_yourkey" \
  -H "Content-Type: application/json" \
  -d '{
    "proxies": ["1.2.3.4:8080", "user:pass@5.6.7.8:3128"],
    "region": "us1",
    "type": "http",
    "timeout": 5000
  }'

Check Proxies (Plain Text)

Check proxies using plain text format (one per line).
POST /check-raw?region=us1&type=http&timeout=5000
Query Parameters:
ParameterTypeDefaultDescription
regionstringus1Region code
typestringhttpProxy type
timeoutinteger5000Timeout in ms
Request Body:
1.2.3.4:8080
user:pass@5.6.7.8:3128
9.10.11.12:1080:user2:pass2
Example:
curl -X POST "https://api.clearproxy.io/check-raw?region=us1&type=http" \
  -H "X-API-Key: clearpx_yourkey" \
  -H "Content-Type: text/plain" \
  --data-binary @proxies.txt

Get User Info

Get account information, quota, and usage history.
GET /me
Example:
curl https://api.clearproxy.io/me \
  -H "X-API-Key: clearpx_yourkey"
Response:
{
  "user": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "email": "user@example.com",
    "checks": 5000
  },
  "history": [
    {
      "id": 123,
      "total_checked": 1000,
      "total_working": 450,
      "result_url": "https://content.clearproxy.io/result/abc123.json?token=xyz",
      "proxy_type": "http",
      "scanned_at": "2025-10-06T10:30:00.000Z"
    }
  ],
  "usage_last_30_days": [
    {
      "day": "2025-10-06",
      "total_checked": 1500
    }
  ]
}

List Regions

Get all available checking regions.
GET /regions
Example:
curl https://api.clearproxy.io/regions
Response:
{
  "regions": [
    {
      "code": "us1",
      "name": "Washington DC, USA",
      "endpoints": 16
    },
    {
      "code": "sg1",
      "name": "Singapore",
      "endpoints": 16
    }
  ],
  "default": "us1"
}

Health Check

Check API status.
GET /health
Example:
curl https://api.clearproxy.io/health

Response Format

Check Response

{
  "summary": {
    "total_working": 2331,
    "countries": {
      "United States": 150,
      "Germany": 100
    },
    "anonymity_levels": {
      "elite": 200,
      "anonymous": 150,
      "transparent": 100
    },
    "top_isps": {
      "Digital Ocean": 50,
      "Amazon AWS": 45
    }
  },
  "metadata": {
    "user": {
      "email": "user@example.com",
      "checks_used": 100000,
      "remaining_checks": 4000
    },
    "region_used": "us1",
    "region_name": "US, Washington",
    "proxy_type": "http",
    "timeout_used": "5000ms",
    "total_checked": 100000,
    "processing_time": "12.32s"
  },
  "result_url": "https://content.clearproxy.io/result/abc123.json?token=xyz"
}

Proxy Result (from result_url)

{
  "proxy": {
    "host": "192.0.2.100",
    "port": 8080,
    "hasAuth": true,
    "username": "myuser",
    "password": "mypassword"
  },
  "status": "working",
  "statusCode": 200,
  "responseTime": "150 ms",
  "anonymity": "elite",
  "origin": "203.0.113.1",
  "country": "United States",
  "location": "New York",
  "isp": "Example ISP Inc.",
  "asn": 64512,
  "coordinates": {
    "lat": 40.7128,
    "lon": -74.006
  }
}

Error Responses

400 Bad Request

{
  "error": "Invalid region",
  "available_regions": ["us1", "sg1", "uk1"]
}

401 Unauthorized

{
  "error": "Invalid API key",
  "message": "The provided API key is not valid"
}

402 Payment Required

{
  "error": "Insufficient Checks",
  "message": "You are trying to use 1000 Checks but you only have 500 remaining",
  "required": 1000,
  "available": 500,
  "shortfall": 500
}

405 Method Not Allowed

{
  "message": "Route /check only accept POST Method"
}

Rate Limits

  • Each proxy check consumes 1 quota unit
  • Monitor remaining quota via /me endpoint
  • Insufficient quota returns 402 error

Supported Proxy Formats

Standard
1.1.1.1:8080
With Auth (URL Format)
user:pass@1.1.1.1:8080
With Auth (Colon Format)
1.1.1.1:8080:user:pass

Available Regions

CodeLocation
us1Washington DC, USA
us2San Francisco, USA
us3Cleveland, USA
us4Portland, USA
uk1London, UK
sg1Singapore
au1Sydney, Australia
jp1Tokyo, Japan
jp2Osaka, Japan
kr1Seoul, South Korea
hk1Hong Kong
in1Mumbai, India
br1Sao Paulo, Brazil
de1Frankfurt, Germany
ae1Dubai, UAE
ie1Dublin, Ireland
za1Cape Town, South Africa
fr1Paris, France
se1Stockholm, Sweden