クリックログAPI

このドキュメントでは、 Fess の v2 クリックログ API について説明します。 共通のレスポンスエンベロープ・エラーモデル・CSRF については APIの概要 を参照してください。

ベースURLは http://<Server Name>/api/v2/ です(ローカル環境の例: http://localhost:8080/api/v2 )。

クリックの記録

リクエスト

HTTPメソッド POST
エンドポイント /api/v2/click

検索結果のクリックを検索ログに記録します。 匿名の呼び出し元、および検索ログ機能が無効なインストールでは、成功レスポンスで logged: false を返します(エラーにはなりません)。

状態を変更するリクエストのため、 X-Fess-CSRF-Token ヘッダーが必要です( APIの概要 を参照)。

リクエストボディ

Content-Type: application/json で、以下のフィールドを持つ JSON (ClickRequest)を送信します。

{
  "doc_id": "a1b2c3d4e5f6",
  "query_id": "f8b1c2d3e4a5",
  "rank": 1,
  "rt": 1717142400000
}
リクエストボディ
doc_id ドキュメント ID(str, 必須, パターン ^[A-Za-z0-9_-]+$ )。
query_id 検索 API が返す query_id (str)。
rank 結果リスト内の 1 始まりの位置(int, >=1 )。
rt 元の検索リクエストの epoch ミリ秒(int64)。未指定時はサーバーの現在時刻が既定値になります。

表: リクエストボディ

レスポンス

成功時(200)は、共通エンベロープの response 直下に以下のフィールドが返ります。

{
  "response": {
    "status": 0,
    "ok": true,
    "logged": true
  }
}

各フィールドについては以下の通りです。

レスポンスフィールド
ok 常に true (bool)。
logged 検索ログの永続化が無効、または呼び出し元が匿名のとき false (bool)。その場合でも 200 レスポンスを返します。

表: レスポンスフィールド

エラーレスポンス

エラーモデルの詳細は APIの概要 を参照してください。このエンドポイントが返す HTTP ステータスは以下の通りです。

エラーレスポンス
ステータスコード 説明
400 Bad Request リクエストが不正な場合。
403 Forbidden CSRF トークンの欠落・失効などで許可されない場合。
404 Not Found リソースが見つからない場合。
405 Method Not Allowed HTTP メソッドが許可されていない場合。
413 Payload Too Large リクエストボディがサイズ上限を超えている場合。
415 Unsupported Media Type サポートされていない Content-Type の場合。
500 Internal Server Error サーバー内部エラーが発生した場合。

表: エラーレスポンス