From 42c2393f8e6765532574776e712a3f1d3b378156 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Mon, 1 Jun 2026 21:48:44 +0200 Subject: [PATCH] Update Kagi API endpoint and request method (#25015) Co-authored-by: russelg --- backend/open_webui/retrieval/web/kagi.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/backend/open_webui/retrieval/web/kagi.py b/backend/open_webui/retrieval/web/kagi.py index e6ed570011..cb35ccbb22 100644 --- a/backend/open_webui/retrieval/web/kagi.py +++ b/backend/open_webui/retrieval/web/kagi.py @@ -17,21 +17,20 @@ def search_kagi(api_key: str, query: str, count: int, filter_list: Optional[list query (str): The query to search for count (int): The number of results to return """ - url = 'https://kagi.com/api/v0/search' + url = 'https://kagi.com/api/v1/search' headers = { - 'Authorization': f'Bot {api_key}', + 'Authorization': f'Bearer {api_key}', } - params = {'q': query, 'limit': count} + params = {'query': query, 'limit': count} - response = requests.get(url, headers=headers, params=params) + response = requests.post(url, headers=headers, json=params) response.raise_for_status() json_response = response.json() - search_results = json_response.get('data', []) + search_results = json_response.get('data', {}).get('search', []) results = [ SearchResult(link=result['url'], title=result['title'], snippet=result.get('snippet')) for result in search_results - if result['t'] == 0 ] print(results)