Acts-as-user keys
Every key is bound to one user. Effective permissions = that user's account role ∩ the key's granted scopes — the same model as GitHub PATs and Stripe restricted keys.
Long-lived API keys and scope-bound endpoints for cron jobs, Workers, and external integrations.
Create a key in the web UI (Settings → API Keys) and pick the scopes you need (read / write). The plaintext gly_live_… is shown exactly once.
Call any endpoint with it as a Bearer token:
# Search the public gallery (needs `read`)
curl "https://api.glymonir.com/api/gallery/search?q=cat&size=5" \
-H "Authorization: Bearer gly_live_..."To upload, use the official CLI — it runs the full local preprocess + two-stage R2 flow for you:
export GLYMONIR_API_KEY=gly_live_...
npx glymonir-cli upload ./*.jpg --library "Travel 2026"See the API Reference for every endpoint, scope, and error code.