CaptchaSonic icon

CaptchaSonic

AI-powered CAPTCHA solving — supports reCAPTCHA, popularcaptcha, Turnstile, GeeTest, DataDome, AWS WAF, and more

Recognition → BLS / OCR

AI-generated

Summary

Sends a base64 CAPTCHA image to the CaptchaSonic API for OCR (task type OcrImage, intended for BLS and similar text CAPTCHAs) and returns the recognition result synchronously.

Inputs

  • Task Type (required) — Fixed to 'BLS / OCR' (API value OcrImage); sent as the task's type.
  • Image (Base64) — Base64-encoded CAPTCHA image. Sent in the task's 'queries' array. Effectively needed for recognition, though the field is not marked required.
  • Module — OCR module name, e.g. 'bls', 'amazon', 'probot'. Selects the recognition model on the API side.
  • Question — Instruction or question text for the CAPTCHA. Sent only if non-empty.
  • Website URL — URL of the page hosting the CAPTCHA. Sent only if non-empty.
  • Website Key — Sitekey for the CAPTCHA widget, if applicable. Sent as both websiteKey and websiteKEY.
  • Body — Raw body data. If it parses as a JSON object, its fields are merged into the task (overriding earlier fields with the same name). Otherwise it is sent as a raw 'body' string.

Output shape

One output item per input item: { success: true, data: }, paired with the input item.

No polling occurs; the result comes straight from the POST to /createTask. The exact fields inside 'data' are determined by the API. An API response with a non-zero errorId throws an error. With Continue On Fail enabled, the item instead contains { error: message }. Requires the captchaSonicApi credential (API key).

Examples

Example 1: Solve a BLS text CAPTCHA captured earlier in the workflow

Resource: Recognition; Operation: BLS / OCR; Module: 'bls'; Image (Base64): {{ $json.captchaBase64 }}

Example 2: Pass extra API fields not exposed in the UI

Image (Base64): expression with the image; Body: '{"questionType":"text"}' (JSON merged into the task)

Links

Discussion