@captcha-libs/twocaptcha
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

2Captcha logo

2captcha NodeJS captcha client - use 2captcha with ease

Donate GitHub stars Docs: https://2captcha.com/api-docs

Installation

  • npm $ npm i @captcha-libs/twocaptcha
  • pnpm $ pnpm i @captcha-libs/twocaptcha
  • yarn $ yarn add @captcha-libs/twocaptcha

Usage

//import TwoCaptcha client and desired task 
import { TwoCaptcha, RecaptchaV2TaskProxyless } from "@captcha-libs/twocaptcha";

const twoCaptchaClient = new TwoCaptcha({
  clientKey: "<YOUR_CLIENT_KEY>",
  pollingInterval: 5000, //optional. Delay in milliseconds to fetch task result, default: 5000ms
  timeout: 120_000 //optional. Max time in milliseconds to wait for settled task result, default: 120000ms
});

//Pass captcha params to solve
const reCaptchaV2Request = new RecaptchaV2TaskProxyless({
  websiteKey: "6LfD3PIbAAAAAJs_eEHvoOl75_83eXSqpPSRFJ_u",
  websiteURL: "https://2captcha.com/demo/recaptcha-v2"
});

//returns solution or throws an exception
const reCaptchaV2Solution = await twoCaptchaClient.solve(reCaptchaV2Request);

const {
  taskId,
  solution, //returns generic captcha type specific solution
  solveCount,
  status,
  createTime,
  cost,
  ip,
  endTime
} = await twoCaptchaClient.solve(reCaptchaV2Solution);

const {
  gRecaptchaResponse, token
} = solution;

//If you want to submit solution as correct
await twoCaptchaClient.reportCorrect(taskId);
//...or incorrect
await twoCaptchaClient.reportIncorrect(taskId);

//to get balance
const balance = await twoCaptchaClient.getBalance()

Usage with proxies

const reCaptchaV2Request = new RecaptchaV2Task({
  websiteKey: "6LfD3PIbAAAAAJs_eEHvoOl75_83eXSqpPSRFJ_u",
  websiteURL: "https://2captcha.com/demo/recaptcha-v2",
  //your proxy credentials
  proxyAddress: "1.2.3.4", //required. string
  proxyPort: 8080, //required. number
  proxyType: "http", //required. 'http' or 'socks4' or 'socks5'
  proxyLogin: "user", //optional. string
  proxyPassword: "p4$$w0rd" //optional. string
});

Features

  • Supports all captcha types, solutions and methods from 2captcha docs (updated at Feb. 2024)
  • TypeScript-first design
  • Automatically waits for solution
  • Fully tested task payloads

Currently supported task payloads

What 'custom' does mean? Custom means that the parameters and solutions have been narrowed down from the official documentation from more general cases. However, you can still use classes strictly according to the official documentation.

  1. Classification:
  2. Token:

Looking for another captcha recognition service? Check our other libraries:

Package Sidebar

Install

npm i @captcha-libs/twocaptcha

Weekly Downloads

7

Version

1.0.2

License

ISC

Unpacked Size

308 kB

Total Files

194

Last publish

Collaborators

  • blackravenx