This API provides endpoints for user authentication, CRUD operations on notes, and user-related functionalities like changing passwords.
- Authentication:
- /auth/signup: POST request for user signup
- /auth/signin: POST request for user signin
- Notes:
- GET request to retrieve notes with various filtering options
- POST request to create a new note
- PUT request to update an existing note
- DELETE request to delete a note by ID
- User:
- GET request to retrieve user information
- POST request to change user password
- Bearer token authentication using JWT Authorization header.
- .NET 8
- Entity Framework
- PostgreSQL
- Automapper
- FluentValidation
- Identity Model JWT
- Swagger
- Docker
- AutoFixture
- Moq
- Nunit
- Install docker.
- Install .NET 8 SDK.
- Install developers certificates to able to run app locally. Use this tutorial
- Navigate to project
src
directory and run:docker compose up
- Navigate to in the browser:
https://localhost:5001/swagger/index.html
- Try
auth/signup
out with sample credentials. - After success response on 2 try
auth/signin
with the data from step 2. You should gettoken
value in the response - Click
Authorize
with the value: 'Bearertoken
' - Try GET POST PUT DELETE
/notes
endpoints.