Five recognition types. Each has its own endpoint under /v1/recognition/, and each also works on the legacy root path with a type field.
reCAPTCHA image grids
3x3 and 4x4 grids, and the 1x1 refill tiles that appear after a click.
Typerecaptcha
EndpointPOST /v1/recognition/recaptcha
You send
task (the instruction text, for example "bus"), grid ("3x3", "4x4" or "1x1") and image_data. For 3x3 and 4x4, send one image of the whole grid. For 1x1, send 1 to 9 tile images.
You get
One boolean per tile. true means: select this tile. Tiles run left to right, top to bottom.
An image with distorted letters and digits. The answer is the text.
Typetextcaptcha
EndpointPOST /v1/recognition/textcaptcha
You send
Exactly one image in image_data. No task text.
You get
An array with one string: the recognised text. The text is case-sensitive.
Answer
{"data": ["K7m2Q"]}
GeeTest slider
The puzzle slider of GeeTest. You get the offset to drag the piece to.
Typegeetest
EndpointPOST /v1/recognition/geetest
You send
task (the instruction text) and image_data: one complete challenge screenshot, or two images in this order: background, then the transparent puzzle piece.
You get
An object with x, the offset as a percentage of the background image width.
Answer
{"data": {"x": 42.5}}
FunCAPTCHA tile selection
Arkose Labs puzzles where you pick the tile that shows the asked object.
Typefuncaptcha
EndpointPOST /v1/recognition/funcaptcha
You send
task (for example "Pick the sheep") and one image with the 3x2 grid of tiles.
You get
One boolean per tile in row-major order. true marks the tile to pick.
Game-style puzzles where an image must match a reference, for example a count.
Typefuncaptcha_match
EndpointPOST /v1/recognition/funcaptcha_match
You send
task (for example "Match the number of rocks with the number on the left") and one uncropped game image.
You get
One boolean per answer tile.
Answer
{"data": [false, true, false]}
Images go in image_data as base64 strings in an array. The request body is limited to 4.5 MB. JSON and url-encoded form bodies are supported, multipart is not. Full formats and examples are in the docs.
Ready to switch?
Create an account, get your key and change the base URL. Paid plans open soon. We e-mail you when checkout is live.