A RESTful API to support a to-do list application.
For a swagger view of the api go here: https://wise-to-do-api.herokuapp.com
The ToDoAPI exposes methods for creating and managing to-do lists, adding/editing/deleting items from to-do lists, and marking to-do list items as completed. The ToDoAPI has in-memory persistence layer.
The ToDoAPI exposes two controllers as RESTful resources: One handles ToDoList objects, the other handles ToDoListItem objects.
The ToDoAPI also exposes a controller to allow for account registration and login.
The end user is able to create, edit and delete ToDoList objects. The end user is also able to retrieve all ToDoList objects associated with him/her. The end user is also able to add or remove ToDoListItem objects to individual ToDoList objects, edit the list items and mark them as completed.
The ToDoAPI was developed in the VisualStudio IDE. Language: C# Frameworks: Microsoft.NETCore.App 3.1.0, Microsoft.ASPNETCore.App 3.1.2
docker build -t todoapi .
docker run -it --rm -p 5000:80 --name todoapi todoapi
heroku container:push web
heroku container:release web
- Register an account and grab the JSON Web Token. (See ToDoAPI docs below)
- Use the token in the Authorization: Bearer header
- Don't forget to append the list id and item id where apropriate to the endpoint url (See ToDoAPI docs below)
A RESTful API to support a to-do list application.
Register a user.
Endpoint:
Method: POST
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/Account/RegisterBody:
{
"Email": "email@gmail.com",
"Password": "SomeSecurePassword123!"
}Login a user.
Endpoint:
Method: POST
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/Account/LoginBody:
{
"Email": "email@gmail.com",
"Password": "SomeSecurePassword123!"
}Creates a ToDoList for a user.
/api/ToDoLists
Endpoint:
Method: POST
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/api/ToDoListsBody:
{
"Name": "Groceries"
}Updates a ToDoList for a user given a toDoListId.
/api/ToDoLists/{id}
Endpoint:
Method: PUT
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/api/ToDoLists/1Body:
{
"Name": "Errands Updated"
}Return a ToDoList for a user given a toDoListId.
/api/ToDoLists/{id}
Endpoint:
Method: GET
Type:
URL: https://wise-to-do-api.herokuapp.com/api/ToDoListsDeletes a ToDoList for a user given a toDoListId.
/api/ToDoLists/{id}
Endpoint:
Method: DELETE
Type:
URL: https://wise-to-do-api.herokuapp.com/api/ToDoLists/2Creates a ToDoItem for a user given a toDoListId.
/api/ToDoItems/{toDoListId}
Endpoint:
Method: POST
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/api/ToDoItems/1Body:
{
"Name": "Walk dog",
"IsComplete": false
}Updates a ToDoItem based on index for a user given a toDoListId.
/api/ToDoItems/{toDoListId}/{id}
Endpoint:
Method: PUT
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/api/ToDoItems/1/3Body:
{
"Name": "Walk dog",
"IsComplete": true
}Return a list of ToDoItems for a user given a toDoListId.
/api/ToDoItems/{toDoListId}
Endpoint:
Method: GET
Type: RAW
URL: https://wise-to-do-api.herokuapp.com/api/ToDoItems/1Body:
{
"Id":1,
"name":"walk dog two",
"isComplete":false,
"Secret":"the secret"
}Deletes a specific ToDoItem based on index for a user given a toDoListId.
/api/ToDoItems/{toDoListId}/{id}
Endpoint:
Method: DELETE
Type:
URL: https://wise-to-do-api.herokuapp.com/api/ToDoItems/1/2Made with ♥ by thedevsaddam | Generated at: 2020-04-06 13:58:18 by docgen