接続をテスト

POST /v1/connections/{connection_id}:test · 権限 connections:write

エンタープライズ接続の現在の設定でテストサインインを開始し、テスト URL を返します。接続を設定する担当者は、その URL をブラウザで開き、ID プロバイダでサインインします。ブラウザは、test_id クエリパラメータを付けて return_url に戻ります。結果は最新のテスト結果を取得で確認してください。

テストサインインでは、セッションは作成されず、ユーザーのプロビジョニングも、アカウントのリンクも行われません。接続を有効化するには、テストに合格している必要があります。ID プロバイダの設定を変更すると、そのテスト結果は無効になります。

公開中の設定ではなく下書きのリビジョンをテストする場合は、その revision_id を送信してください。下書きは、このテストに限り公開中の設定に重ねて適用されます(SP ホストの移行の場合、テスト URL は新しいホストになります)。リビジョンのテストに合格すると、リビジョンを公開するために必要な根拠になります。ただし、公開中の設定に対する有効化の根拠にはなりません。

test_url はベアラーリンクです。これを持つ人は、10 分以内に 1 回だけテストを実行できます。この URL は、このレスポンスでのみ返され(Cache-Control: no-store)、ログや監査には記録されません。同じ Idempotency-Key でリクエストを繰り返した場合、再生されたレスポンスには test_url が含まれず、secret_redacted: true が設定されます。その場合は、新しくテストを開始してください。テストの開始は、テスト ID のみを含めて connection.test_started として監査されます。

リクエスト

フィールド 型 必須 説明
connection_id path はい エンタープライズ接続 ID(conn_…)。
return_url string はい テスト後にブラウザが戻る絶対 https URL。2048 バイト以内。test_id がクエリパラメータとして追加されます。
revision_id string いいえ 公開中の設定ではなくテストする、接続の下書きリビジョン(connrev_…)。

レスポンス

200 OK:

{
  "test_id": "conntest_01j9xr4a6b8c0d2e4f6g8h0j2k",
  "test_url": "https://acme.eu1.keenauth.app/sso/conn_01j9xp6q0r1s5t7v9w1x3y5z7b/start?t=…",
  "expires_at": "2026-10-20T10:10:00Z"
}
フィールド 説明
test_id テスト ID(conntest_…)。
test_url ブラウザで開く URL。有効期間は 10 分間、1 回のみ使用できます。共有もログ記録もしないでください。再生されたレスポンスには含まれません。
expires_at テスト URL の有効期限。
secret_redacted 同じ Idempotency-Key で再生されたレスポンスの場合は true。

エラー

HTTP code 発生条件
404 not_found この環境に接続が存在しないか、エンタープライズ接続ではありません。
409 conflict 接続はまだテストできません(プロトコル設定がありません)。
422 validation_failed return_url がない、または絶対 https URL ではありません(errors[] は /return_url を指します)。または revision_id の形式が不正(invalid_value)、またはこの接続の下書きリビジョンではありません(not_found、ポインタは /revision_id)。
400 unknown_field リクエストボディに未知のフィールドが含まれています。
401 unauthenticated 認証情報がない、無効である、または取り消されています。
403 insufficient_permissions 認証情報に必要な権限がありません。
429 rate_limited レート制限を超えました。Retry-After の期間を経過してから再試行してください。
503 service_unavailable 依存先が一時的に利用できません。Retry-After の期間を経過してから再試行してください。

例

curl -X POST "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b:test" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"return_url":"https://admin.example.com/sso/test-done"}'
keenauth connections test conn_01j9xp6q0r1s5t7v9w1x3y5z7b --return-url https://admin.example.com/sso/test-done