Read-only AppSumo buyer-account CLI for auditing purchased products, redemption status, and local product search without exposing session cookies or license codes.
This is an unofficial community tool. It is not affiliated with, endorsed by, or supported by AppSumo.
This repository is intentionally read-only. The CLI does not refund, transfer, activate, change plans, check out, or mutate AppSumo account data.
The buyer-account endpoints AppSumo uses are session-cookie gated. The CLI accepts an AppSumo cookie header through APPSUMO_COOKIE or a local ignored cookie file. It never prints the cookie value, and it only sends cookies to https://appsumo.com or loopback test hosts.
appsumo auth statusappsumo products listappsumo products search <query>appsumo products export --format csv|jsonappsumo syncappsumo search <query>appsumo sql <select-query>
CSV and JSON exports always redact license/code fields.
Requires Go 1.26.3 or newer.
Install from source:
go install github.com/vecyang1/appsumo-cli/cmd/appsumo@latestOr build locally:
go build -o ./appsumo ./cmd/appsumoAPPSUMO_COOKIE="$(cat /path/to/ignored-cookie-file)" ./appsumo auth status --json
APPSUMO_COOKIE="$(cat /path/to/ignored-cookie-file)" ./appsumo products list --json
APPSUMO_COOKIE="$(cat /path/to/ignored-cookie-file)" ./appsumo products export --format csv
APPSUMO_COOKIE="$(cat /path/to/ignored-cookie-file)" ./appsumo sync
./appsumo search letter --json
./appsumo sql "select count(*) as count from products" --jsonThe read-only AppSumo account contract lives in docs/openapi/appsumo-account.openapi.yaml.
The canonical generator command is clean-output-first:
rm -rf generated/appsumo-account-pp-cli
cli-printing-press generate \
--spec docs/openapi/appsumo-account.openapi.yaml \
--name appsumo-account \
--output generated/appsumo-account-pp-cli \
--spec-source browser-sniffed \
--transport browser-httpDo not force-add generated/. The generated baseline is a local wheel-check artifact and may expose raw private API output if used directly; the hand-authored root CLI is the safe user surface.
The local binary verified during setup:
cli-printing-press 4.12.0
The generated baseline passed cli-printing-press shipcheck --no-live-check against docs/openapi/appsumo-account.openapi.yaml.
Local checks:
go mod verify
go test ./...
go vet ./...
govulncheck ./...
go build -o ./appsumo ./cmd/appsumoLive smoke, run from the logged-in Chrome session without printing cookies, verifies:
- browser
/api/v2/account/products/?page=1returned HTTP 200 - browser API product count matched CLI product count
- CLI synced product count matched SQLite count
- CSV export contained
[REDACTED]
Keep the public CLI read-only and privacy-preserving. Do not add account-mutating commands, raw license-code output, unredacted exports, HAR files, or real buyer-account metadata to tracked files.
Run these before sending changes:
go mod verify
go test ./...
go vet ./...
govulncheck ./...