The easiest AWS WAF CAPTCHA solving API
GateSolver solves AWS WAF CAPTCHAs automatically with AI. $1.40 per 1,000 tasks, answers usually within 3s, and you only pay for successful tasks.
What is the AWS WAF CAPTCHA?
AWS WAF CAPTCHA is the check screen shown by the Amazon Web Services firewall. Pass it and you get an aws-waf-token cookie.
Set the cookie value you receive as the aws-waf-token cookie and send the request again.
AWS WAF
< 3s · $1.40 / 1k
Why use GateSolver for AWS WAF
Reliable solving
We keep improving our AWS WAF solving model, so it stays reliable even as the challenges change.
Pay only for successful tasks
You only pay for solved tasks. Failed or expired tasks are never charged.
AI-powered solving
AI solves it instantly, with no waiting for humans. Answers usually arrive within 3s.
Connect from anywhere
It is a REST API, so it works the same way from any language or automation tool.
in.php compatible
Programs using the in.php and res.php format only need a new address.
High volume
Up to 600 requests per minute per key, with no limit on concurrent tasks.
Price and speed
How to solve AWS WAF: API guide
Just two requests: create a task with createTask and get the answer with getTaskResult.
Step 1: Create a task
POST https://gatesolver.com/createTask
| Field | Required | Description |
|---|---|---|
| type | Yes | AntiAwsWafTaskProxyLess or AntiAwsWafTask |
| websiteURL | Yes | URL where the check screen appears |
| awsKey | No | The key value from the page |
| awsIv | No | The iv value from the page |
| awsContext | No | The context value from the page |
| proxy | No | Proxy when using AntiAwsWafTask |
Request
{
"clientKey": "YOUR_API_KEY",
"task": {
"type": "AntiAwsWafTaskProxyLess",
"websiteURL": "https://example.com/login"
}
}Response
{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}Step 2: Get the result
POST https://gatesolver.com/getTaskResult
Poll for the result with the taskId every 3 seconds. If status is processing, wait; when it is ready, use the solution.
Request
{
"clientKey": "YOUR_API_KEY",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}Response
{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006",
"status": "ready",
"solution": {
"cookie": "223d1f60-0e9f-4238-..."
}
}Set the cookie value you receive as the aws-waf-token cookie and send the request again.
Code examples
import requests, time
API = "https://gatesolver.com"
KEY = "YOUR_API_KEY"
task = {
"type": "AntiAwsWafTaskProxyLess",
"websiteURL": "https://example.com/login"
}
r = requests.post(f"{API}/createTask", json={"clientKey": KEY, "task": task}).json()
task_id = r["taskId"]
while True:
time.sleep(3)
res = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task_id}).json()
if res.get("status") == "ready":
print(res["solution"])
break
if res.get("errorId"):
raise RuntimeError(res["errorCode"])const API = "https://gatesolver.com", KEY = "YOUR_API_KEY";
const post = (p, b) => fetch(API + p, { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify(b) }).then((r) => r.json());
const { taskId } = await post("/createTask", { clientKey: KEY, task: {"type":"AntiAwsWafTaskProxyLess","websiteURL":"https://example.com/login"} });
let res;
do {
await new Promise((s) => setTimeout(s, 3000));
res = await post("/getTaskResult", { clientKey: KEY, taskId });
} while (res.status === "processing");
console.log(res.solution);curl -X POST https://gatesolver.com/createTask \
-H "Content-Type: application/json" \
-d '{"clientKey":"YOUR_API_KEY","task":{"type":"AntiAwsWafTaskProxyLess","websiteURL":"https://example.com/login"}}'AWS WAF FAQ
How much do 1,000 AWS WAF tasks cost?
AWS WAF price: $1.40 per 1,000 tasks. Each task is deducted from your balance, and you only pay for solved tasks.
How fast are AWS WAF answers?
Usually within 3s. Call getTaskResult every few seconds and use the answer when status becomes ready.
Which task type do I use for AWS WAF?
Default type: AntiAwsWafTaskProxyLess. Other names (such as proxy versions) are accepted at the same price.
Am I charged if a task fails?
No. Unsolved and expired tasks are not charged.