Create a simple todo Rest API with features to add, complete, and delete tasks, protected by user authentication.
Create a simple todo Rest API with features to add, complete, and delete tasks, protected by user authentication.
In this project, you’ll build a simple but powerful TodoList API with user authentication. The API will allow registered users to manage tasks securely while ensuring that certain actions, like creating, updating, and deleting tasks, are restricted to authenticated users only. You’ll use JSON Web Tokens (JWT) for authentication and apply input validation to maintain data integrity. This project is designed to help you understand core backend concepts such as CRUD operations, user authentication, and authorization.
No submissions yet, start by making your first submission
Welcome to the TodoList API project! In this project, you’ll design and implement a fully functional TodoList API with user authentication. This project is a great way to build skills in backend development, covering essential concepts like authentication, CRUD operations, and data validation. You can use any supported programming language to complete this project.
In this project, you’ll build an API with the following core features:
Here’s a summary of the expected endpoints:
POST /register
): Register a new user by providing a username and password.POST /login
): Log in to get a JWT, which is needed for access to protected routes.POST /tasks
): Create a new task (requires authentication).GET /tasks
): Retrieve a list of all tasks (accessible to everyone).GET /tasks/:id
): Retrieve details of a specific task (accessible to everyone).PUT /tasks/:id
): Update task details, including title, description, and completion status (requires authentication).PATCH /tasks/:id
): Partially update task fields (requires authentication).DELETE /tasks/:id
): Delete a task (requires authentication).This project provides hands-on experience in creating secure, robust APIs with modern authentication techniques. Good luck, and enjoy building your TodoList API!