Login
The exact login endpoint path is configurable via
app.login_endpoint in the configuration file. The default is /api/v1/login.Request body
User’s username
User’s password
Response
JWT token for authenticated requests.
null if authentication fails.Error message if authentication fails.
null on success.Using the token
Once you receive a token, include it in theAuthorization header of subsequent API requests:
Token expiration
There is no token logout endpoint. Tokens expire based on the configured JWT expiration time. To invalidate all tokens before expiration, the application’s secret key must be changed.
Rate limiting
The login endpoint is protected by rate limiting:- Maximum 3 login attempts per day per IP address
- Rate limit resets after 24 hours
429 Too Many Requests response.
Security considerations
- Tokens are signed with the application’s secret key
- Failed login attempts are rate-limited to prevent brute-force attacks
- Usernames and passwords are trimmed of whitespace before validation
- Passwords are hashed using scrypt with a 16-byte salt