Build a 3D inventory API with the MEAN stack. This guide uses Node.js & MongoDB to create a backend for spatial inventory management.

3d-inventory-mongo-api
- 3d-inventory-mongo-api
- Purposes
- Architecture
- Features
- MEAN stack
- Data Model
- API documentation
- Getting Started
- License
About
Backend API for the 3D-Inventory platform β a modern inventory management system that combines spatial visualization with structured inventory data. This Node.js-based API uses MongoDB as its primary database and serves inventory data to a frontend interface built in β¨3d-inventoryβ¨.
π Features
ποΈ RESTful API for managing inventory elements, racks, rooms, and objects
π MongoDB schema designed for spatial and visual representation of inventory items
π§© Modular structure using Express.js
π Secure API endpoints with basic validation
π Designed to support 3D spatial UI representation in real-time
MEAN stack
- MongoDB is a
NoSQLdatabase that stores data inJSONformat. - Express.js is a web application framework for Node.js that simplifies the process of building web servers and APIs.
- RxJs β Reactive Extensions Library for JavaScript.
- NodeJS is a
JavaScriptruntime that allows you to run code on the server-side.
π API Endpoints
Swagger API definition.
| Endpoint | Method | Description |
|---|---|---|
/devices |
GET | Get all devices |
/devices |
POST | Create a new device |
/devices/ |
GET | Get device by ID |
/devices/ |
PUT | Update device by ID |
/devices/ |
DELETE | Delete device by ID |
/models |
GET | Get all models |
/models |
POST | Create a new model |
/models/ |
GET | Get model by ID |
/models/ |
PUT | Update model by ID |
/models/ |
DELETE | Delete model by ID |
/connections |
GET | Get all connections |
/connections |
POST | Create a new connection |
/connections/ |
GET | Get connection by ID |
/connections/ |
PUT | Update connection by ID |
/connections/ |
DELETE | Delete connection by ID |
/logs |
GET | Get all logs |
/logs/ |
GET | Get log by ID |
/attributes |
GET | Get all attributes |
/attributes |
POST | Create a new attribute |
/attributes/ |
GET | Get attribute by ID |
/attributes/ |
PUT | Update attribute by ID |
/attributes/ |
DELETE | Delete attribute by ID |
/attributesDictionary |
GET | Get all attribute dictionary entries |
/attributesDictionary |
POST | Create a new attribute dictionary entry |
/attributesDictionary/ |
GET | Get attribute dictionary entry by ID |
/attributesDictionary/ |
PUT | Update attribute dictionary entry by ID |
/attributesDictionary/ |
DELETE | Delete attribute dictionary entry by ID |
/floors |
GET | Get all floors |
/floors |
POST | Create a new floor |
/floors/ |
GET | Get floor by ID |
/floors/ |
PUT | Update floor by ID |
/floors/ |
DELETE | Delete floor by ID |