5 Transferring Data with APIs

API-based ingress allows Oracle Utilities Opower to pull data from utility-provided APIs. This path is intended for utilities that already expose the required data through stable APIs and prefer Oracle Utilities to retrieve data through those endpoints instead of through database replication, data sharing, or flat files.

Recommended Use

API-based ingress is usually the most customized option. It can reduce utility extract-building work when suitable APIs already exist, but Oracle Utilities must still evaluate API coverage, authentication, paging, rate limits, error handling, historical data access, and incremental update behavior before confirming the implementation approach.

High-Level Process

Oracle Utilities and the utility work together to confirm that the utility client APIs can provide the data required for Opower products, then design and test the Oracle-managed pull process.

  1. Review the API documentation, available entities, sample payloads, authentication model, test environments, production environments, and support expectations.
  2. Compare API coverage against Opower data requirements.
  3. Identify any data gaps, custom transformations, sequencing dependencies, or implementation assumptions.
  4. Design and test the agreed process for Oracle Utilities Opower to retrieve data through the API.
  5. Test historical and incremental data retrieval, including data quality validation, error handling, and production-readiness expectations.

Utility Requirements

The utility APIs must expose the required data with stable identifiers, complete payloads, documented field meanings, predictable filtering or pagination, and a reliable way to retrieve new and changed records. The APIs should also provide historical data needed for the initial load or another agreed mechanism for delivering that history.

The utility must provide API documentation and other supporting materials, such as:

  • Test and production credentials
  • Authentication details
  • Rate-limit expectations
  • Error contracts
  • Support contacts
  • Notice of API updates or breaking changes

Because this path is custom by nature, Oracle Utilities and the utility should confirm scope and level of effort before committing to API-based ingress.