Skip to main content
POST
/
v1
/
homes
/
{id}
/
update
update home
curl --request POST \
  --url https://api.example.com/v1/homes/{id}/update \
  --header 'Content-Type: application/json' \
  --header 'x-ws-api-key: <api-key>' \
  --data '
{
  "name": "Updated home name",
  "solarSystemSizeKw": 6.4,
  "isNonNetMetered": true
}
'
{
  "id": "ws_home_123456789",
  "createdAt": "2025-01-02T12:00:00.000Z",
  "updatedAt": "2025-01-02T12:00:00.000Z",
  "name": "My home",
  "userId": "user_123456789",
  "UtilityId": "12199",
  "ratePlanId": "6915de25881cbc6041e4c7f1",
  "unstructuredAddress": null,
  "timezone": "America/Los_Angeles",
  "country": "US",
  "city": "San Francisco",
  "zipcode": "94107",
  "streetAddress": "123 Market St",
  "meterId": null,
  "meterIdSource": null,
  "energyMarketBiddingEnabled": true,
  "enabled": true,
  "carbonSignalIntensity": "MEDIUM",
  "channelPartnerId": null
}

Authorizations

x-ws-api-key
string
header
required

Headers

x-ws-api-key
string

WattShift API Key

Path Parameters

id
string
required

Body

application/json

Partial home update payload. Supports the same fields as CreateClientHomeDto, including solarSystemSizeKw and isNonNetMetered for creating or updating solar info.

userId
string

The ID of the owner of the home

name
string

The name of the home

Required string length: 1 - 255
UtilityId
string
deprecated

Deprecated utility ID

utilityId
string

The utility ID

ratePlanId
string | null

The rate plan ID

unstructuredAddress
string

The unstructured address

clientId
string

The client ID

country
string

The country

city
string

The city

zipcode
string

The zip code

streetAddress
string

The street address

solarInfo
object

Advanced solar installation information. For most integrations, use solarSystemSizeKw and isNonNetMetered instead.

carbonSignalIntensity
enum<string>

The carbon signal intensity

Available options:
LOW,
MEDIUM,
HIGH
meterId
string
meterIdSource
string
enabled
boolean

This is to check if the home is enabled

channelPartnerId
string

Optional tracking for channel partners (requires using a valid ID)

solarSystemSizeKw
number

Solar system size in kW; creates solar info when set with isNonNetMetered.

isNonNetMetered
boolean

Non-net-metered solar billing flag; creates solar info when set with solarSystemSizeKw.

modalHome
boolean

Whether this home was created from the modal flow

Response

200 - application/json
id
string
required
createdAt
any
required
updatedAt
any
required
energyMarketBiddingEnabled
boolean
required
carbonSignalIntensity
enum<string>
required
Available options:
LOW,
MEDIUM,
HIGH
name
string | null
userId
string | null
UtilityId
string | null
ratePlanId
string | null
unstructuredAddress
string | null
timezone
string | null
country
string | null
city
string | null
zipcode
string | null
streetAddress
string | null
meterId
string | null
meterIdSource
string | null
enabled
boolean | null
channelPartnerId
string | null