Treat the key like a production secret.

Send it as a bearer token from server-side code. Never paste a reusable key into email or a support ticket.

Create, test, and rotate

Sign in

Open Console with your registered login method. The key workflow is the same after Email, GitHub, Discord, or Passkey sign-in.

Create key

Open API Keys, choose Create key, name it for one environment, and copy it into a password manager or secret store.

Test discovery

Call GET /v1/models before sending a completion. A 200 proves authentication and returns IDs visible to that account.

Revoke and rotate

If a key appears in a screenshot, log, repository, or message, revoke it first. Create the replacement, update the workload, verify it, then remove the old secret.

Bearer header

HTTP header

Authorization: Bearer $AIWAVE_API_KEY

Test the key without spending tokens

Model discovery

curl https://aiwave.live/v1/models \
  -H "Authorization: Bearer $AIWAVE_API_KEY"

Classify authentication failures

ResponseInterpretationAction
401Missing, malformed, revoked, or invalid tokenCorrect the key; do not retry unchanged
403 + insufficient_user_quotaObserved balance branchCheck balance; do not label it a permission error
Other 403Valid key lacks route or endpoint permissionCheck model access; do not assume a balance problem
Keys stay in Console and your secret store.

AIWave onboarding email links back to Console; it does not include reusable API keys.