# Web apps

A web app is a Service that answers HTTP requests. Tokay keeps it running at an HTTPS URL and protects each update with health checks, whether the code serves a website, dashboard, API, or static files.

## Every web app gets a stable address

A Service receives a URL such as `my-blog-r4k7x2m9.tokay.app`. The readable name comes from the Service, and the short ID identifies that Service permanently.

HTTPS certificates are issued and renewed automatically. Renaming the Service changes the readable part of the URL, and Tokay redirects earlier names to the new address. Because each rename creates another address, a web app can be renamed up to three times.

Use the URL shown on the Service page rather than constructing one from a name. See [Custom domains](custom-domains.md) when the app should use a domain you control.

## Updates take traffic only after they work

A new version starts beside the current version and receives no traffic until it passes health checks. When the checks succeed, Tokay moves traffic to it. When they fail, the current version keeps serving.

This is the normal deployment path rather than a special release mode. See [Deploys, updates, and rollback](deploys-and-rollback.md) for the pipeline and version history.

## Status explains whether the app is serving

- **Live** means the Service is serving traffic.
- **Starting** means a version is booting after a deploy or resume.
- **Stopped** means the Service was paused or its process exited.
- **Degraded** means the process is running but health checks are failing.

A red status records an observed incident. A gray status is an intentional stop. The Events tab keeps the timeline of these changes.

## Access can be public or protected

New web apps are public. Change the Project audience from the **Access** tab when the app is for coworkers, clients, or invited visitors. Tokay provides magic link sign in at the platform boundary, so the app does not need its own login code. See [Who can open your app](who-can-open-your-app.md).

## Persist files the app owns

Files written outside persistent storage reset when the Service deploys or restarts. Put uploads and application data in `/tokay/data` or mark the existing directory as persistent. See [Files and persistent storage](persistent-storage.md).

Live process output appears on the Logs tab. See [Logs and debugging](logs-and-debugging.md) for incident evidence and debugging tools.
