GET-STARTED
Authentication
How API keys, OAuth 2.0, and permission scopes work.
To mint an API key head to Dashboard β your app β API Keys.
Bearer token
Every endpoint that requires authentication accepts your API key via the Authorization header: Authorization: Bearer uf_live_β¦. The plaintext key is shown exactly once at creation β save it immediately.
curl
curl https://cloud.uflow.uz/v1/me \
-H "Authorization: Bearer uf_live_your_key_here"Scopes
self:*/user:*/portfolio:*/session:readβ UFlow ID: account, OAuth profile, portfoliotools:invokeor granulartools:qr,tools:pdf,tools:imageβ¦ β UFlow Tools (QR, PDF, image, JSON, search, icons, widgets)eatly:read/eatly:write/eatly:foods/eatly:meals/eatly:aiβ EatLynotes:read/notes:write/notes:wallβ notes.uflow.uzchat:read/chat:sendβ chat.uflow.uzcontact:writeβ send messages to support
Security
Keys are never stored in plaintext β only a SHA-256 hash is persisted. Never embed a key in client-side code; use it from your server. If a key leaks, revoke it immediately in the Dashboard.
Errors
401β missing or invalid key403β key lacks a required scope429β rate limit exceeded