(* Options: Date: 2025-09-10 19:24:56 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-optimization.power.dev //GlobalNamespace: //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //ExportValueTypes: False IncludeTypes: CommonOptimizerRequest.* //ExcludeTypes: //InitializeCollections: True //AddNamespaces: *) namespace powerDev.Optimization.ServiceModel open System open System.Collections open System.Collections.Generic open System.Runtime.Serialization open ServiceStack open ServiceStack.DataAnnotations [] type CommonOptimizerPortalRequestBase() = member val ProjectId:Guid = new Guid() with get,set member val IsBatchSimulation:Boolean = new Boolean() with get,set member val Force:Boolean = new Boolean() with get,set member val DisableEBSSpot:Boolean = new Boolean() with get,set member val IsServerless:Boolean = new Boolean() with get,set member val ApiActionId:Guid = new Guid() with get,set member val NodeId:Int32 = new Int32() with get,set member val ParallelProject:Int32 = new Int32() with get,set member val ParallelYears:Int32 = new Int32() with get,set member val EnsureExlusive:Int32 = new Int32() with get,set type BatteryProjectGroup = | Undefined = 0 | StandAlone = 1 | FTM = 2 | BTM = 3 type 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 type BooleanValue = | Undefined = 0 | Yes = 1 | No = 2 | Custom = 3 type PriceMarketType = | Undefined = 0 | Realtime = 1 | DayAhead = 10 | DART = 101 type RevenueStackingMode = | SolveWithoutAncillary = 0 | SolveWithAncillary = 1 type ApiResponseStatus = | Undefined = 0 | Success = 1 | Pending = 10 | Failed = 100 type BatterySimulationType = | Undefined = 0 | SingleRun = 1 | BatchSimulation = 2 | BatchSub = 21 | Siting = 100 type BatteryProjectAction = | Undefined = 0 | Arbitrage = 1 | PeakShaving = 2 | Smooting = 3 | Firming = 4 type BatteryDataSoruce = | Undefined = 0 | Merchant = 1 | Future = 2 | TOD = 3 type 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 type CapacityMethod = | Undefined = 0 | Annual = 1 | Tod = 2 | Schedule = 3 type BatteryProductionDataSource = | Undefined = 0 | SetClosest = 1 | UploadedFile = 2 type PowerPlantType = | Undefined = 0 | Solar = 1 | Wind = 2 | Hybrid = 3 [] type BatteryProjectForOptimizer() = member val ProjectId:Guid = new Guid() with get,set member val Version:String = null with get,set member val BaseId:Guid = new Guid() with get,set member val AltId:Int32 = new Int32() with get,set member val SimulationType:BatterySimulationType = new BatterySimulationType() with get,set member val ProjectGroup:BatteryProjectGroup = new BatteryProjectGroup() with get,set member val ProjectAction:BatteryProjectAction = new BatteryProjectAction() with get,set member val Iso:DataProvider = new DataProvider() with get,set member val Name:String = null with get,set member val BaseNodeId:Int32 = new Int32() with get,set member val OrgNodeId:Int32 = new Int32() with get,set member val BaseZoneId:Int32 = new Int32() with get,set member val DataSource:BatteryDataSoruce = new BatteryDataSoruce() with get,set member val BaseMarket:PriceMarketType = new PriceMarketType() with get,set member val PriceGranularity:TimeGranularity = new TimeGranularity() with get,set member val StartDate:DateTime = new DateTime() with get,set member val EndDate:DateTime = new DateTime() with get,set member val BatteryCapacity:Decimal = new Decimal() with get,set member val InterconnectionLimit:Decimal = new Decimal() with get,set member val NamepaletCapacity:Decimal = new Decimal() with get,set [] member val ChargeDischargeLimit:Decimal = new Decimal() with get,set [] member val BaseCapacityRate:Decimal = new Decimal() with get,set [] member val CapacityRate:Decimal = new Decimal() with get,set member val ChargeEfficiency:Decimal = new Decimal() with get,set member val DisChargeEfficiency:Decimal = new Decimal() with get,set member val ParaciticLossesOperation:Decimal = new Decimal() with get,set member val ParaciticLossesResting:Decimal = new Decimal() with get,set member val HVACLosses:Decimal = new Decimal() with get,set member val AcCablingLosses:Decimal = new Decimal() with get,set member val TransformatorLosses:Decimal = new Decimal() with get,set member val ThermalLosses:Decimal = new Decimal() with get,set member val OtherLosses:Decimal = new Decimal() with get,set member val UseEnergy:BooleanValue = new BooleanValue() with get,set member val UseCapacity:BooleanValue = new BooleanValue() with get,set member val CapacityBasis:CapacityMethod = new CapacityMethod() with get,set member val CapacityPayment:Decimal = new Decimal() with get,set member val NetCapacityFactor:Decimal = new Decimal() with get,set member val UseAncillary:BooleanValue = new BooleanValue() with get,set member val ProductionDataSource:BatteryProductionDataSource = new BatteryProductionDataSource() with get,set member val PowerPlantType:PowerPlantType = new PowerPlantType() with get,set member val SolarAcCapacity:Decimal = new Decimal() with get,set member val SolarDcCapacity:Decimal = new Decimal() with get,set member val WindAcCapacity:Decimal = new Decimal() with get,set [] member val SolarCapacityRate:Decimal = new Decimal() with get,set [] member val WindCapacityRate:Decimal = new Decimal() with get,set member val Status:Int32 = new Int32() with get,set member val SimulationStatus:Int32 = new Int32() with get,set member val LastSimulationDate:DateTime = new DateTime() with get,set member val DataStartDate:DateTime = new DateTime() with get,set member val DataEndDate:DateTime = new DateTime() with get,set member val SolarId:Int32 = new Int32() with get,set member val WindId:Int32 = new Int32() with get,set member val LmpFileId:Int32 = new Int32() with get,set member val ProductionFileId:Int32 = new Int32() with get,set member val LoadFileId:Int32 = new Int32() with get,set member val CapacityFileId:Int32 = new Int32() with get,set member val NodeAltId:Int32 = new Int32() with get,set member val NodeRefId:Int32 = new Int32() with get,set member val UseRegup:Decimal = new Decimal() with get,set member val UseRegdown:Decimal = new Decimal() with get,set member val UseSpinning:Decimal = new Decimal() with get,set member val UseNonSpinning:Decimal = new Decimal() with get,set member val SolarDegredation:Decimal = new Decimal() with get,set member val BatteryDegredation:Decimal = new Decimal() with get,set member val Augmentation:Decimal = new Decimal() with get,set member val AugmentationFrequency:Decimal = new Decimal() with get,set member val EnergyIncrement:Decimal = new Decimal() with get,set member val AncillaryIncrement:Decimal = new Decimal() with get,set member val EnableGridArbitrage:Int32 = new Int32() with get,set member val IncrementReferanceYear:Int32 = new Int32() with get,set member val RepresentativeYear:Int32 = new Int32() with get,set member val UseFutureData:Int32 = new Int32() with get,set member val MaxDailyCycle:Decimal = new Decimal() with get,set member val MinDailyProfitPerMw:Decimal = new Decimal() with get,set member val AncillaryFileId:Int32 = new Int32() with get,set member val MaxChargingPriceCap:Decimal = new Decimal() with get,set member val MaxDischargingPriceCap:Decimal = new Decimal() with get,set member val MaxAncillaryPriceCap:Decimal = new Decimal() with get,set member val RevenueStackingMode:RevenueStackingMode = new RevenueStackingMode() with get,set member val OptimizationQuality:Int32 = new Int32() with get,set member val UseInternalSolver:Boolean = new Boolean() with get,set [] type CommonOptimizerResponse() = member val Status:ApiResponseStatus = new ApiResponseStatus() with get,set member val Message:String = null with get,set member val ApiActionId:Guid = new Guid() with get,set member val Detail:String = null with get,set member val Items:IEnumerable = null with get,set [] [] [] type CommonOptimizerRequest() = inherit CommonOptimizerPortalRequestBase() interface IReturn