Skip to content

Common problems

[Highly common] I'm not seeing any logs

This is likely due to not having configured your logger in your python script, follow the example below:

1
2
3
4
5
import logging

from energy_tariff_scheduler import PricingStrategy, Price, runner

logging.getLogger("energy_tariff_scheduler").setLevel(logging.INFO)

[Possibly common] Octopus: The runner is using the incorrect product and prices

Currently the logic for finding your tariff and product is it fetches your account details from your provided account number, finds your most recent tariff, gets the tariff code for it and then tries removes the prefix E-1R and the suffix -{R} (region code).

Obviously this isn't foolproof and a big assumption from the data has been made here so it may fail, and if it does please raise it on the API issues page and provide relevant logs provided under the DEBUG level, an effort has been made to not log out any sensitive data but please be vigilant not to post any in the case of seeing any.

My tariff isn't supported

If you hit this problem you should see this error (note the mismatch in the tariff and product that has been found):

1
2
3
INFO:root:Latest tariff code: E-1R-VAR-22-11-01-M
DEBUG:urllib3.connectionpool:https://api.octopus.energy:443 "GET /v1/products/AGILE-24-10-01/electricity-tariffs/E-1R-VAR-22-11-01-M/standard-unit-rates/?period_from=2025-01-03T00:00:00&period_to=2025-01-03T23:00:00 HTTP/1.1" 404 58
The tariff code you are on isn't supported by this script, please read https://craigwh10.github.io/energy-tariff-scheduler/common-problems/#possibly-common-octopus-the-runner-isnt-finding-my-tariff-or-product

For the example referenced, the debug level is set as DEBUG.

The current supported tariffs are:

  • Octopus Agile Tariff
  • Octopus Go (EV Tariff)
  • Intelligent Octopus Go (EV Tariff)

To help with development of this library, make a post on on the API issues page, describing your tariff/product structure as well as including the logs showing the mismatch and you should get a response as soon as as possible!

[Less common] The runner wont start because of the API not returning data

This library is build around third party API's, these can fail due to many reasons which are out of this libraries control.

I wouldn't reccomend spam retrying the script as this could lead to your IP being blacklisted, the script automatically tries to retry the failed call 3 times (with a 10s delay), it could take upwards of a few days for things to get rectified (as it's people on the other end who need to fix it), so just be patient with it and try every hour or so.

Also, when you see this happen be sure to start a discussion on the API issues page to make others aware that this is happening and to help with making the solution more resiliant to these sorts of issues.