solvethree APIキーを作成して使う
解決に使用するワークスペースでキーを作成してください。完全なシークレットはサーバーに保管してください。表示されるキーのプレフィックスだけでは認証できません。
このページの内容
キーを作成して保存する
- 1.
API キーを開く
コンソールで目的のワークスペースに移動し、
/api-keysの「API キー」を開きます。 - 2.
キーに名前を付ける
「API キーを作成」を選択します。「キー名」に使用先がわかる名前を入力し、「キーを作成」を選択します。
- 3.
完全なシークレットをコピーする
「API キーを保存」に表示されるシークレットをコピーし、サーバーアプリケーション用に安全に保管します。表示されるのは一度だけです。
- 4.
ダイアログを閉じる
シークレットを保存してから、「このキーを保存しました」を選択します。
サーバーからキーを送信する
Authorization: Bearer の後にワークスペースの完全なキーを続けて、リクエストを認証します。ブラウザー側のコードには含めないでください。
以下の例では、サーバー環境で SOLVETHREE_API_KEY にシークレットを、SOLVETHREE_PROXY にプロキシ URL を設定します。accounts.example.com と login を、対象サイトのホスト名とアクションに置き換えてください。対象サイトには、このワークスペースで利用可能な有効なプロファイルがあらかじめ必要です。ホスト名を送信してもプロファイルは作成されません。未設定の場合は、サイトプロファイルの設定を参照してください。
# Set SOLVETHREE_API_KEY and SOLVETHREE_PROXY in your environment first.
# Replace the hostname and action with your active site profile.
jq -n \
--arg proxy "$SOLVETHREE_PROXY" \
--arg requestId "login-$(date +%s)-$$" \
'{site:"accounts.example.com", action:"login", proxy:$proxy, requestId:$requestId}' \
| curl --fail-with-body --max-time 30 \
'https://api.solvethree.com/v1/tasks?waitMs=15000' \
-H "Authorization: Bearer $SOLVETHREE_API_KEY" \
-H 'Content-Type: application/json' \
--data-binary @-これは公開 API にタスク作成リクエストを送信します。単なる認証確認ではなく、実際の解決タスクを作成するため、ready になったタスクは課金されます。HTTP 応答が成功しただけでは、タスクが ready になったことや、対象のウェブサイトが解決結果を受け入れることを意味しません。
認証エラーとタスクエラーを区別する
- API が HTTP 401 を返す。
サーバーの Authorization ヘッダーを確認してください。Bearer の後に必要なのは完全なシークレットであり、キー名や表示されたプレフィックスではありません。キーが失効していないか確認してください。
試してみましょう: ヘッダーを修正するか、失効したキーを置き換えてサーバーの設定を更新してください。タスクのペイロードを読み取る前に、成功以外の HTTP 応答を処理してください。
- キーで認証できるが、目的のサイトプロファイルを利用できない。
キーがどのワークスペースに属しているか、そのワークスペースに対象サイトの有効なプロファイルがあるかを確認してください。別のワークスペースの有効なキーは、全ワークスペース共通の認証情報ではありません。
試してみましょう: 目的のプロファイルがあるワークスペースのキーを使用するか、使用中のワークスペースにプロファイルを設定してください。リクエストのホスト名を変更しても、プロファイルは作成されません。
その他のリクエストやタスクの失敗については、CAPTCHA API のエラーを参照してください。
参照元とAPIリファレンス
最初のタスクを実行しましょう。
$5のワークスペースクレジットで始められます。