🔒
JWT Authentication
Secure token-based authentication with access and refresh tokens, plus Google & Facebook OAuth.
🔐
Software Licensing
ECDSA-signed license activation, hardware-bound tokens, heartbeat validation, and admin management.
🎤
Text-to-Speech
AI-powered speech synthesis via Deepgram Aura for vocabulary pronunciation.
📈
Progress Tracking
Track vocabulary learning progress with sync across devices and detailed statistics.
⚙
App Settings
Cloud-synced application settings including SMTP configuration and user preferences.
🛠
API Documentation
Interactive OpenAPI 3.0 docs with request/response examples.
Open Swagger UI →
POST
/api/auth/signup
Create new account
POST
/api/auth/login
Login with email/password
POST
/api/auth/social-login
Login with Google/Facebook
POST
/api/auth/refresh
Refresh access token
GET
/api/auth/profile
Get user profile
🔒
PUT
/api/auth/profile
Update user profile
🔒
POST
/api/licenses/activate
Activate license & get signed token
POST
/api/licenses/validate
Validate activation & refresh token
POST
/api/licenses/heartbeat
Send heartbeat check
POST
/api/licenses/deactivate
Deactivate license
GET
/api/licenses/public-keys
Get public verification keys
GET
/api/admin/licenses
List licenses
🔒
POST
/api/admin/licenses
Create new license
🔒
GET
/api/admin/licenses/{id}
Get license details
🔒
PATCH
/api/admin/licenses/{id}
Update license
🔒
POST
/api/admin/licenses/{id}/revoke
Revoke license
🔒
POST
/api/admin/licenses/{id}/suspend
Suspend license
🔒
POST
/api/admin/licenses/{id}/reinstate
Reinstate license
🔒
POST
/api/admin/products
Create new product
🔒
GET
/api/progress
Get learning progress
🔒
POST
/api/progress
Save learning progress
🔒
POST
/api/tts/synthesize
Synthesize speech from text
🔒
GET
/api/settings
Get app settings
🔒
PUT
/api/settings
Update app settings
🔒
GET
/health
Health check