When you need an agent
Run an agent whenever the thing receiving traffic cannot be reached from ngrok’s network on its own:- Behind NAT or a firewall. Home networks, guest Wi-Fi, corporate networks, and double NAT all work, because the connection is outbound on port 443.
- On hardware in the field. Devices with no fixed address, no inbound ports, and no one on site to configure a router.
- Inside a private network. A VPC, a Kubernetes cluster, or a customer’s datacenter that you reach without peering or a VPN.
- On a developer machine. A laptop that moves between networks and still needs a stable public URL.
What you get once it’s connected
- Any protocol your service speaks. HTTP, HTTPS, TCP, and TLS, so databases, SSH, and RDP work the same way web apps do.
- Many services from one agent. Run several endpoints at once and define them all in a configuration file instead of a shell command.
- Something that stays running. Install it as a native OS service for automatic startup and crash recovery, then stop, restart, or upgrade it remotely from the API or dashboard.
- No runtime dependencies. A single standalone executable on every major operating system.
Working with the agent
Agent CLI
Start endpoints, manage configuration, and interact with the ngrok API from the command line.
Configuration File
Define multiple endpoints and manage complex setups in YAML rather than command-line flags.
Authtokens
Authenticate the agent with credentials scoped to your account.
TLS Termination
Terminate TLS at the agent so traffic stays encrypted end to end.
SSH Reverse Tunnel
Connect using SSH public key authentication instead of installing the agent.
Custom Connect URLs
Point agents at your own branded hostname for white-label deployments.
Agent CLI API
Manage endpoints, domains, and other resources through the ngrok API without leaving the agent.
What people build with it
Agent-assisted gateway
Bridge localhost development with the public internet for AI coding tools, webhook testing, and real authentication flows.
Secure developer environments
Give each developer their own public URL to route traffic and webhooks into their local development environment.
Webhook gateway
Centralize webhook validation and routing from third-party providers to secure your integrations.
API gateway
Create an API gateway with internal Agent Endpoints and centralized traffic management policies.
What’s next?
- Install the agent and connect your first service.
- Configure multiple endpoints and run the agent as a service.