A FastAPI-based REST API for managing industrial assets, operational measurements, asset health, status, and maintenance records.
- Asset CRUD operations
- Operational measurement storage
- Measurement history
- Asset health assessment
- Asset status monitoring
- Maintenance records
- SQLite database with SQLAlchemy
- Python API client
- Swagger API documentation
POST /assets
GET /assets
GET /assets/{asset_id}
PUT /assets/{asset_id}
DELETE /assets/{asset_id}
POST /measurements
GET /assets/{asset_id}/measurements
GET /assets/{asset_id}/health
GET /assets/{asset_id}/status
POST /maintenance
GET /assets/{asset_id}/maintenance
{
"name": "Transformer-01",
"asset_type": "Distribution Transformer",
"rated_power": 400,
"voltage": "11kV/433V",
"location": "MGIT",
"status": "Operational",
"installation_year": 2005
}- Python
- FastAPI
- Pydantic
- SQLAlchemy
- SQLite
- Requests
- Uvicorn
- REST / JSON
fastapi-learning/
├── main.py
├── database.py
├── client.py
├── README.md
└── .gitignore
pip install fastapi uvicorn sqlalchemy requestsRun the API:
uvicorn main:app --reloadAPI:
Swagger documentation:
Asset
├── Measurements
└── Maintenance Records
One asset can have multiple measurements and maintenance records.
- REST API development
- FastAPI
- Pydantic validation
- SQLAlchemy ORM
- SQLite databases
- CRUD operations
- Database relationships
- Industrial asset modelling
- Operational data handling
- Basic asset health assessment
- Python API integration
- PostgreSQL
- Alembic migrations
- Authentication
- Real-time measurement ingestion
- Sensor integration
- Predictive maintenance
- Data visualization
- Digital twin integration
The health assessment is a simplified learning example and is not intended for real-world transformer diagnosis or safety-critical decisions.
Shoumik Gunda
Electrical and Electronics Engineering
MGIT, Hyderabad