Defining the API requirements
We will be building an API for a Learning Management System (LMS). This is a system for an educational institution that runs classrooms for different courses. Students can enroll in these classrooms, and teachers can create new tutorials and assign them to classrooms. Another (non-core) functionality might include creating quizzes that the students can answer and the teachers can mark. An admin can also access the system to add new students, teachers, and classrooms, and manage all entities:
In the next section, we will create our first API, which we will use to manage a classroom. The endpoint will allow us to perform CRUD operations; that is, we will be able to Create, Read, Update, and Delete classrooms.