1<!DOCTYPE html> 2<html lang="en-US" dir="ltr"> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1"> 6 <title>Intro | Gotify</title> 7 <meta name="description" content="a simple server for sending and receiving messages"> 8 <meta name="generator" content="VitePress v1.6.4"> 9 <link rel="preload stylesheet" href="/assets/style.CnMTAzTM.css" as="style"> 10 <link rel="preload stylesheet" href="/vp-icons.css" as="style"> 11 12
12<script type="module" src="/assets/app.COW1ZCMC.js"></script>
12 13 <link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin=""> 14 <link rel="modulepreload" href="/assets/chunks/theme.D_jzW_rX.js"> 15 <link rel="modulepreload" href="/assets/chunks/framework.ePeAWSvT.js"> 16 <link rel="modulepreload" href="/assets/docs_index.md.dVMOkO6k.lean.js"> 17 <link rel="icon" type="image/png" href="/img/favicon.png"> 18
18<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
18 19
19<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
19 20 </head> 21 <body> 22 <div id="app"><div class="Layout" data-v-d8b57b2d><!--[--><!--]--><!--[--><span tabindex="-1" data-v-fcbfc0e0></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-fcbfc0e0>Skip to content</a><!--]--><!----><header class="VPNav" data-v-d8b57b2d data-v-7ad780c2><div class="VPNavBar" data-v-7ad780c2 data-v-9fd4d1dd><div class="wrapper" data-v-9fd4d1dd><div class="container" data-v-9fd4d1dd><div class="title" data-v-9fd4d1dd><div class="VPNavBarTitle has-sidebar" data-v-9fd4d1dd data-v-9f43907a><a class="title" href="/" data-v-9f43907a><!--[--><!--]--><!--[--><img class="VPImage logo" src="/img/logo.png" alt data-v-ab19afbb><!--]--><span data-v-9f43907a>Gotify</span><!--[--><!--]--></a></div></div><div class="content" data-v-9fd4d1dd><div class="content-body" data-v-9fd4d1dd><!--[--><!--]--><div class="VPNavBarSearch search" data-v-9fd4d1dd><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-9fd4d1dd data-v-afb2845e><span id="main-nav-aria-label" class="visually-hidden" data-v-afb2845e> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/docs/" tabindex="0" data-v-afb2845e data-v-815115f5><!--[--><span data-v-815115f5>Docs</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/api-docs" tabindex="0" data-v-afb2845e data-v-815115f5><!--[--><span data-v-815115f5>API-Docs</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-9fd4d1dd data-v-3f90c1a5><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-3f90c1a5 data-v-be9742d9 data-v-b4ccac88><span class="check" data-v-b4ccac88><span class="icon" data-v-b4ccac88><!--[--><span class="vpi-sun sun" data-v-be9742d9></span><span class="vpi-moon moon" data-v-be9742d9></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-9fd4d1dd data-v-ef6192dc data-v-e71e869c><!--[--><a class="VPSocialLink no-icon" href="https://github.com/gotify" aria-label="github" target="_blank" rel="noopener" data-v-e71e869c data-v-60a9a2d3><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-9fd4d1dd data-v-f953d92f data-v-bfe7971f><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-bfe7971f><span class="vpi-more-horizontal icon" data-v-bfe7971f></span></button><div class="menu" data-v-bfe7971f><div class="VPMenu" data-v-bfe7971f data-v-20ed86d6><!----><!--[--><!--[--><!----><div class="group" data-v-f953d92f><div class="item appearance" data-v-f953d92f><p class="label" data-v-f953d92f>Appearance</p><div class="appearance-action" data-v-f953d92f><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-f953d92f data-v-be9742d9 data-v-b4ccac88><span class="check" data-v-b4ccac88><span class="icon" data-v-b4ccac88><!--[--><span class="vpi-sun sun" data-v-be9742d9></span><span class="vpi-moon moon" data-v-be9742d9></span><!--]--></span></span></button></div></div></div><div class="group" data-v-f953d92f><div class="item social-links" data-v-f953d92f><div class="VPSocialLinks social-links-list" data-v-f953d92f data-v-e71e869c><!--[--><a class="VPSocialLink no-icon" href="https://github.com/gotify" aria-label="github" target="_blank" rel="noopener" data-v-e71e869c data-v-60a9a2d3><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-9fd4d1dd data-v-6bee1efd><span class="container" data-v-6bee1efd><span class="top" data-v-6bee1efd></span><span class="middle" data-v-6bee1efd></span><span class="bottom" data-v-6bee1efd></span></span></button></div></div></div></div><div class="divider" data-v-9fd4d1dd><div class="divider-line" data-v-9fd4d1dd></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-d8b57b2d data-v-2488c25a><div class="container" data-v-2488c25a><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-2488c25a><span class="vpi-align-left menu-icon" data-v-2488c25a></span><span class="menu-text" data-v-2488c25a>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-2488c25a data-v-6b867909><button data-v-6b867909>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-d8b57b2d data-v-42c4c606><div class="curtain" data-v-42c4c606></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-42c4c606><span class="visually-hidden" id="sidebar-aria-label" data-v-42c4c606> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-51288d80><section class="VPSidebarItem level-0 has-active" data-v-51288d80 data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h2 class="text" data-v-0009425e>Getting Started</h2><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Intro</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/install" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Installation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/config" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Configuration</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/first-login" data-v-0009425e><!--[--><p class="text" data-v-0009425e>First Login</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/pushmsg" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Push messages</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/priority" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Message Priority</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/msgextras" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Message Extras</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-51288d80><section class="VPSidebarItem level-0" data-v-51288d80 data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h2 class="text" data-v-0009425e>REST-API</h2><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/api-docs" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Swagger Documentation</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-51288d80><section class="VPSidebarItem level-0" data-v-51288d80 data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h2 class="text" data-v-0009425e>Plugins</h2><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/plugin" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Intro to Gotify Plugins</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/plugin-write" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Writing Plugins</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/plugin-deploy" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Building and Deploying Plugins</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-51288d80><section class="VPSidebarItem level-0" data-v-51288d80 data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h2 class="text" data-v-0009425e>Development</h2><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/dev-setup" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Setup Environment</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/dev-server-and-tests" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Servers and Tests</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/build" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Build Gotify</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/testing-master" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Testing unreleased changes</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-51288d80><section class="VPSidebarItem level-0" data-v-51288d80 data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h2 class="text" data-v-0009425e>Guides</h2><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/migrate-to-3" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Migrate to 3.x</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/more-pushmsg" data-v-0009425e><!--[--><p class="text" data-v-0009425e>(more) Push message examples</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/oidc" data-v-0009425e><!--[--><p class="text" data-v-0009425e>OpenID Connect</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/optimize-images" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Optimize uploaded images</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/session-elevation" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Session Elevation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/systemd" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Systemd configuration</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1" data-v-0009425e data-v-0009425e><div class="item" role="button" tabindex="0" data-v-0009425e><div class="indicator" data-v-0009425e></div><h3 class="text" data-v-0009425e>Reverse Proxies</h3><!----></div><div class="items" data-v-0009425e><!--[--><div class="VPSidebarItem level-2 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/apache" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Apache</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/caddy" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Caddy 2</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/haproxy" data-v-0009425e><!--[--><p class="text" data-v-0009425e>HAProxy</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/nginx" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Nginx</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-0009425e data-v-0009425e><div class="item" data-v-0009425e><div class="indicator" data-v-0009425e></div><a class="VPLink link link" href="/docs/traefik" data-v-0009425e><!--[--><p class="text" data-v-0009425e>Traefik</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-d8b57b2d data-v-9a6c75ad><div class="VPDoc has-sidebar has-aside" data-v-9a6c75ad data-v-e6f2a212><!--[--><!--]--><div class="container" data-v-e6f2a212><div class="aside" data-v-e6f2a212><div class="aside-curtain" data-v-e6f2a212></div><div class="aside-container" data-v-e6f2a212><div class="aside-content" data-v-e6f2a212><div class="VPDocAside" data-v-e6f2a212 data-v-cb998dce><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-cb998dce data-v-f610f197><div class="content" data-v-f610f197><div class="outl
22ine-marker" data-v-f610f197></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-f610f197>On this page</div><ul class="VPDocOutlineItem root" data-v-f610f197 data-v-53c99d69><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-cb998dce></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-e6f2a212><div class="content-container" data-v-e6f2a212><!--[--><!--]--><main class="main" data-v-e6f2a212><div style="position:relative;" class="vp-doc _docs_ external-link-icon-enabled" data-v-e6f2a212><div><h1 id="intro" tabindex="-1">Intro <a class="header-anchor" href="#intro" aria-label="Permalink to "Intro"">â</a></h1><p>This is the documentation of gotify/server. Let's start with some definitions:</p><p>A client is a device or program that receives messages and can manage clients, applications and messages. A client cannot send messages.</p><p>An application is a device or program that can only send messages.</p><p>Users can only manage (view/edit/delete) the clients and applications they created, including messages sent by those applications.</p><p>A message has the following attributes: content, title, creation date, application id and priority.</p><p><img src="/img/intro.png" alt=""></p></div></div></main><footer class="VPDocFooter" data-v-e6f2a212 data-v-1bcd8184><!--[--><!--]--><div class="edit-info" data-v-1bcd8184><div class="edit-link" data-v-1bcd8184><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/gotify/website/tree/master/docs/index.md" target="_blank" rel="noreferrer" data-v-1bcd8184><!--[--><span class="vpi-square-pen edit-link-icon" data-v-1bcd8184></span> Edit this page on GitHub<!--]--></a></div><div class="last-updated" data-v-1bcd8184><p class="VPLastUpdated" data-v-1bcd8184 data-v-1bb0c8a8>Last updated: <time datetime="2026-07-07T19:21:46.000Z" data-v-1bb0c8a8></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-1bcd8184><span class="visually-hidden" id="doc-footer-aria-label" data-v-1bcd8184>Pager</span><div class="pager" data-v-1bcd8184><!----></div><div class="pager" data-v-1bcd8184><a class="VPLink link pager-link next" href="/docs/install" data-v-1bcd8184><!--[--><span class="desc" data-v-1bcd8184>Next page</span><span class="title" data-v-1bcd8184>Installation</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div> 23
23<script>window.__VP_HASH_MAP__=JSON.parse("{\"api-docs.md\":\"CUhjrwQD\",\"docs_apache.md\":\"CjNXLLMU\",\"docs_build.md\":\"D0MAKz-a\",\"docs_caddy.md\":\"Cq8Xs7VG\",\"docs_config.md\":\"i-Z1VV3h\",\"docs_dev-server-and-tests.md\":\"DDcxa1hE\",\"docs_dev-setup.md\":\"B611T5vH\",\"docs_first-login.md\":\"DGMjv9rS\",\"docs_haproxy.md\":\"OxSoeY4R\",\"docs_index.md\":\"dVMOkO6k\",\"docs_install.md\":\"D5NxdtSJ\",\"docs_migrate-to-3.md\":\"B_z_SxRf\",\"docs_more-pushmsg.md\":\"Csoi_vPq\",\"docs_msgextras.md\":\"CftU1-WY\",\"docs_nginx.md\":\"C3FfCOJp\",\"docs_oidc.md\":\"BsEMygMU\",\"docs_optimize-images.md\":\"P6D6ya2c\",\"docs_plugin-deploy.md\":\"CIOxFw0B\",\"docs_plugin-write.md\":\"rvlsRSna\",\"docs_plugin.md\":\"DEYGTB3_\",\"docs_priority.md\":\"CQxC5UJQ\",\"docs_pushmsg.md\":\"2rE6uD-e\",\"docs_session-elevation.md\":\"BG1wnJCJ\",\"docs_systemd.md\":\"FvXmPdEp\",\"docs_testing-master.md\":\"RQAj2ibI\",\"docs_traefik.md\":\"iB7ie98g\",\"index.md\":\"BjqMf_j1\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Gotify\",\"description\":\"a simple server for sending and receiving messages\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":\"/img/logo.png\",\"externalLinkIcon\":true,\"search\":{\"provider\":\"local\"},\"nav\":[{\"text\":\"Docs\",\"link\":\"/docs/\"},{\"text\":\"API-Docs\",\"link\":\"/api-docs\"}],\"sidebar\":{\"/docs/\":[{\"text\":\"Getting Started\",\"items\":[{\"text\":\"Intro\",\"link\":\"/docs/\"},{\"text\":\"Installation\",\"link\":\"/docs/install\"},{\"text\":\"Configuration\",\"link\":\"/docs/config\"},{\"text\":\"First Login\",\"link\":\"/docs/first-login\"},{\"text\":\"Push messages\",\"link\":\"/docs/pushmsg\"},{\"text\":\"Message Priority\",\"link\":\"/docs/priority\"},{\"text\":\"Message Extras\",\"link\":\"/docs/msgextras\"}]},{\"text\":\"REST-API\",\"items\":[{\"text\":\"Swagger Documentation\",\"link\":\"/api-docs\"}]},{\"text\":\"Plugins\",\"items\":[{\"text\":\"Intro to Gotify Plugins\",\"link\":\"/docs/plugin\"},{\"text\":\"Writing Plugins\",\"link\":\"/docs/plugin-write\"},{\"text\":\"Building and Deploying Plugins\",\"link\":\"/docs/plugin-deploy\"}]},{\"text\":\"Development\",\"items\":[{\"text\":\"Setup Environment\",\"link\":\"/docs/dev-setup\"},{\"text\":\"Servers and Tests\",\"link\":\"/docs/dev-server-and-tests\"},{\"text\":\"Build Gotify\",\"link\":\"/docs/build\"},{\"text\":\"Testing unreleased changes\",\"link\":\"/docs/testing-master\"}]},{\"text\":\"Guides\",\"items\":[{\"text\":\"Migrate to 3.x\",\"link\":\"/docs/migrate-to-3\"},{\"text\":\"(more) Push message examples\",\"link\":\"/docs/more-pushmsg\"},{\"text\":\"OpenID Connect\",\"link\":\"/docs/oidc\"},{\"text\":\"Optimize uploaded images\",\"link\":\"/docs/optimize-images\"},{\"text\":\"Session Elevation\",\"link\":\"/docs/session-elevation\"},{\"text\":\"Systemd configuration\",\"link\":\"/docs/systemd\"},{\"text\":\"Reverse Proxies\",\"items\":[{\"text\":\"Apache\",\"link\":\"/docs/apache\"},{\"text\":\"Caddy 2\",\"link\":\"/docs/caddy\"},{\"text\":\"HAProxy\",\"link\":\"/docs/haproxy\"},{\"text\":\"Nginx\",\"link\":\"/docs/nginx\"},{\"text\":\"Traefik\",\"link\":\"/docs/traefik\"}]}]}]},\"editLink\":{\"pattern\":\"https://github.com/gotify/website/tree/master/:path\",\"text\":\"Edit this page on GitHub\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/gotify\"}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script>
23 24 25 </body> 26</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.