Skip to content

Battery Manager

Track battery charge cycles — list, get details, charge, and undo.

Access via grocy.batteries.

for battery in grocy.batteries.list(get_details=True):
    print(f"{battery.name}: last charged {battery.last_charged}")

grocy.batteries.charge(battery_id=1)

Class Reference

BatteryManager(api_client)

Manage batteries and their charge cycle tracking.

Access via grocy.batteries.

list(query_filters=None, get_details=False)

Get all batteries.

Parameters:

Name Type Description Default
query_filters list[str] | None

Optional Grocy API query filters.

None
get_details bool

Fetch full battery details for each item.

False

get(battery_id)

Get a single battery by ID.

Parameters:

Name Type Description Default
battery_id int

The Grocy battery ID.

required

charge(battery_id, tracked_time=None)

Record a charge cycle for a battery.

Parameters:

Name Type Description Default
battery_id int

The Grocy battery ID.

required
tracked_time datetime | None

When the charge occurred. Defaults to now.

None

undo(charge_cycle_id)

Undo a battery charge cycle.

Parameters:

Name Type Description Default
charge_cycle_id int

The charge cycle ID to undo.

required