With the Genability API, you can run an unlimited number of Savings Analysis requests on a single account. This is very useful as the configuration for a particular customer changes over time. Sometimes, though, you want to go back and see what you’ve done already. That’s where the Savings Analysis History endpoint comes in.

With the new Savings Analysis History, you can now go back and look at the results for every savings analysis done after July 1, 2015. You can also, optionally, retrieve the Switch request that lead to those results.

Data Definition

Savings analyses returned by the Savings Analysis History endpoint have the same data structure as the requests and [responses][sa-response] used for the Savings Analysis endpoint.

Get a List of Savings Analyses for an Account

This endpoint retrieves a list of savings analyses for a particular account, with the most recent at the top.

Resource URI

GET /rest/v1/accounts/{accountId}/analyses

or

GET /rest/v1/accounts/pid/{providerAccountId}/analyses

Request Parameters

Along with the standard pagination parameters, searching and sorting parameters, and the required security parameters, the following parameters are available as part of the request:

Name Type Description
populateRequest Boolean Whether to include the Savings Analysis request or not.
earliestCreatedDate DateTime Only retrieve analyses that were performed on or after earliestCreatedDate.
latestCreatedDate DateTime Only retrieve analyses that were performed on or before latestCreatedDate.

By default, results from this endpoint will be sorted by createdDate in descending order. This means that the most recent analysis will be at the top of the list.

Example

GET /rest/v1/accounts/pid/api-eg-01/analyses?fields=min
{
  "status": "success",
  "count": 3,
  "type": "AccountAnalysis",
  "results": [
    {
      "savingsAnalysisId": "34eb2c30-cf83-4a84-b6b8-948e34a3c9f1",
      "createdDate": "2015-12-01T20:11:30+0000",
      "accountId": "012f31cd-7d85-422c-bcca-6147ba349495",
      "designId": null,
      "currency": "USD",
      "summary": {
        "preTotalCost": 1448.88,
        "lifetimeSolarCost": 10852.268,
        "netAvoidedCostPctOffset": 0.644,
        "netAvoidedKWh": 3378.78,
        "preTotalKWh": 6747.444735,
        "netAvoidedRate": 0.276153,
        "postTotalKWhRate": 0.1693245,
        "preTotalKWhRate": 0.22281943,
        "postTotalRate": 0.15312317,
        "preTotalMinCost": 53.9616,
        "netAvoidedKWhPctOffset": 0.5008,
        "lifetimeAvoidedCost": 13183.894,
        "postTotalKWh": 3368.66073585,
        "lifetimeWithoutCost": 40974.17,
        "postTotalMinCost": 53.9616,
        "postTotalCost": 515.82,
        "preTotalRate": 0.21473018,
        "preTotalNonMinCost": 1448.88176783,
        "preTotalKWhCost": 1503.46176783,
        "postTotalNonMinCost": 515.81677912,
        "postTotalKWhCost": 570.39677912,
        "lifeTimeUtilityAvoidedRate": 0.409,
        "netAvoidedCost": 933.06,
        "lifeTimeUtilityAfterCost": 16938.008
      },
      "scenarios": null
    },

    /* more savings analyses */

  ]
}

Get One Savings Analysis

This endpoint retrieves a particular savings analysis by accountId (or providerAccountId) and savingsAnalysisId.

Resource URI

GET /rest/v1/accounts/{accountId}/analyses/{savingsAnalysisId}
GET /rest/v1/accounts/pid/{providerAccountId}/analyses/{savingsAnalysisId}

Request Parameters

Name Type Description
populateRequest Boolean Whether to include the Savings Analysis request or not.

Example

GET /rest/v1/accounts/pid/api-eg-01/analyses/34eb2c30-cf83-4a84-b6b8-948e34a3c9f1
{
  "status": "success",
  "count": 1,
  "type": "AccountAnalysis",
  "results": [
    {
      "savingsAnalysisId": "34eb2c30-cf83-4a84-b6b8-948e34a3c9f1",
      "createdDate": "2015-12-01T20:11:30+0000",
      "accountId": "012f31cd-7d85-422c-bcca-6147ba349495",
      "designId": null,
      "currency": "USD",
      "summary": {
        "preTotalCost": 1448.88,
        "lifetimeSolarCost": 10852.268,
        "netAvoidedCostPctOffset": 0.644,
        "netAvoidedKWh": 3378.78,
        "preTotalKWh": 6747.444735,
        "netAvoidedRate": 0.276153,
        "postTotalKWhRate": 0.1693245,
        "preTotalKWhRate": 0.22281943,
        "postTotalRate": 0.15312317,
        "preTotalMinCost": 53.9616,
        "netAvoidedKWhPctOffset": 0.5008,
        "lifetimeAvoidedCost": 13183.894,
        "postTotalKWh": 3368.66073585,
        "lifetimeWithoutCost": 40974.17,
        "postTotalMinCost": 53.9616,
        "postTotalCost": 515.82,
        "preTotalRate": 0.21473018,
        "preTotalNonMinCost": 1448.88176783,
        "preTotalKWhCost": 1503.46176783,
        "postTotalNonMinCost": 515.81677912,
        "postTotalKWhCost": 570.39677912,
        "lifeTimeUtilityAvoidedRate": 0.409,
        "netAvoidedCost": 933.06,
        "lifeTimeUtilityAfterCost": 16938.008
      }
      "scenarios":null
    }]
}