Direct Answer
NextCaptcha solves standard reCAPTCHA v2 proxyless (ReCaptchaV2TaskProxyLess), but its proxied task types — such as ReCaptchaV2EnterpriseTask — accept the proxyType, proxyAddress, proxyPort, proxyLogin and proxyPassword fields. Use a proxied type with your German mobile proxy so the token matches the IP class you submit from and is accepted, instead of being rejected on an IP mismatch. Add your endpoint and credentials from your account.
The Mistake Most Guides Make
Most NextCaptcha examples use ReCaptchaV2TaskProxyLess: the solver works the token on its own IP infrastructure, then you submit it from your own proxy. For a modern token challenge (reCAPTCHA, hCaptcha, Cloudflare Turnstile) that split is exactly what makes a correctly solved token still fail — the token is minted on one IP class and submitted from another, and the site treats the mismatch as suspicious.
An honest caveat: NextCaptcha documents standard reCAPTCHA v2 only as the proxyless task type, so you cannot hand it your own proxy on that route. The proxy-matched path is a proxied task type — ReCaptchaV2EnterpriseTask accepts the proxy fields — so the challenge is worked on the same IP class your request uses. If your target is a plain (non-Enterprise) reCAPTCHA v2 that enforces IP matching, a solver whose proxied v2 route accepts your proxy (see CapMonster or Anti-Captcha) is the cleaner fit.
A CAPTCHA solver and a trusted German mobile IP are complements, not substitutes: fewer challenges appear on a high-reputation mobile IP in the first place, and the ones that do can be solved proxy-matched. See what a CAPTCHA solver is and how a mobile proxy reduces CAPTCHAs.
Before You Start
You will need a NextCaptcha API key (the clientKey) and four values from your GermanProxy.io account:
- Your NextCaptcha API key
- Host and port of your endpoint
- Username and password
The examples use PROXY_HOST, PORT, USER and PASS as placeholders — replace them with your own. GermanProxy.io supports HTTP, SOCKS5 and OpenVPN, so set proxyType to whichever your endpoint uses.
Install requests:
pip install requests
Step 1 — Create a Proxy-Matched Task
NextCaptcha's createTask endpoint takes a task object. Use a proxied type — ReCaptchaV2EnterpriseTask — and add the proxy fields so the challenge is worked through your German mobile IP.
import requests
CLIENT_KEY = "YOUR_NEXTCAPTCHA_API_KEY"
# Your German mobile proxy — the same endpoint your own requests use
PROXY_HOST = "PROXY_HOST"
PROXY_PORT = "PORT"
PROXY_USER = "USER"
PROXY_PASS = "PASS"
task = {
"type": "ReCaptchaV2EnterpriseTask", # proxied type, NOT ...ProxyLess
"websiteURL": "https://www.example.de/login",
"websiteKey": "SITE_RECAPTCHA_SITEKEY",
"proxyType": "http", # http | https | socks5
"proxyAddress": PROXY_HOST,
"proxyPort": int(PROXY_PORT),
"proxyLogin": PROXY_USER,
"proxyPassword": PROXY_PASS,
}
resp = requests.post(
"https://api.nextcaptcha.com/createTask",
json={"clientKey": CLIENT_KEY, "task": task},
timeout=30,
)
task_id = resp.json()["taskId"]
print("task id:", task_id)
websiteKey is the site's public reCAPTCHA sitekey from the page source. For standard reCAPTCHA v2 NextCaptcha exposes only ReCaptchaV2TaskProxyLess, which drops the proxy fields and uses NextCaptcha's own IPs — that cannot match your German mobile endpoint. For Cloudflare Turnstile, use TurnstileTask and keep the proxy fields so the challenge is worked on your IP.
Step 2 — Poll for the Token
Solving is asynchronous. Poll getTaskResult until status is ready; the token comes back in solution.gRecaptchaResponse.
import time
def get_token(task_id):
while True:
r = requests.post(
"https://api.nextcaptcha.com/getTaskResult",
json={"clientKey": CLIENT_KEY, "taskId": task_id},
timeout=30,
).json()
if r.get("status") == "ready":
return r["solution"]["gRecaptchaResponse"]
time.sleep(3)
token = get_token(task_id)
print("token:", token[:40], "...")
Step 3 — Submit the Token From the Same IP
The token is only half the job. Submit it to the site through the same German mobile proxy you gave NextCaptcha, so the mint IP and the submit IP share one IP class:
proxies = {
"http": f"http://{PROXY_USER}:{PROXY_PASS}@{PROXY_HOST}:{PROXY_PORT}",
"https": f"http://{PROXY_USER}:{PROXY_PASS}@{PROXY_HOST}:{PROXY_PORT}",
}
resp = requests.post(
"https://www.example.de/login",
data={"g-recaptcha-response": token, "username": "...", "password": "..."},
proxies=proxies,
timeout=30,
)
print(resp.status_code)
For hCaptcha or Turnstile the flow is identical — the task type and the token field name change, but you still route the solve through your German mobile IP.
Verify the IP
Before you scale, confirm both sides really run on the same German mobile IP. Request an IP-echo endpoint through the proxy you gave NextCaptcha, and check it returns a German mobile IP — not your own address and not a datacenter range:
ip = requests.get("https://api.ipify.org?format=json", proxies=proxies, timeout=30)
print(ip.json()) # should be your German mobile IP
If it returns your own address, re-check the proxy URL and credentials. See checking your proxy configuration and, for auth errors, fix 407 proxy authentication required.
Why Proxy-Matched Solving Matters
A token challenge does not only ask "was a human here" — it also weighs where the token was minted. When the solver runs on its own IP and you submit from a mobile IP, the site sees two different IP classes for one session. That inconsistency is a common reason a technically correct token is still rejected.
Proxy-matched solving removes it: the solve and the submit both happen on your dedicated German mobile connection, so the session reads as one continuous user. Hold the endpoint as a sticky session across the solve-and-submit sequence, and rotate on demand only between independent tasks. If you are already seeing blocks before any captcha, see fix 403 Forbidden when scraping.
Why a Mobile IP Reduces CAPTCHAs at All
The best captcha is the one that never appears. Real German mobile IPs (4G/5G) sit behind CGNAT — carrier-grade NAT, where many real subscribers share one public IPv4 address (how CGNAT works). Because a single mobile IP fronts a crowd of ordinary users, sites cannot cheaply treat it as "one bot" the way they treat a lone datacenter IP, so a mobile IP tends to carry higher IP reputation and draws fewer challenges.
That is the division of labour: a trusted mobile IP keeps challenge volume low, and NextCaptcha handles the residual challenges proxy-matched. For the wider picture, see mobile vs residential vs datacenter proxies and how websites detect proxies.
Scrape Responsibly
A CAPTCHA solver is for legitimate access to data you are permitted to collect — not for defeating security controls you have no right to touch. Keep your pipeline clean and defensible:
- Respect
robots.txtand each site's terms of service, and operate only where you are permitted. - Collect public data and send requests at a human-reasonable rate — add delays, don't hammer servers.
- Handle any personal data in line with the GDPR — collect only what you need.
- Solve captchas for legitimate access, not to circumvent access controls or platform rules.
These habits keep both your data and your IP reputation healthy. See is web scraping legal in the EU and are mobile proxies legal.
FAQ
Does NextCaptcha accept my own proxy for reCAPTCHA v2?
Standard reCAPTCHA v2 is documented as ReCaptchaV2TaskProxyLess — it uses NextCaptcha's own IPs and takes no proxy fields. To pass your German mobile proxy, use a proxied task type such as ReCaptchaV2EnterpriseTask, which accepts the proxy parameters.
Why does my token still get rejected after a good solve?
Usually an IP mismatch. If the solver works the token on its own IP but you submit from a mobile IP, the site sees two IP classes for one session and can reject the token. Use a proxied task so both sides share your German mobile IP.
Which proxy fields does NextCaptcha's proxied task take?
proxyType, proxyAddress, proxyPort, proxyLogin and proxyPassword. Set the type in proxyType and your endpoint in proxyAddress and proxyPort — the solver then works the challenge through your German mobile IP.
Does a mobile IP mean the solver has less to do?
Often, yes. A real German mobile IP on a CGNAT range carries higher IP reputation than a datacenter IP, so many sites challenge it less. The solver then handles only the residual challenges, proxy-matched. For the mechanism, see reduce CAPTCHAs with mobile proxies.
Is solving a captcha to reach a site allowed?
Solve captchas only for legitimate access to data you are permitted to collect — check terms of service and robots.txt first. A solver is not a way to defeat security controls you have no right to touch.
HTTP or SOCKS5 for the proxy I give NextCaptcha?
Either. Set proxyType to http or socks5 to match your endpoint. For most reCAPTCHA and Turnstile work, HTTP is the simplest choice. Prefer a proxied plain-v2 route? See CapMonster with a German mobile proxy and Anti-Captcha with a German mobile proxy.
Related guides
- Pairing a CAPTCHA Solver With a German Mobile Proxy
- CapSolver Proxy Setup: Proxy-Matched Solving Guide
- Fix 407 Proxy Authentication Required on a Mobile Proxy
CTA
Solve the residual captchas proxy-matched, on an IP that draws fewer of them to begin with. Get a dedicated German mobile IP — HTTP/SOCKS5/OpenVPN, sticky sessions, on-demand rotation, fair-use 20 GB/day, from a transparent EU provider.
Get a German mobile proxy: Real 4G/5G IPs from Germany, fair-use 20 GB/day — browse German mobile proxy plans or start with a dedicated 5G proxy.