# hCaptcha görsel tanıma

> YesCaptcha ile hCaptcha görsel sorularını çözün (HCaptchaClassification): 3×3 ızgara seçimi, belirli bir konuma tıklama, öğeyi belirli bir konuma sürükleme ve animasyonlu sorular. Senkron yanıt verir; hedef bulunamazsa puan düşülmez.

Source: https://docs.yescaptcha.com/tr/tasks/hcaptcha-classification/ · Last verified: 2026-10-15

> This page was machine-translated from the Chinese version. If anything differs, the Chinese version prevails: https://docs.yescaptcha.com/zh/tasks/hcaptcha-classification/

`HCaptchaClassification`, hCaptcha’nın gösterdiği görsel soruları çözer: soruyu ve görselleri gönderirsiniz, yanıtta hangi görsellerin seçileceği, hangi konuma tıklanacağı veya nereden nereye sürükleneceği döner; işlemi tarayıcıda kendi programınız yapar. **Token döndürmez.** Senkron çalışır. Her istek için ücret: 8 puan (≈ $1.20 / 1k). Hedef bulunamazsa (sonuç boşsa) puan düşülmez.

> **İpucu:** Tıklama mantığını kendiniz yazmak istemiyorsanız [tarayıcı eklentisini](https://docs.yescaptcha.com/tr/extension.md) kullanabilirsiniz; eklenti bu soru türlerinin hepsini destekler. Tıklama konumu yerine token istiyorsanız [hCaptcha](https://docs.yescaptcha.com/tr/tasks/hcaptcha.md) görev türünü kullanın.

- POST `https://api.yescaptcha.com/createTask` (Global uç nokta)
- POST `https://cn.yescaptcha.com/createTask` (Çin uç noktası)

## Türler ve fiyatlar

| Görev türü | Fiyat | Mod | Notlar |
| --- | --- | --- | --- |
| `HCaptchaClassification` | $1.20 / 1k; 8 puan/görev · ¥8 / 1k | Senkron | Hedef bulunamadığında puan düşümü yapılmaz |

ABD doları fiyatları, 1 ABD doları ≈ ¥6.67 kuruyla hesaplanan tahminlerdir; görevler puan üzerinden ücretlendirilir.

## İstek parametreleri

| Alan | Tür | Zorunlu | Açıklama |
| --- | --- | --- | --- |
| `type` | string | Evet | Görev türü; bu sayfadaki "Görev türleri ve fiyatlar" bölümüne bakın |
| `queries` | array | Evet | Sayfadaki sıraya göre Base64 kodlu soru görsellerinin listesi (3×3 ızgarada 9 küçük görsel) |
| `question` | string | Hayır | Sayfada görüntülenen sorunun tam metni (Basitleştirilmiş Çince veya İngilizce önerilir), ör. `Please click each image containing a bicycle`. `question` ve `anchors` alanlarından en az birini gönderin; ikisini birden göndermeniz önerilir |
| `anchors` | array | Hayır | Sorunun yanında gösterilen örnek görsellerin Base64 kodlu listesi; örnek görseli olan sorularda gönderilmesi gerekir |

-   `question` alanına sayfada görünen soru cümlesini olduğu gibi gönderin; çevirmeniz gerekmez. hCaptcha dilini Basitleştirilmiş Çince veya İngilizce yapmanız önerilir. Yeni soru ifadeleri genellikle hızla desteklenir; tamamen yeni kategoriler 3 iş günü içinde desteklenir.

> **Dikkat:** Sorunun sağ üst köşesinde örnek görsel varsa bunu `anchors` alanına koyun. Yalnızca örnek görsele bakarak cevaplanabilen sorular, `anchors` gönderilmezse çözülemez.

## 3×3 ızgara seçimi

Soru “Please click each image containing …” biçimindedir ve altında 9 küçük görsel bulunur. `queries` alanına 9 görselin Base64 verisini sayfadaki sırayla koyun:

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "HCaptchaClassification",
    "question": "Please click each image containing a bicycle",
    "queries": ["BASE64_IMAGE_1", "BASE64_IMAGE_2"]
  }
}
```

Yanıt:

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "objects": [true, false, false, true, true, false, true, true, false],
    "top_k": [0, 3, 4, 6, 7],
    "confidences": [1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0, 0.0]
  }
}
```

`objects` ve `top_k` aynı bilgiyi taşır: `objects` her görselin hedef olup olmadığını, `top_k` ise hedef görsellerin sıra numarasını (0’dan başlayarak) verir. Bu görsellere tıklamanız yeterlidir.

## Belirli bir konuma tıklama

Soru “Please click …” biçimindedir ve altında büyük bir görsel bulunur; görselin üzerinde bir veya birkaç konuma tıklanır.

1.  `question` alanına sayfadaki soruyu yazın; örnek küçük görseller varsa `anchors` alanına koyun.
2.  `queries` alanına tek bir görsel koyun: mümkünse canvas’tan doğrudan dışa aktarılan orijinal görseli (JPG’ye çevirmeniz önerilir) gönderin. Yalnızca ekran görüntüsü alabiliyorsanız aşağıdaki kırmızı çerçevedeki büyük görsel alanını eksiksiz ve fazlasız kırpın.
3.  Yanıttaki `box`, tıklanacak koordinatları sırayla x1, y1, x2, y2… şeklinde verir; başlangıç noktası yüklenen görselin sol üst köşesidir.
4.  Yüklenen görselin boyutu sayfadaki görüntülenen boyutundan farklıysa ölçekleme yapın: sayfadaki x = dönen x × görüntülenen genişlik ÷ yüklenen görselin genişliği (y için de aynı). Örneğin dönen x = 769, canvas’ın görüntülenen genişliği 350 ve yüklenen görselin genişliği 1000 ise sayfada tıklanacak konum 769 × 350 ÷ 1000 ≈ 269 olur.

![Tıklama sorusunda ekran görüntüsü alanı: soru metni question, üç örnek küçük görsel anchors, alttaki büyük görsel queries olur](https://docs.yescaptcha.com/_astro/hcaptcha-click-areas.DCBFUFPf_Z123RnJ.webp)

POST https://api.yescaptcha.com/createTask

```json
{
  "clientKey": "YOUR_CLIENT_KEY",
  "task": {
    "type": "HCaptchaClassification",
    "question": "Please click on the entity present in the sample image.",
    "anchors": ["BASE64_ANCHOR_1", "BASE64_ANCHOR_2", "BASE64_ANCHOR_3"],
    "queries": ["BASE64_OF_THE_BIG_IMAGE"]
  }
}
```

Yanıt:

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "box": ["221", "213"]
  }
}
```

Birden fazla hedefe tıklanması gerekiyorsa `box` içinde sırayla birden çok koordinat çifti bulunur: `["221", "213", "340", "118", ...]`.

## Belirli bir konuma sürükleme

Soru “Drag … to …” biçimindedir; sağdaki parçaların görseldeki ilgili konuma sürüklenmesi gerekir.

1.  `question` alanına sayfadaki soruyu yazın.
2.  `queries` alanına bir ekran görüntüsü koyun. Görselde sürüklenecek parçalar ile hedef konumlar **birlikte** görünmelidir; görselin her kenarı en az 260 piksel olmalıdır.
3.  Yanıttaki `box` içindeki her öğe bir sürüklemedir: `start` parçanın bulunduğu konum, `end` bırakılacağı konumdur. Birden fazla parça varsa tek tek sürükleyin.

```json
{
  "errorId": 0,
  "status": "ready",
  "solution": {
    "type": "drag",
    "box": [
      {
        "start": [644, 218],
        "end": [239, 315]
      }
    ]
  }
}
```

![Sürükleme sorusu sonucu: Start sürüklenecek parçayı, End hedef konumu gösterir](https://docs.yescaptcha.com/_astro/hcaptcha-drag-result.vEj4iyUz_1Ou9zz.webp)

Ekran görüntüsü yerine protokol verisi (parça görselleri, parça koordinatları ve arka plan görseli) elde ettiyseniz önce parçaları koordinatlarına göre arka plan görseline yapıştırın; sayfadaki ekran görüntüsüyle aynı görünüme getirdikten sonra gönderin.

## Animasyonlu sorular

Soru görseli animasyonsa animasyonun (GIF vb.) Base64 verisini `queries` alanına koyun. Animasyon süresinin en az 3 saniye, tercihen 5-6 saniye olması ve kare hızının yaklaşık 12 FPS olması önerilir.

## Bildirim ve puan iadesi

Tıklamadan sonra doğrulama başarısız olursa 1 saat içinde [report](https://docs.yescaptcha.com/tr/api/report.md) ile bildirebilirsiniz; bildirim sonrası puan iadesi yaklaşık 24 saat sonra hesaplanır. Kurallar için [Faturalandırma ve puan iadesi](https://docs.yescaptcha.com/tr/getting-started/billing.md) sayfasına bakın.

## İlgili rehberler

-   [hCaptcha görsel tanıma ile tıklama simülasyonu (Selenium)](https://docs.yescaptcha.com/tr/guides/hcaptcha-click-selenium.md)
