Skip to content

Latest commit

 

History

History
52 lines (34 loc) · 1.58 KB

File metadata and controls

52 lines (34 loc) · 1.58 KB

ApiNotes

ApiNotes is a RESTful API built with C# and .NET 7.0. It provides a simple and secure way to manage notes and notebooks. The API is designed to be consumed by any client capable of making HTTP requests.

Features

  • User Authentication: Register and login to access the API.
  • Notebooks: Create, update, retrieve, and delete notebooks.
  • Notes: Create, update, retrieve, and delete notes within a notebook.

Endpoints

Authentication

  • POST /api/Authentication/login: Login with email and password.
  • POST /api/Authentication/register: Register with email and password.
  • GET /api/Authentication/logout: Logout the current user

Notebooks

  • PUT /api/Notebook: Upsert a notebook with the provided title.
  • GET /api/Notebook: Get all notebooks.
  • GET /api/Notebook/{id}: Get a notebook by its id.
  • DELETE /api/Notebook/{id}: Delete a notebook by its id.

Notes

  • GET /api/Note: Get all notes from a notebookId.
  • GET /api/Note/{id}: Get a note by its id.
  • PUT /api/Note: Upsert a note into a notebook with the provided data.
  • DELETE /api/Note/{id}: Delete a note by its id.

Setup

  1. Clone the repository.
  2. Setup your enviroment keys locally to your own database for tests.
  3. Run the application.

Dependencies

  • .NET 7.0
  • Supabase: Used for database operations and user authentication.
  • Swashbuckle: Used for API documentation.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

Apache License 2.0