Skip to main content

Authentication

Every API request requires a Bearer token. API keys are HMAC-signed and prefixed with nram_.

Using your API key

from novyx import Novyx

# Pass directly
nx = Novyx(api_key="nram_your_key")

# Or use environment variable (recommended)
# export NOVYX_API_KEY=nram_your_key
nx = Novyx() # reads from NOVYX_API_KEY

Key management

Create a new key

key = nx.create_api_key(name="production-agent")
print(key["api_key"]) # nram_... — save this, it's shown only once

Rotate a key

new_key = nx.rotate_api_key(key_id="key-uuid")
# Old key is immediately invalidated

List keys

keys = nx.list_api_keys()
for k in keys:
print(f"{k['name']} — created {k['created_at']}")

Security model

FeatureDetail
Key formatnram_ prefix + HMAC-signed payload
StorageKeys are hashed server-side — we never store plaintext
RotationInstant invalidation of old key
AuditEvery key usage is logged in the audit trail
Rate limitingPer-key, per-plan (1,000–10,000 req/min)

Base URL

All API requests go to:

https://novyx-ram-api.fly.dev
MCP local mode

The MCP server can run without an API key using local SQLite storage. See MCP Local Mode.