Authenticate user and create session
POST /auth/login
Authenticates a user with username and password, creates a new session, and returns JWT access and refresh tokens.
This is a command that returns 202 Accepted. The session is created asynchronously, but tokens are returned synchronously for immediate use.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
Username for authentication
Example
aliceUser password
Example
securepassword123Examples
{ "username": "alice", "password": "securepassword123"}Responses
Section titled “ Responses ”Login successful, session created
object
JWT access token (valid for 1 hour)
Example
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...JWT refresh token (valid for 90 days)
Example
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Access token expiration time in seconds
Example
3600Token type (always “Bearer”)
Example
BearerSession identifier
Example
123e4567-e89b-12d3-a456-426614174000Examples
{ "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "expires_in": 3600, "token_type": "Bearer", "session_id": "123e4567-e89b-12d3-a456-426614174000"}Headers
Section titled “Headers ”Example
/api/v1/auth/session/{session_id}URL to the created session resource
Bad request (invalid parameters)
object
Error code
Example
unauthorizedHuman-readable error message
Example
Invalid username or passwordAdditional error details (field-level validation errors, etc.)
object
Examples
{ "error": "validation_error", "message": "Invalid request parameters", "details": { "username": "Username is required", "password": "Password must be at least 8 characters" }}Invalid credentials
object
Error code
Example
unauthorizedHuman-readable error message
Example
Invalid username or passwordAdditional error details (field-level validation errors, etc.)
object
Examples
{ "error": "unauthorized", "message": "Invalid username or password"}Too many login attempts
object
Error code
Example
unauthorizedHuman-readable error message
Example
Invalid username or passwordAdditional error details (field-level validation errors, etc.)
object
Examples
{ "error": "rate_limit_exceeded", "message": "Too many login attempts. Please try again later."}Internal server error
object
Error code
Example
unauthorizedHuman-readable error message
Example
Invalid username or passwordAdditional error details (field-level validation errors, etc.)
object
Examples
{ "error": "internal_error", "message": "An internal error occurred"}