Luxor PlatformAPI DocumentationEnergyContracts
Create contract
Creates a new contract for a site. We accept the following contract types: PPA, Day Ahead, Option, T. D Adder, and REP Adder.
Authorization
bearer AuthorizationBearer <token>
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/api/v1/energy/contracts" \ -H "Content-Type: application/json" \ -d '{ "contract": { "comments": "Fixed PPA for peak hours", "counterparty": "Luxor Energy", "eligible_hours": [ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 ], "end_time": "2025-12-31T23:59:59Z", "origin_iso_name": "ERCOT", "origin_settlement_point_name": "LZ_HOUSTON", "price": "35.50", "quantity_kw": "100.0", "site_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "start_time": "2025-12-22T00:00:00Z", "strike_price": "65.00", "strike_quantity_kw": "750.0", "subtype": "FIXED", "type": "PPA" } }'{ "comments": "Fixed PPA for peak hours", "counterparty": "Luxor Energy", "created_at": "2025-01-10T09:00:00Z", "eligible_hours": [ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 ], "end_time": "2025-12-31T23:59:59Z", "id": "8b9c5f64-6817-4562-b3fc-3d073f77bfc8", "origin_iso_name": "ERCOT", "origin_settlement_point_name": "LZ_HOUSTON", "price": "35.50", "quantity_kw": "100.0", "site_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "start_time": "2025-12-22T00:00:00Z", "strike_price": "65.00", "strike_quantity_kw": "750.0", "subtype": "FIXED", "type": "PPA", "updated_at": "2025-01-10T09:00:00Z"}{ "detail": [ { "loc": [ "string" ], "msg": "string", "type": "string" } ]}Report energy data
Report energy for an existing site in batches. Reference the getting started documentation here for more information on how you should report load.
Delete contract
Deletes an existing contract. A contract cannot be deleted if it would leave a site without a T. D Adder or a REP Adder.