This is the first part of our series What is The Green Button API initiative and How It Took OAuth To An Entirely New Level. In this part, we take a look at some of the primary use cases of the initiative.
The Green Button Initiative provides for the exchange of Energy Usage Information to satisfy a number of use cases in the energy industry. The technology assembled addresses this diversity of use cases. The basic patterns of exchange are illustrated in the following figure:

Green Button technology defines three principal roles participating in a data exchange. (For Green Button, the data is energy usage information.)
- Data Custodian: the entity that is the “custodian” of the data, for example the retail electric utility. OAuth refers to this role as the “resource server and authorization server.”
- Third Party: the entity that wishes to provide a service to the retail customer and wants access to the data. For example, that might be a developer of advanced energy management services who is integrating cloud computing and handheld device access with consumer recommendations on how to lower a utility bill. OAuth refers to this role as the “client.”
- Retail Customer: the party whom the data is about, such as a consumer who subscribed to a local electric utility for electric service. OAuth refers to this role as the “resource owner.”
What all Green Button exchanges share in common is a basic data format for exchange. In Green Button Download My Data (GBDMD) this data is exchanged via an interaction between the retail customer and data custodian on the latter’s web portal. The result is a file which is downloaded and can be used as the recipient sees fit.
Green Button Connect My Data (GBCMD), also known as Green Button Connect, involves the authorization and subsequent transfer of data via secure RESTful web services. In part 2, we will help you understand the requirements and standards behind the Green Button Initiative. This series was co-authored by Dr. David Wollman, Deputy Director, Smart Grid and Cyber-Physical Systems Program Office, National Institute of Standards and Technology.