sendmux CLI when you want terminal access to the same Management, Mailbox, and Sending API surfaces exposed by the SDKs.
Sending commands accept a send-capable
smx_mbx_ key or owner-approved
agent profile. Mailbox commands accept smx_mbx_ keys or durable agent
profiles. Management commands require team-scoped
smx_root_ keys.Install
On Linux, install the CLI from the Snap Store.linux-x64, linux-arm64, darwin-x64, darwin-arm64, or win32-x64.
Check the installed command.
Register an agent inbox
An agent can create an@myagent.mx inbox without an existing Sendmux account or API key. Registration saves the durable read credential in a private local profile and never prints it.
email.send token.
The self-registered inbox is capped at 500 MiB before approval. Sending approval raises it to at least 5 GiB before the CLI can obtain a delegated sending token. Revoking sending does not itself change the current inbox storage allocation.
Configure profiles
Save API keys as local CLI profiles so you do not pass a key on every command.profiles:list --verbose and profiles:show mask saved keys.
Authentication order
Every API command resolves credentials in this order:--api-keySENDMUX_API_KEY--profileSENDMUX_PROFILE- the configured default profile
--base-url overrides the API base URL for one command. SENDMUX_BASE_URL overrides it for the current shell. A profile can also store a base URL override.
Before running the API call, the CLI checks that the key or profile matches the command surface. A management command fails early when it receives a mailbox-compatible key, and sending commands fail early when they receive a root key. Mailbox commands accept smx_mbx_ keys and durable smx_agent_ profiles. API permissions still apply, so a durable read token cannot send email before owner acceptance and approval.
Run commands
Commands use colon-separated names.--body or from a file with --body-file.
name=value flags:
--path name=valuefor path parameters.--query name=valuefor query parameters.--header name=valuefor supported headers.
Output
Without--json, API commands print formatted JSON for easy reading. Use --json when another process needs machine-readable output from the CLI.
{ "text": "..." } with --json. Binary responses return base64 data and byte_length.
Request safety flags
Use the dedicated safety flags when the generated command supports the corresponding header:
The CLI rejects these flags on commands whose API operation does not accept the matching header.
Command reference
The CLI command set is generated from the public API surfaces. Runsendmux --help to see the current topics, sendmux <topic> --help to browse a surface, and sendmux <command> --help for the flags supported by one command.
For example:
Next steps
SDK overview
Choose package-managed clients for application code.
API keys
Create scoped credentials before configuring CLI profiles.
Mailbox API
Review the API used by mailbox commands.
Management API
Review the API used by management commands.