Complete documentation for all ChessMaster APIs. All endpoints return JSON responses.
https://chess-openings-indol.vercel.appMost endpoints require authentication using NextAuth.js sessions. Include valid session credentials in your requests.
Unauthenticated requests to protected endpoints will receive a 401 Unauthorized response.
User registration, login, and session management
/api/auth/*Manage user's favorite chess openings
/api/user/favoritesTrack and retrieve user visits to openings
/api/user/visitsSave and retrieve chess practice sessions
/api/user/practice-sessionsSearch and browse chess openings database
/api/openingsReal-time opening identification from moves
/api/openings/match// Search for chess openings
const response = await fetch('/api/openings?search=sicilian&limit=10');
const data = await response.json();
// Add to favorites (authenticated)
const favoriteResponse = await fetch('/api/user/favorites', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
openingId: 'opening-123',
action: 'add'
})
});Check individual API documentation for detailed request/response formats and authentication requirements.