6cc014ffa3
- Add migration 000004 for sessions table and performance indexes - Create session.sql queries for CRUD operations - Generate session repository code with sqlc - Create token auth middleware for Echo framework - Create token handler with create/delete/cleanup endpoints - Add /api/v1 router with token authentication infrastructure - Update dbHelper.go to use Up() instead of Migrate(2) - Update server.go to initialize token handler - Existing endpoints remain functional (to be deprecated) New endpoints: - POST /api/v1/token - Create new session token - DELETE /api/v1/token - Invalidate token - POST /api/v1/token/cleanup - Remove expired sessions Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
24 lines
649 B
SQL
24 lines
649 B
SQL
-- name: CreateSession :one
|
|
INSERT INTO sessions (token, ip_address, user_agent, client_type, expires_at)
|
|
VALUES ($1, $2, $3, $4, $5)
|
|
RETURNING token, ip_address, user_agent, client_type, expires_at, created_at;
|
|
|
|
-- name: GetSession :one
|
|
SELECT token, ip_address, user_agent, client_type, expires_at, created_at
|
|
FROM sessions
|
|
WHERE token = $1
|
|
LIMIT 1;
|
|
|
|
-- name: DeleteSession :exec
|
|
DELETE FROM sessions
|
|
WHERE token = $1;
|
|
|
|
-- name: DeleteExpiredSessions :exec
|
|
DELETE FROM sessions
|
|
WHERE expires_at < NOW();
|
|
|
|
-- name: ListSessions :many
|
|
SELECT token, ip_address, user_agent, client_type, expires_at, created_at
|
|
FROM sessions
|
|
ORDER BY created_at DESC;
|