Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/outray-tunnel/outray/llms.txt

Use this file to discover all available pages before exploring further.

By default, OutRay assigns a random subdomain each time you open a tunnel (e.g., a3f2k.tunnel.outray.app). This is fine for quick testing, but many workflows need a consistent URL — webhook endpoints, OAuth redirect URIs, and shared previews all break when the URL changes. Reserved subdomains solve this by letting you request a specific name. Once your organization has used a subdomain, it is locked to that organization and cannot be claimed by anyone else.

Reserve a subdomain from the dashboard

Open the Subdomains section in the dashboard. Type the subdomain name you want and click Reserve. If the name is available it is immediately linked to your organization.
Subdomains are unique across all OutRay organizations. If another organization has already used a subdomain, it will not be available to you.

Use a reserved subdomain in the CLI

Pass the --subdomain flag when starting a tunnel:
outray 3000 --subdomain my-app
Your tunnel is available at:
https://my-app.tunnel.outray.app
If the subdomain is already taken by another organization, OutRay will return an error and fall back to a random subdomain.

Use a reserved subdomain in config.toml

Add the subdomain key to a tunnel block in outray/config.toml:
[tunnel.api]
protocol = "http"
local_port = 8080
subdomain = "my-app"
Start all configured tunnels:
outray start

Subdomain uniqueness

Subdomain ownership is at the organization level, not the user level. Any member of the organization can start a tunnel using a subdomain the organization has reserved. If two members try to use the same subdomain simultaneously, the second connection will be rejected.
If you need isolation between team members, use different subdomain names for each member’s environment (e.g., alice-api, bob-api).

Build docs developers (and LLMs) love