TodoList API backend built in .NET and PostgreSQL
- PostgreSQL
- .NET 7.0
- dotnet-ef
Clone the repository
$ git clone https://github.com/fzbian/todo-backend
Download the packages
$ dotnet restore
Config appsettings.json
for database connection
"ConnectionStrings": {
"WebApiDatabase": "Host=host; Database=db; Username=postgres; Password=pass"
}
Migrate the database
$ dotnet ef migrations add "init"
$ dotnet ef database update
Run program
$ dotnet run
Use HTTP methods (GET, POST, PUT, DELETE) to interact with the API endpoints.
- Method:
GET
- Endpoint:
/api/Todo
- Description: Verify status server
- Response:
200 OK
- Method:
GET
- Endpoint:
/api/Todo/GetTasks
- Description: Get tasks.
- Response:
200 OK
- Method:
GET
- Endpoint:
/api/Todo/GetTasksById/{id}
- Description: Get a task by ID.
- Parameters:
id
(Guid): Task ID.
- Response:
200 OK
- Method:
POST
- Endpoint:
/api/Todo/CreateTask
- Description: Create a new task.
- Request Body: Task object in the request body.
- Response:
200 OK
- Method:
PUT
- Endpoint:
/api/Todo/UpdateTask/{id}
- Description: Update a task by ID.
- Parameters:
id
(Guid): Task ID.
- Request Body: Updated task object.
- Response:
200 OK
- Method:
PUT
- Endpoint:
/api/Todo/CheckTask/{id}/{completed}
- Description: Check or uncheck a task.
- Parameters:
id
(Guid): Task ID.completed
(bool): Completion status.
- Response:
200 OK
or500 Internal Server Error
(in case of an exception)
- Method:
DELETE
- Endpoint:
/api/Todo/DeleteTask/{id}
- Description: Delete a task by ID.
- Parameters:
id
(Guid): Task ID.
- Response:
200 OK
Feel free to contribute to this project.
This project is licensed under the [MIT license] - see the LICENSE FILE file for details.