# Web Services > Run a public API or full-stack application that listens on an HTTP port. Source: https://nexthomelabs.com/docs/services/web-services Slug: services/web-services Section: Create Last updated: 2026-08-30 --- # Web Services Choose **Web Service** for public APIs, application backends, and full-stack servers. It starts a persistent process behind a public URL and checks an HTTP path before the release becomes ready. ## Required runtime behavior Your application must start successfully and listen on the port provided in `PORT`. It should bind to `0.0.0.0`, not only to localhost. A Node server normally follows this pattern: ```ts const port = Number(process.env.PORT); app.listen(port, "0.0.0.0"); ``` Set a health path such as `/health` to a route that returns a successful response without an authenticated session. The release waits for that route within the timeout selected in the dashboard. ## Configure and deploy Choose a supported source, select a compatible stack or enter the build and start commands, then set environment variables and the health path. Use the build log to diagnose dependency or build failures; use the deployment details to distinguish a successful build from an application startup or health-check failure. ## When to choose Frontend App instead Use [Frontend App](/docs/services/frontend-app) when the service is primarily a server-rendered user interface. Both types are public Node runtimes, but the dedicated Frontend App choice makes the frontend execution model explicit in the project workflow.