Cookie usage notification

This site uses cookies. Cookies remember you, so we can provide you with personalized services. Read our privacy policy.

Logo of «GitHub»
  • We support API for «PHP» language
  • We support API for «Python» language
  • We support API for «Go» language
  • We support API for «Ruby» language
  • We support API for «C#» language
  • We support API for «Java» language
  • We support API for «JavaScript» language



The method is used to solve captchas where you need to rotate an object to place it properly. Returns the required rotation angle.

Supported image formats: JPEG, PNG, GIF
Max file size: 600 kB
Max image size: 1000px on any side

RotateTask type specification

Property Type Required Description
type String Yes RotateTask
body String Yes Image encoded into Base64 format. Data-URI format (containing data:content/type prefix) is also supported
angle Integer No One step rotation angle. You can count how many steps are required to rotate the image 360 degrees and then divide 360 by this count to get the angle value
comment String No A comment will be shown to workers to help them to solve the captcha properly
imgInstructions String No An optional image with instruction that will be shown to workers. Image should be encoded into Base64 format. Max file size: 100 kB

Request example

Method: createTask
API endpoint:

    "task": {
        "type": "RotateTask",
        "comment": "position the image properly",
        "angle": 60
    "languagePool": "en"

Response example

    "errorId": 0,
    "status": "ready",
    "solution": {
        "rotate": 180
    "cost": "0.0005",
    "ip": "",
    "createTime": 1692863536,
    "endTime": 1692863556,
    "solveCount": 1

Code examples


require(__DIR__ . '/../src/autoloader.php');

$solver = new \TwoCaptcha\TwoCaptcha('YOUR_API_KEY');

try {
    $result = $solver->rotate([
        'file'  => 'path/to/captcha.jpg',
        'angle' => 15,
} catch (\Exception $e) {

die('Captcha solved: ' . $result->code);

import sys
import os


from twocaptcha import TwoCaptcha

api_key = os.getenv('APIKEY_2CAPTCHA', 'YOUR_API_KEY')

solver = TwoCaptcha(api_key)

  result = solver.rotate('./images/rotate.jpg')

except Exception as e:

  sys.exit('result: ' + str(result))

using System;
using System.Linq;
using TwoCaptcha.Captcha;

namespace TwoCaptcha.Examples
    public class RotateExample
        public void Main()
            TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
            Rotate captcha = new Rotate();
                Console.WriteLine("Captcha solved: " + captcha.Code);
            catch (AggregateException e)
                Console.WriteLine("Error occurred: " + e.InnerExceptions.First().Message);

package examples;

import com.twocaptcha.TwoCaptcha;
import com.twocaptcha.captcha.Rotate;

public class RotateExample {
    public static void main(String[] args) {
        TwoCaptcha solver = new TwoCaptcha("YOUR_API_KEY");
        Rotate captcha = new Rotate();
        try {
            System.out.println("Captcha solved: " + captcha.getCode());
        } catch (Exception e) {
            System.out.println("Error occurred: " + e.getMessage());

package main

import (

func main() {
  client := api2captcha.NewClient("API_KEY")
  cap := api2captcha.Rotate{
      File: "path/to/captcha.jpg",
      Angle: 15,
  code, err := client.Solve(cap.ToRequest())
  if err != nil {
  fmt.Println("code "+code)
require 'api_2captcha'

client ="YOUR_API_KEY")

result = client.rotate({
  image: 'path/to/captcha.jpg',
  angle: 40,
  lang: 'en',
  hint_image: 'path/to/hint.jpg',
  hint_text: 'Put the images in the correct way'