コンテンツにスキップ
ステータスダッシュボード

タスクタイプ

Cloudflare Turnstile

このページは中国語版から機械翻訳されたもので、不正確な箇所がある可能性があります。中国語版を正としてください。

イメージ図Turnstile はフォーム内に埋め込まれます。ほとんどの場合、自動で検証が完了してチェックマークが表示され、ページは遷移しません。

Cloudflare Turnstile タスクはトークン(token)を返します。これを対象サイトに送信すると検証を通過できます。TurnstileTaskProxyless は 1 タスクあたり 25 ポイント(約 $3.75 / 1k) で、非同期で結果を返します。まず createTask を呼び、その後 5 秒ごとに getTaskResult を呼びます。認識に失敗した場合やタイムアウトした場合は、自動で返金されます。

POSThttps://api.yescaptcha.com/createTaskグローバルエンドポイント
POSThttps://cn.yescaptcha.com/createTask中国エンドポイント

リクエストボディは JSON で、clientKey で認証します。タスクを作成したエンドポイントと同じエンドポイントで結果を取得してください。

ページのフォームに Cloudflare の検証ウィジェット(「人間であることを確認します」)が埋め込まれており、ページが challenges.cloudflare.com/turnstile のスクリプトを読み込んでいる場合です。

ページ全体が Cloudflare に遮られ、「しばらくお待ちください…」「ブラウザを確認しています」と表示される場合は、Turnstile ではなく Cloudflare チャレンジページです。Cloudflare チャレンジページを使用してください。違いはキャプチャの種類の見分け方を参照してください。

タスクタイプ価格返却方式備考
TurnstileTaskProxyless$3.75 / 1k; 25 ポイント/タスク · ¥25 / 1k非同期
TurnstileTaskProxylessM1$4.50 / 1k; 30 ポイント/タスク · ¥30 / 1k非同期
TurnstileTask$3.75 / 1k; 25 ポイント/タスク · ¥25 / 1k非同期プロキシ持ち込み

米ドル価格は US$1 ≈ ¥6.67 での概算です。タスクはポイントで課金されます。

  • TurnstileTaskProxyless と TurnstileTaskProxylessM1 はパラメーターが同じで、経路が異なります。お互いにバックアップとして使えます。
  • TurnstileTask は独自のプロキシでキャプチャを読み込みます。プロキシ関連のフィールドを渡す必要があります。
フィールド型必須説明
typestringはいタスクタイプ。値はこのページの「タイプと料金」を参照してください
websiteURLstringはいキャプチャが表示されるページの完全な URL。キャプチャが表示されるサイトを指定し、キャプチャ提供元のドメインは指定しないでください
websiteKeystringはいTurnstile のサイトキー(sitekey)。通常は 0x で始まります
pageActionstringいいえページが Turnstile に渡す action(turnstile.render のオプション、またはウィジェット要素の data-action)。例:login。ほとんどの場合は不要です。タスクが失敗し続ける場合にのみ追加してください
datastringいいえページが Turnstile に渡す cData(turnstile.render のオプション、またはウィジェット要素の data-cdata)。例:c0bd4b36-7419-4e18-83c6-378699f2a9a2。ほとんどの場合は不要です。タスクが失敗し続ける場合にのみ追加してください
proxyTypestring一部のタイププロキシのプロトコル: http、https、socks4、socks5(TurnstileTask では必須)
proxyAddressstring一部のタイププロキシの IP アドレスまたはホスト名。127.0.0.1 や 192.168.x.x のようなローカルアドレスやプライベートアドレスは、当社のサーバーから到達できないため使用できません(TurnstileTask では必須)
proxyPortinteger一部のタイププロキシのポート(TurnstileTask では必須)
proxyLoginstringいいえプロキシのユーザー名(プロキシが認証を必要とする場合)(TurnstileTask のみ)
proxyPasswordstringいいえプロキシのパスワード(プロキシが認証を必要とする場合)(TurnstileTask のみ)
userAgentstringいいえブラウザーの User-Agent。結果に userAgent が含まれている場合は、token を送信するときにその値を使用してください(TurnstileTask のみ)

websiteKey は通常 0x で始まります。見つけ方は Turnstile パラメーターの見つけ方を参照してください。

どうしても通らない場合:pageAction と data

Section titled “どうしても通らない場合:pageAction と data”

ほとんどの場合、websiteURL と websiteKey だけで十分で、この 2 つのパラメーターは不要です。websiteURL と websiteKey が正しいことを確認してもタスクが通らない場合は、ページが Turnstile を呼び出すときに action と cData を渡しているかを確認してください(turnstile.render のパラメーター、または検証ウィジェット要素の data-action、data-cdata)。渡している場合は、そのまま指定します。

  • pageAction:ページの action を指定します(例:login)
  • data:ページの cData を指定します(例:c0bd4b36-7419-4e18-83c6-378699f2a9a2)
POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY",
"pageAction": "login",
"data": "c0bd4b36-7419-4e18-83c6-378699f2a9a2"
}
}
POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY"
}
}
curl -s https://api.yescaptcha.com/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "TurnstileTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "0x4AAAAAAA_SITE_KEY"
}
}'
# Returns {"errorId":0,"taskId":"..."}; then poll every 5 seconds:
curl -s https://api.yescaptcha.com/getTaskResult \
-H 'Content-Type: application/json' \
-d '{"clientKey": "YOUR_CLIENT_KEY", "taskId": "TASK_ID"}'

websiteURL と websiteKey は、対象サイトの値に置き換えてください。

{
"errorId": 0,
"status": "ready",
"solution": {
"token": "0.ufq5RgSVZd11DPSX1brdrxnEs28KcVlKj2ORchqxSy2q9yAW6ciq3hriXDF4x...",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36"
}
}
フィールド型説明
tokenstring対象サイトに送信するトークン。1 回限りの使用です。できるだけ早く送信してください
userAgentstringトークンの取得に使用した User-Agent。トークンを送信する際はこの値を使用してください。送信した値と異なる場合もこちらが優先されます

token をページの cf-turnstile-response フィールド(または対象サイトの API が要求するフィールド)に設定して送信します。送信リクエストの User-Agent には、返却された userAgent を使用してください。

処理中の場合は {"errorId": 0, "status": "processing"} が返るので、5 秒後に再度取得してください。エラーが発生した場合は errorCode に応じて対処してください。エラーコードを参照してください。

token の有効期間はどれくらいですか?

Section titled “token の有効期間はどれくらいですか?”

1 回限り有効です。取得後はできるだけ早く送信してください(Turnstile の token は通常数分以内に失効します。失効時間は Cloudflare が決定します)。

送信してもサイトで通過しません

Section titled “送信してもサイトで通過しません”

websiteURL が検証ウィジェットの表示されるページであること、websiteKey が正しいことを確認し、送信時には返却された userAgent を使用してください。ページが action や cData を渡している場合は、pageAction と data として指定してください。上記のどうしても通らない場合を参照してください。サイトが IP も検査している場合は、TurnstileTask を使用し、送信時にも同じプロキシを経由してください。