nrepo key
nrepo key list [options]nrepo key create <label> [options]nrepo key revoke <key-id> [options]API keys authenticate the CLI, the iOS app, and any direct call to the REST API. They look like
nrp_ followed by 64 hexadecimal characters, and only the hash is stored server-side.
All three subcommands take --json and --human.
nrepo key list2 API keys
ci-pipeline ak_9f2c1b7e Created: Jan 15, 2026 Last used: Jul 23, 2026
CLI (auto-generated) ak_44ad0c31 Created: Feb 20, 2026 Last used: neverThe second value on each line is the key ID — what revoke takes. The key itself is never
shown again after creation. A key that has never been used prints never rather than a date.
With no keys:
No API keys found. Create one with `nrepo key create <label>`.--json returns { "api_keys": [ { "id", "label", "created_at", "last_used_at" } ] }.
Create
Section titled “Create”nrepo key create "github-actions"✓ API key created
Label: github-actions Key: nrp_4f8a2b...
Save this key now — it won't be shown again.Labels are capped at 100 characters. For scripting, take the key straight from --json:
KEY=$(nrepo key create "ci-$(date +%Y%m)" --json | jq -r '.key')Revoke
Section titled “Revoke”nrepo key revoke ak_9f2c1b7e# ✓ API key ak_9f2c1b7e revoked.Takes the key ID from nrepo key list, not the label and not the key itself. Revocation is
immediate and permanent; a key ID that does not exist returns
API error (404): API key not found.