This is a Java Spring Boot API for creating card-based dictionaries (decks) to help users learn languages efficiently. The API supports user authentication, deck management, AI-generated cards.
- User authentication and token management
- CRUD operations for decks and cards
- Group management
- AI-generated cards for enhanced learning
POST /auth/users- Register a new userPOST /auth/token- Authenticate user and get a tokenGET /auth/token- Refresh authentication token
POST /decks- Create a new deckGET /decks- Retrieve all decksGET /decks/{deckId}- Retrieve a specific deckPUT /decks/{deckId}- Update deck informationDELETE /decks/{deckId}- Delete a deck
POST /decks/{deckId}/cards- Add a card to a deckGET /decks/{deckId}/cards- Get all cards in a deckGET /decks/{deckId}/cards/{cardId}- Get a specific cardPUT /decks/{deckId}/cards/{cardId}- Update a cardDELETE /decks/{deckId}/cards/{cardId}- Remove a card from a deck
POST /groups- Create a new tagGET /groups- Retrieve all groupsGET /groups/{groupId}- Retrieve tag with IdPUT /groups/{groupId}- Update tag nameDELETE /groups/{groupId}- Delete tag with Id
GET /groups/{groupId}/decks- Retrieve decks associated with a tagPOST /groups/{groupId}/decks- Create a new deck in tagGET /groups/{groupId}/decks/{deckId}- Retrieve a specific deck in tagPUT /groups/{groupId}/decks/{deckId}- Update deck information in tagDELETE /groups/{groupId}/decks/{deckId}- Delete a deck in tag
PUT /ai/decks/cards- Generate cards using AI
Most endpoints require authentication via Bearer Token.