Skip to content

Dominosam/m-core-api

Repository files navigation

M Core API

A solution which creates a structure and a framwork for API oriented resposibilities. Solution currently serves purpose as a job candidate test, where core responsibilities were to create:

  • Watch API - that can calculate least angle of watch hands
  • Inventory Management System - API that orchestrate inventory items CRUD operations

Architecutre

image

Watch API

An API that calculate least angle of watch hands

Features

  • Calculate least angle of watch hands providing to,e

Getting Started

Follow these steps to set up the Watch API on your local machine.

Prerequisites

  • .NET SDK Application already uses Redis connection in cloud in order to save responses.

Installation

  1. Clone the repository
  2. Run solution with Mover.API as startup project
  3. Navigate in swagger to the WatchHands controller
  4. Try calling endpoints using Swagger!

API Endpoints

GET /api/watchhands/item: Calculate least angle between watch hands by given DataTime parameter

For detailed API documentation, refer to the Swagger UI.

Inventory Management System

An inventory management system for tracking and managing inventory items.

Features

  • Create and update inventory items
  • Remove specified quantities from inventory
  • Retrieve details of inventory items
  • View a list of all inventory items

Getting Started

Follow these steps to set up the Inventory Management System on your local machine.

Prerequisites

  • .NET SDK Application already uses MongoDB connection to database in cloud.

Installation

  1. Clone the repository

  2. Run solution with Mover.API as startup project

  3. Navigate in swagger to the Inventory controller

  4. Try calling endpoints using Swagger!

    `

API Endpoints

POST /api/inventory/item: Create or update an inventory item.

PUT /api/inventory/item/remove-quantity: Remove a specified quantity from an inventory item.

GET /api/inventory/item/{sku}: Retrieve details of an inventory item by SKU.

GET /api/inventory/item: Retrieve details of all inventory items.

For detailed API documentation, refer to the Swagger UI.

Possible additions:

API:

  • Authentication
  • Connect Redis sink to logging feature
  • Extend generic validation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published