{"id":22260,"date":"2026-02-28T15:20:17","date_gmt":"2026-02-28T15:20:17","guid":{"rendered":"http:\/\/localhost\/capskip\/?page_id=22260"},"modified":"2026-07-25T23:09:20","modified_gmt":"2026-07-25T23:09:20","slug":"api-docs","status":"publish","type":"page","link":"https:\/\/capskip.com\/zh\/api-docs\/","title":{"rendered":"API \u6587\u6863"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"22260\" class=\"elementor elementor-22260\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9b928b2 e-flex e-con-boxed e-con e-parent\" data-id=\"9b928b2\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-b6297bb e-con-full e-flex e-con e-child\" data-id=\"b6297bb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e2a2ed9 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"e2a2ed9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;css&quot;,&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\"><h1 class=\"ekit-heading--title elementskit-section-title \">API Documentation<\/h1>\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>Reference for available endpoints, request formats, parameters, and example responses for integrating the API into your applications.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f14bae0 e-flex e-con-boxed e-con e-parent\" data-id=\"f14bae0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;none&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-260b664 e-con-full elementor-hidden-tablet elementor-hidden-mobile e-flex e-con e-child\" data-id=\"260b664\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-cb72303 e-con-full ekit-sticky--top e-flex e-con e-child\" data-id=\"cb72303\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;ekit_sticky&quot;:&quot;top&quot;,&quot;ekit_sticky_offset&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:100,&quot;sizes&quot;:[]},&quot;ekit_sticky_until&quot;:&quot;last&quot;,&quot;ekit_sticky_offset_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;ekit_sticky_offset_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;ekit_sticky_on_desktop&quot;:&quot;desktop&quot;,&quot;ekit_sticky_effect_offset&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;ekit_sticky_effect_offset_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;ekit_sticky_effect_offset_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ec9d1e0 sticky-navigation animated-fast elementor-hidden-tablet elementor-hidden-mobile elementor-invisible elementor-widget elementor-widget-elementskit-stylish-list\" data-id=\"ec9d1e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-stylish-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\">\t\t<ul class=\"ekit-stylish-list \" >\n\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-dbd1c0d\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#image-captcha\" aria-label=\"Image CAPTCHA\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-images\" viewBox=\"0 0 576 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v208c0 44.112 35.888 80 80 80h336zm96-80V80c0-26.51-21.49-48-48-48H144c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h384c26.51 0 48-21.49 48-48zM256 128c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-96 144l55.515-55.515c4.686-4.686 12.284-4.686 16.971 0L272 256l135.515-135.515c4.686-4.686 12.284-4.686 16.971 0L512 208v112H160v-48z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">Image CAPTCHA<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-54f38d1\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#recaptcha-v2\" aria-label=\"reCAPTCHA V2\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-google\" viewBox=\"0 0 488 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">reCAPTCHA V2<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-54477fc\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#recaptcha-v2-callback\" aria-label=\"reCAPTCHA V2 Callback\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-google\" viewBox=\"0 0 488 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">reCAPTCHA V2 Callback<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-dcf51fe\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#recaptcha-v2-invisible\" aria-label=\"reCAPTCHA V2 Invisible\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-google\" viewBox=\"0 0 488 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">reCAPTCHA V2 Invisible<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-e55ac41\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#recaptcha-v3\" aria-label=\"reCAPTCHA V3\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-google\" viewBox=\"0 0 488 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">reCAPTCHA V3<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-92657ff\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#recaptcha-enterprise\" aria-label=\"reCAPTCHA Enterprise\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-google\" viewBox=\"0 0 488 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">reCAPTCHA Enterprise<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-bdf4cf9\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#cloudflare-turnstile\" aria-label=\"Cloudflare Turnstile\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-cloudflare\" viewBox=\"0 0 640 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">Cloudflare Turnstile<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-e2d8c59\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#geetest-v3\" aria-label=\"Geetest V3\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-puzzle-piece\" viewBox=\"0 0 576 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M519.442 288.651c-41.519 0-59.5 31.593-82.058 31.593C377.409 320.244 432 144 432 144s-196.288 80-196.288-3.297c0-35.827 36.288-46.25 36.288-85.985C272 19.216 243.885 0 210.539 0c-34.654 0-66.366 18.891-66.366 56.346 0 41.364 31.711 59.277 31.711 81.75C175.885 207.719 0 166.758 0 166.758v333.237s178.635 41.047 178.635-28.662c0-22.473-40-40.107-40-81.471 0-37.456 29.25-56.346 63.577-56.346 33.673 0 61.788 19.216 61.788 54.717 0 39.735-36.288 50.158-36.288 85.985 0 60.803 129.675 25.73 181.23 25.73 0 0-34.725-120.101 25.827-120.101 35.962 0 46.423 36.152 86.308 36.152C556.712 416 576 387.99 576 354.443c0-34.199-18.962-65.792-56.558-65.792z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">Geetest V3<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-96d5ddb\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#proxy\" aria-label=\"Using Proxies\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-server\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M480 160H32c-17.673 0-32-14.327-32-32V64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">Using Proxies<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t<li class=\"ekit-stylish-list-content-wrapper elementor-repeater-item-f5bdfe0\" >\n\t\t\t\t\t\t\t\t\t\t\t<a class=\"ekit-wrapper-link\" href=\"#error-codes\" aria-label=\"Error Codes\"><\/a>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-icon\">\n\t\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-info-circle\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"><\/path><\/svg>\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-content-text\">\n\t\t\t\t\t\t\t<span class=\"ekit-stylish-list-content-title\">Error Codes<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/li>\n\t\t\t\t\t\t\t\t\t<div class=\"ekit-stylish-list-divider\"><\/div>\n\t\t\t\t\t\t\t\t\t<\/ul>\n\t<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9060030 elementor-widget elementor-widget-html\" data-id=\"9060030\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n\/* ================================================================\r\n   CapSkip \u00b7 API Docs page only (page-id-22260)\r\n   1. EnlighterJS code boxes  2. Tables  3. Required pills\r\n   ================================================================ *\/\r\n\r\n\/* ---------- 1. CODE BOXES ---------- *\/\r\n.page-id-22260 .enlighter-default{\r\n  --cs-code-bg:#0d1020; --cs-code-bar:#171a2e; --cs-code-line:#262a45; --cs-code-fg:#e6e8f2;\r\n  --cs-c:#7c86a8; --cs-s:#7ee0a9; --cs-k:#9db4ff; --cs-fn:#7ad0ff; --cs-n:#f4b86a;\r\n  background:var(--cs-code-bg) !important;\r\n  border:1px solid var(--cs-code-line) !important;\r\n  border-radius:12px !important;\r\n  padding:0 !important;\r\n  overflow:hidden !important;\r\n  box-shadow:0 18px 40px -30px rgba(13,16,32,.9) !important;\r\n}\r\n\r\n\/* top bar *\/\r\n.page-id-22260 .enlighter-default .enlighter-toolbar{\r\n  display:flex !important; position:static !important; float:none !important;\r\n  align-items:center; gap:10px;\r\n  width:100% !important; box-sizing:border-box;\r\n  height:44px; margin:0 !important; padding:0 12px !important;\r\n  background:var(--cs-code-bar) !important;\r\n  border-bottom:1px solid var(--cs-code-line);\r\n  opacity:1 !important; visibility:visible !important;\r\n}\r\n.page-id-22260 .enlighter-default .enlighter-toolbar-bottom{display:none !important;}\r\n\r\n\/* traffic-light dots *\/\r\n.page-id-22260 .enlighter-default .enlighter-toolbar::before{\r\n  content:\"\"; order:-2; flex:none;\r\n  width:11px; height:11px; border-radius:50%;\r\n  background:#ff5f57; box-shadow:17px 0 0 #febc2e, 34px 0 0 #28c840;\r\n  margin-right:34px;\r\n}\r\n\r\n\/* language label *\/\r\n.page-id-22260 .enlighter-default .enlighter-toolbar::after{\r\n  content:\"code\"; order:-1; flex:none;\r\n  font-family:ui-monospace,Menlo,Consolas,monospace;\r\n  font-size:12.5px; color:#aeb4d0; white-space:nowrap;\r\n}\r\n.page-id-22260 .enlighter-default.enlighter-l-shell      .enlighter-toolbar::after{content:\"Terminal\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-xml        .enlighter-toolbar::after{content:\"HTML\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-javascript .enlighter-toolbar::after{content:\"JavaScript\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-python     .enlighter-toolbar::after{content:\"Python\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-php        .enlighter-toolbar::after{content:\"PHP\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-csharp     .enlighter-toolbar::after{content:\"C#\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-json       .enlighter-toolbar::after{content:\"JSON\";}\r\n.page-id-22260 .enlighter-default.enlighter-l-css        .enlighter-toolbar::after{content:\"CSS\";}\r\n\r\n\/* copy button (reuses Enlighter's own, so it keeps working) *\/\r\n.page-id-22260 .enlighter-default .enlighter-btn-raw,\r\n.page-id-22260 .enlighter-default .enlighter-btn-window,\r\n.page-id-22260 .enlighter-default .enlighter-btn-website,\r\n.page-id-22260 .enlighter-default .enlighter-tooltip{display:none !important;}\r\n.page-id-22260 .enlighter-default .enlighter-btn-copy{\r\n  order:0; margin-left:auto !important;\r\n  display:inline-flex !important; align-items:center;\r\n  width:auto !important; height:30px !important; padding:0 12px !important;\r\n  background:transparent !important;\r\n  border:1px solid var(--cs-code-line) !important;\r\n  border-radius:8px !important; color:#c3c8e2 !important;\r\n  font-family:\"Plus Jakarta Sans\",system-ui,-apple-system,sans-serif;\r\n  font-size:12.5px; font-weight:600; cursor:pointer;\r\n  transition:background .18s,color .18s,border-color .18s;\r\n}\r\n.page-id-22260 .enlighter-default .enlighter-btn-copy:hover{\r\n  background:rgba(255,255,255,.06) !important; color:#fff !important;\r\n}\r\n\/* copy feedback *\/\r\n.page-id-22260 .enlighter-default .enlighter-btn-copy.cs-copied{\r\n  color:#30e87a !important;\r\n  border-color:rgba(48,232,122,.4) !important;\r\n}\r\n.page-id-22260 .enlighter-default .enlighter-btn-copy.cs-copied::after{\r\n  content:\"Copied!\" !important;\r\n}\r\n\/* code area *\/\r\n.page-id-22260 .enlighter-default .enlighter-code{\r\n  padding:16px 18px !important;\r\n  background:var(--cs-code-bg) !important;\r\n  overflow-x:auto; scrollbar-width:thin; scrollbar-color:#2f3454 transparent;\r\n}\r\n.page-id-22260 .enlighter-default .enlighter-code::-webkit-scrollbar{height:8px;}\r\n.page-id-22260 .enlighter-default .enlighter-code::-webkit-scrollbar-track{background:transparent;}\r\n.page-id-22260 .enlighter-default .enlighter-code::-webkit-scrollbar-thumb{background:#2f3454;border-radius:4px;}\r\n.page-id-22260 .enlighter-default .enlighter{\r\n  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,\"Liberation Mono\",monospace !important;\r\n  font-size:13.5px !important; line-height:1.7 !important;\r\n  color:var(--cs-code-fg) !important; background:transparent !important;\r\n}\r\n.page-id-22260 .enlighter-default .enlighter > div{background:transparent !important;}\r\n.page-id-22260 .enlighter-default .enlighter > div::before{display:none !important;}\r\n\r\n\/* syntax colours *\/\r\n.page-id-22260 .enlighter-default .enlighter-c0,\r\n.page-id-22260 .enlighter-default .enlighter-c1,\r\n.page-id-22260 .enlighter-default .enlighter-c2{color:var(--cs-c) !important;font-style:italic !important;}\r\n.page-id-22260 .enlighter-default .enlighter-s0,\r\n.page-id-22260 .enlighter-default .enlighter-s1,\r\n.page-id-22260 .enlighter-default .enlighter-s2,\r\n.page-id-22260 .enlighter-default .enlighter-s3{color:var(--cs-s) !important;}\r\n.page-id-22260 .enlighter-default .enlighter-k0,\r\n.page-id-22260 .enlighter-default .enlighter-k1,\r\n.page-id-22260 .enlighter-default .enlighter-k2,\r\n.page-id-22260 .enlighter-default .enlighter-k3,\r\n.page-id-22260 .enlighter-default .enlighter-k9,\r\n.page-id-22260 .enlighter-default .enlighter-e1,\r\n.page-id-22260 .enlighter-default .enlighter-x1{color:var(--cs-k) !important;}\r\n.page-id-22260 .enlighter-default .enlighter-m0,\r\n.page-id-22260 .enlighter-default .enlighter-m1,\r\n.page-id-22260 .enlighter-default .enlighter-m2,\r\n.page-id-22260 .enlighter-default .enlighter-m3,\r\n.page-id-22260 .enlighter-default .enlighter-x2{color:var(--cs-fn) !important;}\r\n.page-id-22260 .enlighter-default .enlighter-n0,\r\n.page-id-22260 .enlighter-default .enlighter-n1{color:var(--cs-n) !important;}\r\n.page-id-22260 .enlighter-default .enlighter-text,\r\n.page-id-22260 .enlighter-default .enlighter-g1{color:var(--cs-code-fg) !important;}\r\n\r\n\/* ---------- 2. TABLES ---------- *\/\r\n.page-id-22260 .elementor-widget-html table{\r\n  --tl:#e7e8ef; --tink:#0f1222; --tbody:#4a5063; --tmuted:#8a90a2;\r\n  --thead:#f6f7fb; --tindigo:#2f3bd9;\r\n  width:100% !important;\r\n  border-collapse:separate !important; border-spacing:0 !important;\r\n  border:1px solid var(--tl) !important;\r\n  border-radius:14px !important;\r\n  overflow:hidden;\r\n  background:#fff !important;\r\n  box-shadow:0 21px 18px -36px rgba(20,24,60,.5);\r\n  font-size:14.5px !important; line-height:1.6;\r\n  margin:0 0 20px !important;\r\n}\r\n.page-id-22260 .elementor-widget-html table th{\r\n  background:var(--thead) !important; color:var(--tmuted) !important;\r\n  font-size:12px !important; font-weight:700 !important;\r\n  text-transform:uppercase; letter-spacing:.05em;\r\n  text-align:left !important; padding:12px 16px !important;\r\n  border:0 !important; border-bottom:1px solid var(--tl) !important;\r\n  white-space:nowrap;\r\n}\r\n.page-id-22260 .elementor-widget-html table th strong{font-weight:700 !important; color:inherit !important;}\r\n.page-id-22260 .elementor-widget-html table td{\r\n  padding:13px 16px !important; vertical-align:top !important;\r\n  color:var(--tbody) !important;\r\n  border:0 !important; border-bottom:1px solid var(--tl) !important;\r\n}\r\n.page-id-22260 .elementor-widget-html table tbody tr:last-child td{border-bottom:0 !important;}\r\n.page-id-22260 .elementor-widget-html table tbody tr:hover td{background:#f9fafc !important;}\r\n.page-id-22260 .elementor-widget-html table thead tr:first-child th:first-child{border-top-left-radius:14px;}\r\n.page-id-22260 .elementor-widget-html table thead tr:first-child th:last-child{border-top-right-radius:14px;}\r\n.page-id-22260 .elementor-widget-html table tbody tr:last-child td:first-child{border-bottom-left-radius:14px;}\r\n.page-id-22260 .elementor-widget-html table tbody tr:last-child td:last-child{border-bottom-right-radius:14px;}\r\n.page-id-22260 .elementor-widget-html table td:first-child{\r\n  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;\r\n  font-size:13px !important; font-weight:600 !important;\r\n  color:var(--tink) !important; white-space:nowrap;\r\n}\r\n.page-id-22260 .elementor-widget-html table td:nth-child(2){\r\n  color:var(--tmuted) !important; font-size:13.5px !important; white-space:nowrap;\r\n}\r\n.page-id-22260 .elementor-widget-html table td:nth-child(3){\r\n  font-weight:600 !important; color:var(--tink) !important;\r\n}\r\n.page-id-22260 .elementor-widget-html table td code,\r\n.page-id-22260 .elementor-widget-html table td em{\r\n  font-family:ui-monospace,Menlo,Consolas,monospace !important;\r\n  font-style:normal !important; font-size:12.5px !important;\r\n  background:var(--thead) !important; border:1px solid var(--tl) !important;\r\n  padding:1px 6px !important; border-radius:6px !important;\r\n  color:var(--tindigo) !important;\r\n}\r\n.page-id-22260 .elementor-widget-html > .elementor-widget-container{\r\n  overflow-x:auto; -webkit-overflow-scrolling:touch;\r\n}\r\n\r\n\/* ---------- 3. REQUIRED PILLS ---------- *\/\r\n.page-id-22260 .cs-req{\r\n  display:inline-flex; align-items:center; height:22px; padding:0 9px;\r\n  border-radius:999px; font-family:\"Plus Jakarta Sans\",system-ui,sans-serif;\r\n  font-size:11.5px; font-weight:700; letter-spacing:.03em; text-transform:uppercase;\r\n}\r\n.page-id-22260 .cs-req--yes{background:#e7fbef; color:#0fa25e;}\r\n.page-id-22260 .cs-req--no{background:#f0f1f6; color:#8a90a2;}\r\n\r\n\/* ---------- mobile ---------- *\/\r\n@media (max-width:640px){\r\n  .page-id-22260 .enlighter-default .enlighter-toolbar::after{display:none;}\r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function(){\r\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', run);\r\n  else run();\r\n\r\n  function run(){\r\n    if (!document.body.classList.contains('page-id-22260')) return;\r\n\r\n    \/* ---- copy button feedback ----\r\n       NOTE: EnlighterJS calls stopPropagation() in its own click handler,\r\n       so a bubble-phase listener never fires. The `true` below (capture\r\n       phase) is required \u2014 do not remove it. *\/\r\n    document.addEventListener('click', function(e){\r\n      var btn = e.target && e.target.closest && e.target.closest('.enlighter-btn-copy');\r\n      if (!btn) return;\r\n      btn.classList.add('cs-copied');\r\n      clearTimeout(btn._csCopyTimer);\r\n      btn._csCopyTimer = setTimeout(function(){\r\n        btn.classList.remove('cs-copied');\r\n      }, 1600);\r\n    }, true);\r\n\r\n    \/* ---- Required column -> Yes\/No pills ---- *\/\r\n    document.querySelectorAll('.elementor-widget-html table').forEach(function(t){\r\n      var heads = [].slice.call(t.querySelectorAll('thead th'));\r\n      var idx = heads.findIndex(function(h){ return \/required\/i.test(h.textContent); });\r\n      if (idx < 0) return;\r\n      t.querySelectorAll('tbody tr').forEach(function(tr){\r\n        var cell = tr.cells[idx];\r\n        if (!cell || cell.querySelector('.cs-req')) return;\r\n        var m = cell.textContent.trim().match(\/^(Yes|No)(\\*?)$\/i);\r\n        if (!m) return;\r\n        var cls = \/^yes$\/i.test(m[1]) ? 'yes' : 'no';\r\n        cell.innerHTML = '<span class=\"cs-req cs-req--' + cls + '\">' + m[1] + m[2] + '<\/span>';\r\n      });\r\n    });\r\n  }\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4c788ed e-con-full e-flex e-con e-child\" data-id=\"4c788ed\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-589af1f e-con-full sticky-section e-flex e-con e-child\" data-id=\"589af1f\" data-element_type=\"container\" data-e-type=\"container\" id=\"section1\">\n\t\t<div class=\"elementor-element elementor-element-80c6792 e-con-full e-flex e-con e-child\" data-id=\"80c6792\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-69a2636 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"69a2636\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>This documentation is intended for developers who want to integrate CapSkip directly into their own scripts, applications, or automation systems. Users of third party software should follow the Tutorials section for setup instructions.<\/p>\n<p>CapSkip emulates the APIs of widely used CAPTCHA solving services, allowing it to connect to compatible third party software without requiring any modifications. Integration typically only requires running CapSkip.<\/p>\n<p>The documentation explains how to submit requests and retrieve results. CapSkip supports multiple API families, including the 2Captcha style API (in.php \/ res.php), the JSON createTask \/ getTaskResult API used by AntiCaptcha, CapMonster, and CapSolver, and the DeathByCaptcha REST API. Services within the same family share the same endpoints, request and response format. Only the base URL (host and port) differs for each service.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-740d7dd elementor-widget elementor-widget-html\" data-id=\"740d7dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\n  <thead>\n    <tr>\n      <th>API family<\/th>\n      <th>Services<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>2captcha-style<\/td>\n      <td>2captcha.com, rucaptcha.com, solvecaptcha.com, captchas.io<\/td>\n    <\/tr>\n    <tr>\n      <td>JSON (createTask \/ getTaskResult)<\/td>\n      <td>anti-captcha.com, capmonster.cloud, capsolver.com<\/td>\n    <\/tr>\n    <tr>\n      <td>DeathByCaptcha<\/td>\n      <td>deathbycaptcha.com<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ce1856f elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"ce1856f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7f13b73 e-con-full e-flex e-con e-child\" data-id=\"7f13b73\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-55786a8 elementor-widget elementor-widget-elementskit-heading\" data-id=\"55786a8\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"image-captcha\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/textToImage.svg\" width=\"34\" height=\"24\" \/> <span style=\"color: #000000\"><strong>Image CAPTCHA<\/strong><\/span><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d21c6c1 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"d21c6c1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>A normal CAPTCHA is an image containing distorted but human-readable text. To solve it, the user must type the text shown in the image.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7a506a4 elementor-widget elementor-widget-text-editor\" data-id=\"7a506a4\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"99\" data-end=\"192\">To solve a normal CAPTCHA, submit the image via an HTTP POST request to the API endpoint. Send the request directly to your CapSkip instance using the configured local address and port, for example: <code data-start=\"480\" data-end=\"510\">http:\/\/127.0.0.1:PORT\/in.php<\/code><\/p><p data-start=\"512\" data-end=\"586\">CapSkip accepts images in multipart\/form-data or Base64-encoded format.<\/p><p data-start=\"512\" data-end=\"586\"><span style=\"color: #000000;\"><strong>Multipart sample form<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b53c02c elementor-widget elementor-widget-shortcode\" data-id=\"b53c02c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"html\" class=\"EnlighterJSRAW\">\n&lt;form method=&quot;post&quot; action=&quot;http:\/\/127.0.0.1:PORT\/in.php&quot; enctype=&quot;multipart\/form-data&quot;&gt;\n&lt;input type=&quot;hidden&quot; name=&quot;method&quot; value=&quot;post&quot;&gt;\nYour key:\n&lt;input type=&quot;text&quot; name=&quot;key&quot; value=&quot;YOUR_APIKEY&quot;&gt;\nThe CAPTCHA file:\n&lt;input type=&quot;file&quot; name=&quot;file&quot;&gt;\n&lt;input type=&quot;submit&quot; value=&quot;Upload and get the ID&quot;&gt;\n&lt;\/form&gt;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aff63b3 elementor-widget elementor-widget-text-editor\" data-id=\"aff63b3\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><code>YOUR_APIKEY<\/code> represents your API key if API key validation is enabled in CapSkip. If API key validation is disabled, any string value will be accepted.<\/p><p><span style=\"color: #000000;\"><strong>Base64 sample form<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a2818ad elementor-widget elementor-widget-shortcode\" data-id=\"a2818ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"html\" class=\"EnlighterJSRAW\">\n&lt;form method=&quot;post&quot; action=&quot;http:\/\/127.0.0.1:PORT\/in.php&quot;&gt;\n&lt;input type=&quot;hidden&quot; name=&quot;method&quot; value=&quot;base64&quot;&gt;\nYour key:\n&lt;input type=&quot;text&quot; name=&quot;key&quot; value=&quot;YOUR_APIKEY&quot;&gt;\nThe CAPTCHA file body in base64 format:\n&lt;textarea name=&quot;body&quot;&gt;BASE64_FILE&lt;\/textarea&gt;\n&lt;input type=&quot;submit&quot; value=&quot;Upload and get the ID&quot;&gt;\n&lt;\/form&gt;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-235a1f5 elementor-widget elementor-widget-text-editor\" data-id=\"235a1f5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"52\" data-end=\"103\"><code>YOUR_APIKEY<\/code> represents your API key if API key validation is enabled in CapSkip. If API key validation is disabled, any string value will be accepted.<\/p><p data-start=\"52\" data-end=\"103\"><code data-start=\"54\" data-end=\"67\">BASE64_FILE<\/code> is the Base64-encoded image data.<\/p><h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2e1dfcc elementor-widget elementor-widget-html\" data-id=\"2e1dfcc\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>POST parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>method<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\npost \u2013 submit the image using multipart\/form-data<br>\r\nbase64 \u2013 submit the image as a Base64-encoded string\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>file<\/td>\r\n<td>File<\/td>\r\n<td>Yes*<\/td>\r\n<td>\r\nCAPTCHA image file.<br>\r\n* Required when method=post.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>body<\/td>\r\n<td>String<\/td>\r\n<td>Yes*<\/td>\r\n<td>\r\nBase64-encoded CAPTCHA image data.<br>\r\n* Required when method=base64.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text<br>\r\n1 \u2013 response is returned in JSON format\r\n<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2dbf7d1 elementor-widget elementor-widget-text-editor\" data-id=\"2dbf7d1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit CAPTCHA (multipart file upload):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-208e3a1 elementor-widget elementor-widget-shortcode\" data-id=\"208e3a1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -F &quot;key=YOUR_API_KEY&quot; -F &quot;method=post&quot; -F &quot;file=@captcha.png&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f7cea3e elementor-widget elementor-widget-text-editor\" data-id=\"f7cea3e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit CAPTCHA (base64 encoded):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7d10f0e elementor-widget elementor-widget-shortcode\" data-id=\"7d10f0e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=base64&amp;body=BASE64_IMAGE_DATA&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1cd5fd2 elementor-widget elementor-widget-text-editor\" data-id=\"1cd5fd2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"78\" data-end=\"183\">After submitting the request, if everything is correct, CapSkip will return the CAPTCHA ID as plain text: <code data-start=\"185\" data-end=\"195\">OK|12345<\/code><\/p><p data-start=\"197\" data-end=\"277\">If the <code data-start=\"204\" data-end=\"212\">json=1<\/code> parameter is used, the response will be returned in JSON format:<code data-start=\"279\" data-end=\"311\"><\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1fb3c2 elementor-widget elementor-widget-shortcode\" data-id=\"e1fb3c2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;:1,\n    &quot;request&quot;:&quot;12345&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-71bef53 elementor-widget elementor-widget-text-editor\" data-id=\"71bef53\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"313\" data-end=\"423\">Wait 1 second, then send an HTTP GET request to the result endpoint (<code data-start=\"382\" data-end=\"392\">\/res.php<\/code>) with the returned CAPTCHA ID.<\/p><p data-start=\"425\" data-end=\"502\">If the CAPTCHA has been solved, CapSkip will return the result as plain text: <code data-start=\"504\" data-end=\"513\">OK|TEXT<\/code><\/p><p data-start=\"515\" data-end=\"563\">If <code data-start=\"518\" data-end=\"526\">json=1<\/code> was specified, the response will be:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5016ff7 elementor-widget elementor-widget-shortcode\" data-id=\"5016ff7\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;:1,\n    &quot;request&quot;:&quot;TEXT&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84d9af0 elementor-widget elementor-widget-text-editor\" data-id=\"84d9af0\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"598\" data-end=\"655\">If the CAPTCHA is not yet solved, CapSkip will return: <code data-start=\"657\" data-end=\"675\">CAPCHA_NOT_READY<\/code><\/p><p data-start=\"677\" data-end=\"762\">In this case, wait 1 second and repeat the request until a final result is received. If CapSkip returns an empty response body, the result has already been retrieved or the ID does not exist. Each result can be read only once.<\/p><h5><span style=\"color: #000000;\"><strong>List of\u00a0GET request parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-76c81d6 elementor-widget elementor-widget-html\" data-id=\"76c81d6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>GET parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nget \u2013 retrieve the answer for the submitted CAPTCHA.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>id<\/td>\r\n<td>Integer<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe CAPTCHA ID returned by <code>in.php<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text<br>\r\n1 \u2013 response is returned in JSON format\r\n<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b825ef elementor-widget elementor-widget-shortcode\" data-id=\"1b825ef\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl &quot;http:\/\/127.0.0.1:8080\/res.php?key=YOUR_API_KEY&amp;action=get&amp;id=CAPTCHA_ID&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-27c7f80 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"27c7f80\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dc3d4d5 sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"dc3d4d5\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"recaptcha-v2\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/reCaptcha.svg\" alt=\"recaptcha v2 solver\" width=\"24\" height=\"24\" \/> \u00a0<strong>reCAPTCHA V2<\/strong><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-98f1218 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"98f1218\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>reCAPTCHA v2, also known as the \u201cI\u2019m not a robot\u201d reCAPTCHA, is a widely used CAPTCHA type that appears as follows:<span style=\"color: #000000\"><br \/><\/span><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/recaptchav2.gif\" alt=\"recaptcha v2\" width=\"316\" height=\"164\" \/><\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fde33b4 elementor-widget elementor-widget-text-editor\" data-id=\"fde33b4\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"91\" data-end=\"219\">To solve reCAPTCHA v2, send the <code data-start=\"123\" data-end=\"134\">googlekey<\/code> and <code data-start=\"139\" data-end=\"148\">pageurl<\/code> parameters along with <code data-start=\"171\" data-end=\"193\">method=userrecaptcha<\/code> and your CapSkip API key.<\/p><p data-start=\"221\" data-end=\"287\">You can obtain the <code data-start=\"240\" data-end=\"251\">googlekey<\/code> using one of the following methods:<\/p><p data-start=\"289\" data-end=\"379\">Right-click on the reCAPTCHA widget and select <strong data-start=\"336\" data-end=\"347\">Inspect<\/strong>. Locate a URL that begins with:<\/p><p data-start=\"381\" data-end=\"419\"><code data-start=\"381\" data-end=\"419\">www.google.com\/recaptcha\/api2\/anchor<\/code><\/p><p data-start=\"421\" data-end=\"471\">Copy the value of the <code data-start=\"443\" data-end=\"446\">k<\/code> parameter from that URL. Alternatively, find the <code data-start=\"497\" data-end=\"511\">data-sitekey<\/code> attribute in the page source and copy its value.<\/p><p data-start=\"473\" data-end=\"560\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/sitekey-recaptcha-v2.png\" alt=\"CapSkip sitekey\" width=\"738\" height=\"165\" \/><\/p><p data-start=\"562\" data-end=\"659\">Once you have the site key, submit an HTTP GET or POST request to <code data-start=\"793\" data-end=\"823\">http:\/\/127.0.0.1:PORT\/in.php<\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e4b589c elementor-widget elementor-widget-text-editor\" data-id=\"e4b589c\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"v2-post\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0498f93 elementor-widget elementor-widget-html\" data-id=\"0498f93\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>method<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nuserrecaptcha \u2013 specifies a reCAPTCHA v2 request.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>googlekey<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe value of the <em>k<\/em> or <em>data-sitekey<\/em> parameter found on the target page.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>pageurl<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe full URL of the page where the reCAPTCHA is located.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>enterprise<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n1 \u2013 indicates reCAPTCHA Enterprise v2.<br>\r\n0 \u2013 standard reCAPTCHA v2.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>invisible<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n1 \u2013 indicates Invisible reCAPTCHA.<br>\r\n0 \u2013 standard checkbox reCAPTCHA.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>data-s<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>\r\nValue of the <em>data-s<\/em> parameter found on the page. Applicable to Google Search and certain Google services.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text.<br>\r\n1 \u2013 response is returned in JSON format.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>proxy<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Proxy address. Format for IP authentication: <code>IP:PORT<\/code> (example: <code>123.123.123.123:3128<\/code>). Format for login\/password authentication: <code>login:password@IP:PORT<\/code><\/td>\r\n<\/tr>\r\n<tr>\r\n<td>proxytype<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Type of proxy. Supported values: <code>HTTP<\/code>, <code>HTTPS<\/code>, <code>SOCKS5<\/code>, <code>SOCKS5H<\/code>. Default: <code>HTTP<\/code> when <code>proxy<\/code> is provided but <code>proxytype<\/code> is omitted.<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e8b38da elementor-widget elementor-widget-text-editor\" data-id=\"e8b38da\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit reCAPTCHA v2 (Standard):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a01f294 elementor-widget elementor-widget-shortcode\" data-id=\"a01f294\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b9ce450 elementor-widget elementor-widget-text-editor\" data-id=\"b9ce450\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit reCAPTCHA v2 (Invisible):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5a21c4c elementor-widget elementor-widget-shortcode\" data-id=\"5a21c4c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&amp;invisible=1&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-99f7dd5 elementor-widget elementor-widget-text-editor\" data-id=\"99f7dd5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit Enterprise reCAPTCHA v2:<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-43d4175 elementor-widget elementor-widget-shortcode\" data-id=\"43d4175\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&amp;enterprise=1&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dce4453 elementor-widget elementor-widget-text-editor\" data-id=\"dce4453\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit Enterprise reCAPTCHA v2 (Invisible):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f388f6d elementor-widget elementor-widget-shortcode\" data-id=\"f388f6d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&amp;enterprise=1&amp;invisible=1&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4a6aa50 elementor-widget elementor-widget-text-editor\" data-id=\"4a6aa50\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"91\" data-end=\"173\">If the request is successful, CapSkip will return the CAPTCHA ID as plain text: <code data-start=\"175\" data-end=\"190\">OK|12345<\/code><\/p><p data-start=\"192\" data-end=\"273\">If the <code data-start=\"199\" data-end=\"207\">json=1<\/code> parameter was used, the response will be returned in JSON format:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c1fa30d elementor-widget elementor-widget-shortcode\" data-id=\"c1fa30d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;:1,\n    &quot;request&quot;:&quot;12345&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-96867df elementor-widget elementor-widget-text-editor\" data-id=\"96867df\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"314\" data-end=\"373\">If the request fails, CapSkip will return an error code.<\/p><p data-start=\"375\" data-end=\"476\">Wait 15 to 20 seconds, then send an HTTP GET request to the result endpoint to retrieve the solution: <code data-start=\"554\" data-end=\"585\">http:\/\/127.0.0.1:PORT\/res.php<\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6ea1eaf elementor-widget elementor-widget-text-editor\" data-id=\"6ea1eaf\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5><span style=\"color: #000000;\"><strong>List of\u00a0GET request parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-99b94ae elementor-widget elementor-widget-html\" data-id=\"99b94ae\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>GET parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nget \u2013 retrieve the answer for the submitted CAPTCHA.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>id<\/td>\r\n<td>Integer<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe CAPTCHA ID returned by <code>in.php<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text<br>\r\n1 \u2013 response is returned in JSON format\r\n<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e3e4eea elementor-widget elementor-widget-shortcode\" data-id=\"e3e4eea\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl &quot;http:\/\/127.0.0.1:8080\/res.php?key=YOUR_API_KEY&amp;action=get&amp;id=CAPTCHA_ID&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d3a222d elementor-widget elementor-widget-text-editor\" data-id=\"d3a222d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If the CAPTCHA has been solved, CapSkip will respond in plain text or JSON and return the answer token. The token will look similar to the following:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-db19877 elementor-widget elementor-widget-shortcode\" data-id=\"db19877\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\n03AHJ_Vuve5Asa4koK3KSMyUkCq0vUFCR5Im4CwB7PzO3dCxIo11i53epEraq-uBO5mVm2XRikL8iKOWr0aG50sCuej9bXx5qcviUGSm4iK4NC_Q88flavWhaTXSh0VxoihBwBjXxwXuJZ-WGN5Sy4dtUl2wbpMqAj8Zwup1vyCaQJWFvRjYGWJ_TQBKTXNB5CCOgncqLetmJ6B6Cos7qoQyaB8ZzBOTGf5KSP6e-K9niYs772f53Oof6aJeSUDNjiKG9gN3FTrdwKwdnAwEYX-F37sI_vLB1Zs8NQo0PObHYy0b0sf7WSLkzzcIgW9GR0FwcCCm1P8lB-50GQHPEBJUHNnhJyDzwRoRAkVzrf7UkV8wKCdTwrrWqiYDgbrzURfHc2ESsp020MicJTasSiXmNRgryt-gf50q5BMkiRH7osm4DoUgsjc_XyQiEmQmxl5sqZP7aKsaE-EM00x59XsPzD3m3YI6SRCFRUevSyumBd7KmXE8VuzIO9lgnnbka4-eZynZa6vbB9cO3QjLH0xSG3-egcplD1uLGh79wC34RF49Ui3eHwua4S9XHpH6YBe7gXzz6_mv-o-fxrOuphwfrtwvvi2FGfpTexWvxhqWICMFTTjFBCEGEgj7_IFWEKirXW2RTZCVF0Gid7EtIsoEeZkPbrcUISGmgtiJkJ_KojuKwImF0G0CsTlxYTOU2sPsd5o1JDt65wGniQR2IZufnPbbK76Yh_KI2DY4cUxMfcb2fAXcFMc9dcpHg6f9wBXhUtFYTu6pi5LhhGuhpkiGcv6vWYNxMrpWJW_pV7q8mPilwkAP-zw5MJxkgijl2wDMpM-UUQ_k37FVtf-ndbQAIPG7S469doZMmb5IZYgvcB4ojqCW3Vz6Q\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3c9a020 elementor-widget elementor-widget-text-editor\" data-id=\"3c9a020\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If the CAPTCHA is not yet solved, CapSkip will return <code>CAPCHA_NOT_READY<\/code>. In this case, wait 5 seconds and repeat the request. If CapSkip returns an empty response body, the result has already been retrieved or the ID does not exist. Each result can be read only once.<\/p><p>Locate the element with the ID <code data-start=\"77\" data-end=\"99\">g-recaptcha-response<\/code> and make it visible by removing the <code data-start=\"136\" data-end=\"151\">display: none<\/code> style.<\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/g-recaptcha-response-capskip.png\" alt=\"g recaptcha response CapSkip\" width=\"742\" height=\"82\" \/><\/p><blockquote><p data-start=\"52\" data-end=\"207\"><strong data-start=\"52\" data-end=\"68\">Please note:<\/strong> In some cases, the page content is generated dynamically, and the <code data-start=\"135\" data-end=\"157\">g-recaptcha-response<\/code> element may not appear in the static HTML source. In such situations, inspect the page structure using your browser\u2019s developer tools to locate the dynamically generated element.<\/p><\/blockquote><p data-start=\"339\" data-end=\"443\"><br \/>As an alternative, you can use JavaScript to set the value of the <code data-start=\"405\" data-end=\"427\">g-recaptcha-response<\/code> field directly:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a3e6eeb elementor-widget elementor-widget-shortcode\" data-id=\"a3e6eeb\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ndocument.getElementById(&quot;g-recaptcha-response&quot;).innerHTML=&quot;TOKEN&quot;;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb15ee2 elementor-widget elementor-widget-text-editor\" data-id=\"cb15ee2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"52\" data-end=\"207\">An input field will appear on the page. Paste the answer token into that field and submit the form.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-adfe460 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"adfe460\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ee8b85 sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"2ee8b85\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"recaptcha-v2-callback\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/reCaptcha.svg\" alt=\"recaptcha v2 solver\" width=\"24\" height=\"24\" \/> \u00a0<strong>reCAPTCHA V2 Callback<\/strong><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ce1dce9 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"ce1dce9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>In some cases, there is no submit button and a callback function is used instead. The callback function is executed automatically when reCAPTCHA is solved.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d3db623 elementor-widget elementor-widget-text-editor\" data-id=\"d3db623\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"47\" data-end=\"132\">The list of POST and GET request parameters is available here: <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/capskip.com\/api-docs\/#v2-post\" data-wplink-url-error=\"true\">reCAPTCHA V2 POST and GET request parameters<\/a><\/span><\/p><p data-start=\"209\" data-end=\"322\">The callback function is typically defined in the <code data-start=\"259\" data-end=\"274\">data-callback<\/code> attribute of the reCAPTCHA widget, for example:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8f9b0ab elementor-widget elementor-widget-shortcode\" data-id=\"8f9b0ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ndata-callback=&quot;myCallbackFunction&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b24018b elementor-widget elementor-widget-text-editor\" data-id=\"b24018b\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"61\" data-end=\"189\">In other cases, the callback function is defined as the <code data-start=\"117\" data-end=\"127\">callback<\/code> parameter of the <code data-start=\"145\" data-end=\"166\">grecaptcha.render()<\/code> function, for example:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8b0143f elementor-widget elementor-widget-shortcode\" data-id=\"8b0143f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\ngrecaptcha.render(&#039;example&#039;, {\n&#039;sitekey&#039; : &#039;someSitekey&#039;,\n&#039;callback&#039; : myCallbackFunction,\n&#039;theme&#039; : &#039;dark&#039;\n});\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6c568d5 elementor-widget elementor-widget-text-editor\" data-id=\"6c568d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"52\" data-end=\"187\">Another way to locate the callback function is to open the browser\u2019s JavaScript console and inspect the reCAPTCHA configuration object:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f2044bb elementor-widget elementor-widget-shortcode\" data-id=\"f2044bb\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\n___grecaptcha_cfg.clients[0].aa.l.callback\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bb1feca elementor-widget elementor-widget-text-editor\" data-id=\"bb1feca\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"59\" data-end=\"284\">Note that the <code data-start=\"73\" data-end=\"79\">aa.l<\/code> property may vary, and there may be multiple reCAPTCHA clients on the page. In such cases, you should also inspect <code data-start=\"195\" data-end=\"207\">clients[1]<\/code>, <code data-start=\"209\" data-end=\"221\">clients[2]<\/code>, and other entries to locate the correct configuration object.<\/p><p data-start=\"286\" data-end=\"380\">Alternatively, you can use the following script to automatically extract reCAPTCHA parameters:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ee36ec2 elementor-widget elementor-widget-shortcode\" data-id=\"ee36ec2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\nfunction findRecaptchaClients() {\n  if (typeof (___grecaptcha_cfg) !== &#039;undefined&#039;) {\n    return Object.entries(___grecaptcha_cfg.clients).map(([cid, client]) =&gt; {\n      const data = { id: cid, version: cid &gt;= 10000 ? &#039;V3&#039; : &#039;V2&#039; };\n      const objects = Object.entries(client).filter(([_, value]) =&gt; value &amp;&amp; typeof value === &#039;object&#039;);\n\n      objects.forEach(([toplevelKey, toplevel]) =&gt; {\n        const found = Object.entries(toplevel).find(([_, value]) =&gt; (\n          value &amp;&amp; typeof value === &#039;object&#039; &amp;&amp; &#039;sitekey&#039; in value &amp;&amp; &#039;size&#039; in value\n        ));\n     \n        if (typeof toplevel === &#039;object&#039; &amp;&amp; toplevel instanceof HTMLElement &amp;&amp; toplevel[&#039;tagName&#039;] === &#039;DIV&#039;){\n            data.pageurl = toplevel.baseURI;\n        }\n        \n        if (found) {\n          const [sublevelKey, sublevel] = found;\n\n          data.sitekey = sublevel.sitekey;\n          const callbackKey = data.version === &#039;V2&#039; ? &#039;callback&#039; : &#039;promise-callback&#039;;\n          const callback = sublevel[callbackKey];\n          if (!callback) {\n            data.callback = null;\n            data.function = null;\n          } else {\n            data.function = callback;\n            const keys = [cid, toplevelKey, sublevelKey, callbackKey].map((key) =&gt; `[&#039;${key}&#039;]`).join(&#039;&#039;);\n            data.callback = `___grecaptcha_cfg.clients${keys}`;\n          }\n        }\n      });\n      return data;\n    });\n  }\n  return [];\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8a83dcc elementor-widget elementor-widget-text-editor\" data-id=\"8a83dcc\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"59\" data-end=\"284\">Finally, call the callback function:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f3889cc elementor-widget elementor-widget-shortcode\" data-id=\"f3889cc\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\nmyCallbackFunction();\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-763835a elementor-widget elementor-widget-text-editor\" data-id=\"763835a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"35\" data-end=\"56\">Or alternatively:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9e31cc2 elementor-widget elementor-widget-shortcode\" data-id=\"9e31cc2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\n___grecaptcha_cfg.clients[0].aa.l.callback();\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fe79d1d elementor-widget elementor-widget-text-editor\" data-id=\"fe79d1d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"49\" data-end=\"195\">In some cases, the callback function requires an argument. In most situations, you should pass the solved token as that argument. For example:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c3e05af elementor-widget elementor-widget-shortcode\" data-id=\"c3e05af\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\nmyCallbackFunction(&#039;TOKEN&#039;);\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4ba7a74 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"4ba7a74\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-61fd16b sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"61fd16b\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"recaptcha-v2-invisible\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/reCaptcha.svg\" alt=\"recaptcha v2 solver\" width=\"24\" height=\"24\" \/> \u00a0<strong>reCAPTCHA V2 Invisible<\/strong><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5bab793 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"5bab793\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>reCAPTCHA v2 also has an Invisible mode. You can see an example here:<\/p>\n<p><span style=\"color: #000000\"><code>https:\/\/www.google.com\/recaptcha\/api2\/demo?invisible=true<\/code><\/span><\/p>\n<p>Invisible reCAPTCHA does not display the \u201cI\u2019m not a robot\u201d checkbox. Instead, it is typically attached to a button or triggered automatically on page load or user interaction, such as clicking a button or submitting a form.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0f6cf19 elementor-widget elementor-widget-text-editor\" data-id=\"0f6cf19\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"483\" data-end=\"643\">Internally, the Invisible reCAPTCHA widget is rendered inside a hidden <code data-start=\"554\" data-end=\"561\">&lt;div&gt;<\/code> element positioned outside the visible viewport, making it invisible to the user.<\/p><p data-start=\"645\" data-end=\"808\">Depending on the user\u2019s cookies and risk score, reCAPTCHA may pass automatically without displaying a challenge. Otherwise, a standard image challenge will appear.<\/p><p data-start=\"810\" data-end=\"944\">In most cases, once the challenge is completed, a callback function is executed. Refer to the callback section above for more details.<\/p><p data-start=\"810\" data-end=\"944\">The list of POST and GET request parameters is available here: <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/capskip.com\/api-docs\/#v2-post\" data-wplink-url-error=\"true\">reCAPTCHA V2 POST and GET request parameters<\/a><\/span><\/p><h6 data-start=\"951\" data-end=\"997\"><span style=\"color: #000000;\">How to Determine if reCAPTCHA is Invisible?<\/span><\/h6><p data-start=\"999\" data-end=\"1074\">You can identify Invisible reCAPTCHA using one of the following indicators:<\/p><ul data-start=\"1076\" data-end=\"1398\"><li data-start=\"1076\" data-end=\"1172\"><p data-start=\"1078\" data-end=\"1172\">The \u201cI\u2019m not a robot\u201d checkbox is not visible, but a challenge appears after user interaction.<\/p><\/li><li data-start=\"1173\" data-end=\"1240\"><p data-start=\"1175\" data-end=\"1240\">The reCAPTCHA iframe URL contains the parameter <code data-start=\"1223\" data-end=\"1239\">size=invisible<\/code>.<\/p><\/li><li data-start=\"1241\" data-end=\"1398\"><p data-start=\"1243\" data-end=\"1398\">The reCAPTCHA configuration object includes a <code data-start=\"1289\" data-end=\"1295\">size<\/code> property set to <code data-start=\"1312\" data-end=\"1323\">invisible<\/code>, for example:<br data-start=\"1337\" data-end=\"1340\" \/><code data-start=\"1342\" data-end=\"1398\">___grecaptcha_cfg.clients[0].aa.l.size === \"invisible\"<\/code><\/p><\/li><\/ul><p data-start=\"1400\" data-end=\"1464\">When solving Invisible reCAPTCHA via API, include the parameter: <code data-start=\"1466\" data-end=\"1479\">invisible=1<\/code><\/p><h6 data-start=\"1486\" data-end=\"1538\"><span style=\"color: #000000;\">How to Handle Invisible reCAPTCHA in the Browser?<\/span><\/h6><h6 data-start=\"1540\" data-end=\"1571\"><span style=\"color: #000000;\">Method 1: Using JavaScript<\/span><\/h6><p data-start=\"1573\" data-end=\"1656\">Set the value of the <code data-start=\"1594\" data-end=\"1616\">g-recaptcha-response<\/code> field to the token returned by CapSkip:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b6d611a elementor-widget elementor-widget-shortcode\" data-id=\"b6d611a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\ndocument.getElementById(&quot;g-recaptcha-response&quot;).innerHTML=&quot;TOKEN&quot;;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bc83d0d elementor-widget elementor-widget-text-editor\" data-id=\"bc83d0d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"1746\" data-end=\"1841\">After setting the token, execute the action that normally occurs after successful verification.<\/p><p data-start=\"1843\" data-end=\"2001\">In most cases, this means submitting a form. You need to identify the correct form by its <code data-start=\"1933\" data-end=\"1937\">id<\/code>, <code data-start=\"1939\" data-end=\"1945\">name<\/code>, or another attribute, and then trigger the submission. Here are a few examples:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e58e165 elementor-widget elementor-widget-shortcode\" data-id=\"e58e165\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\ndocument.getElementById(&quot;recaptcha-demo-form&quot;).submit(); \/\/by id &quot;recaptcha-demo-form&quot;\ndocument.getElementsByName(&quot;myFormName&quot;)[0].submit(); \/\/by element name &quot;myFormName&quot;\ndocument.getElementsByClassName(&quot;example&quot;).submit(); \/\/by class name &quot;example&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8580172 elementor-widget elementor-widget-text-editor\" data-id=\"8580172\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"52\" data-end=\"138\">In some cases, a callback function is executed automatically when reCAPTCHA is solved.<\/p><p data-start=\"140\" data-end=\"253\">The callback function is typically defined in the <code data-start=\"190\" data-end=\"205\">data-callback<\/code> attribute of the reCAPTCHA widget, for example:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4177e6c elementor-widget elementor-widget-shortcode\" data-id=\"4177e6c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\ndata-callback=&quot;myCallbackFunction&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ce09cb elementor-widget elementor-widget-text-editor\" data-id=\"2ce09cb\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"47\" data-end=\"175\">In other cases, the callback function is defined as the <code data-start=\"103\" data-end=\"113\">callback<\/code> parameter of the <code data-start=\"131\" data-end=\"152\">grecaptcha.render()<\/code> function, for example:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bc019de elementor-widget elementor-widget-shortcode\" data-id=\"bc019de\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\ngrecaptcha.render(&#039;example&#039;, {\n&#039;sitekey&#039; : &#039;someSitekey&#039;,\n&#039;callback&#039; : myCallbackFunction,\n&#039;theme&#039; : &#039;dark&#039;\n});\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4364f51 elementor-widget elementor-widget-text-editor\" data-id=\"4364f51\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"47\" data-end=\"175\">All you need to do is call that function:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-747c516 elementor-widget elementor-widget-shortcode\" data-id=\"747c516\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\nmyCallbackFunction();\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-498af21 elementor-widget elementor-widget-text-editor\" data-id=\"498af21\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h6 data-start=\"52\" data-end=\"84\"><span style=\"color: #000000;\">Method 2: Modifying the HTML<\/span><\/h6><p data-start=\"86\" data-end=\"167\">Remove the <code data-start=\"97\" data-end=\"104\">&lt;div&gt;<\/code> element that contains the reCAPTCHA widget from the page body.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e792af9 elementor-widget elementor-widget-shortcode\" data-id=\"e792af9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"html\" class=\"EnlighterJSRAW\">\n&lt;div style=&quot;visibility: hidden; position: absolute; width:100%; top: -10000px; left: 0px; right: 0px; transition: visibility 0s linear 0.3s, opacity 0.3s linear; opacity: 0;&quot;&gt;\n  &lt;div style=&quot;width: 100%; height: 100%; position: fixed; top: 0px; left: 0px; z-index: 2000000000; background-color: #fff; opacity: 0.5;  filter: alpha(opacity=50)&quot;&gt;&lt;\/div&gt;\n  &lt;div style=&quot;margin: 0 auto; top: 0px; left: 0px; right: 0px; position: absolute; border: 1px solid #ccc; z-index: 2000000000; background-color: #fff; overflow: hidden;&quot;&gt;\n &lt;iframe src=&quot;https:\/\/www.google.com\/recaptcha\/api2\/bframe?hl=en&amp;v=r20170213115309&amp;k=6LfP0CITAAAAAHq9FOgCo7v_fb0-pmmH9VW3ziFs#zglq3yifgkmj&quot;\n      title=&quot;recaptcha challenge&quot;\n      style=&quot;width: 100%; height: 100%;&quot;\n      scrolling=&quot;no&quot;\n      name=&quot;zglq3yifgkmj&quot;\n      frameborder=&quot;0&quot;&gt;&lt;\/iframe&gt;\n  &lt;\/div&gt;\n&lt;\/div&gt;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e2bac58 elementor-widget elementor-widget-text-editor\" data-id=\"e2bac58\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"56\" data-end=\"108\">Remove the entire reCAPTCHA block from the page.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2891507 elementor-widget elementor-widget-shortcode\" data-id=\"2891507\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"html\" class=\"EnlighterJSRAW\">\n&lt;div class=&quot;&quot;&gt;\n  &lt;!-- BEGIN: ReCAPTCHA implementation example. --&gt;\n  &lt;div\n    id=&quot;recaptcha-demo&quot;\n    class=&quot;g-recaptcha&quot;\n    data-sitekey=&quot;6LfP0CITAAAAAHq9FOgCo7v_fb0-pmmH9VW3ziFs&quot;\n    data-callback=&quot;onSuccess&quot;\n    data-bind=&quot;recaptcha-demo-submit&quot;\n  &gt;\n    &lt;div\n      class=&quot;grecaptcha-badge&quot;\n      style=&quot;width: 256px; height: 60px; transition: right 0.3s ease 0s; position: fixed; bottom: 14px; right: -186px; box-shadow: 0px 0px 5px gray;&quot;\n    &gt;\n      &lt;div class=&quot;grecaptcha-logo&quot;&gt;\n        &lt;iframe\n          src=&quot;https:\/\/www.google.com\/recaptcha\/api2\/anchor?k=6LfP0CITAAAAAHq9FOgCo7v_fb0-pmmH9VW3ziFs&amp;co=aHR0cHM6Ly93d3cuZ29vZ2xlLmNvbTo0NDM.&amp;hl=en&amp;v=r20170213115309&amp;size=invisible&amp;cb=uror1hlow5a&quot;\n          title=&quot;recaptcha widget&quot;\n          scrolling=&quot;no&quot;\n          name=&quot;undefined&quot;\n          width=&quot;256&quot;\n          height=&quot;60&quot;\n          frameborder=&quot;0&quot;\n        &gt;&lt;\/iframe&gt;\n      &lt;\/div&gt;\n      &lt;div class=&quot;grecaptcha-error&quot;&gt;&lt;\/div&gt;\n      &lt;textarea\n        id=&quot;g-recaptcha-response&quot;\n        name=&quot;g-recaptcha-response&quot;\n        class=&quot;g-recaptcha-response&quot;\n        style=&quot;width: 250px; height: 40px; border: 1px solid #c1c1c1; margin: 10px 25px; padding: 0px; resize: none;  display: none; &quot;\n      &gt;&lt;\/textarea&gt;\n    &lt;\/div&gt;\n  &lt;\/div&gt;\n  &lt;script&gt;\n    var onSuccess = function (response) {\n      var errorDivs = document.getElementsByClassName(&#039;recaptcha-error&#039;);\n      if (errorDivs.length) {\n        errorDivs[0].className = &#039;&#039;;\n      }\n      var errorMsgs = document.getElementsByClassName(&#039;recaptcha-error-message&#039;);\n      if (errorMsgs.length) {\n        errorMsgs[0].parentNode.removeChild(errorMsgs[0]);\n      }\n      document.getElementById(&#039;recaptcha-demo-form&#039;).submit();\n    };\n  &lt;\/script&gt;\n  &lt;!-- Optional noscript fallback. --&gt;&lt;!-- END: ReCAPTCHA implementation example. --&gt;\n&lt;\/div&gt;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-86707c1 elementor-widget elementor-widget-text-editor\" data-id=\"86707c1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"47\" data-end=\"107\">Insert the following code in place of the removed block:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5a66ea0 elementor-widget elementor-widget-shortcode\" data-id=\"5a66ea0\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"html\" class=\"EnlighterJSRAW\">\n&lt;input type=&quot;submit&quot; \/&gt; &lt;textarea name=&quot;g-recaptcha-response&quot;&gt;%g-recaptcha-response%&lt;\/textarea&gt;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9c631c6 elementor-widget elementor-widget-text-editor\" data-id=\"9c631c6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"47\" data-end=\"126\"><code data-start=\"47\" data-end=\"71\">%g-recaptcha-response%<\/code> represents the answer token received from CapSkip.<\/p><p data-start=\"128\" data-end=\"324\">After replacing the block, a \u201cSubmit query\u201d button will appear. Click the button to submit the form along with the <code data-start=\"247\" data-end=\"269\">g-recaptcha-response<\/code> value and all other required form data to the website.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ab1cadb elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"ab1cadb\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3d19f8f sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"3d19f8f\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"recaptcha-v3\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/reCaptcha.svg\" alt=\"recaptcha v2 solver\" width=\"24\" height=\"24\" \/> \u00a0<strong>reCAPTCHA V3<\/strong><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1989bc7 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"1989bc7\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>reCAPTCHA v3 is a modern CAPTCHA mechanism developed by Google. It does not present a visible challenge and requires no user interaction. Instead, it assigns a score based on the likelihood that the interaction is human.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fadcb6e elementor-widget elementor-widget-text-editor\" data-id=\"fadcb6e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"142\" data-end=\"346\">Technically, reCAPTCHA v3 is similar to reCAPTCHA v2. The website receives a token from the reCAPTCHA API, which is then sent in a POST request to the target server and verified through the reCAPTCHA API.<\/p><p data-start=\"348\" data-end=\"667\">The key difference is that reCAPTCHA v3 does not display a visible challenge. Instead, it returns a rating that estimates whether the user is human or a bot. This rating is called a <strong data-start=\"530\" data-end=\"539\">score<\/strong> and ranges from 0.0 to 1.0. The score is sent to the website, which then decides how to handle the request based on that value.<\/p><p data-start=\"669\" data-end=\"898\">There is also an additional parameter called <code data-start=\"714\" data-end=\"722\">action<\/code>, which allows the website to distinguish between different user interactions. After verifying the token, the reCAPTCHA API returns the action name associated with the request.<\/p><h6 data-start=\"1343\" data-end=\"1386\"><span style=\"color: #000000;\">How to Solve reCAPTCHA v3 Using CapSkip?<\/span><\/h6><p data-start=\"1388\" data-end=\"1449\">First, confirm that the target website is using reCAPTCHA v3.<\/p><p data-start=\"1451\" data-end=\"1486\">Indicators of reCAPTCHA v3 include:<\/p><ul data-start=\"1488\" data-end=\"1780\"><li data-start=\"1488\" data-end=\"1528\"><p data-start=\"1490\" data-end=\"1528\">No visible CAPTCHA or image challenges<\/p><\/li><li data-start=\"1529\" data-end=\"1669\"><p data-start=\"1531\" data-end=\"1669\">The <code data-start=\"1535\" data-end=\"1543\">api.js<\/code> script is loaded with a <code data-start=\"1568\" data-end=\"1584\">render=SITEKEY<\/code> parameter, for example:<br data-start=\"1608\" data-end=\"1611\" \/><code data-start=\"1613\" data-end=\"1669\">https:\/\/www.google.com\/recaptcha\/api.js?render=SITEKEY<\/code><\/p><\/li><li data-start=\"1670\" data-end=\"1780\"><p data-start=\"1672\" data-end=\"1780\">The <code data-start=\"1676\" data-end=\"1703\">___grecaptcha_cfg.clients<\/code> array contains an entry with a high numeric index, such as <code data-start=\"1763\" data-end=\"1780\">clients[100000]<\/code><\/p><\/li><\/ul><p data-start=\"1812\" data-end=\"1878\">To solve reCAPTCHA v3, identify the following parameters:<\/p><ol><li data-start=\"1880\" data-end=\"2116\"><strong data-start=\"1880\" data-end=\"1891\">sitekey<\/strong><br data-start=\"1891\" data-end=\"1894\" \/>This can be found in the <code data-start=\"1919\" data-end=\"1927\">render<\/code> parameter of the <code data-start=\"1945\" data-end=\"1953\">api.js<\/code> script URL. It may also appear in an iframe URL, within JavaScript code that calls <code data-start=\"2037\" data-end=\"2059\">grecaptcha.execute()<\/code>, or inside the <code data-start=\"2075\" data-end=\"2094\">___grecaptcha_cfg<\/code> configuration object.<\/li><li data-start=\"2118\" data-end=\"2282\"><strong data-start=\"2118\" data-end=\"2128\">action<\/strong><br data-start=\"2128\" data-end=\"2131\" \/>Locate this by inspecting JavaScript code for calls to <code data-start=\"2186\" data-end=\"2208\">grecaptcha.execute()<\/code>, for example:<br data-start=\"2222\" data-end=\"2225\" \/><code data-start=\"2225\" data-end=\"2282\">grecaptcha.execute('SITEKEY', {action: 'do_something'})<br \/><\/code>In some cases, finding the action requires reviewing multiple JavaScript files loaded by the page. If you cannot determine the action value, you may use the default value <code data-start=\"2455\" data-end=\"2465\">\"verify\"<\/code>.<\/li><li data-start=\"2468\" data-end=\"2541\"><strong data-start=\"2468\" data-end=\"2479\">pageurl<\/strong><br data-start=\"2479\" data-end=\"2482\" \/>The full URL of the page where reCAPTCHA v3 is implemented.<\/li><\/ol><h6 data-start=\"2548\" data-end=\"2575\"><span style=\"color: #000000;\">Understanding the Score<\/span><\/h6><p data-start=\"2577\" data-end=\"2688\">The acceptable score threshold varies by website and can only be determined through testing. Scores range from:<\/p><ul data-start=\"2690\" data-end=\"2733\"><li data-start=\"2690\" data-end=\"2710\"><p data-start=\"2692\" data-end=\"2710\">0.0 \u2192 likely bot<\/p><\/li><li data-start=\"2711\" data-end=\"2733\"><p data-start=\"2713\" data-end=\"2733\">1.0 \u2192 likely human<\/p><\/li><\/ul><p data-start=\"2735\" data-end=\"2838\">Most websites use thresholds between 0.3 and 0.7, since even legitimate users may receive lower scores.<\/p><p data-start=\"2840\" data-end=\"2928\">You can pass your desired threshold using the <code data-start=\"2890\" data-end=\"2901\">min_score<\/code> parameter, but the final score is always decided by Google at verification time and cannot be guaranteed by the solver.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e856055 elementor-widget elementor-widget-text-editor\" data-id=\"e856055\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"v3-post\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6954904 elementor-widget elementor-widget-html\" data-id=\"6954904\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>method<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nuserrecaptcha \u2013 specifies a reCAPTCHA request.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>version<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nv3 \u2013 indicates that the request is for reCAPTCHA v3.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>googlekey<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe value of the <em>data-sitekey<\/em> parameter found on the target page.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>pageurl<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe full URL of the page where the reCAPTCHA is located.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>enterprise<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n1 \u2013 indicates reCAPTCHA Enterprise v3.<br>\r\n0 \u2013 standard reCAPTCHA v3.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<br>Default: verify<\/td>\r\n<td>No<\/td>\r\n<td>\r\nThe value of the <em>action<\/em> parameter defined on the page.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>min_score<\/td>\r\n<td>Float<\/td>\r\n<td>No<\/td>\r\n<td>\r\nRequested minimum score for the token. Google assigns the final score when your server verifies the token, so this value is a hint and is not guaranteed. CapSkip returns the token it obtains regardless of the score Google later assigns.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text.<br>\r\n1 \u2013 response is returned in JSON format.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>proxy<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Proxy address. Format for IP authentication: <code>IP:PORT<\/code> (example: <code>123.123.123.123:3128<\/code>). Format for login\/password authentication: <code>login:password@IP:PORT<\/code><\/td>\r\n<\/tr>\r\n<tr>\r\n<td>proxytype<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Type of proxy. Supported values: <code>HTTP<\/code>, <code>HTTPS<\/code>, <code>SOCKS5<\/code>, <code>SOCKS5H<\/code>. Default: <code>HTTP<\/code> when <code>proxy<\/code> is provided but <code>proxytype<\/code> is omitted.<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-92b8085 elementor-widget elementor-widget-text-editor\" data-id=\"92b8085\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit reCAPTCHA v3:<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e4e805f elementor-widget elementor-widget-shortcode\" data-id=\"e4e805f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;version=v3&amp;action=submit&amp;min_score=0.7&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a937cdd elementor-widget elementor-widget-text-editor\" data-id=\"a937cdd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit Enterprise reCAPTCHA v3:<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4fe0dfc elementor-widget elementor-widget-shortcode\" data-id=\"4fe0dfc\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=userrecaptcha&amp;version=v3&amp;action=submit&amp;min_score=0.7&amp;googlekey=6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-&amp;pageurl=https:\/\/example.com&amp;enterprise=1&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-750725a elementor-widget elementor-widget-text-editor\" data-id=\"750725a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"77\" data-end=\"159\">If the request is successful, CapSkip will return the CAPTCHA ID as plain text: <code data-start=\"161\" data-end=\"176\">OK|12345<\/code><\/p><p data-start=\"178\" data-end=\"263\">If the <code data-start=\"185\" data-end=\"193\">json=1<\/code> parameter is specified, the response will be returned in JSON format:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-70f990c elementor-widget elementor-widget-shortcode\" data-id=\"70f990c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;:1,\n    &quot;request&quot;:&quot;12345&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb3e79e elementor-widget elementor-widget-text-editor\" data-id=\"cb3e79e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"304\" data-end=\"443\">If an error occurs, CapSkip will return an error code.<\/p><p data-start=\"445\" data-end=\"521\">Wait 10 to 15 seconds, then send an HTTP GET request to the result endpoint: <code data-start=\"245\" data-end=\"276\">http:\/\/127.0.0.1:PORT\/res.php<\/code><\/p><p data-start=\"555\" data-end=\"670\">Provide the returned CAPTCHA ID in your request. The full list of available parameters is shown in the table below.<\/p><p data-start=\"672\" data-end=\"849\">If the CAPTCHA has been solved successfully, CapSkip will return the result in plain text or JSON format. The returned value is a verification token similar to the following:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6431789 elementor-widget elementor-widget-shortcode\" data-id=\"6431789\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\n03AHJ_Vuve5Asa4koK3KSMyUkCq0vUFCR5Im4CwB7PzO3dCxIo11i53epEraq-uBO5mVm2XRikL8iKOWr0aG50sCuej9bXx5qcviUGSm4iK4NC_Q88flavWhaTXSh0VxoihBwBjXxwXuJZ-WGN5Sy4dtUl2wbpMqAj8Zwup1vyCaQJWFvRjYGWJ_TQBKTXNB5CCOgncqLetmJ6B6Cos7qoQyaB8ZzBOTGf5KSP6e-K9niYs772f53Oof6aJeSUDNjiKG9gN3FTrdwKwdnAwEYX-F37sI_vLB1Zs8NQo0PObHYy0b0sf7WSLkzzcIgW9GR0FwcCCm1P8lB--gf50q5BMkiRH7osm4DoUgsjc_XyQiEmQmxl5sqZP7aKsaE-EM00x59XsPzD3m3YI6SRCFRUevSyumBd7KmXE8VuzIO9lgnnbka4-eZynZa6vbB9cO3QjLH0xSG3--o-fxrOuphwfrtwvvi2FGfpTexWvxhqWICMFTTjFBCEGEgj7_IFWEKirXW2RTZCVF0Gid7EtIsoEeZkPbrcUISGmgtiJkJ_KojuKwImF0G0CsTlxYTOU2sPsd5o1JDt65wGniQR2IZufnPbbK76Yh_KI2DY4cUxMfcb2fAXcFMc9dcpHg6f9wBXhUtFYTu6pi5LhhGuhpkiGcv6vWYNxMrpWJW_pV7q8mPilwkAP-zw5MJxkgijl2wDMpM-UUQ_k37FVtf-ndbQAIPG7S469doZMmb5IZYgvcB4ojqCW3Vz6Q\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-80a9959 elementor-widget elementor-widget-text-editor\" data-id=\"80a9959\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If the CAPTCHA is not yet solved, CapSkip will return <code data-start=\"115\" data-end=\"133\">CAPCHA_NOT_READY<\/code>. Wait 5 seconds and repeat the request. If CapSkip returns an empty response body, the result has already been retrieved or the ID does not exist. Each result can be read only once.<\/p><h5><span style=\"color: #000000;\"><strong>List of\u00a0GET request parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f392a7c elementor-widget elementor-widget-html\" data-id=\"f392a7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>GET parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nget \u2013 retrieve the answer for the submitted CAPTCHA.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>id<\/td>\r\n<td>Integer<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe CAPTCHA ID returned by <code>in.php<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text<br>\r\n1 \u2013 response is returned in JSON format\r\n<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a01389b elementor-widget elementor-widget-shortcode\" data-id=\"a01389b\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl &quot;http:\/\/127.0.0.1:8080\/res.php?key=YOUR_API_KEY&amp;action=get&amp;id=CAPTCHA_ID&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a3943f1 elementor-widget elementor-widget-text-editor\" data-id=\"a3943f1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"66\" data-end=\"282\">After receiving the token from CapSkip, you must submit it correctly to the target website. The best way to understand how this works is to observe the requests sent when completing the verification as a normal user. Most browsers provide developer tools with a <strong data-start=\"329\" data-end=\"340\">Network<\/strong> tab that allows you to inspect outgoing requests.<\/p><p data-start=\"392\" data-end=\"633\">In most cases, the token is sent via a POST request. The parameter name may be <code data-start=\"471\" data-end=\"493\">g-recaptcha-response<\/code>, similar to reCAPTCHA v2, or something like <code data-start=\"538\" data-end=\"567\">g-recaptcha-response-100000<\/code>. In some implementations, a different parameter name may be used.<\/p><p data-start=\"635\" data-end=\"761\">You should inspect the network requests to determine how the token is transmitted and then structure your request accordingly.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d3dc709 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"d3dc709\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e0081b4 sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"e0081b4\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"recaptcha-enterprise\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/reCaptcha.svg\" alt=\"recaptcha v2 solver\" width=\"24\" height=\"24\" \/> \u00a0<strong>reCAPTCHA Enterprise<\/strong><\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d656ffb animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"d656ffb\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>reCAPTCHA Enterprise is the advanced version of Google\u2019s reCAPTCHA system. It can operate in both v2 and v3 modes and provides website administrators with additional control, including the ability to assess and report whether an interaction was human or automated.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f22e399 elementor-widget elementor-widget-text-editor\" data-id=\"f22e399\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h6 data-start=\"64\" data-end=\"101\"><span style=\"color: #000000;\">How to Solve reCAPTCHA Enterprise?<\/span><\/h6><p data-start=\"103\" data-end=\"199\">The first step is to determine whether the website is using the Enterprise version of reCAPTCHA.<\/p><p data-start=\"201\" data-end=\"248\">Key indicators of reCAPTCHA Enterprise include:<\/p><ul data-start=\"250\" data-end=\"504\"><li data-start=\"250\" data-end=\"404\"><p data-start=\"252\" data-end=\"404\">The page loads <code data-start=\"267\" data-end=\"282\">enterprise.js<\/code> instead of <code data-start=\"294\" data-end=\"302\">api.js<\/code>, for example:<br \/><br data-start=\"316\" data-end=\"319\" \/><code data-start=\"321\" data-end=\"404\">&lt;script src=\"https:\/\/recaptcha.net\/recaptcha\/enterprise.js\" async defer&gt;&lt;\/script&gt;<\/code><\/p><\/li><\/ul><ul data-start=\"250\" data-end=\"504\"><li data-start=\"405\" data-end=\"504\"><p data-start=\"407\" data-end=\"504\">The website\u2019s JavaScript code calls <code data-start=\"443\" data-end=\"473\">grecaptcha.enterprise.METHOD<\/code> instead of <code data-start=\"485\" data-end=\"504\">grecaptcha.METHOD<\/code><\/p><\/li><\/ul><p data-start=\"506\" data-end=\"685\">Next, determine which implementation is being used: v2, Invisible v2, or v3. This can usually be identified by analyzing how the widget is rendered and how it behaves on the page.<\/p><p data-start=\"687\" data-end=\"796\">Follow the flowchart below to determine the correct implementation. It applies in the vast majority of cases.<\/p><p data-start=\"687\" data-end=\"796\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/recaptcha-enterprise-v2-v3-capskip.png\" alt=\"recaptcha enterprise\" width=\"397\" height=\"223\" \/><\/p><p data-start=\"67\" data-end=\"151\">Identify the CAPTCHA parameters in the same way as described for reCAPTCHA v2 or v3.<\/p><p data-start=\"153\" data-end=\"384\">For v2 Enterprise implementations, there may be additional optional data. In most cases, this is a custom string defined in the <code data-start=\"281\" data-end=\"284\">s<\/code> or <code data-start=\"288\" data-end=\"296\">data-s<\/code> parameter. If present, include this value in your request using the <code data-start=\"365\" data-end=\"373\">data-s<\/code> parameter.<\/p><p data-start=\"153\" data-end=\"384\">The list of POST and GET request parameters is available here: <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/capskip.com\/api-docs\/#v2-post\" data-wplink-url-error=\"true\">reCAPTCHA V2 POST and GET request parameters<\/a><\/span><\/p><p data-start=\"386\" data-end=\"703\">For v3 Enterprise implementations, you may also need the <code data-start=\"443\" data-end=\"451\">action<\/code> value. To find it, inspect the website\u2019s JavaScript code and locate the <code data-start=\"524\" data-end=\"557\">grecaptcha.enterprise.execute()<\/code> call. The <code data-start=\"568\" data-end=\"576\">action<\/code> parameter is typically passed within this function. Keep in mind that <code data-start=\"647\" data-end=\"655\">action<\/code> is optional and may be undefined in some cases.<\/p><p data-start=\"386\" data-end=\"703\">The list of POST and GET request parameters is available here: <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/capskip.com\/api-docs\/#v3-post\" data-wplink-url-error=\"true\">reCAPTCHA V3 POST and GET request parameters<\/a><\/span><\/p><p data-start=\"705\" data-end=\"794\">When submitting your request to the <code data-start=\"741\" data-end=\"750\">\/in.php<\/code> endpoint, include the additional parameter: <code data-start=\"796\" data-end=\"810\">enterprise=1<\/code><\/p><p data-start=\"812\" data-end=\"990\">After that, interact with CapSkip API in the same way as when solving reCAPTCHA v2 or v3. Once the token is returned, submit it to the target website according to its implementation.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d65a85d elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"d65a85d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9895787 sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"9895787\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"cloudflare-turnstile\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/capskip.com\/images\/cloudflare.svg\" alt=\"Cloudflare turnstile solving\" width=\"20\" height=\"20\" \/>\u00a0Cloudflare Turnstile<\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d766642 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"d766642\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>Cloudflare Turnstile is a modern CAPTCHA alternative developed by Cloudflare. It verifies whether a visitor is human without relying on traditional visual challenges. Turnstile can appear as a standalone widget or as part of a challenge page, and it operates with minimal or no user interaction.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f382715 elementor-widget elementor-widget-text-editor\" data-id=\"f382715\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p data-start=\"236\" data-end=\"287\" data-is-last-node=\"\" data-is-only-node=\"\">There are two common Turnstile implementations:<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div><h6 data-start=\"110\" data-end=\"144\"><span style=\"color: #000000;\">1. Standalone Turnstile Widget<\/span><\/h6><p data-start=\"146\" data-end=\"271\">A standalone Turnstile widget is embedded directly on a website page, typically protecting a form from automated submissions. In this case:<\/p><ul data-start=\"288\" data-end=\"666\"><li data-start=\"288\" data-end=\"326\"><p data-start=\"290\" data-end=\"326\">Extract the <code data-start=\"302\" data-end=\"311\">sitekey<\/code> from the page.<\/p><\/li><li data-start=\"327\" data-end=\"378\"><p data-start=\"329\" data-end=\"378\">Send it to the CapSkip API along with the full <code data-start=\"368\" data-end=\"377\">pageurl<\/code>.<\/p><\/li><li data-start=\"379\" data-end=\"459\"><p data-start=\"381\" data-end=\"459\">After receiving the token, insert it into the <code data-start=\"427\" data-end=\"450\">cf-turnstile-response<\/code> field.<\/p><\/li><li data-start=\"460\" data-end=\"560\"><p data-start=\"462\" data-end=\"560\">In some implementations, the token may also need to be placed in the <code data-start=\"531\" data-end=\"553\">g-recaptcha-response<\/code> field.<\/p><\/li><li data-start=\"561\" data-end=\"666\"><p data-start=\"563\" data-end=\"666\">If a callback is defined in the <code data-start=\"595\" data-end=\"615\">turnstile.render()<\/code> configuration, execute it with the returned token.<\/p><\/li><\/ul><p data-start=\"668\" data-end=\"698\">Then submit the form as usual.<\/p><h6 data-start=\"705\" data-end=\"752\"><span style=\"color: #000000;\">2. Turnstile on a Cloudflare Challenge Page<\/span><\/h6><p data-start=\"754\" data-end=\"876\">This occurs when the website is proxied through Cloudflare and presents a Turnstile challenge page before granting access. In this case, you must extract the following parameters:<\/p><ul data-start=\"936\" data-end=\"972\"><li data-start=\"936\" data-end=\"945\"><p data-start=\"938\" data-end=\"945\"><code data-start=\"938\" data-end=\"945\">cData<\/code><\/p><\/li><li data-start=\"946\" data-end=\"961\"><p data-start=\"948\" data-end=\"961\"><code data-start=\"948\" data-end=\"961\">chlPageData<\/code><\/p><\/li><li data-start=\"962\" data-end=\"972\"><p data-start=\"964\" data-end=\"972\"><code data-start=\"964\" data-end=\"972\">action<\/code><\/p><\/li><\/ul><p data-start=\"974\" data-end=\"1123\">These values must be included in your API request. Additionally, you must use the <strong data-start=\"1056\" data-end=\"1070\">User-Agent<\/strong> value returned by the CapSkip API when submitting the token.<\/p><h6 data-start=\"64\" data-end=\"106\"><span style=\"color: #000000;\">How to Extract the Required Parameters?<\/span><\/h6><p data-start=\"108\" data-end=\"244\">To extract the required parameters, you can override the <code data-start=\"165\" data-end=\"183\">turnstile.render<\/code> method and intercept the arguments passed when it is called. For example, inject the following JavaScript code into the page. The script must be executed before the Turnstile widget is loaded in order to capture the parameters successfully.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d5294e1 elementor-widget elementor-widget-shortcode\" data-id=\"d5294e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">\nconst i = setInterval(()=&gt;{\nif (window.turnstile) {\nclearInterval(i)\nwindow.turnstile.render = (a,b) =&gt; {\nlet p = {\nmethod: &quot;turnstile&quot;,\nkey: &quot;YOUR_API_KEY&quot;,\nsitekey: b.sitekey,\npageurl: window.location.href,\ndata: b.cData,\npagedata: b.chlPageData,\naction: b.action,\nuserAgent: navigator.userAgent,\njson: 1\n}\nconsole.log(JSON.stringify(p))\nwindow.tsCallback = b.callback\nreturn &#039;foo&#039;\n}\n}\n},50)\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d5f1bee elementor-widget elementor-widget-text-editor\" data-id=\"d5f1bee\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-788b46e elementor-widget elementor-widget-html\" data-id=\"788b46e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>method<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nturnstile \u2013 specifies a Cloudflare Turnstile request.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>sitekey<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe value of the <em>data-sitekey<\/em> parameter found on the target page.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>pageurl<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe full URL of the page where the Turnstile challenge is located.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>\r\nOptional action value defined in the <code>data-action<\/code> attribute or passed to <code>turnstile.render()<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>data<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>\r\nThe value of <code>cData<\/code> passed to <code>turnstile.render()<\/code> or defined in the <code>data-cdata<\/code> attribute.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>pagedata<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>\r\nThe value of <code>chlPageData<\/code> passed to <code>turnstile.render()<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 \u2013 response is returned as plain text.<br>\r\n1 \u2013 response is returned in JSON format.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>proxy<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Proxy address. Format for IP authentication: <code>IP:PORT<\/code> (example: <code>123.123.123.123:3128<\/code>). Format for login\/password authentication: <code>login:password@IP:PORT<\/code><\/td>\r\n<\/tr>\r\n<tr>\r\n<td>proxytype<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Type of proxy. Supported values: <code>HTTP<\/code>, <code>HTTPS<\/code>, <code>SOCKS5<\/code>, <code>SOCKS5H<\/code>. Default: <code>HTTP<\/code> when <code>proxy<\/code> is provided but <code>proxytype<\/code> is omitted.<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-886335c elementor-widget elementor-widget-text-editor\" data-id=\"886335c\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit Turnstile (standalone):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a5f04b2 elementor-widget elementor-widget-shortcode\" data-id=\"a5f04b2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=turnstile&amp;sitekey=0x4AAAAAAABUYP0XeMJF0xoy&amp;pageurl=https:\/\/example.com&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-273bfd0 elementor-widget elementor-widget-text-editor\" data-id=\"273bfd0\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"color: #000000;\"><strong>Submit Turnstile (challenge \u2013 optional action, data, pagedata):<\/strong><\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9b36821 elementor-widget elementor-widget-shortcode\" data-id=\"9b36821\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST -d &quot;key=YOUR_API_KEY&amp;method=turnstile&amp;sitekey=0x4AAAAAAABUYP0XeMJF0xoy&amp;pageurl=https:\/\/example.com&amp;action=managed&amp;data=...&amp;pagedata=...&quot; http:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b592344 elementor-widget elementor-widget-text-editor\" data-id=\"b592344\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"77\" data-end=\"159\">If the request is successful, CapSkip will return the CAPTCHA ID as plain text: <code data-start=\"161\" data-end=\"176\">OK|12345<\/code><\/p><p data-start=\"178\" data-end=\"263\">If the <code data-start=\"185\" data-end=\"193\">json=1<\/code> parameter is specified, the response will be returned in JSON format:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-435bb11 elementor-widget elementor-widget-shortcode\" data-id=\"435bb11\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;:1,\n    &quot;request&quot;:&quot;12345&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-582b881 elementor-widget elementor-widget-text-editor\" data-id=\"582b881\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"304\" data-end=\"443\">If an error occurs, CapSkip will return an error code.<\/p><p data-start=\"44\" data-end=\"131\">Use the returned ID to retrieve the result from the <code data-start=\"98\" data-end=\"108\">\/res.php<\/code> endpoint of the API.<\/p><h5><span style=\"color: #000000;\"><strong>List of\u00a0GET request parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-49d4d58 elementor-widget elementor-widget-html\" data-id=\"49d4d58\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr>\r\n<th><strong>GET parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nYour CapSkip API key.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nget \u2013 retrieve the answer for the submitted CAPTCHA.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>id<\/td>\r\n<td>Integer<\/td>\r\n<td>Yes<\/td>\r\n<td>\r\nThe CAPTCHA ID returned by <code>in.php<\/code>.\r\n<\/td>\r\n<\/tr>\r\n\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td>\r\n0 - response is returned as plain text.<br>\r\n1 - response is returned in JSON format, including the <code>userAgent<\/code> value.<\/td>\r\n<\/tr>\r\n\r\n<\/tbody>\r\n<\/table>\r\n<br\/>\r\n<p>For Cloudflare Turnstile the solver uses a specific browser User-Agent, and you must send that same User-Agent when submitting the token. With <code>json=1<\/code> the response includes a <code>userAgent<\/code> field. In plain text mode, read the same value from the <code>X-Turnstile-User-Agent<\/code> response header.<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8fb06f8 elementor-widget elementor-widget-shortcode\" data-id=\"8fb06f8\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"end\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl &quot;http:\/\/127.0.0.1:8080\/res.php?key=YOUR_API_KEY&amp;action=get&amp;id=CAPTCHA_ID&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-941374f elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"941374f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3cb7226 sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"3cb7226\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"geetest-v3\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4><a href=\"https:\/\/capskip.com\/wp-content\/uploads\/2026\/07\/geetest.svg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24458\" src=\"https:\/\/capskip.com\/wp-content\/uploads\/2026\/07\/geetest.svg\" alt=\"geetest v3\" width=\"24\" height=\"24\" \/><\/a>\u00a0GeeTest v3<\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d899e64 animated-fast elementor-invisible elementor-widget elementor-widget-elementskit-heading\" data-id=\"d899e64\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:100,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<p>GeeTest v3 Slider is an interactive CAPTCHA developed by GeeTest. It verifies users through a slider challenge to distinguish humans from bots while providing a fast and seamless verification experience.<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bc22922 elementor-widget elementor-widget-text-editor\" data-id=\"bc22922\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p>To solve a GeeTest v3 CAPTCHA with CapSkip, you must first obtain the required CAPTCHA parameters from the target website. The required parameters are:<\/p><ul><li>gt: Public website key (static)<\/li><li>challenge: Dynamic challenge value<\/li><li>api_server: GeeTest API server domain (optional)<\/li><\/ul><p>These values are typically available when the website initializes GeeTest.<\/p><blockquote><p><strong data-start=\"504\" data-end=\"518\">Important:<\/strong> A new <code data-start=\"525\" data-end=\"536\">challenge<\/code> value must be obtained for every solve request. Once the CAPTCHA has been loaded on the page, the previous <code data-start=\"644\" data-end=\"655\">challenge<\/code> becomes invalid. You should inspect the website&#8217;s network requests to identify the request that generates a new <code data-start=\"768\" data-end=\"779\">challenge<\/code> value and perform that request before submitting each solve request to CapSkip.<\/p><\/blockquote><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a806f2 elementor-widget elementor-widget-text-editor\" data-id=\"3a806f2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e2c3263 elementor-widget elementor-widget-html\" data-id=\"e2c3263\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<figure class=\"wp-block-table\">\r\n<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes*<\/td>\r\n<td>Your CapSkip API key. Required only when <strong>API Key Validation<\/strong> is enabled.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>method<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>Must be <code>geetest<\/code>. Specifies that you are submitting a GeeTest v3 CAPTCHA.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>gt<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>The <code>gt<\/code> value obtained from the target website.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>challenge<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>The <code>challenge<\/code> value obtained from the target website. A new value must be obtained for every solve request.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>pageurl<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>Full URL of the page containing the GeeTest CAPTCHA.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>api_server<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>The GeeTest API server domain used by the target website (for example <code>api.geetest.com<\/code> or <code>api-na.geetest.com<\/code>).<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td><code>0<\/code> returns the response as plain text. <code>1<\/code> returns the response as JSON.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>proxy<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Proxy address. Format for IP authentication: <code>IP:PORT<\/code> (example: <code>123.123.123.123:3128<\/code>). Format for login\/password authentication: <code>login:password@IP:PORT<\/code>.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>proxytype<\/td>\r\n<td>String<\/td>\r\n<td>No<\/td>\r\n<td>Type of proxy. Supported values: <code>HTTP<\/code>, <code>HTTPS<\/code>, <code>SOCKS5<\/code>, <code>SOCKS5H<\/code>. Default: <code>HTTP<\/code> when <code>proxy<\/code> is provided but <code>proxytype<\/code> is omitted.<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/figure>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1107604 elementor-widget elementor-widget-text-editor\" data-id=\"1107604\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p>Submit an HTTP GET or POST request to your CapSkip API endpoint (<code data-start=\"1019\" data-end=\"1049\">\/in.php<\/code>) with <code data-start=\"1056\" data-end=\"1072\">method=geetest<\/code>. Include the required GeeTest parameters obtained in the previous step along with the full URL of the page containing the CAPTCHA.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a55e8fd elementor-widget elementor-widget-shortcode\" data-id=\"a55e8fd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl -X POST \\\n-d &quot;key=YOUR_API_KEY&quot; \\\n-d &quot;method=geetest&quot; \\\n-d &quot;gt=f1ab2cdefa3456789012345b6c78d90e&quot; \\\n-d &quot;challenge=12345678abc90123d45678ef90123a456b&quot; \\\n-d &quot;pageurl=https:\/\/www.example.com\/&quot; \\\n-d &quot;api_server=api-na.geetest.com&quot; \\\nhttp:\/\/127.0.0.1:8080\/in.php\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5c22c68 elementor-widget elementor-widget-text-editor\" data-id=\"5c22c68\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p>If everything is successful, CapSkip will return the CAPTCHA ID as plain text: OK|212<\/p><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"1676\" data-end=\"1761\">If the <code data-start=\"1683\" data-end=\"1691\">json=1<\/code> parameter is specified, the response will be returned in JSON format:<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0e3ba98 elementor-widget elementor-widget-shortcode\" data-id=\"0e3ba98\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;: 1,\n    &quot;request&quot;: &quot;212&quot;\n}\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd36362 elementor-widget elementor-widget-text-editor\" data-id=\"cd36362\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"1825\" data-end=\"1882\">Otherwise, CapSkip will return an appropriate error code.<\/p><p data-start=\"1884\" data-end=\"1998\">Wait approximately <strong data-start=\"1903\" data-end=\"1915\">5 seconds<\/strong>, then submit an HTTP GET request to the <code data-start=\"1956\" data-end=\"1965\">res.php<\/code> endpoint to retrieve the result.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-377c937 elementor-widget elementor-widget-text-editor\" data-id=\"377c937\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5><span style=\"color: #000000;\"><strong>List of\u00a0GET request parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0709c96 elementor-widget elementor-widget-html\" data-id=\"0709c96\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<figure class=\"wp-block-table\">\r\n<table>\r\n<thead>\r\n<tr>\r\n<th><strong>Parameter<\/strong><\/th>\r\n<th><strong>Type<\/strong><\/th>\r\n<th><strong>Required<\/strong><\/th>\r\n<th><strong>Description<\/strong><\/th>\r\n<\/tr>\r\n<\/thead>\r\n<tbody>\r\n<tr>\r\n<td>key<\/td>\r\n<td>String<\/td>\r\n<td>Yes*<\/td>\r\n<td>Your CapSkip API key. Required only when <strong>API Key Validation<\/strong> is enabled.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>action<\/td>\r\n<td>String<\/td>\r\n<td>Yes<\/td>\r\n<td>Specify <code>get<\/code> to retrieve the CAPTCHA solution.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>id<\/td>\r\n<td>Integer<\/td>\r\n<td>Yes<\/td>\r\n<td>The CAPTCHA ID returned by the <code>in.php<\/code> request.<\/td>\r\n<\/tr>\r\n<tr>\r\n<td>json<\/td>\r\n<td>Integer<br>Default: 0<\/td>\r\n<td>No<\/td>\r\n<td><code>0<\/code> returns the response as plain text. <code>1<\/code> returns the response as JSON.<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/figure>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b82a21 elementor-widget elementor-widget-shortcode\" data-id=\"1b82a21\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"bash\" class=\"EnlighterJSRAW\">\ncurl &quot;http:\/\/127.0.0.1:8080\/res.php?key=YOUR_API_KEY&amp;action=get&amp;id=212&amp;json=1&quot;\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a30f46b elementor-widget elementor-widget-text-editor\" data-id=\"a30f46b\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"2120\" data-end=\"2213\">If the CAPTCHA has been solved successfully, CapSkip will return the solution in JSON format:<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-01bfc38 elementor-widget elementor-widget-shortcode\" data-id=\"01bfc38\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><pre data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">\n{\n    &quot;status&quot;: 1,\n    &quot;request&quot;: &quot;{\\&quot;geetest_challenge\\&quot;:\\&quot;1a2b3456cd67890e12345fab678901c2de\\&quot;,\\&quot;geetest_validate\\&quot;:\\&quot;09fe8d7c6ba54f32e1dcb0a9fedc8765\\&quot;,\\&quot;geetest_seccode\\&quot;:\\&quot;12fe3d4c56789ba01f2e345d6789c012|jordan\\&quot;}&quot;\n}\n\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4e3fb38 elementor-widget elementor-widget-text-editor\" data-id=\"4e3fb38\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col text-sm pb-25\"><article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"request-6989b5a0-3fb0-839c-b671-234b8b3040ce-99\" data-testid=\"conversation-turn-228\" data-scroll-anchor=\"true\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\"><div class=\"flex max-w-full flex-col grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"ba408668-0b6c-4e25-8064-8ba64ce24cda\"><div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\"><div class=\"markdown prose dark:prose-invert w-full wrap-break-word dark markdown-new-styling\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"2120\" data-end=\"2213\">If the CAPTCHA has not yet been solved, CapSkip will return: <code>CAPCHA_NOT_READY<\/code><\/p><div class=\"relative w-full mt-4 mb-1\"><div class=\"\"><div class=\"contents\"><div class=\"relative\"><div class=\"\"><div class=\"\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"2485\" data-end=\"2522\">Wait 5 seconds and repeat the request. If an error occurs, CapSkip will return an appropriate error code. Use the values returned by CapSkip when submitting your request to the target website using the following fields:<\/p><ul><li data-section-id=\"13yjrxe\" data-start=\"2707\" data-end=\"2728\"><code data-start=\"2709\" data-end=\"2728\">geetest_challenge<\/code><\/li><li data-section-id=\"1nf81mv\" data-start=\"2729\" data-end=\"2749\"><code data-start=\"2731\" data-end=\"2749\">geetest_validate<\/code><\/li><li data-section-id=\"1exb76h\" data-start=\"2750\" data-end=\"2769\"><code data-start=\"2752\" data-end=\"2769\">geetest_seccode<\/code><\/li><\/ul><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/article><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6498bd8 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"6498bd8\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7406fdb sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"7406fdb\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"proxy\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4>Using Proxies<\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f6e8f45 elementor-widget elementor-widget-text-editor\" data-id=\"f6e8f45\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>For reCAPTCHA v2, v3, Invisible, Enterprise, and Cloudflare, you can send a proxy with each task. CapSkip will solve the CAPTCHA through that proxy instead of using the proxy pool configured in the CapSkip application.<\/p><p>This is useful when the target website checks that the CAPTCHA token was generated from the same IP address as your own requests, for example, sites behind Cloudflare, strict reCAPTCHA scoring, or geo-restricted pages.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9c4d06b elementor-widget elementor-widget-text-editor\" data-id=\"9c4d06b\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h5 data-start=\"53\" data-end=\"111\"><span style=\"color: #000000;\"><strong data-start=\"76\" data-end=\"111\">List of POST Request Parameters<\/strong><\/span><\/h5>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0289f6d elementor-widget elementor-widget-html\" data-id=\"0289f6d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<figure class=\"wp-block-table\">\n<table>\n<thead>\n<tr>\n<th><strong>Parameter<\/strong><\/th>\n<th><strong>Type<\/strong><\/th>\n<th><strong>Required<\/strong><\/th>\n<th><strong>Description<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>proxy<\/td>\n<td>String<\/td>\n<td>No<\/td>\n<td>Proxy address. Format for IP authentication: <code>IP:PORT<\/code> (example: <code>123.123.123.123:3128<\/code>). Format for login\/password authentication: <code>login:password@IP:PORT<\/code><\/td>\n<\/tr>\n<tr>\n<td>proxytype<\/td>\n<td>String<\/td>\n<td>No<\/td>\n<td>Type of proxy. Supported values: <code>HTTP<\/code>, <code>HTTPS<\/code>, <code>SOCKS5<\/code>, <code>SOCKS5H<\/code>. Default: <code>HTTP<\/code> when <code>proxy<\/code> is provided but <code>proxytype<\/code> is omitted.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d81cfd1 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"d81cfd1\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd1f2bc sticky-section elementor-widget elementor-widget-elementskit-heading\" data-id=\"cd1f2bc\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"error-codes\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\">\t\t\t\t<div class='ekit-heading__description'>\n\t\t\t\t\t<h4>Error Codes<\/h4>\n\t\t\t\t<\/div>\n\t\t\t<\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-431175a elementor-widget elementor-widget-html\" data-id=\"431175a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<table>\r\n<thead>\r\n<tr><th><strong>Code<\/strong><\/th><th><strong>Meaning<\/strong><\/th><\/tr>\r\n<\/thead>\r\n<tbody>\r\n<tr><td><code>ERROR_KEY_DOES_NOT_EXIST<\/code><\/td><td>Invalid API key.<\/td><\/tr>\r\n<tr><td><code>ERROR_WRONG_USER_KEY<\/code><\/td><td>API key missing or empty.<\/td><\/tr>\r\n<tr><td><code>ERROR_WRONG_METHOD<\/code><\/td><td>Invalid HTTP method or <code>action<\/code> parameter.<\/td><\/tr>\r\n<tr><td><code>ERROR_WRONG_ID_FORMAT<\/code><\/td><td>Invalid captcha ID format.<\/td><\/tr>\r\n<tr><td><code>ERROR_BAD_PARAMETERS<\/code><\/td><td>Missing or invalid required parameters.<\/td><\/tr>\r\n<tr><td><code>ERROR_UPLOAD<\/code><\/td><td>No image data provided or upload failed.<\/td><\/tr>\r\n<tr><td><code>ERROR_INVALID_IMAGE<\/code><\/td><td>Invalid image format or corrupted image data.<\/td><\/tr>\r\n<tr><td><code>ERROR_INVALID_BASE64<\/code><\/td><td>Invalid base64 encoding.<\/td><\/tr>\r\n<tr><td><code>ERROR_TOO_BIG_CAPTCHA_FILESIZE<\/code><\/td><td>Image size exceeds 600 kB or dimensions exceed 1000px.<\/td><\/tr>\r\n<tr><td><code>ERROR_CAPTCHA_UNSOLVABLE<\/code><\/td><td>Failed to solve the captcha. Submit a new task and retry.<\/td><\/tr>\r\n<tr><td><code>ERROR_GOOGLEKEY<\/code><\/td><td>Invalid <code>googlekey<\/code> parameter.<\/td><\/tr>\r\n<tr><td><code>ERROR_PAGEURL<\/code><\/td><td>Invalid <code>pageurl<\/code> parameter.<\/td><\/tr>\r\n<tr><td><code>CAPCHA_NOT_READY<\/code><\/td><td>The captcha is still being processed. Keep polling.<\/td><\/tr>\r\n<tr><td><em>(empty response)<\/em><\/td><td>The result has already been retrieved, or the ID does not exist.<\/td><\/tr>\r\n<\/tbody>\r\n<\/table>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6a106f1 elementor-widget-divider--view-line_icon elementor-view-stacked elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"6a106f1\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"last\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-unlock-alt\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z\"><\/path><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>API Documentation Reference for available endpoints, request formats, parameters, and example responses for integrating the API into your applications. Image CAPTCHA reCAPTCHA V2 reCAPTCHA V2 Callback reCAPTCHA V2 Invisible reCAPTCHA V3 reCAPTCHA Enterprise Cloudflare Turnstile Geetest V3 Using Proxies Error Codes This documentation is intended for developers who want to integrate CapSkip directly into their [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":23624,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-22260","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/pages\/22260","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/comments?post=22260"}],"version-history":[{"count":52,"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/pages\/22260\/revisions"}],"predecessor-version":[{"id":24489,"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/pages\/22260\/revisions\/24489"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/media\/23624"}],"wp:attachment":[{"href":"https:\/\/capskip.com\/zh\/wp-json\/wp\/v2\/media?parent=22260"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}