{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "market_date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "target_mw": { "type": "object", "properties": { "interval_minutes": { "type": "number", "const": 15 }, "date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "values": { "minItems": 96, "maxItems": 96, "type": "array", "items": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } } }, "required": [ "interval_minutes", "date", "values" ], "additionalProperties": false }, "units": { "minItems": 1, "type": "array", "items": { "type": "object", "properties": { "unit_id": { "type": "string", "minLength": 1 }, "available_mw": { "type": "object", "properties": { "interval_minutes": { "type": "number", "const": 15 }, "date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "values": { "minItems": 96, "maxItems": 96, "type": "array", "items": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } } }, "required": [ "interval_minutes", "date", "values" ], "additionalProperties": false }, "cost_weight": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" } }, "required": [ "unit_id", "available_mw", "cost_weight" ], "additionalProperties": false } } }, "required": [ "market_date", "target_mw", "units" ], "additionalProperties": false, "$id": "https://vpp-ai-platform/contracts/dispatch_optimization_request.json", "title": "DispatchOptimizationRequest" }