# Developing Zoom Marketplace Apps w/ ngrok

[Zoom](https://yomu.fyi/company/zoom) · Tim Slagle · Feb 14, 2020

**Type:** Problem & solution

## Summary

Developers frequently use ngrok to establish fast, introspectable tunnels to localhost when building Zoom Marketplace applications instead of configuring complex reverse proxies like NGINX or Apache. However, using basic ngrok tunnels in production exposes systems to short URL expiration windows, single points of failure, and scalability bottlenecks. To maintain application availability, developers can purchase an ngrok license to secure a service-level agreement and support. Additionally, teams should reserve dedicated subdomains rather than using auto-generated endpoints, run ngrok as a monitored background service on a cloud provider or data center, and place a load balancer in front of the tunnel to handle heavy traffic.

## Context

Developers building Zoom Marketplace applications use NGROK for fast local prototyping, but unmanaged NGROK usage presents operational risks, including expiring URLs without a license, single points of failure, and difficulty scaling under traffic.

## Approach / What changed

Mitigate NGROK availability risks by purchasing an NGROK license for an SLA, reserving custom subdomains instead of auto-generated URLs, running NGROK as a monitored background service, and adding a load balancer in front of NGROK when scaling for thousands of requests.

## Takeaways

- Running unlicensed NGROK tunnels causes URLs to expire after short periods and risks collisions if auto-generated endpoints are claimed by other accounts.
- Operating NGROK as a background service on cloud infrastructure or local data centers enables automated monitoring and restarts during tunnel failures.
- NGROK is not designed to scale independently like a dedicated load balancer and requires a load balancer in front of it to handle thousands of requests.

**Tags:** [Deployment](https://yomu.fyi/topic/deployment), [Developer Experience](https://yomu.fyi/topic/developer-experience), [Reliability](https://yomu.fyi/topic/reliability), [Scalability](https://yomu.fyi/topic/scalability)

[Read original post](https://medium.com/zoom-developer-blog/developing-zoom-marketplace-apps-w-ngrok-3a53c895bb89)
