Southern Company API
Control Southern company websites with this api
Supported utilities
| Utility | Class | Auth method |
|---|---|---|
| Georgia Power, Alabama Power, Mississippi Power | SouthernCompanyAPI |
JWT |
| Nicor Gas (LDC=7) | NicorGasAPI |
Cookie session |
Usage
Southern Company electric utilities (Georgia Power, Alabama Power, Mississippi Power)
import asyncio
import aiohttp
from southern_company_api import SouthernCompanyAPI
async def main():
async with aiohttp.ClientSession() as session:
api = SouthernCompanyAPI("username", "password", session)
await api.connect()
for account in await api.accounts:
usage = await account.get_daily_data(start, end, await api.jwt)
print(usage)
asyncio.run(main())
Nicor Gas
import asyncio
import aiohttp
from southern_company_api import NicorGasAPI
async def main():
async with aiohttp.ClientSession() as session:
api = NicorGasAPI("username", "password", session)
await api.connect()
history = await api.get_usage_history()
for period in history.billing_periods:
print(period.date, period.therms, "therms")
for day in history.daily_usage:
print(day.date.date(), day.therms, "therms", day.cost, "cost")
print("Projected bill:", history.projected_bill.low_amount,
"–", history.projected_bill.high_amount)
asyncio.run(main())
Nicor Gas data types
| Type | Fields |
|---|---|
NicorBillingPeriod |
date, meter_reading, reading_details, ccfs, therms, days_used |
NicorDailyUsage |
date, therms, cost, avg_temp, day_of_week, is_weekend, read_type, meter_read, billing_period |
NicorProjectedBill |
usage, low_amount, high_amount |
NicorMeterInfo |
meter_number, meter_status, next_read_date |
All date fields are timezone-aware UTC datetime objects. The parse_aspnet_date helper
converts the ASP.NET /Date(ms)/ format used in the portal.
Installation
Install this via pip (or your favourite package manager):
pip install southern-company-api
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Luke 💻 🤔 📖 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Credits
This package was created with Copier and the browniebroke/pypackage-template project template.
Metadata
Release files for southern-company-api 0.8.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| southern_company_api-0.8.1.tar.gz | 23.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| southern_company_api-0.8.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 47.5 kB
Release files / southern_company_api-0.8.1.tar.gz
| Download URL | southern_company_api-0.8.1.tar.gz |
|---|---|
| Size | 23.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dffcafae60fb19aaa266ce6b28ddaf072bdb060b87e7a049f68e0c7f0a3491a2
|
|
BLAKE2b-256 checksum How to use checksums |
9779f622414aa086d4d8848a732005e715290dbcc5a47fce1dfb21226ce23cb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / southern_company_api-0.8.1-py3-none-any.whl
| Download URL | southern_company_api-0.8.1-py3-none-any.whl |
|---|---|
| Size | 24.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ef1f531e2c118e7510703638b6f44e1a7c596bbe330322f08bd3077419ff62c
|
|
BLAKE2b-256 checksum How to use checksums |
dd06bc70dc8ab5e376f65d170499d799791004c4f4c7d5cc6486b3ffa8d82830
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Security for southern-company-api 0.8.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.