ReCaptchaV3Token
Solve reCAPTCHA V3 score-based challenges and receive a verification token.
reCAPTCHA V3 runs entirely in the background — no checkbox, no image challenges. Instead of a challenge, it assigns a score from 0.0 (bot) to 1.0 (human). The website decides what to do based on the score (block, allow, or require additional verification).
Common score thresholds:
- 0.1–0.3: likely bot
- 0.5: uncertain
- 0.7–0.9: likely human
Successful completion returns a gRecaptchaResponse token like V2, but the site verifies it with a score check.

This variant uses your proxy. Use ReCaptchaV3TokenProxyLess if you don't need proxy control.
How the Score System Works
The minScore parameter sets the minimum score you need. A higher value means the provider must work harder to appear human.
Common values:
0.3: easy0.5: moderate0.7: standard (most common)0.9: hard (not all providers achieve this reliably)
If you're getting tokens that are rejected by the target site, try increasing the minScore value. Some sites
require 0.7 or higher.
Finding the Action Parameter
The pageAction is critical for V3 — it tells Google what the user is doing. If the action doesn't match what the site expects, the token might be rejected.
How to find it:
- Open DevTools and go to the Sources or Network tab.
- Search (Ctrl + Shift + F) for
grecaptcha.executein the page JavaScript. - Look for:
grecaptcha.execute('sitekey', {action: 'THIS_VALUE'}).
Common values include login, submit, register, homepage, or verify.
Console script to find action:
Run this script in the browser console to extract the action from inline scripts:
(() => {
const scripts = document.querySelectorAll('script:not([src])');
const pattern = /grecaptcha\.execute\s*\(\s*['"][^'"]+['"]\s*,\s*\{\s*action\s*:\s*['"]([^'"]+)['"]/g;
const actions = [];
scripts.forEach((s) => {
let m;
while ((m = pattern.exec(s.textContent)) !== null) actions.push(m[1]);
});
if (actions.length) console.log('Actions found:', actions);
else console.log('No actions found in inline scripts. Check external JS files.');
})();Finding the Website Key
You can use the same methods as V2 to find the sitekey.
- Elements Tab: Search for
data-sitekey. - Network Tab: Filter for
recaptchaand look for thek=parameter in requests toanchor.
For V3, you should also check for:
grecaptcha.execute('THIS_KEY', ...)in JavaScript.- The render parameter in the script URL:
recaptcha/api.js?render=THIS_KEY.
Quick Console Script:
(() => {
let key = null;
// Check data-sitekey attributes
document.querySelectorAll('[data-sitekey]').forEach((el) => {
if (el.dataset.sitekey) key = el.dataset.sitekey;
});
// Check script render parameter
if (!key) {
document.querySelectorAll('script[src*="recaptcha"]').forEach((s) => {
const url = new URL(s.src, location.href);
const render = url.searchParams.get('render');
if (render && render !== 'explicit') key = render;
});
}
// Check iframe
if (!key) {
const iframe = document.querySelector('iframe[src*="recaptcha"]');
if (iframe) key = new URL(iframe.src).searchParams.get('k');
}
console.log('sitekey:', key || 'Not found');
})();Submitting the Token
Submit the token to your form or callback, just like in V2. Note that V3 tokens typically have shorter validity windows than V2 tokens.
The recaptchaDataSValue and isSession parameters are not supported by all providers. Test with your target site
to verify compatibility.
Supported Providers
| Provider | Price per 1,000 |
|---|---|
| $1.00 | |
| $1.45 - $2.99 | |
| $0.52 | |
| $1.00 | |
| $0.80 |
Request Schema
| Field | Type | Description |
|---|---|---|
clientKey* | string | Your API key from the AnySolver dashboard. Example: |
task* | object | |
provider | Specific provider to use. If omitted, automatic routing selects the best provider. Example: | |
selectionMode | Read more at the routing strategies docs. Example: | |
keyPoolMode | Example: |
Task Object Properties
The task field accepts an object with the following properties:
| Field | Type | Description |
|---|---|---|
websiteURL* | URL | Full URL of the page where the CAPTCHA is displayed. Example: |
websiteKey* | string | The site key (data-sitekey attribute) found in the CAPTCHA HTML element. Example: |
pageTitle* | string | Title of the target page (document.title). Some providers use it as an additional hint when solving reCAPTCHA V3 tasks. Example: |
pageAction | string | Action passed to grecaptcha.execute(siteKey, { action: "..." }), such as verify, submit, or login. For V3 this should match the action used by the page exactly. Example: |
minScore | number | Requested reCAPTCHA V3 score from 0.1 to 0.9. Provider docs commonly show 0.3 to 0.5 as realistic values; higher scores are harder to obtain reliably. Example: |
apiDomain | string | Domain used to load reCAPTCHA. Use google.com for standard widgets or recaptcha.net when the page loads the API from recaptcha.net or www.recaptcha.net. Example: |
isSession | boolean | Enable session mode to receive worker session cookies together with the token. Only supported by providers that expose session-cookie responses. Example: |
recaptchaDataSValue | string | Value of the data-s parameter used on some Google-owned pages and other protected flows. It is short-lived and should be extracted fresh for every solve attempt. Example: |
proxy* | string | object |
Response Schema
| Field | Type | Description |
|---|---|---|
status* | Task status: "processing", "ready", or "failed". Example: | |
taskId | string | Unique identifier returned when the task was created. Example: |
errorId* | 0 = success, 1 = external error, 2 = internal error. Example: | |
errorCode | Machine-readable error code (e.g., "CAPTCHA_UNSOLVABLE"). Example: | |
errorDescription | string | Human-readable error message with resolution hints. Example: |
cost | number | Actual cost charged for this task in USD. Example: |
taskType | The type of CAPTCHA task to solve. Example: | |
provider | Specific provider to use. If omitted, automatic routing selects the best provider. Example: | |
solution | object |
Solution Object Properties
The solution field contains an object with the following properties:
| Field | Type | Description |
|---|---|---|
token* | string | The solved CAPTCHA token to submit with your form. Example: |
userAgent | string | User-Agent string used during solving (if applicable). |
cookies | Record<string, unknown> | Session cookies obtained during solving (if applicable). |
raw* | Record<string, unknown> | Raw provider response data for advanced use cases. |