Captcha solving for agents · For a script you run

For a script you run

The script already holds the page. It should hold the answer too.

A script that stops to print “solve this captcha” has turned you into a step in the loop. The same script can post the job, read the answer, and place it before the token expires.

VIIThe script reads answerThe same process that holds the page places the token. You are not a step.

The problem

A human checkpoint in an automated run.

The script was written so you would not have to sit there. Then it hits a captcha and the author leaves a prompt: look at the screen, type the letters, press enter. Every run becomes a meeting. If the script runs at night, it waits until morning. If it runs in a loop, it waits on every iteration.

From the script’s point of view the wait is a blocked call. The rest of the job is ready. The process is alive and doing nothing. A widget token that arrives late is useless, so a slow human reply is not only an interruption. It is often a failed attempt that has to be repeated.

The script controls the page, which means it is the right caller. It can see the page address and the site key. It can place the token in the field and call the page callback. A person does not have a better view of that page than the script does.

What you do

One POST. The answer field. Then place it.

  1. 01Copy the note from the desk, with A script selected.
  2. 02Put the call in the script, or in the bot that runs the script.
  3. 03Read the answer field. The script places it. You do not paste it by hand.

Sample

A call the script can make

The image body below is the shape, not a real picture. Crop the real file so only the code is in the frame.

Send a captcha to https://captell.run/api/v1/solve
Header Authorization: Bearer ct_live_your_key
Header content-type: application/json
A token field in the JSON is accepted as the key. Authorization Bearer still works.

Picture of letters or numbers:
One tight crop of only the code. Encode that png, jpg, webp, or gif as raw base64. No data: prefix.
The file must be at least 100 bytes. A smaller file is refused and no credits are used.
{"type":"ImageToText","body":"BASE64_OF_THE_PICTURE","token":"ct_live_your_key"}

Page check. Do not send a screenshot:
{"type":"RecaptchaV2","websiteURL":"https://the-page","websiteKey":"the-site-key"}

The JSON response field is answer.
A picture of letters, including a phpBB Bestätigungscode, is one tight crop of only the code, at least 100 bytes. Subject: ImageToText. Do not click Place the check for it. A page whose only captcha is that picture has no Place the check button. If the reply says it was not read, crop closer and send that new file the same way.

Google, Cloudflare, or hCaptcha:
Do not open https://captell.run/login. Do not use hcaptcha.com.
The page helper is the CAPTELL Page Helper extension, version 2026.10.4.16. Its popup shows the version and this bot's masked key. If that browser runs the captell.user.js fallback instead and Tampermonkey offers 2026.10.4.16, accept it.
A cookie wall must be accepted before the captcha and the Place the check button appear.
One corner button, named Place the check.
A click anywhere inside the button rectangle counts.
A click always changes the button to Placing…, No widget, Missing site key, or Unsupported type. A click that stays on Place the check did not run. Click again. That click does not count toward the four tries.
If the button says Missing site key, stop. Do not retry four times. Reloading will not invent a key.
If the button says Unsupported type, stop. Do not retry. FunCaptcha, GeeTest, and KeyCaptcha are unsupported.
A Security Check label with no checkbox is still a captcha. Click Place the check first. Do not submit only because no human box is visible.
If no captcha is visible, and there is no Security Check label, click the site's submit button, unless the form asks a math or knowledge question. Then click Place the check. If a captcha then appears, use Place the check.
Submit only when the button says exactly "Placed. Submit the form." and the site's own human box is checked, or there is no empty checkbox and no open image grid.
Placing… ends as Placed, No token, a short solver error, or it returns to Place the check after 3 minutes. Do not click while it says Placing….
If the button says No token, or a short solver error, do not submit. Click Place the check again, up to 4 tries. A failed try is not charged.
Placed clears when the token expires, in about two minutes. Submit soon after Placed. Do not submit an old token.
If the page says "You did not pass the security check. Please try again." or "Captcha Prüfung fehlgeschlagen!", click Place the check. If the button is missing, reload once. Do not submit again until the button says Placed again.
If the page says "Die Registrierung ist wegen Spamschutzmaßnahmen fehlgeschlagen." or "No soup for you!" or "Your registration has been rejected as it resembles spam-like or automated behavior. Please contact the administrator for further information or assistance." after a real Placed submit, try once more: click Place the check, and submit as soon as it says Placed. If the board says it again, that is the board's spam filter. Stop that board. Do not click Place the check again for it.
A badge-only check can say Placed when the token is in the form and there is no empty checkbox and no open image grid.
If an image grid is open, including "Please click on the icon that is different.", do not click the pictures and do not submit. Wait for Placing… to finish. If the grid stays open after the button settles, click Place the check again. It counts as one of the four tries.
If the register page is already signed in as another account, log out and reopen it as a guest. Do not cancel that other registration.
If the form is visible, the cookie wall is gone, a captcha label is on the page, and Place the check never appears, stop that board and report the URL and the label text.
Click Place the check. It fills a math answer or a question such as "Wie heißt die Hauptstadt von Deutschland?" and places the captcha if there is one. Submit only when the button says exactly "Placed. Submit the form." If the button says "Could not answer", stop and report the question text. An unknown page state can come back as one instruction that stays on this registration form.
Username already used, a banned email, "Entering a password is required.", and "Die Eingabe eines Passworts ist erforderlich." are form errors. Do not click Place the check again for them.
Do not send a screenshot. Do not type the token. Do not mail the page.
Place the answer in the widget field and call the page callback. A desktop click on Place the check does the same thing.

curl -X POST https://captell.run/api/v1/solve \
  -H "Authorization: Bearer ct_live_your_key" \
  -H "content-type: application/json" \
  -d '{"type":"ImageToText","body":"BASE64_OF_THE_PICTURE"}'

Addresses on this page use your-bot@mail.captell.run so the shape is visible. The desk fills in the real address and key.

Also waiting