VK Captcha Solver API
Solve and bypass VK Captcha through one stable REST API. Send the target details and get a ready-to-use solution back in seconds, without maintaining custom bypass logic.

How the VK Captcha solver works
VKontakte's token-based "not a robot" challenge, returned as a captcha error on VK API requests. We solve the challenge behind the redirect URI VK gives you and return a success token ready to resubmit.
A predictable three-step flow that stays the same even when VK Captcha changes its protection.
When a VK API request fails with a captcha error, send us the redirect_uri from that error response. We solve the challenge and return a success_token you attach to a retry of the original request.
Submit the target
Send the page URL and the challenge-specific fields in a single API request.
We handle the challenge
CaptchaSolv routes the task to a specialized solver and tracks it until completion.
Use the solution
Receive the token, headers, cookies, or sensor payload required by your next request.
VK Captcha API request & response
The same endpoint and response envelope across every supported solver.
{
"api_key": "YOUR_API_KEY",
"type": "VkCaptcha",
"site_url": "https://vk.com/",
"data": {
"redirect_uri": "https://id.vk.com/not_robot_captcha?domain=vk.com&session_token=eyJ...&variant=popup&blank=1"}
}{
"errorId": 0,
"status": "ready",
"solvtime": 6.24,
"data": {
"useragent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)...",
"language": "en-US,en;q=0.9",
"solution": {
"token": "eyJhbGciOiJIUzI1NiJ9...kyAWZSNoJPw"}
}
}Task data fields
Fields you can send inside the data object of a solve request for this captcha type.
redirect_uriRequiredThe full captcha URL returned in the error response of the VK API request that triggered the captcha, e.g. .../not_robot_captcha?domain=vk.com&session_token=....
Solution fields
Fields returned in data.solution once the task is solved.
solution.tokenRequiredThe success_token to attach to a retry of the original VK API request.
data.useragentRequiredThe user-agent used while solving - reuse it on the retried request.
What is VK Captcha?
VK Captcha is the "I'm not a robot" check VKontakte uses to slow down automated traffic on vk.com, VK ID and the VK API. When a call or login looks suspicious, VK answers with a captcha error (error code 14, "Captcha needed") instead of the result and expects the client to pass the check before retrying.
Current VK flows put a redirect_uri into that error, pointing to id.vk.com/not_robot_captcha with a session_token. Opening it runs VK's challenge in the browser, and passing it yields a success_token that is attached to the retried request. The session token is short-lived, so the challenge has to be solved right away.
Our VK Captcha solver takes that redirect_uri, completes the challenge and returns the success_token, so your bot or integration can retry the original VK API request without a human in the loop.
- 01
Captcha error
A VK API call fails with error 14 and returns a redirect_uri.
- 02
not_robot_captcha
The redirect_uri opens VK's challenge page for a short-lived session_token.
- 03
Challenge passed
Passing the check produces a success_token for that session.
- 04
Retry
The original request is repeated with success_token attached.
VK Captcha fields
redirect_uriKeyCaptcha URL from the error response - send it to the solver as-is.
session_tokenKeyShort-lived session ID inside redirect_uri; it expires quickly.
success_tokenKeyToken returned after solving - attach it to the retried request.
error_code 14VK API error that signals "Captcha needed".
user-agentReuse the user-agent returned with the token on the retry.
How to bypass VK Captcha with the API
A VK captcha error doesn't have to stop your integration - the error response already contains everything the solver needs.
- 01
Catch the captcha error
When a VK API call fails with error 14, read redirect_uri from the error object.
- 02
Create a VkCaptcha task
POST the redirect_uri to /solve straight away - its session_token expires quickly - and poll until it's ready.
- 03
Retry with success_token
Repeat the original request with success_token set to the value of solution.token.
- 04
Keep the user-agent
Send the retry with the user-agent from data.useragent so it matches the solved session.
VK Captcha solver FAQ
Common questions about integrating this solver correctly.
Yes - it works for the captcha challenge returned on any VK API method that requires it, not just a fixed list of endpoints. Send the redirect_uri from the specific error response you received and we solve that session's challenge.
It's included in the error response of the VK API request that failed with a captcha error - look for the URL pointing to id.vk.com/not_robot_captcha (or the equivalent captcha domain) with a session_token query parameter.
Retry your original VK API request with success_token set to the value of solution.token, using the same user-agent returned in data.useragent.
The session_token embedded in the redirect_uri is short-lived. Send it to us as soon as you receive the captcha error rather than caching it, since an expired session token can't be solved.
Stuck trying to bypass VK Captcha?
Join our Discord and our team will help you get VK Captcha solving working in your setup - free advice on handling it programmatically, even as the challenge changes over time.
Other solvers
Switch to a different captcha type we support.