Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


A tiny Python program to scrape Koodo Mobile's prepaid billing dashboard and return data therein as a JSON blob (or CSV) over HTTP. Super rough, lightweight, and brittle. Currently only fetches data about usage - how many minutes and how many megabytes you have left on your mobile "Boosters."

Includes a D3.js graph that you can look at to view your usage over time, as well as a cronjob that can automatically fetch data from Koodo.

Runs well (and for free) on Heroku:


##Local installation

git clone
cd koodo-prepaid-api
pip install -r requirements.txt

To run the server locally:

python --server

To fetch a single data point from Koodo:

python --fetch


Important variables - like the username and password you use to log into Koodo's prepaid billing dashboard - need to be stored somewhere. What better place than in environment variables?

  • KOODO_USERNAME stores the user name (i.e. email address) used to log into your Koodo prepaid account.

  • KOODO_PASSWORD stores the password you use to log into your Koodo prepaid account. (super secure)

  • DATABASE_URL stores the DB connection string used to connect to some sort of a database. If you don't provide this, a SQLite DB called koodo.db will be created in the current directory and used instead. (Note that SQLite won't work on Heroku.)

##Heroku Setup The one-click "Deploy to Heroku" button above should do almost everying required to set this app up on Heroku, but there are still a couple steps that need doing.

  • Log into the Heroku Scheduler Dashboard and add a single recurring task that calls python --fetch every hour. (This task shouldn't take longer than 30 seconds to fetch a single data point from Koodo, which means that running the task hourly won't exceed your monthly free dyno allotment.)


Tons of cool stuff could be done with this data. Scrape another page to find out things like:

  • How much am I actually spending on my Koodo prepaid account, on average?
  • Is Prepaid still cheaper than Postpaid, given my usage patterns?


An unofficial JSON API (and visualizer) for reading data from your Koodo Prepaid account.







No releases published


No packages published