Register an email-verified company owner
Central host only. Single-use acknowledged email token, matching email and confirmed password. Company name/STIR optional; creates an isolated onboarding workspace and ADMIN membership atomically. Existing identities cannot be overwritten. Backend returns bearer tokens; browser BFF stores HttpOnly cookies.
application/json- body
company?confirmPassword*stringpassword15 <= length <= 72email*stringemail0 <= length <= 320password*stringpassword15 <= length <= 72token*string[A-Za-z0-9_-]{43}1 <= lengthIdentity, workspace and session created
*/*- response
accessToken?stringShort-lived bearer JWT
refreshToken?stringOne-time opaque refresh token
curl -X POST 'https://api.monetaryai.uz/api/v1/auth/register' \ -H 'Content-Type: application/json' \ -d '{ "confirmPassword": "pa$$word_qwerty", "email": "user@example.com", "password": "pa$$word_qwerty", "token": "string"}'{ "accessToken": "string", "refreshToken": "string"}Rotate an opaque refresh token POST
Consumes the submitted token and returns a new access/refresh pair. Reuse revokes the whole token family.
Get UZS, USD, EUR and RUB rates GET
source defaults to CBU. CBU rate is UZS per one currency unit. KAPITALBANK returns separate buyRate (bank buys) and sellRate (bank sells), with rate null to avoid silently choosing a side. UZS always equals 1. updatedAt is the last successful fetch, effectiveDate/sourceUpdatedAt are publisher dates (bank timezone Asia/Tashkent). Status UNAVAILABLE means no successful snapshot; STALE retains last good values after a failed refresh or when a refresh is overdue. Read calls do not contact upstream sources.