pg-and-e Usage API

Retrieve energy usage interval data.

OpenAPI Specification

pg-and-e-usage-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: PG&E Share My Data Authorization Usage API
  description: The PG&E Share My Data API provides customer-authorized access to energy usage data following the Energy Service Provider Interface (ESPI) standard and Green Button Connect My Data specification. Third-party companies can access interval data for both electricity and gas usage through RESTful web services with OAuth 2.0 authorization.
  version: '1.0'
servers:
- url: https://api.pge.com
tags:
- name: Usage
  description: Retrieve energy usage interval data.
paths:
  /GreenButtonConnect/espi/1_1/resource/Subscription/{subscriptionId}/UsagePoint:
    get:
      operationId: listUsagePoints
      summary: List usage points
      description: Retrieves usage points for a specified subscription, representing metering points for electricity or gas service.
      tags:
      - Usage
      parameters:
      - name: subscriptionId
        in: path
        required: true
        description: The subscription identifier.
        schema:
          type: string
      responses:
        '200':
          description: Success
  /GreenButtonConnect/espi/1_1/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading:
    get:
      operationId: listMeterReadings
      summary: List meter readings
      description: Retrieves meter reading data for a specified usage point, containing interval usage data for electricity or gas.
      tags:
      - Usage
      parameters:
      - name: subscriptionId
        in: path
        required: true
        description: The subscription identifier.
        schema:
          type: string
      - name: usagePointId
        in: path
        required: true
        description: The usage point identifier.
        schema:
          type: string
      responses:
        '200':
          description: Success
  ? /GreenButtonConnect/espi/1_1/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}/IntervalBlock
  : get:
      operationId: listIntervalBlocks
      summary: List interval blocks
      description: Retrieves interval block data containing detailed energy consumption measurements at regular time intervals.
      tags:
      - Usage
      parameters:
      - name: subscriptionId
        in: path
        required: true
        description: The subscription identifier.
        schema:
          type: string
      - name: usagePointId
        in: path
        required: true
        description: The usage point identifier.
        schema:
          type: string
      - name: meterReadingId
        in: path
        required: true
        description: The meter reading identifier.
        schema:
          type: string
      responses:
        '200':
          description: Success
components:
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://api.pge.com/datacustodian/oauth/v2/authorize
          tokenUrl: https://api.pge.com/datacustodian/oauth/v2/token
          scopes:
            usage:read: Read energy usage data