(* Options: Date: 2026-06-13 03:51:35 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //ExportValueTypes: False IncludeTypes: RfpPricePreviewRequest.* //ExcludeTypes: //InitializeCollections: True //AddNamespaces: *) namespace CRM.AgencyPlatform.API.Internal open System open System.IO open System.Collections open System.Collections.Generic open System.Runtime.Serialization open ServiceStack open ServiceStack.DataAnnotations open System.Net [] type ResourcedPosition() = member val PositionTag:String = null with get,set member val Hours:Nullable = new Nullable() with get,set member val Headcount:Nullable = new Nullable() with get,set member val SourceReference:String = null with get,set member val Notes:String = null with get,set member val IsInCatalog:Boolean = new Boolean() with get,set member val ContactID:Nullable = new Nullable() with get,set [] type ResourcedEquipment() = member val EquipmentID:Int32 = new Int32() with get,set member val EquipmentName:String = null with get,set member val MakeModel:String = null with get,set member val Quantity:Nullable = new Nullable() with get,set member val DurationDays:Nullable = new Nullable() with get,set member val SourceReference:String = null with get,set member val Notes:String = null with get,set member val IsInCatalog:Boolean = new Boolean() with get,set member val SuggestedEquipmentID:Int32 = new Int32() with get,set member val SuggestedEquipmentName:String = null with get,set [] type ResourcedMaterial() = member val MaterialID:Int32 = new Int32() with get,set member val MaterialName:String = null with get,set member val MakeModel:String = null with get,set member val Quantity:Nullable = new Nullable() with get,set member val Unit:String = null with get,set member val SourceReference:String = null with get,set member val Notes:String = null with get,set member val IsInCatalog:Boolean = new Boolean() with get,set member val SuggestedMaterialID:Int32 = new Int32() with get,set member val SuggestedMaterialName:String = null with get,set [] type TaskResourcing() = member val Positions:ResizeArray = new ResizeArray() with get,set member val Equipment:ResizeArray = new ResizeArray() with get,set member val Materials:ResizeArray = new ResizeArray() with get,set [] type ProposedTask() = member val Seq:Int32 = new Int32() with get,set member val Name:String = null with get,set member val Category:String = null with get,set member val Quantity:Nullable = new Nullable() with get,set member val Unit:String = null with get,set member val SourceItemNumber:String = null with get,set member val SourceReference:String = null with get,set member val Notes:String = null with get,set member val Resourcing:TaskResourcing = null with get,set member val DurationDays:Nullable = new Nullable() with get,set member val DependsOn:ResizeArray = new ResizeArray() with get,set member val EstimatedStartDate:Nullable = new Nullable() with get,set member val EstimatedEndDate:Nullable = new Nullable() with get,set [] type ProjectProposal() = member val RfpDocumentID:Int32 = new Int32() with get,set member val ProjectName:String = null with get,set member val ClientName:String = null with get,set member val ProjectType:String = null with get,set member val ProjectLocation:String = null with get,set member val Scope:String = null with get,set member val ProjectDescription:String = null with get,set member val ContractDurationDays:Nullable = new Nullable() with get,set member val BidDueDate:String = null with get,set member val EstimatedStartDate:Nullable = new Nullable() with get,set member val EstimatedEndDate:Nullable = new Nullable() with get,set member val Tasks:ResizeArray = new ResizeArray() with get,set [] type CostRange() = member val Min:Double = new Double() with get,set member val Max:Double = new Double() with get,set member val Mid:Double = new Double() with get,set [] type PricedPosition() = member val PositionTag:String = null with get,set member val Hours:Double = new Double() with get,set member val HasInternalRate:Boolean = new Boolean() with get,set member val RateMin:Nullable = new Nullable() with get,set member val RateMax:Nullable = new Nullable() with get,set member val RateAvg:Nullable = new Nullable() with get,set member val ContactCount:Int32 = new Int32() with get,set member val Cost:CostRange = null with get,set member val MarketRateReference:Nullable = new Nullable() with get,set [] type PricedEquipment() = member val EquipmentID:Int32 = new Int32() with get,set member val EquipmentName:String = null with get,set member val Quantity:Double = new Double() with get,set member val DurationDays:Nullable = new Nullable() with get,set member val RateType:String = null with get,set member val BilledRate:Nullable = new Nullable() with get,set member val CostRate:Nullable = new Nullable() with get,set member val HasRate:Boolean = new Boolean() with get,set member val IsInCatalog:Boolean = new Boolean() with get,set member val Cost:Double = new Double() with get,set member val CompanyCost:Double = new Double() with get,set member val Margin:Double = new Double() with get,set [] type PricedMaterial() = member val MaterialID:Int32 = new Int32() with get,set member val MaterialName:String = null with get,set member val Quantity:Double = new Double() with get,set member val UnitCost:Nullable = new Nullable() with get,set member val HasRate:Boolean = new Boolean() with get,set member val IsInCatalog:Boolean = new Boolean() with get,set member val Cost:Double = new Double() with get,set [] type PricedTask() = member val Name:String = null with get,set member val Category:String = null with get,set member val Positions:ResizeArray = new ResizeArray() with get,set member val Equipment:ResizeArray = new ResizeArray() with get,set member val Materials:ResizeArray = new ResizeArray() with get,set member val Subtotal:CostRange = null with get,set [] type PricedProposal() = member val RfpDocumentID:Int32 = new Int32() with get,set member val ProjectName:String = null with get,set member val Currency:String = null with get,set member val Tasks:ResizeArray = new ResizeArray() with get,set member val Total:CostRange = null with get,set member val PositionsNeedingRate:Int32 = new Int32() with get,set member val EquipmentNotInCatalog:Int32 = new Int32() with get,set member val MaterialsNotInCatalog:Int32 = new Int32() with get,set member val PositionsNotInCatalog:Int32 = new Int32() with get,set member val EquipmentMargin:Double = new Double() with get,set [] [] type ResponseStatus() = [] member val ErrorCode:String = null with get,set [] member val Message:String = null with get,set [] member val StackTrace:String = null with get,set [] member val Errors:ResizeArray = new ResizeArray() with get,set [] member val Meta:Dictionary = new Dictionary() with get,set [] type RfpPricingResponse() = member val ResponseStatus:ResponseStatus = null with get,set member val RfpDocumentID:Int32 = new Int32() with get,set member val Pricing:PricedProposal = null with get,set [] [] type RfpPricePreviewRequest() = interface IReturn member val Proposal:ProjectProposal = null with get,set