EnergyConcepts
CapacityPool
L2 aggregation primitive: persistent multi-owner pool with signed governance, exit terms, and operating posture.
CapacityPool is the commitment layer for aggregation. It converts a non-binding allocation into a signed object that can be contracted as one commercial surface or wrapped around per-component contracts.
Status lifecycle
draft->binding->executed->dissolving->dissolved
/sign transitions pool status to executed and issues pool-linked encumbrances on component positions. /dissolve requires status=executed and no non-terminal CapacityContract with matching pool_id.
Component-level semantics
Each component carries:
- slot and position identity (
slot_id,position_id) - owner identity (
owner_participant_id) - MW contribution (
contributing_mw) - entry and exit mechanics (
entry_date,exit_terms) - optional pool encumbrance reference (
pool_encumbrance_id)
API
POST /v1/energy/poolsGET /v1/energy/pools/{pool_id}PATCH /v1/energy/pools/{pool_id}POST /v1/energy/pools/{pool_id}/signPOST /v1/energy/pools/{pool_id}/dissolve
Contracting
CapacityContract supports either slot_id or pool_id (exactly one). Use pool_id when the offtake agreement is executed at pool level.