How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Green Button Connect My Data

Green Button Connect My Data is the OAuth2-based ESPI service that lets Con Edison customers authorize a registered third party to receive their interval energy usage and account data on a recurring basis. Third parties register through Con Edison's onboarding process to obtain client credentials, then exchange them for access tokens that retrieve ESPI Atom/XML resources for usage points, meter readings, and electric power usage summaries.

Green Button Connect My Data is one of 2 APIs that Consolidated Edison publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Energy, Green Button, Authentication, Smart Meter, and Usage Data. The published artifact set on APIs.io includes API documentation, authentication docs, an OpenAPI specification, an API reference, and a getting-started guide.

This API exposes 37 operations across 37 paths, organized into 14 resource areas, and defines 12 schemas. It is described by OpenAPI 2.0, at version v1.

Requests are made against the base URL https://api.coned.com/gbc/espi/1_1.

37 operations 37 paths 12 schemas 35 GET2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
v1
Base URL
https://api.coned.com/gbc/espi/1_1
Resource Areas
14

Paths & Operations 37

Across 37 paths, the API surfaces 37 operations — 35 GET, 2 POST. They span 14 resource areas, including ApplicationInformation, Authorization, ServiceStatus, Batch, IntervalBlock, LocalTimeParameters, MeterReading, ReadingType, and 6 more. Each is listed below with its method, path, parameters, and response codes.

ApplicationInformation 1
GET
/resource/ApplicationInformation/{applicationInformationId}
getThirdPartyApplicationById 1 param → 200400401
Authorization 3
GET
/resource/Authorization
Get all Third Party Authorizations 4 params → 200400401
GET
/resource/Authorization/{authorizationId}
Get Third Party Authorization by ID 5 params → 200400401
POST
/oauth/Token
Token 1 param → 200400
ServiceStatus 1
GET
/resource/ReadServiceStatus
readServiceStatus → 200400401
Batch 4
GET
/resource/Batch/Bulk/{bulkId}
getAllUsageDataInBatch 3 params → 200400401
GET
/resource/Batch/Subscription/{subscriptionId}
getAllUsageDataForSubscriptionInBatch 3 params → 200400401
GET
/resource/Batch/Subscription/{subscriptionId}/UsagePoint/{usagePointId}
getUsagePointBySubscriptionInBatch 4 params → 200400401
GET
/resource/Batch/RetailCustomer/{subscriptionId}
getCustomerInformationInBatch 1 param → 200400401
IntervalBlock 2
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}/IntervalBlock
getAllIntervalBlocksForUsagePointMeterReadingInSubscription 6 params → 200400401
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}/IntervalBlock/{intervalBlockId}
getIntervalBlocksForUsagePointMeterReadingInSubscription 7 params → 200400401
LocalTimeParameters 2
GET
/resource/LocalTimeParameters
getLocalTimeParameters 1 param → 200400401
GET
/resource/LocalTimeParameters/{localTimeParameterId}
getLocalTimeParametersById 2 params → 200400401
MeterReading 2
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading
getAllMeterReadingsForUsagePointInSubscription 3 params → 200400401
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}
getMeterReadingForUsagePointInSubscription 4 params → 200400401
ReadingType 2
GET
/resource/ReadingType
getAllReadingTypes 1 param → 200400401
GET
/resource/ReadingType/{readingTypeId}
getReadingTypesById 2 params → 200400401
RealTimeBatch 3
GET
/resource/RealTime/Batch/Bulk/{bulkId}
getAllRealTimeUsageDataInBatch 3 params → 200400401
GET
/resource/RealTime/Batch/Subscription/{subscriptionId}
getAllRealTimeUsageDataForSubscriptionInBatch 3 params → 200400401
GET
/resource/RealTime/Batch/Subscription/{subscriptionId}/UsagePoint/{usagePointId}
getRealTimeUsagePointBySubscriptionInBatch 4 params → 200400401
RealTimeIntervalBlock 2
GET
/resource/RealTime/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}/IntervalBlock
getAllRealTimeIntervalBlocksForUsagePointMeterReadingInSubscription 4 params → 200400401
GET
/resource/RealTime/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/MeterReading/{meterReadingId}/IntervalBlock/{intervalBlockId}
getRealTimeIntervalBlockForUsagePointMeterReadingInSubscription 5 params → 200400401
RealTimeReadingType 2
GET
/resource/RealTime/ReadingType
getAllRealTimeReadingTypes 1 param → 200400401
GET
/resource/RealTime/ReadingType/{readingTypeId}
getRealTimeReadingTypeById 2 params → 200400401
RetailCustomer 9
GET
/resource/Customer/{subscriptionId}
getCustomerInformationBySubscription 1 param → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount
getCustomerAccountInSubscription 1 param → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}
getCustomerAccountByAccountIdInSubscription 2 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement
getCustomerAgreementByAccountIdInSubscription 2 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement/{customerAgreementId}
getCustomerAgreementByCustomerAgreementId 3 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement/{customerAgreementId}/ServiceLocation
getAllServiceLocationByCustomerAgreementIdAndAccountIdInSubscription 3 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement/{customerAgreementId}/ServiceLocation/{serviceLocationId}
getServiceLocationByServiceLocationId 4 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement/{customerAgreementId}/ServiceLocation/{serviceLocationId}/Meter
getAllMetersForServiceLocationInSubscription 4 params → 200400401
GET
/resource/Customer/{subscriptionId}/CustomerAccount/{accountId}/CustomerAgreement/{customerAgreementId}/ServiceLocation/{serviceLocationId}/Meter/{serialNumber}
getMeterBySerialNumberId 5 params → 200400401
ElectricPowerUsageSummary 2
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/UsageSummary
getAllElectricPowerUsageSummaries 5 params → 200400401
POST
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}/UsageSummary/{usageSummaryId}
getAllElectricPowerUsageSummariesById 3 params → 200400401
UsagePoint 2
GET
/resource/Subscription/{subscriptionId}/UsagePoint
getAllUsagePointsBySubscription 2 params → 200400401
GET
/resource/Subscription/{subscriptionId}/UsagePoint/{usagePointId}
getUsagePointsForSubscription 3 params → 200400401

Schemas 12

The contract defines 12 schemas that model the data the API accepts and returns. The most detailed are ApplicationInformationModel (53 properties), AuthorizationModel (27 properties), TokenRequest (7 properties), Entry (7 properties). Each schema is shown below with its type and property counts.

Feed
object
7 properties
Title
object
2 properties
Link
object
2 properties
Entry
object
7 properties
Content
object
3 properties
ApplicationInformationModel
object
53 properties
AuthorizationModel
object
27 properties
AuthorizationPeriod
object
2 properties
SubscriptionModel
object
5 properties
AccountNumber
object
1 property
TokenRequest
object
7 properties
LastMonthDates
object
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

consolidated-edison-green-button-connect-openapi.yml Raw ↑

Other APIs Consolidated Edison publishes across the network.

Green Button Download My Data
Where this information came from

This is an independent, third-party profile of Green Button Connect My Data, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.