Skip to main content

Unofficial API for Amber Electric

Project description

AmberElectric

Make it easier to use Amber's newer API that uses AWS Cognito for authentication.

Specify your login creds, and optionally how long to leave between refeshing the data in seconds. The default is equal to 5 minutes.

You can get the entire response from Amber with the json property, or cut out the middleman and get specific values like currentPrice. Data is stored locally so feel free to grab the properties without hammering Amber's servers or being stuck with stale data.

How-to

from pyAmberElectric import pyAmberElectric
Amber = pyAmberElectric(username='yourEmail', password='yourPassword', updateInterval=600)

#array of your meter prices
Amber.currentPrice

#the complete raw json data
Amber.json

print("Prices are currently ", Amber.currentValue)

The Deets

Renewing auth and data

The authentication token will be automatically renewed when needed, normally lasting an hour. You can call auth() to manually renew if required.

If needed, all known data is requested at once. When the local data is older than the maxAge, the data is refreshed. You can also call update() to manually request new data. Amber's data doesn't change more often than every 5 minutes at most so no need to hammer it.

Avaliable Props

json

Returns the full json object returned by Amber. Contains all info avaliable in the app/website.

currentPrice

Returns an array of your current prices in cents.

currentRenewable

Returns an array of the current percentage of renewables in the grid.

currentValue

Returns an array of the current qualative value of the price. Can be 'BAD', 'NEUTRAL' or 'GOOD'.

periodCost

Returns the total cost for the last 30 days in cents.

periodUsage

Returns the total usage for the last 30 days in Kwh.

periodRenewable

Returns the average percentage of renewables in the grid for the last 30 days.

Secret Methods

You shouldn't need to call these methods but they are there if you really want/need them.

auth()

Renew the authentication token.

update()

Refresh the data from Amber.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyAmberElectric-0.0.2.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyAmberElectric-0.0.2-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file pyAmberElectric-0.0.2.tar.gz.

File metadata

  • Download URL: pyAmberElectric-0.0.2.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.6

File hashes

Hashes for pyAmberElectric-0.0.2.tar.gz
Algorithm Hash digest
SHA256 fadb9be3f59cd00101369de66c0edf45c02c8825d219c012d98b65f257b6d2d7
MD5 75bf7a310e3e094c4d0cb138eac5ea89
BLAKE2b-256 17a6748a5674462dccb6bd25d74d0cdab0f0efe3cdb21385aedee83432f45c28

See more details on using hashes here.

File details

Details for the file pyAmberElectric-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: pyAmberElectric-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.6

File hashes

Hashes for pyAmberElectric-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 348f9c2729fc18bb90a5421e548e8a90e86f0d0d7b83294314e6f2a9246b3b1b
MD5 ff5dbb0a16f7904dc7752b559cb754e3
BLAKE2b-256 754b813b8f12e445c32e9e5016e82384d12643936a78df7cd6eb908d8d09d909

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page