Custom Domains

Understanding URL patterns for tunnels and team services on VendTunnel.

URL Structure

VendTunnel uses Cloudflare for public DNS. All public URLs follow consistent patterns based on the service type.

Solo Tunnels

When you create a solo tunnel (not part of a team), your URL follows this pattern:

{name}.{server}.vendvpn.com
Component Description Example
{name} Your chosen subdomain myapp, demo, api
{server} Server identifier tunnel1, tunnel2, tunnel47

Examples

https://myapp.tunnel1.vendvpn.com
https://demo.tunnel3.vendvpn.com
https://api.tunnel12.vendvpn.com

Choosing Your Subdomain

When creating a tunnel, you pick the {name} part. Requirements:

  • 3-30 characters
  • Lowercase letters, numbers, hyphens
  • Must start with a letter
  • Unique within that server
Name availability

Names are checked for uniqueness on your assigned server. "myapp" might be taken on tunnel1 but available on tunnel2.

Team Services

Team service URLs include both the service name and team name:

{service}--{team}.{server}.vendvpn.com
Component Description Example
{service} Service name api, frontend, database
{team} Team slug acme-dev, startup-io
{server} Server identifier tunnel1, tunnel5

Examples

https://api--acme-dev.tunnel1.vendvpn.com
https://frontend--startup-io.tunnel3.vendvpn.com
https://staging--my-team.tunnel7.vendvpn.com

The double-dash (--) separates service from team name.

Second Port Access

Tunnels include two ports. Access the second port by appending :8443:

URL Maps To
https://myapp.tunnel1.vendvpn.com Port 1 (e.g., 3000)
https://myapp.tunnel1.vendvpn.com:8443 Port 2 (e.g., 8080)

Internal DNS (Teams)

Team services also have internal DNS names, separate from public URLs:

Access Type URL Format Who Can Access
Public api--acme.tunnel1.vendvpn.com Anyone on internet
Internal api.internal Team members only

See Internal DNS for details.

HTTPS

All public URLs are served over HTTPS via Cloudflare's edge certificates:

  • Automatic SSL/TLS
  • No configuration needed
  • HTTP automatically redirects to HTTPS
Free HTTPS

Cloudflare provides SSL certificates automatically. Your tunnel is secure from day one.

URL Persistence

Your URL persists for the duration of your session:

  • 4 hours: URL valid for 4 hours
  • 1 day: URL valid for 24 hours
  • 7 days: URL valid for 1 week
  • 30 days: URL valid for 1 month

After expiration, the subdomain becomes available for others.

Name Conflicts

Within a Server

Each name must be unique within a server. If "myapp" is taken on tunnel1, you'll be assigned a different server or asked to choose another name.

Across Servers

The same name can exist on different servers:

myapp.tunnel1.vendvpn.com  ← User A
myapp.tunnel2.vendvpn.com  ← User B (different server)

Best Practices

Choose Descriptive Names

Good:
- project-demo
- api-staging  
- mycompany-dev

Avoid:
- test1
- asdf
- demo (too generic, likely taken)

For Teams

Good team slugs:
- acme-development
- startup-staging
- myteam-2024

Good service names:
- postgres-main
- redis-cache
- user-api

Summary

Type Pattern Example
Solo Tunnel {name}.{server}.vendvpn.com myapp.tunnel1.vendvpn.com
Team Service (public) {service}--{team}.{server}.vendvpn.com api--acme.tunnel1.vendvpn.com
Team Service (internal) {service}.internal api.internal