CLI
Call the Arcalotl API from a terminal, a script or an AI agent with the official arcalotl command-line tool.
The arcalotl npm package is the
official command-line tool for the Arcalotl public API. Every command is an API operation, read at run time from
the published OpenAPI description,
so a new endpoint is a new command without upgrading. It has no dependencies
and needs Node 20 or later.
Install
Run it without installing, through npx, which fetches the latest version:
npx arcalotl --versionOr install it globally to get an arcalotl command:
npm install --global arcalotl
arcalotl --versionUpdate a global install with npm install --global arcalotl@latest. The
package has no dependencies and is MIT licensed; its source and README are on
npm.
Set up
Create an API key in the dashboard under Developers -> API Keys, then:
export ARCALOTL_API_KEY=arclt_live_...
npx arcalotl operationsThe examples below use npx arcalotl; with a global install, drop the
npx.
Commands
Commands are the API Reference operations in kebab
case: listSubscriptions is arcalotl list-subscriptions. Flags are the
operation's path, query and header parameters, and --data takes the JSON
body inline, as @file.json, or - for stdin.
# Every command, then the flags for one
npx arcalotl operations
npx arcalotl help switch-subscription
# Read
npx arcalotl list-subscriptions --status active --limit 10
npx arcalotl check-entitlement --platform discord --platform-uid 123456789
# Write, with an idempotency key so a retry never acts twice
npx arcalotl create-checkout-link --idempotency-key order-42 \
--data '{"tier_id":"tier_...","member_id":"mem_..."}'Output and exit codes
A successful response prints as JSON on stdout, ready for jq. An API error
prints its problem+json body on stderr and exits 1. A
usage error (unknown command or flag, missing path parameter or body, no API
key) exits 2 without calling the API.
| Variable | Default |
|---|---|
ARCALOTL_API_KEY | Required for API calls |
ARCALOTL_API_URL | https://api.arcalotl.com |
ARCALOTL_OPENAPI_URL | https://www.arcalotl.com/openapi.json |
The key's scopes apply exactly as they do over REST, and an agent that prefers tools to a shell can use the MCP server instead.