Authentication
There are no API keys — requests are authorized by a signature from your Solana wallet.
ArxCode has no API keys to issue, rotate, or leak. Every request is authorized by a signature from your wallet, the same wallet that holds your $ARX and decrypts your outputs.
How it works
- Request a challenge. The server returns a short-lived nonce.
- Sign it. Your wallet signs the nonce locally — the private key never leaves your device.
- Exchange for a session token. The signed nonce is exchanged for a bearer token used on subsequent requests.
arxcode login --wallet
# signs a challenge and stores a session token locally
Using the token
curl https://api.arxcode.xyz/v1/balance \
-H "Authorization: Bearer $ARX_SESSION_TOKEN"
Unattended environments
For CI or servers, supply a signing key through an environment variable. The CLI signs challenges automatically.
export ARX_WALLET_KEY="..."
arxcode whoami
Protect the signing key
A wallet key authorizes spend and decrypts build outputs. Store it in a secrets manager, scope it to the minimum balance you need, and never commit it.