From df1b612e29ba97a2e67db339b1e8c7465702b7e8 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 7 Oct 2025 15:57:14 +0300 Subject: [PATCH] server : add `/v1/health` endpoint (#16461) * server : add /v1/health endpoint * cont : update readme --- tools/server/README.md | 2 +- tools/server/server.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/server/README.md b/tools/server/README.md index 6825c8bf30..e23b122ab1 100644 --- a/tools/server/README.md +++ b/tools/server/README.md @@ -393,7 +393,7 @@ node index.js ### GET `/health`: Returns health check result -This endpoint is public (no API key check). +This endpoint is public (no API key check). `/v1/health` also works. **Response format** diff --git a/tools/server/server.cpp b/tools/server/server.cpp index a21147613d..307653764c 100644 --- a/tools/server/server.cpp +++ b/tools/server/server.cpp @@ -4184,6 +4184,7 @@ int main(int argc, char ** argv) { auto middleware_validate_api_key = [¶ms, &res_error](const httplib::Request & req, httplib::Response & res) { static const std::unordered_set public_endpoints = { "/health", + "/v1/health", "/models", "/v1/models", "/api/tags" @@ -5232,6 +5233,7 @@ int main(int argc, char ** argv) { // register API routes svr->Get (params.api_prefix + "/health", handle_health); // public endpoint (no API key check) + svr->Get (params.api_prefix + "/v1/health", handle_health); // public endpoint (no API key check) svr->Get (params.api_prefix + "/metrics", handle_metrics); svr->Get (params.api_prefix + "/props", handle_props); svr->Post(params.api_prefix + "/props", handle_props_change);