End-User Dashboard Integration
For end-users to understand the current status of software-based optimization, they must have access to a range of information about their account, devices, and optimization performance. The endpoints detailed below are used in the Whitelabel end-user dashboard Podero provides and can be used by Partners to build a comparable end-user experience.Dashboard Overview Data
List All Devices
Retrieve all devices for a user to display on the dashboard:- Heat Pumps
- Electric Vehicles
- Solar Inverters
Example Response
Key Dashboard Metrics
Device Status Indicators
Connection Status
Connection Status
Field:
is_authenticatedShows if the device is successfully connected to the manufacturer’s API.Optimization Status
Optimization Status
Field:
is_smart_optimization_activeIndicates whether Podero’s optimization algorithm is actively controlling the device.Operational Mode
Operational Mode
Field:
operational_modeCurrent mode of operation (heating, cooling, standby, etc.).Current Readings
Key fields available for real-time or near-real-time display:- Heat Pump
- Electric Vehicle
- Solar Inverter
indoor_actual_temperature- Indoor temperature in °Coutdoor_temperature- Outdoor temperature in °Ccurrent_power_consumption_w- Current power consumption in wattsdhw_temperature- Domestic hot water temperature in °C
Consumption History
Energy consumption is available over different time periods:consumption_last_day_kwh- Energy consumed in the last 24 hoursconsumption_last_week_kwh- Energy consumed in the last 7 daysconsumption_last_month_kwh- Energy consumed in the last 30 daysconsumption_last_updated_at- Timestamp of last consumption update
Single Device View
Get Specific Device Details
Retrieve detailed information for a single device:Dashboard UI Components
Status Card Example
Real-Time Updates
State data refresh frequency depends on the manufacturer’s API limitations. Some values may update every 5-15 minutes.
Polling Strategy
Implement efficient polling for dashboard updates at regular intervals (typically 5-15 minutes). Check thecurrent_state_last_updated_at timestamp to determine if new data is available.
Websocket Alternative
For real-time updates, consider implementing websockets on your backend to push updates to the dashboard when device state changes.Error Handling
Connection Issues
Use the following fields to identify and display connection issues:is_authenticated- Iffalse, device is disconnected and needs reconnectionauthorization_url- If present, device requires re-authentication (redirect user to this URL)current_state_last_updated_at- Check if data is stale (older than 1 hour indicates potential issue)
Best Practices
Performance
Performance
- Cache device data to reduce API calls
- Implement efficient polling intervals (5-15 minutes)
- Use pagination for users with many devices
- Load critical data first, defer detailed metrics
User Experience
User Experience
- Show loading states during data fetches
- Display last update timestamps
- Provide clear error messages with actions
- Use visual indicators for status (colors, icons)
Data Presentation
Data Presentation
- Round consumption values appropriately
- Use consistent units throughout
- Show trends with charts and graphs
- Highlight important changes or alerts
Next Steps
API Reference
Complete list of available state fields
User Management
Partner back-office workflows
