Skip to content

Latest commit

 

History

History
198 lines (147 loc) · 9.01 KB

README.md

File metadata and controls

198 lines (147 loc) · 9.01 KB

the_enlighten_systems_api

TheEnlightenSystemsApi - JavaScript client for the_enlighten_systems_api The Enlighten Systems API is a JSON-based API that provides access to performance data for a PV system. By using the Enlighten Systems API, you agree to the Enphase Energy API License Agreement.

Please note that the Enlighten Systems API does not provide performance data at a panel or microinverter level. This SDK is automatically generated by the OpenAPI Generator project:

  • API version: 2.0
  • Package version: 2.0
  • Build package: org.openapitools.codegen.languages.JavascriptClientCodegen

Installation

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install the_enlighten_systems_api --save

Finally, you need to build the module:

npm run build
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

To use the link you just defined in your project, switch to the directory you want to use your the_enlighten_systems_api from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

Finally, you need to build the module:

npm run build

git

If the library is hosted at a git repository, e.g.https://github.com/NathanBaulch/EnphaseOpenAPI then install it via:

    npm install NathanBaulch/EnphaseOpenAPI --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var TheEnlightenSystemsApi = require('the_enlighten_systems_api');

var defaultClient = TheEnlightenSystemsApi.ApiClient.instance;
// Configure API key authorization: ApiKey
var ApiKey = defaultClient.authentications['ApiKey'];
ApiKey.apiKey = "YOUR API KEY"
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//ApiKey.apiKeyPrefix['key'] = "Token"

var api = new TheEnlightenSystemsApi.DefaultApi()
var userId = 4d6a51330a; // {String} 
var systemId = 66; // {Number} 
var opts = {
  'startDate': Fri Jul 01 10:00:00 AEST 2016, // {Date} The date on which to start the time series. Defaults to the system's operational date.
  'endDate': Sun Jul 31 10:00:00 AEST 2016 // {Date} The last date to include in the time series. Defaults to yesterday or the last day the system reported, whichever is earlier.
};
api.consumptionLifetime(userId, systemId, opts).then(function(data) {
  console.log('API called successfully. Returned data: ' + data);
}, function(error) {
  console.error(error);
});

Documentation for API Endpoints

All URIs are relative to https://api.enphaseenergy.com/api/v2

Class Method HTTP request Description
TheEnlightenSystemsApi.DefaultApi consumptionLifetime GET /systems/{system_id}/consumption_lifetime
TheEnlightenSystemsApi.DefaultApi consumptionStats GET /systems/{system_id}/consumption_stats
TheEnlightenSystemsApi.DefaultApi energyLifetime GET /systems/{system_id}/energy_lifetime
TheEnlightenSystemsApi.DefaultApi envoys GET /systems/{system_id}/envoys
TheEnlightenSystemsApi.DefaultApi inventory GET /systems/{system_id}/inventory
TheEnlightenSystemsApi.DefaultApi invertersSummaryByEnvoyOrSite GET /systems/inverters_summary_by_envoy_or_site
TheEnlightenSystemsApi.DefaultApi monthlyProduction GET /systems/{system_id}/monthly_production
TheEnlightenSystemsApi.DefaultApi productionMeterReadings GET /systems/{system_id}/production_meter_readings
TheEnlightenSystemsApi.DefaultApi rgmStats GET /systems/{system_id}/rgm_stats
TheEnlightenSystemsApi.DefaultApi searchSystemId GET /systems/search_system_id
TheEnlightenSystemsApi.DefaultApi stats GET /systems/{system_id}/stats
TheEnlightenSystemsApi.DefaultApi summary GET /systems/{system_id}/summary
TheEnlightenSystemsApi.DefaultApi systems GET /systems

Documentation for Models

Documentation for Authorization

ApiKey

  • Type: API key
  • API key parameter name: key
  • Location: URL query string