https://github.com/cankurttekin/productinventory
Web API developed using Spring Boot, Spring Data JPA and Spring Security. The purpose of this API is to provide an API that users can perform basic CRUD operations.
https://github.com/cankurttekin/productinventory
crud-api postgresql rest spring-boot spring-security spring-web
Last synced: 2 months ago
JSON representation
Web API developed using Spring Boot, Spring Data JPA and Spring Security. The purpose of this API is to provide an API that users can perform basic CRUD operations.
- Host: GitHub
- URL: https://github.com/cankurttekin/productinventory
- Owner: cankurttekin
- License: gpl-3.0
- Created: 2024-05-23T17:59:27.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-06T09:48:31.000Z (almost 2 years ago)
- Last Synced: 2025-02-14T19:44:41.616Z (over 1 year ago)
- Topics: crud-api, postgresql, rest, spring-boot, spring-security, spring-web
- Language: Java
- Homepage:
- Size: 263 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ProductInventory
This is a Web API developed using **Spring Boot**, **Spring Data JPA** and **Spring Security**. The purpose of this API is to provide an API that users can perform basic **CRUD** operations.
## Technologies Used
- Java 17
- Spring Boot
- Spring Data
- PostgreSQL
## Endpoints
List of endpoints:
GET
/api/products
Retrieve all products
ROLE=EMPLOYEE
POST
/api/products
Create new product
ROLE=MANAGER
GET
/api/products/{id}
Retrieve product by id
ROLE=EMPLOYEE
PUT
/api/products/{id}
Update product by id
ROLE=MANAGER
DELETE
/api/products/{id}
Delete product by id
ROLE=ADMIN
DELETE
/api/products/
Delete all products!
ROLE=ADMIN
GET
/api/products/available
Retrieve all available products
ROLE=EMPLOYEE
## Database
Role and users are in two tables with passwords stored as **bcrytp hash**, primary key being user_id in a members table.
