CLI docs / view as markdown

inrok CLI quickstart

Put a public HTTPS URL on any local port in under a minute. inrok is a managed tunneling service: the inrok CLI runs on your machine, and inrok's hosted edge gives your tunnel a stable public URL like https://demo.share.inrok.in.

1. Install

macOS / Linux:

curl -fsSL https://inrok.in/install.sh | sh

Windows (PowerShell):

irm https://inrok.in/install.ps1 | iex

The installer downloads the right binary for your platform. Verify with inrok version.

2. Log in (once per machine)

  1. Create an account at app.inrok.in (free — no card required).
  2. Generate an API key at app.inrok.in/settingsCLI access.
  3. Run:
inrok login

Paste the key (inrok_…) when prompted. Non-interactive alternative:

inrok login --key "$INROK_API_KEY"

Credentials are saved to ~/.inrok/config.json (mode 0600). One key per machine is the recommended setup — keys are listed and revocable in the dashboard.

3. Expose a port

inrok http 8080

Output:

Forwarding  https://http-8080-x7k2.share.inrok.in
         →  http://localhost:8080
TLS 1.3 · persistent name · Ctrl-C to stop

The command runs in the foreground and streams request logs. Ctrl-C stops serving but keeps the name reserved — the next inrok http 8080 re-binds the same URL.

Stable names

Pass --name to choose the URL label:

inrok http 3000 --name demo
# → https://demo.share.inrok.in

Without --name, a default like http-8080-x7k2 is derived from the port plus a per-account suffix. Names are reserved to your account until you release them.

What you can expose

Today inrok exposes local HTTP services — one positional argument (the port, or host:port) plus an optional --name:

inrok http 8080          # HTTP reverse proxy to a local port
inrok http 192.168.1.5:80 # …or a host:port on your network

Raw TCP and UDP endpoints are coming soon. Static sites, Caddyfile, and file-drive modes aren't supported.

Manage tunnels

inrok status        # list tunnels: NAME, URL, TARGET, STATE (aliases: list, ls)
inrok stop demo     # release a tunnel by name (frees the URL and the slot)
inrok logout        # remove this machine's credentials and device identity
inrok update        # self-update to the latest release (--check to only look)

inrok stop deletes the reservation — the name becomes available to others. Just pressing Ctrl-C in a running inrok http keeps it reserved.

Plan limits

The free beta plan includes 100 GiB of bandwidth per month and 3 tunnels. Current usage is on your dashboard; tunnels pause when the monthly cap is reached and resume when the cycle resets.

Next steps