Skip to main content

Setting Device Preferences

End-users need the ability to customize their device settings while maintaining the benefits of smart optimization. This page covers common preference settings for different device types.

Heat Pump Preferences

Set Temperature Range

Configure the heating temperature range to ensure user comfort while allowing optimization within boundaries:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {auth_token}' \
  -d '{
    "maximum_temperature_limit": 21.5,
    "minimum_temperature_limit": 19.0
  }'
The optimization algorithm will work within these temperature boundaries to minimize costs while maintaining comfort.

Set Domestic Hot Water Temperature

Configure the standard and minimum domestic hot water (DHW) temperature:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "dhw_standard_temperature": 48.0,
    "minimum_dhw_temperature_limit": 40.0
  }'

Enable/Disable Smart Optimization

Allow users to turn smart optimization on or off:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "is_smart_optimization_active": true
  }'

Configure Away Mode

Set away mode to reduce energy consumption when the user is not home:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/heat-pumps/{heat_pump_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "is_away_mode_enabled": true,
    "away_mode_start": "2024-02-15T08:00:00Z",
    "away_mode_end": "2024-02-20T18:00:00Z",
    "away_mode_minimum_temperature_limit": 16.0,
    "away_mode_minimum_dhw_temperature_limit": 35.0
  }'

Electric Vehicle Preferences

Set Battery Charge Limits

Configure minimum and maximum battery charge levels:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{device_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "charge_limit_min": 50,
    "charge_limit_max": 80
  }'
Setting a maximum charge limit below 100% can extend battery life and reduce costs.

Set Charge Deadline

Specify when the vehicle must be charged by:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{device_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "charge_deadline_at": "2024-02-16T07:00:00Z"
  }'

Enable/Disable EV Optimization

curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/electric-vehicles/{device_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "is_smart_optimization_active": false
  }'

Energy Contract Preferences

Update Hourly Energy Prices

Provide hourly price data for optimization:
curl -X PUT \
  'https://app.podero.com/api/partners/v2.0/org/{org_id}/users/{user_id}/energy-contracts/{energy_contract_id}' \
  -H 'Authorization: Bearer {auth_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "hourly_energy_price": [0.20, 0.20, 0.18, 0.14, 0.09, 0.09, 0.08, 0.09, 0.10, 0.15, 0.25, 0.31, 0.32]
  }'
Update energy prices regularly (e.g., daily) to ensure optimal device scheduling based on current market conditions.

Common Preference Patterns

You only need to send the fields you want to update. Omitted fields remain unchanged.
// Only update optimization status
{
  "is_smart_optimization_active": true
}
Update multiple settings in a single API call:
{
  "maximum_temperature_limit": 22.0,
  "minimum_temperature_limit": 19.0,
  "is_smart_optimization_active": true,
  "dhw_standard_temperature": 48.0
}
The API will validate your settings:
  • Temperature ranges must be logical (min < max)
  • Charge limits must be between 0-100
  • Dates must be in valid ISO 8601 format
  • Invalid values will return a 400 error with details

Best Practices

  • Provide clear UI controls for each preference
  • Show current values before allowing changes
  • Validate input on the client side before API calls
  • Provide feedback when preferences are saved
  • Allow users to customize while maintaining optimization benefits
  • Educate users about the impact of their settings
  • Suggest optimal ranges based on device type and location
  • Show estimated savings with different configurations
  • Handle validation errors gracefully
  • Provide clear error messages
  • Allow users to revert changes if save fails
  • Log preference changes for debugging

Next Steps