POST | /optimizer/ftm | ||
---|---|---|---|
POST | /optimizer/common |
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports powerDev.Optimization.ServiceModel
Imports powerDev.Common.Models
Imports powerDev.Common.Types
Imports powerDev.Common.Types.Enums
Namespace Global
Namespace powerDev.Common.Models
Public Partial Class BatteryProjectForOptimizer
Public Overridable Property ProjectId As Guid
Public Overridable Property Version As String
Public Overridable Property BaseId As Guid
Public Overridable Property AltId As Integer
Public Overridable Property SimulationType As BatterySimulationType
Public Overridable Property ProjectGroup As BatteryProjectGroup
Public Overridable Property ProjectAction As BatteryProjectAction
Public Overridable Property Iso As DataProvider
Public Overridable Property Name As String
Public Overridable Property BaseNodeId As Integer
Public Overridable Property OrgNodeId As Integer
Public Overridable Property BaseZoneId As Integer
Public Overridable Property DataSource As BatteryDataSoruce
Public Overridable Property BaseMarket As PriceMarketType
Public Overridable Property PriceGranularity As TimeGranularity
Public Overridable Property StartDate As Date
Public Overridable Property EndDate As Date
Public Overridable Property BatteryCapacity As Decimal
Public Overridable Property InterconnectionLimit As Decimal
Public Overridable Property NamepaletCapacity As Decimal
<Ignore>
Public Overridable Property ChargeDischargeLimit As Decimal
<Ignore>
Public Overridable Property BaseCapacityRate As Decimal
<Ignore>
Public Overridable Property CapacityRate As Decimal
Public Overridable Property ChargeEfficiency As Decimal
Public Overridable Property DisChargeEfficiency 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 ThermalLosses As Decimal
Public Overridable Property OtherLosses As Decimal
Public Overridable Property UseEnergy As BooleanValue
Public Overridable Property UseCapacity As BooleanValue
Public Overridable Property CapacityBasis As CapacityMethod
Public Overridable Property CapacityPayment As Decimal
Public Overridable Property NetCapacityFactor As Decimal
Public Overridable Property UseAncillary As BooleanValue
Public Overridable Property ProductionDataSource As BatteryProductionDataSource
Public Overridable Property PowerPlantType As PowerPlantType
Public Overridable Property SolarAcCapacity As Decimal
Public Overridable Property SolarDcCapacity As Decimal
Public Overridable Property WindAcCapacity As Decimal
<Ignore>
Public Overridable Property SolarCapacityRate As Decimal
<Ignore>
Public Overridable Property WindCapacityRate As Decimal
Public Overridable Property Status As Integer
Public Overridable Property SimulationStatus As Integer
Public Overridable Property LastSimulationDate As Date
Public Overridable Property DataStartDate As Date
Public Overridable Property DataEndDate As Date
Public Overridable Property SolarId As Integer
Public Overridable Property WindId 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 NodeAltId As Integer
Public Overridable Property NodeRefId As Integer
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 SolarDegredation As Decimal
Public Overridable Property BatteryDegredation As Decimal
Public Overridable Property Augmentation As Decimal
Public Overridable Property AugmentationFrequency As Decimal
Public Overridable Property EnergyIncrement As Decimal
Public Overridable Property AncillaryIncrement As Decimal
Public Overridable Property EnableGridArbitrage As Integer
Public Overridable Property IncrementReferanceYear As Integer
Public Overridable Property RepresentativeYear 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 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 UseInternalSolver As Boolean
End Class
Public Partial Class CommonOptimizerPortalRequestBase
Public Overridable Property ProjectId As Guid
Public Overridable Property IsBatchSimulation As Boolean
Public Overridable Property Force As Boolean
Public Overridable Property DisableEBSSpot As Boolean
Public Overridable Property IsServerless As Boolean
Public Overridable Property ApiActionId As Guid
Public Overridable Property NodeId As Integer
Public Overridable Property ParallelProject As Integer
Public Overridable Property ParallelYears As Integer
Public Overridable Property EnsureExlusive As Integer
End Class
Public Partial Class CommonOptimizerResponse
Public Overridable Property Status As ApiResponseStatus
Public Overridable Property Message As String
Public Overridable Property ApiActionId As Guid
Public Overridable Property Detail As String
Public Overridable Property Items As IEnumerable(Of BatteryProjectForOptimizer)
End Class
End Namespace
Namespace powerDev.Common.Types
Public Enum ApiResponseStatus
Undefined = 0
Success = 1
Pending = 10
Failed = 100
End Enum
Public Enum BatteryDataSoruce
Undefined
Merchant
Future
TOD
End Enum
Public Enum BatteryProjectAction
Undefined
Arbitrage
PeakShaving
Smooting
Firming
End Enum
Public Enum BatteryProjectGroup
Undefined
StandAlone
FTM
BTM
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
Public Enum TimeGranularity
Undefined = 0
hourly = 1
daily = 2
weekly = 3
monthy = 4
yearly = 5
fivemin = 10
tenmin = 11
fifteenmin = 12
halfhour = 13
quarterly = 14
twohours = 21
threehours = 22
fourhours = 24
sixhours = 26
eighthours = 28
twelvehours = 32
irregular = 100
End Enum
End Namespace
Namespace powerDev.Common.Types.Enums
Public Enum BatteryProductionDataSource
Undefined
SetClosest
UploadedFile
End Enum
Public Enum BatterySimulationType
Undefined = 0
SingleRun = 1
BatchSimulation = 2
BatchSub = 21
Siting = 100
End Enum
Public Enum CapacityMethod
Undefined
Annual
Tod
Schedule
End Enum
Public Enum PowerPlantType
Undefined
Solar
Wind
Hybrid
End Enum
Public Enum RevenueStackingMode
SolveWithoutAncillary
SolveWithAncillary
End Enum
End Namespace
Namespace powerDev.Optimization.ServiceModel
Public Partial Class CommonOptimizerRequest
Inherits CommonOptimizerPortalRequestBase
End Class
End Namespace
End Namespace
VB.NET CommonOptimizerRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /optimizer/ftm HTTP/1.1
Host: dev-optimization.power.dev
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
projectId: 00000000000000000000000000000000,
isBatchSimulation: False,
force: False,
disableEBSSpot: False,
isServerless: False,
apiActionId: 00000000000000000000000000000000,
nodeId: 0,
parallelProject: 0,
parallelYears: 0,
ensureExlusive: 0
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { status: Undefined, message: String, apiActionId: 00000000000000000000000000000000, detail: String }