Heroku
tcp/443 tcp/80
Open service 99.83.183.127:443 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:04:43 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266283"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266283"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 3.33.193.101:80 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:05:44 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266344"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266344"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 15.197.246.237:443 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:04:44 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=7T5RxlJ3xOtWTcGQ22NwENYm1zpXHyVwfchNrIyt4h4%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266284"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=7T5RxlJ3xOtWTcGQ22NwENYm1zpXHyVwfchNrIyt4h4%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266284"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 3.33.193.101:443 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:04:43 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266283"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266283"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 99.83.183.127:80 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:05:44 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266344"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266344"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 52.223.46.195:80 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:05:44 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266344"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266344"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 15.197.246.237:80 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:05:44 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266344"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=LEwgrWwtTwPYB7N0XKdyE07yBIgwPys16WqXvu34qMQ%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266344"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text
Open service 52.223.46.195:443 · docs.kalevalautility.com
2026-01-13 01:04
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: public, max-age=0
Content-Length: 17672
Content-Type: text/html; charset=UTF-8
Date: Tue, 13 Jan 2026 01:04:43 GMT
Etag: W/"4508-17b73e1d468"
Last-Modified: Mon, 23 Aug 2021 16:39:45 GMT
Nel: {"report_to":"heroku-nel","response_headers":["Via"],"max_age":3600,"success_fraction":0.01,"failure_fraction":0.1}
Report-To: {"group":"heroku-nel","endpoints":[{"url":"https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D\u0026sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d\u0026ts=1768266283"}],"max_age":3600}
Reporting-Endpoints: heroku-nel="https://nel.heroku.com/reports?s=QVzRQghzHDf%2BhzJAc6qTp12OGe5IMabtziEFYDNG%2F48%3D&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&ts=1768266283"
Server: Heroku
Via: 1.1 heroku-router
X-Powered-By: Express
Connection: close
Page title: Installation
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="turbo-cache-control" content="no-cache">
<!-- Primary Meta Tags -->
<title>Installation</title>
<meta name="title" content="Installation">
<meta name="description" content="Installation and download instructions." />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:url" content="/">
<meta property="og:title" content="Installation">
<meta property="og:description" content="Installation and download instructions.">
<meta property="og:image" content="/static/changelog.png">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="/">
<meta property="twitter:title" content="Installation">
<meta property="twitter:description" content="Installation and download instructions.">
<meta property="twitter:image" content="/static/changelog.png">
<script>(function () { var el = document.documentElement, m = localStorage.getItem("doc_theme"), wm = window.matchMedia; if (m === "dark" || (!m && wm && wm("(prefers-color-scheme: dark)").matches)) { el.classList.add("dark") } else { el.classList.remove("dark") } })();</script>
<link href="/resources/css/retype.css" rel="stylesheet" />
<script type="text/javascript" src="/resources/js/config.js" defer></script>
<script type="text/javascript" src="/resources/js/retype.js" defer></script>
</head>
<body>
<div id="docs-app" class="relative text-base antialiased text-gray-700 bg-white font-body dark:bg-dark-850 dark:text-dark-300">
<div class="absolute bottom-0 left-0 bg-gray-100 dark:bg-dark-800" style="top: 5rem; right: 50%"></div>
<header id="docs-site-header" class="sticky top-0 z-30 flex w-full h-16 bg-white border-b border-gray-200 md:h-20 dark:bg-dark-850 dark:border-dark-650">
<div class="container relative flex items-center justify-between flex-grow pr-6 md:justify-start">
<!-- Mobile menu button skeleton -->
<button v-cloak class="skeleton docs-mobile-menu-button flex items-center justify-center flex-shrink-0 overflow-hidden dark:text-white focus:outline-none rounded-full w-10 h-10 ml-3.5 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" class="mb-px flex-shrink-0" width="24" height="24" viewBox="0 0 24 24" role="presentation" style="margin-bottom: 0px;"><g fill="currentColor"><path d="M2 4h20v2H2zM2 11h20v2H2zM2 18h20v2H2z"></path></g></svg></button>
<div v-cloak id="docs-sidebar-toggle"></div>
<!-- Logo -->
<div class="flex items-center justify-between h-full py-2 md:w-75">
<div class="flex items-center px-2 md:px-6">
<a id="docs-site-logo" href="/" class="flex items-center leading-snug text-xl">
<span class="w-10 mr-2 flex-grow-0 flex-shrink-0 overflow-hidden">
<img class="max-h-10 dark:hidden md:inline-block" src="/static/logo.png">
<img class="max-h-10 hidden dark:inline-block" src="/static/logo.png">
</span>
<span class="dark:text-white font-semibold line-clamp-1 md:line-clamp-2">Kalevala Utility</span>
</a><span class="hidden px-2 py-1 ml-4 text-sm font-semibold leading-none text-root-logo-label-text bg-root-logo-label-bg rounded-sm md:inline-block">Manual</span>
</div>
<span class="hidden h-8 border-r md:inline-block dark:border-dark-650"></span>
</div>
<div class="flex justify-between md:flex-grow">
<!-- Top Nav -->
<nav class="hidden md:flex">
<ul class="flex flex-col mb-4 md:pl-16 md:mb-0 md:flex-row md:items-center">
<li class="md:mr-6">
<a class="block py-2 text-sm text-gray-400 whitespace-nowrap transition-colors duration-200 ease-linear md:text-blue-500 dark:text-blue-400 hover:text-blue-800 dark:hover:text