Expand description
One struct per captcha type. Every struct implements CaptchaRequest.
Conventions used by all request types (keep them when adding a new one):
Type::new(<required fields>)builds a request; optional fields areOption<_>public fields with chainablewith_<field>(value)setters.- Field names are
snake_case;#[serde(rename = "...")]maps them to the exact API names (notewebsiteURL, notwebsiteUrl).Nonefields are not sent. "type"(and"class"for CustomTask) come fromTASK_TYPE/CLASS, never from a field.- Local checks that the API would reject anyway live in
validate().
Structs§
- Alibaba
Custom Task Request - Alibaba CAPTCHA / WAF (
CustomTask, classalibaba). - Alibaba
Metadata - Alibaba captcha parameters. Only
scene_idandprefixare always required; set the other ones only if the target website uses them. - Altcha
Custom Task Request - Altcha proof-of-work captcha (
CustomTask, classaltcha). - Altcha
Metadata - Altcha challenge parameters taken from the page (all four are required by the API).
- Amazon
Challenge AndCaptcha - Option 2: challenge plus captcha. The values come from
window.gokuProps(key,context,iv) on the 405 page of the protected site. - Amazon
Challenge Only - Option 3: invisible captcha, only
challenge.jsis loaded.contextandivare sent as empty strings, as the API requires. - Amazon
Visible Captcha - Option 1: visible AWS WAF captcha (
jsapi.js/captcha.jsonly). - Amazon
WafRequest - Amazon AWS WAF captcha and challenge (
AmazonTask). - Basilisk
Custom Task Request - Basilisk captcha (
CustomTask, classBasilisk). - Binance
Task Request - Binance custom captcha (
BinanceTask). Use only to log in with your own account. - Data
Dome Custom Task Request - DataDome captcha (
CustomTask, classDataDome). Your own proxy is required. If the proxy uses IP authorization, whitelist65.21.190.34. The solution contains cookies that must be set in the browser. - Data
Dome Metadata - DataDome-specific challenge data. All values are dynamic: extract them right before creating the task.
- Enterprise
Payload - Additional reCAPTCHA Enterprise parameters (
enterprisePayloadobject). - Friendly
Custom Task Request - Friendly Captcha (
CustomTask, classfriendly). - Friendly
Metadata - Friendly Captcha parameters.
- Funcaptcha
Request - FunCaptcha / Arkose Labs (
FunCaptchaTask). - Geetest
Request - GeeTest captcha (
GeeTestTask), versions 3 and 4. - Hunt
Custom Task Request - HUNT captcha (
CustomTask, classHUNT). Your own proxy is required. - Hunt
Metadata - HUNT parameters. Values are dynamic: extract them right before creating the task.
- Image
ToText Request - Text-on-image captcha (
ImageToTextTask). - Imperva
Custom Task Request - Imperva / Incapsula (
CustomTask, classImperva). Your own proxy is required. - Imperva
Metadata - Imperva (Incapsula) challenge data. Values are dynamic: extract them right before creating the task.
- MtCaptcha
Request - MTCaptcha (
MTCaptchaTask). - Prosopo
Task Request - Prosopo Procaptcha (
ProsopoTask), token based. - Recaptcha
Complex Image Task Request - reCAPTCHA v2 image click task (
ComplexImageTask, classrecaptcha). No proxy is needed. - Recaptcha
Metadata metadataof the reCAPTCHA click task.- Recaptcha
V2Enterprise Request - reCAPTCHA v2 Enterprise (
RecaptchaV2EnterpriseTask). - Recaptcha
V2Request - reCAPTCHA v2 (
RecaptchaV2Task). Withoutproxythe task is solved from CapMonster’s own IPs. - Recaptcha
V3Enterprise Request - reCAPTCHA v3 Enterprise (
RecaptchaV3EnterpriseTask). Proxies are not supported. - Recaptcha
V3Proxyless Request - reCAPTCHA v3 (
RecaptchaV3TaskProxyless). Proxies are not supported. - Recognition
Complex Image Task Request - Recognition modules of
ComplexImageTask(classrecognition), no proxy needed. - Recognition
Metadata metadataof a recognition task.- TenDi
Custom Task Request - TenDI / Tencent captcha (
CustomTask, classTenDI). - TenDi
Metadata - Optional TenDI (Tencent captcha) parameters.
- Tspd
Custom Task Request - TSPD (
CustomTask, classtspd). Your own proxy is required. - Tspd
Metadata - TSPD challenge data. Values are dynamic: extract them right before creating the task.
- Turnstile
Challenge Cookie - Cloudflare Challenge solved to the
cf_clearancecookie (cloudflareTaskType = "cf_clearance"). Your own proxy is mandatory. - Turnstile
Challenge Token - Cloudflare Challenge solved to a token (
cloudflareTaskType = "token"). - Turnstile
Request - Cloudflare Turnstile / Challenge / Waiting Room (
TurnstileTask). - Turnstile
Standard - Regular Cloudflare Turnstile widget (no
cloudflareTaskType). All subtypes (manual, non-interactive, invisible) are supported automatically. The result is a token. - Turnstile
Wait Room - Cloudflare Waiting Room (
cloudflareTaskType = "wait_room"); the result is cookies. Your own proxy is mandatory. - Yidun
Request - NetEase Yidun captcha (
YidunTask). Settingchallengeselects the Enterprise variant.
Enums§
- Amazon
WafVariant - The three mutually exclusive parameter sets accepted by the API for
AmazonTask. - Data
Dome Version - DataDome solving method version (
datadomeVersion). - Geetest
Version - GeeTest version together with the parameters that only exist for that version.
- Hunt
Mode - What the HUNT solver should do.
dataandwidgetUrlare mutually exclusive. - Payload
Type - Kind of data sent in
imagesBase64(PayloadTypeinsidemetadata). - Recaptcha
Grid - Image grid size of a reCAPTCHA challenge (
Gridinsidemetadata). - Text
Module - Recognition modules accepted by
ImageToTextTask(capMonsterModule), as listed in https://docs.capmonster.cloud/docs/captchas/ImageToText/module-name.txt. A module missing here (the list grows) can be passed withTextModule::Custom. - Turnstile
Mode - What kind of Cloudflare protection is being solved.
Traits§
- Captcha
Request - A task that can be sent to CapMonster Cloud.