Appearance
Command-Line Interface (CLI)
The dynm.link CLI allows you to manage your links, subdomains, and upload files directly from your terminal.
Installation
bash
npm install -g @dynm.link/cliOr run it without installing:
bash
npx @dynm.link/cli <args>Authentication
Authentication state is stored locally in ~/.config/dynm.link/config.json with 0600 permissions.
bash
dynm.link login # opens browser to authorize and retrieve key
dynm.link login --key dynm_... # headless: pass a key directly
dynm.link whoami # check authenticated user, folders, and API base URL
dynm.link logout # clear local authentication stateEnvironment Variables
You can override or configure the CLI behavior using the following environment variables:
DYNM_API_KEY— Skip local config file resolution and use this API key.DYNM_API_URL— Target API base URL (defaults tohttps://api.dynm.link).DYNM_SPA_URL— Target dashboard URL for the login callback flow (defaults tohttps://www.dynm.link).
Link Operations
List, Get, Edit, Remove
bash
# List links (filter by type or domain)
dynm.link link list [--type redirect|text|bio|file] [--domain <host>] [--json]
# Get details for a specific link
dynm.link link get <slug> [--domain <host>] [--json]
# Edit an existing link
dynm.link link edit <slug> [--title "New Title"] [--web "https://newurl.com"] [--expires 30d|never]
# Remove a link
dynm.link link remove <slug> [--yes]Creating Links
You can create links of various types using the subcommands below. Every create command accepts common flags: --slug (random if omitted), --title, --description, --expires, --domain, and --json.
bash
# Create a redirect link
dynm.link link create redirect [slug] --web <url> [--ios <url>] [--android <url>]
# Create a text snippet link (--markdown renders the body as a web page)
dynm.link link create text [slug] --body "snippet text" [--markdown]
# Create a link-in-bio page
dynm.link link create bio [slug] --name "Your Name" --link "Site=https://example.com" --link "GitHub=https://github.com/..."
# Upload and host a file link
dynm.link link create file [slug] --file ./brand-kit.zipCustom Domains and Folder Scope
The --domain flag is optional if your account has only one subdomain (username.dynm.link), but is required once you have custom domains configured to resolve which folder scope to target.