All REST Endpoints

Bill Comparison
The Bill Comparison resource returns a comparison of a customer's bill to a prior bill, along with an explanation of the cost differences.
Get Bill Comparison
Method: get
Path: /apis/billComparison-v2/{utilityCode}/bill-comparison/accounts/{utilityAccountId}
Bill Forecast
The Bill Forecast object represents forecast of a customer's energy consumption typically for the current billing period.
Get Bill Forecast
Method: get
Path: /apis/billforecast-v2/{utilityCode}/customers/{id}/bill_forecast
Get Bill Period
Method: get
Path: /apis/billforecast-v2/{utility}/accounts/{id}/bill-period
Contact Preferences
The Notification Contact resource represents the contact objects related to a customer. The Notification Preference resource represents a contact's preferences for Opower communications (e.g. High Bill Alert) and channels (e.g. email, SMS). The API allows you to view and manage Notification Contacts, Notification Preferences, and Notification Events
Create NotificationContact
Method: post
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts
Create NotificationPreference
Method: post
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}/notification_preferences
Delete NotificationChannel
Method: delete
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}/notification_preferences/channel/{notificationChannel}
Delete NotificationContact
Method: delete
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}
Delete NotificationPreference
Method: delete
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}/notification_preferences/{preferenceId}
Get Notification Contact List
Method: get
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts
Get NotificationPreference
Method: get
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}/notification_preferences/{notificationChannel}/{eventType}
Get NotificationPreference List
Method: get
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}/notification_preferences
Update NotificationContact
Method: put
Path: /apis/notification-contact-v1/{utilityCode}/customers/{id}/notification_contacts/{contactId}
Customer Engagements
The Customer Engagement resources represent customer engagements with communications sent by Opower. The API allows you to view Send, Open, Click, and Complaint engagements. The standard workflow for using the API: 1. Call Engagement API with offset=0 or omitted offset and with list of request parameters, by which you want to filter out an engagement data. 2. The response will include a list of engagement events to process and the next offset to use for the future call. 3. Take the new offset from the response and call the API once again with exactly the same list of request parameters. 4. Use new offset from the response to call again and again, till we got the response with missed next offset - it means that we don???t have any additional data to return.
Get Click Engagements
Method: get
Path: /apis/customer-engagement-v1/utilities/{utilityCode}/engagements/clicks
Get Complaint Engagements
Method: get
Path: /apis/customer-engagement-v1/utilities/{utilityCode}/engagements/complaints
Get module names by channel
Method: get
Path: /apis/spark-v1/v2/modules/{channel}/names
Get Open Engagements
Method: get
Path: /apis/customer-engagement-v1/utilities/{utilityCode}/engagements/opens
Get Send Engagements
Method: get
Path: /apis/customer-engagement-v1/utilities/{utilityCode}/engagements/sends
Get Track & Campaign name info for a utility
Method: get
Path: /apis/programDesign-v1/v1/utilities/{utilityCode}/tracks/names
Customers
The Customer resources represent the key objects in the Opower data model; Customer, Utility Account, and Home Profile. The API allows you to fetch information about a Customer, Utility Account, and Home Profile and update a Customers Home Profile. The Customer and Accounts endpoints contain the identifiers required to call other endpoints such as Tips.
Get Customer List
Method: get
Path: /apis/customer-data-v2/{utilityCode}/customers
Get Home Profile
Method: get
Path: /apis/customer-data-v2/{utilityCode}/customers/{id}/home_profile
Get Utility Account List
Method: get
Path: /apis/customer-data-v2/{utilityCode}/customers/{id}/utility_accounts
Update Home Profile
Method: put
Path: /apis/customer-data-v2/{utilityCode}/customers/{id}/home_profile
Disaggregation
The Disaggregation resources represent a breakdown of customer electricity or gas use, which can be used to view annual or bill breakdowns.
Get Always-On
Method: get
Path: /apis/disaggregation-v1/utilities/{utilityCode}/customers/{customerId}/consumption/alwayson
Get Annual Disaggregation
Method: get
Path: /apis/disaggregation-v1/utilities/{utilityCode}/customers/{customerId}/consumption/categories
Get Bill Disaggregation
Method: get
Path: /apis/disaggregation-v1/utilities/{utilityCode}/customers/{customerId}/bills/consumption/categories
Neighbor Comparison
The Neighbor Comparison resources provide neighbor comparisons of a customer's energy use to similar homes in close geographic proximity to the customer. This includes electric, gas, and combined energy use. Multiple billing periods can be returned in a single request.
Get Latest Neighbor Comparison
Method: get
Path: /apis/neighborComparison-v1/{utilityCode}/customers/{id}/neighbor_comparison
Get List of Neighbor Comparisons
Method: get
Path: /apis/neighborComparison-v1/bill/{utilityCode}/{utilityCustomerId}/{fuelType}
Threshold
The Threshold endpoints allow utilities to set costs and usage thresholds for customers of High Bill Alerts AMI products.
Delete Threshold for a Customer
Method: delete
Path: /apis/threshold-v1/external/{utilityCode}/customers/{utilityCustomerId}/threshold
Get Threshold Value for a Customer
Method: get
Path: /apis/threshold-v1/external/{utilityCode}/customers/{utilityCustomerId}/threshold
Set or Update a Customer's Threshold
Method: put
Path: /apis/threshold-v1/external/{utilityCode}/customers/{utilityCustomerId}/threshold
Tips
The Tip resources respresent customer specific tips for potential energy savings. The Tip APIs allow you to view information about a customer's prioritzed energy saving tips and update the action a customer has taken for each tip.
Delete Tip Action
Method: delete
Path: /apis/tips-v1/{utilityCode}/energy_guide/customers/{id}/tips/{tipId}/action
Get Tip
Method: get
Path: /apis/tips-v1/{utilityCode}/energy_guide/customers/{id}/tips/{tipId}
Get Tip List
Method: get
Path: /apis/tips-v1/{utilityCode}/energy_guide/customers/{id}/tips/list
Get Tip Name List
Method: get
Path: /apis/tips-v1/{utilityCode}/energy_guide/customers/{id}/tips
Update Tip Action
Method: post
Path: /apis/tips-v1/{utilityCode}/energy_guide/customers/{id}/tips/{tipId}/action
Usage
The Usage resource represents a customer's gas or electrical consumption. The API allows you to view raw, daily, and billing usage values for all of the service points of a particular customer's active utility account. The response contains an array of usage streams grouped by service point.
Get Billing Usage
Method: get
Path: /apis/usage-v1/usage/billing/{utilityCode}/{utilityCustomerId}/{fuelType}
Get Daily Interval Usage
Method: get
Path: /apis/usage-v1/usage/day/{utilityCode}/{utilityCustomerId}/{fuelType}
Get Raw Interval Usage
Method: get
Path: /apis/usage-v1/usage/raw/{utilityCode}/{utilityCustomerId}/{fuelType}