POST | /optimizer/monthly |
---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports powerDev.Optimization.ServiceModel
Imports powerDev.Optimization.Models
Imports powerDev.Common.Types
Imports powerDev.Common.Models
Imports powerDev.Common.Types.Enums
Namespace Global
Namespace powerDev.Common.Models
Public Partial Class BatteryProjectTodItem
Public Overridable Property Month As Integer
Public Overridable Property WeekDay As Integer
Public Overridable Property Hour As Integer
Public Overridable Property Price As Decimal
<Ignore>
Public Overridable Property Id As String
End Class
Public Partial Class BatteryScenarioKeyGroup
Public Overridable Property KeyId As Integer
Public Overridable Property Year As Integer
Public Overridable Property NodeId As Integer
Public Overridable Property Provider As DataProvider
Public Overridable Property ZoneId As Integer
Public Overridable Property PlantType As PowerPlantType
Public Overridable Property SolarId As Integer
Public Overridable Property WindId As Integer
Public Overridable Property IsServerless As Boolean
End Class
Public Partial Class BatteryScenarioKeyItem
Public Overridable Property ProjectId As Guid
Public Overridable Property KeyId As Integer
Public Overridable Property KeyType As BatteryScenarioType
Public Overridable Property RecordKey As String
Public Overridable Property JobStatus As Integer
Public Overridable Property Status As Integer
Public Overridable Property MinDate As Date
Public Overridable Property MaxDate As Date
Public Overridable Property Year As Integer
Public Overridable Property YoyStatus As Integer
Public Overridable Property UsableCapacity As Decimal
Public Overridable Property UsableCapacityFactor As Decimal
Public Overridable Property SolarUsableCapacity As Decimal
Public Overridable Property SolarUsableCapacityFactor As Decimal
Public Overridable Property BaseMarket As PriceMarketType
Public Overridable Property BaseCapacityRate As Decimal
Public Overridable Property CapacityRate As Decimal
Public Overridable Property SolarCapacityRate As Decimal
Public Overridable Property WindCapacityRate As Decimal
Public Overridable Property ChargeEfficinecy As Decimal
Public Overridable Property DischargeEfficinecy As Decimal
Public Overridable Property NodeId As Integer
Public Overridable Property Provider As DataProvider
Public Overridable Property ZoneId As Integer
Public Overridable Property LmpFileId As Integer
Public Overridable Property ProductionFileId As Integer
Public Overridable Property LoadFileId As Integer
Public Overridable Property CapacityFileId As Integer
Public Overridable Property PlantType As PowerPlantType
Public Overridable Property SolarId As Integer
Public Overridable Property WindId As Integer
Public Overridable Property AncillaryIncrementFactor As Decimal
Public Overridable Property EnergyIncrementFactor As Decimal
Public Overridable Property CapacityIncrementFactor As Decimal
End Class
End Namespace
Namespace powerDev.Common.Types
Public Enum BatteryProjectGroup
Undefined
StandAlone
FTM
BTM
End Enum
Public Enum BatteryScenarioType
Undefined
Optimization
Sum
OptiSum
FullTod
CapacityTod
End Enum
Public Enum BooleanValue
Undefined
Yes
No
Custom
End Enum
Public Enum DataProvider
Undefined = 0
SPP = 1
ERCOT = 2
MISO = 3
CAISO = 4
PJM = 5
ISONE = 6
NYISO = 7
NW = 8
SW = 9
SE = 10
AESO = 11
IESO = 12
CENACE = 20
NONISO = 99
EIA = 100
PNM = 150
NREL = 200
NOAA = 210
ENTSOE = 1000
EPIAS = 1010
SELF = 10000
End Enum
Public Enum PriceMarketType
Undefined = 0
Realtime = 1
DayAhead = 10
DART = 101
End Enum
End Namespace
Namespace powerDev.Common.Types.Enums
Public Enum PowerPlantType
Undefined
Solar
Wind
Hybrid
End Enum
Public Enum RevenueStackingMode
SolveWithoutAncillary
SolveWithAncillary
End Enum
End Namespace
Namespace powerDev.Optimization.Models
Public Partial Class MonthlyApiStatusResponse
Public Overridable Property FailedCount As Integer
End Class
Public Partial Class MonthlyRequestBase
Public Overridable Property ProjectId As Guid
Public Overridable Property NodeAltId As Integer
Public Overridable Property Iso As DataProvider
Public Overridable Property UseEnergy As BooleanValue
Public Overridable Property UseAncillary As BooleanValue
Public Overridable Property UseCapacityTod As Boolean
Public Overridable Property BaseMarket As PriceMarketType
Public Overridable Property CapacityTODs As IEnumerable(Of BatteryProjectTodItem)
Public Overridable Property UseRegup As Decimal
Public Overridable Property UseRegdown As Decimal
Public Overridable Property UseSpinning As Decimal
Public Overridable Property UseNonSpinning As Decimal
Public Overridable Property ParaciticLossesOperation As Decimal
Public Overridable Property ParaciticLossesResting As Decimal
Public Overridable Property HVACLosses As Decimal
Public Overridable Property AcCablingLosses As Decimal
Public Overridable Property TransformatorLosses As Decimal
Public Overridable Property OtherLosses As Decimal
Public Overridable Property RepresentativeYear As Integer
Public Overridable Property IncrementReferanceYear As Integer
Public Overridable Property UseFutureData As Integer
Public Overridable Property MaxDailyCycle As Decimal
Public Overridable Property MinDailyProfitPerMw As Decimal
Public Overridable Property AncillaryFileId As Integer
Public Overridable Property LmpFileId As Integer
Public Overridable Property MaxChargingPriceCap As Decimal
Public Overridable Property MaxDischargingPriceCap As Decimal
Public Overridable Property MaxAncillaryPriceCap As Decimal
Public Overridable Property RevenueStackingMode As RevenueStackingMode
Public Overridable Property OptimizationQuality As Integer
Public Overridable Property EnsureExlusive As Integer
Public Overridable Property NodeRefId As Integer
Public Overridable Property UseInternalSolver As Boolean
End Class
End Namespace
Namespace powerDev.Optimization.ServiceModel
Public Partial Class CommonOptimizerMonthlyRequest
Inherits MonthlyRequestBase
Public Overridable Property Month As Integer
Public Overridable Property Group As BatteryScenarioKeyGroup
Public Overridable Property Key As BatteryScenarioKeyItem
Public Overridable Property ProjectGroup As BatteryProjectGroup
End Class
End Namespace
End Namespace
VB.NET CommonOptimizerMonthlyRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /optimizer/monthly HTTP/1.1
Host: dev-optimization.power.dev
Accept: application/json
Content-Type: application/json
Content-Length: length
{"month":0,"group":{"keyId":0,"year":0,"nodeId":0,"provider":"Undefined","zoneId":0,"plantType":"Undefined","solarId":0,"windId":0,"isServerless":false},"key":{"projectId":"00000000000000000000000000000000","keyId":0,"keyType":"Undefined","recordKey":"String","jobStatus":0,"status":0,"year":0,"yoyStatus":0,"usableCapacity":0,"usableCapacityFactor":0,"solarUsableCapacity":0,"solarUsableCapacityFactor":0,"baseMarket":"Undefined","baseCapacityRate":0,"capacityRate":0,"solarCapacityRate":0,"windCapacityRate":0,"chargeEfficinecy":0,"dischargeEfficinecy":0,"nodeId":0,"provider":"Undefined","zoneId":0,"lmpFileId":0,"productionFileId":0,"loadFileId":0,"capacityFileId":0,"plantType":"Undefined","solarId":0,"windId":0,"ancillaryIncrementFactor":0,"energyIncrementFactor":0,"capacityIncrementFactor":0},"projectGroup":"Undefined","projectId":"00000000000000000000000000000000","nodeAltId":0,"iso":"Undefined","useEnergy":"Undefined","useAncillary":"Undefined","useCapacityTod":false,"baseMarket":"Undefined","useRegup":0,"useRegdown":0,"useSpinning":0,"useNonSpinning":0,"paraciticLossesOperation":0,"paraciticLossesResting":0,"hvacLosses":0,"acCablingLosses":0,"transformatorLosses":0,"otherLosses":0,"representativeYear":0,"incrementReferanceYear":0,"useFutureData":0,"maxDailyCycle":0,"minDailyProfitPerMw":0,"ancillaryFileId":0,"lmpFileId":0,"maxChargingPriceCap":0,"maxDischargingPriceCap":0,"maxAncillaryPriceCap":0,"revenueStackingMode":"SolveWithoutAncillary","optimizationQuality":0,"ensureExlusive":0,"nodeRefId":0,"useInternalSolver":false}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"failedCount":0}