{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "market_date": { "type": "string", "pattern": "^\\d{4}-\\d{2}-\\d{2}$" }, "total_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 }, "allocations": { "minItems": 1, "type": "array", "items": { "type": "object", "properties": { "unit_id": { "type": "string", "minLength": 1 }, "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 } }, "required": [ "unit_id", "target_mw" ], "additionalProperties": false } }, "shortfall_mwh": { "type": "string", "pattern": "^-?\\d+(\\.\\d+)?$" }, "solver": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "version": { "type": "string", "minLength": 1 }, "status": { "type": "string", "enum": [ "OPTIMAL", "INFEASIBLE", "ERROR" ] }, "wall_time_ms": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 } }, "required": [ "name", "version", "status", "wall_time_ms" ], "additionalProperties": false }, "skill_version": { "type": "string", "pattern": "^\\d+\\.\\d+\\.\\d+$" } }, "required": [ "market_date", "total_target_mw", "allocations", "shortfall_mwh", "solver", "skill_version" ], "additionalProperties": false, "$id": "https://vpp-ai-platform/contracts/dispatch_optimization_result.json", "title": "DispatchOptimizationResult" }