AMULEAPI(1)

πŸ“¦
version 3.1.0 Β· 2 versions
, in fedora 44

✨ NAME ✨

Okay bestie, meet amuleapi πŸ’–, the aMule REST API + Server-Sent Events daemon. It's giving remote control πŸŽ€


✨ SYNOPSIS ✨

amuleapi [-h <host>] [-p <port>] [--bind <address>] [--http-port <num>]
[--config-dir <path>] [--log-file <path>] [--no-log-file] [--foreground]

amuleapi [--set-admin-pass <plain>]

amuleapi [--set-guest-pass <plain>]

amuleapi [--version]

amuleapi [--help]

✨ DESCRIPTION ✨

So amuleapi serves a JSON REST API and a live event stream for a running amuled(1), which means other programs can boss aMule around over HTTP πŸ’…. It connects to amuled the same way amulecmd(1) does, and it listens on its own port, so it can run at the same time as amuleweb(1) πŸ¦‹.

The wire contract for the REST API is documented at docs/api/REFERENCE.md, and the SSE event catalog lives at docs/api/EVENTS.md. For first-run setup notes, check out docs/QUICKSTART-AMULEAPI.md πŸ“šβœ¨.


✨ OPTIONS ✨

  • -h <host>, --host=<host> β€” Pick the EC host you want to connect to (default: 127.0.0.1) 🌸
  • -p <port>, --port=<port> β€” The EC port on the amuled instance (default: 4712) πŸ”Œ
  • --bind=<address> β€” The HTTP bind address (default: 127.0.0.1). This overrides amuleapi.conf [Server]/BindAddress 🫢
  • --http-port=<num> β€” The HTTP listen port (default: 4713). This overrides amuleapi.conf [Server]/Port πŸŽ€
  • --config-dir=<path> β€” The amuleapi config dir. It defaults to the same per-platform aMule data directory that amuled uses: ~/.aMule/ on Linux, ~/Library/Application Support/aMule/ on macOS, and %APPDATA%\aMule\ on Windows. If the dir doesn't exist, amuleapi creates it with mode 0700 πŸ”’
  • --disable-ec-encryption β€” Don't encrypt the link to amuled(1). Encryption is on by default whenever the remote aMule supports it. Turning it off lets anyone watching the connection read and alter everything after the login. This is the same as Encryption=0 in amuleapi.conf πŸ’€
  • --set-admin-pass=<plain> β€” Set the admin password to <plain>. It gets stored salted and stretched in amuleapi-passwords (mode 0600), and then amuleapi exits. It doesn't start the HTTP server or connect to amuled. A stored password can't be read back, only replaced. πŸ”
  • --set-guest-pass=<plain> β€” Set the guest password to <plain>, stored the same way, then exit. An empty <plain> clears the guest password, which is how you turn guest access off πŸ™ˆ
  • --foreground β€” Stay in the foreground (this is the default). aMule doesn't ship init-system units. If you need a system service wrapper, write a downstream unit that wraps the foreground command 🧚
  • --log-file=<path> β€” Write a copy of the console output to <path>. It's on by default at <config-dir>/amuleapi.log, so there's always a log to attach to a bug report. Use this option if you want it somewhere else. The log is capped at 10 MiB and rotated to <path>.1, so it can't grow without bound. Each line starts with the local date and time, on the console as well as in the file πŸ“
  • --no-log-file β€” Turn off the log file entirely and print to the console only. Lines are still timestamped ⏰
  • --version β€” Print version info and exit 🏷️
  • --help β€” Print a short usage description πŸ’œ

✨ FILES ✨

  • ~/.aMule/amuleapi.conf β€” The settings file: HTTP address and port, the connection to amuled, login rate limits, and event-stream sizing. The QUICKSTART document shipped with the source has the full reference πŸ“–
  • ~/.aMule/amuleapi-jwt-secret β€” The key used to sign login tokens. It gets created on first launch. Deleting it signs out everyone. πŸšͺ
  • ~/.aMule/amuleapi-passwords β€” The admin and guest passwords, stored so they can't be read back, only replaced. This is the only place they're kept. You can set them with --set-admin-pass / --set-guest-pass, from the REST API, or from the Remote Controls preferences in amule(1). A change applies at the next login and signs out anyone already logged in 🀫
  • ~/.aMule/amuleapi-ec-token β€” A short-lived login token, written by amule(1) / amuled(1) when they start amuleapi themselves. It's created fresh each time, read once, and deleted straight away, so an auto-started amuleapi needs no EC password of its own. If you start it by hand, amuleapi finds no token and uses [EC]/Password from amuleapi.conf instead. There is no --password option: a password given on the command line is visible to every local user through ps(1) 🚨

✨ REPORTING BUGS ✨

Spill the tea on our forum at https://github.com/amule-org/amule/discussions, or file it in our bugtracker at https://github.com/amule-org/amule/issues πŸ›πŸ’….


aMule and all of its related utilities are distributed under the GNU General Public License βš–οΈπŸŒˆ.


✨ SEE ALSO ✨

amule(1), amuled(1), amulecmd(1), amuleweb(1) πŸ‘―β€β™€οΈ


✨ AUTHOR ✨

This manpage was written for the aMule project 🫢.


That's the whole tea πŸ“βœ¨. aMule REST API daemon v3.1.0, September 2026, is serving looks and staying iconic πŸ‘‘πŸ’–. Stay blessed, bestie πŸ¦‹πŸ’…

πŸ“¦ where this page comes from
  • fedora 44: amule-nogui 3.1.0-1.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later WITH Bison-exception-2.2 AND Apache-2.0 AND MIT
  • πŸ’– girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms