Skip to main content
Hero Light

Welcome to Furniture API

The Furniture API is a production-ready microservice built with Spring Boot 3.5.7 and Java 21, designed to manage furniture products, categories, inventory, suppliers, and product reviews. It provides a complete solution for furniture catalog and inventory management with PostgreSQL database integration.

Quick Start

Get up and running with the Furniture API in minutes using Docker

API Reference

Explore all available endpoints with interactive Swagger documentation

Data Model

Understand the database schema and entity relationships

Setup Guide

Configure database, Docker, and environment variables

Key Features

Product Management

Complete CRUD operations for furniture products with SKU tracking, pricing, dimensions, and multi-image support

Category Hierarchy

Organize products with hierarchical categories supporting parent-child relationships

Inventory Control

Real-time stock tracking with low-stock alerts and automatic inventory updates

Supplier Management

Manage supplier information and track product sources

Product Reviews

Customer review system with ratings and feedback

Advanced Search

Search products by name, SKU, category, price range with pagination support

Technology Stack

The Furniture API is built with modern, enterprise-grade technologies:
  • Spring Boot 3.5.7 - Latest Spring framework for microservices
  • Java 21 - Modern Java LTS version with latest features
  • PostgreSQL - Robust relational database for data persistence
  • Hibernate/JPA - Object-relational mapping for database operations
  • SpringDoc OpenAPI - Interactive API documentation with Swagger UI
  • Spring Cloud Netflix Eureka - Service discovery and registration
  • ModelMapper - Simplified DTO mapping
  • Lombok - Reduced boilerplate code
  • Docker - Containerized deployment

API Endpoints Overview

The API is organized into the following main resources:
/api/v1/products - Manage furniture products with full CRUD operations, search by SKU, name, category, and price range filtering
/api/v1/categories - Organize products into hierarchical categories with main and subcategory support
/api/v1/inventory - Track stock levels, manage inventory, check low stock items and out-of-stock products
/api/v1/suppliers - Manage supplier information and product sourcing
/api/v1/product-reviews - Customer review and rating system
/api/v1/product-images - Manage multiple images per product
/api/v1/product-dimensions - Track product measurements and physical specifications
All endpoints support pagination and return data in JSON format with snake_case property naming.

Service Discovery

The Furniture API is configured as a microservice with Netflix Eureka service discovery, allowing it to:
  • Register automatically with the Eureka server
  • Enable load balancing and fault tolerance
  • Support distributed system architectures
  • Facilitate service-to-service communication

Ready to Get Started?

Jump into the Quick Start guide to set up the API locally, or explore the API Reference to see all available endpoints.

Build docs developers (and LLMs) love