openapi: 3.2.0 info: description: MISO Public Specification to support Market System Enhancement (MSE) new Market User Interface (MUI 2.0). title: MUI - Public Specification Offer API contact: name: MUI 2.0 Questions url: https://www.misoenergy.org/markets-and-operations/MSE/market-user-interface/ email: MSEQuestions@misoenergy.org license: name: For use by MISO member companies and thier vendors version: 3.3.0 servers: - url: https://cce.midwestiso.org/dart2/ - url: https://markets.midwestiso.org/dart2/ tags: - name: Offer paths: /markets/real-time/{day}/offer/ramp-curves/participants/{participantName}: description: Submit and return the ramp rate curves portion of the Real-Time schedules offer. Data can be submitted at any time per the market rules. The Ramp Rate Curves are used in market clearing only if they are effective for the operating date and hour of the market, and if the 'Enable Ramp Rate Curves' flag is set to true for that hour in the Schedule Offer ramp rate values. To be effective for a given market date and hour, submittal must have completed by market closing. Submission for one or more pnode locations is supported. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of Real-Time ramp rate curves by pnode location for the day. Pnode or portfolio query parameter may be provided, otherwise all valid resources supporting ramp rate curves for participant are returned. Message format differs by offerType property which can be one of the following values; - rampCurve - esrRampCurve operationId: getOfferRampRateCurves parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' - $ref: '#/components/parameters/Hour' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/MultiVariantRampRateCurves' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' post: tags: - Offer description: Post the collection hourly ramp rate curves for one or more pnode locations. Message format differs by offerType property which can be one of the following values; - rampCurve - esrRampCurve operationId: postOfferRampRateCurves parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' responses: '200': $ref: '#/components/responses/OkApiResponse' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MultiVariantRampRateCurves' /markets/common/{day}/offer/cc-status/participants/{participantName}: description: Manage Combined Cycle Status. Submission for one or more pnode locations is supported. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of Combined Cycle status by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all Combined Cycle aggregate resources for participant are returned. operationId: getCombinedCycleResourceDay parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/CombinedCycleStatus' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' post: tags: - Offer description: Submit Combined Cycle status for one or more pnode locations. operationId: postCombinedCycleResourceDay parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' responses: '200': $ref: '#/components/responses/OkApiResponse' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CombinedCycleStatus' /markets/{market}/{day}/offer/auto-overrides/participants/{participantName}: description: Returns regulation offer overrides. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: 'Returns the collection of regulation offer overrides by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all applicable resources for participant which have been overriden are returned. Regulation Offers are overridden under the following circumstances. 1. The Participant’s combined Regulation Capacity and Mileage Offers exceed the allowable Total Regulation Offer range (this can occur if a Deployment Rate change occurs). 2. The Participant’s Resource is awarded regulation capacity in the Day Ahead Market, and Participant’s Real-Time regulation offer differs from its Day Ahead regulation offer for the operating day. ' operationId: getScheduleOfferOverrides parameters: - $ref: '#/components/parameters/MarketType' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/RegulationOfferOverrides' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' /markets/{market}/{day}/offer/qualification-status/participants/{participantName}: description: Returns Qualification Status flags for a resource or Portfolio of resources. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of qualification status flags by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all applicable resources for participant are returned. parameter must be supplied. operationId: getQualificationStatus parameters: - $ref: '#/components/parameters/MarketType' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/QualificationStatus' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' /markets/{market}/{day}/offer/schedule/participants/{participantName}: description: Manage Schedule Offer. Submission for one or more pnode locations is supported. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of daily/hourly schedule offers by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all applicable resources for participant are returned. Message format differs by offerType property which can be one of the following values; - genOffer - dirOffer - drr1Offer - drr2Offer - earOffer - serOffer - esrOffer operationId: getScheduleOffer parameters: - $ref: '#/components/parameters/MarketTypeIncBoth' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' - $ref: '#/components/parameters/LocationType' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/MultiVariantScheduleOffer' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' post: tags: - Offer description: Submit the daily/hourly schedule offers for one or more pnode locations for the day. Message format differs by offerType property which can be one of the following values; - genOffer - dirOffer - drr1Offer - drr2Offer - earOffer - serOffer - esrOffer operationId: postScheduleOffer parameters: - $ref: '#/components/parameters/MarketTypeIncBoth' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' responses: '200': $ref: '#/components/responses/OkApiResponse' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MultiVariantScheduleOffer' /markets/{market}/{day}/offer/defaults/participants/{participantName}: description: Manage Schedule Defaults. Submission for one or more pnode locations is supported. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of schedule offer defaults by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all applicable resources for participant are returned. Message format differs by offerType property which can be one of the following values; - genDefaultOffer - dirDefaultOffer - drr1DefaultOffer - drr2DefaultOffer - earDefaultOffer - serDefaultOffer - esrDefaultOffer operationId: getDefaultDay parameters: - $ref: '#/components/parameters/MarketTypeIncBoth' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' - $ref: '#/components/parameters/LocationType' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/MultiVariantScheduleDefault' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' post: tags: - Offer description: Submit schedule offer defaults for one or more pnode locations for the day. Message format differs by offerType property which can be one of the following values; - genDefaultOffer - dirDefaultOffer - drr1DefaultOffer - drr2DefaultOffer - earDefaultOffer - serDefaultOffer - esrDefaultOffer operationId: postDefaultDay parameters: - $ref: '#/components/parameters/MarketTypeIncBoth' - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' responses: '200': $ref: '#/components/responses/OkApiResponse' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MultiVariantScheduleDefault' /markets/real-time/{day}/offer/overrides/participants/{participantName}: description: Manage Real Time Offer Overrides API. Submission for one or more pnode locations is supported. parameters: - $ref: '#/components/parameters/x-acting-participant' get: tags: - Offer description: Returns the collection of Real-Time offer overrides by pnode location for the day. Pnode or portfolio query parameters may be provided, otherwise all applicable resources for participant are returned. Message format differs by offerType property which can be one of the following values; - genScheduleOfferOverrides - dirScheduleOfferOverrides - drr1ScheduleOfferOverrides - drr2ScheduleOfferOverrides - earScheduleOfferOverrides - serScheduleOfferOverrides - esrScheduleOfferOverrides operationId: getRealTimeOfferOverrides parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' - $ref: '#/components/parameters/Pnode' - $ref: '#/components/parameters/Portfolio' - $ref: '#/components/parameters/LocationType' - name: interval5Since description: Date-time as defined in RFC 3339 having format YYYY-MM-DDTHH:MM:SS-05:00. Optional element to specify the interval since which the overrides are requested. If {day} is today and interval5Since is not provided then currectly active overrides will be returned. If {day} is not today and interval5Since is not provided then data for the day since interval 23:59:59 will be returned. in: query required: false schema: $ref: '#/components/schemas/MarketIntervalLabel' responses: '200': description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/RetrievedMultiVariantRTOfferOverrides' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' post: tags: - Offer description: Submit the Real-Time offer overrides by one or more pnode locations for the day. Message format differs by offerType property which can be one of the following values; - genScheduleOfferOverrides - dirScheduleOfferOverrides - drr1ScheduleOfferOverrides - drr2ScheduleOfferOverrides - earScheduleOfferOverrides - serScheduleOfferOverrides - esrScheduleOfferOverrides operationId: postRealTimeOfferOverrides parameters: - $ref: '#/components/parameters/MarketOperatingDay' - $ref: '#/components/parameters/Participant' responses: '200': $ref: '#/components/responses/OkApiResponse' '400': $ref: '#/components/responses/BadRequestApiResponse' '403': $ref: '#/components/responses/UnauthorizedApiResponse' '404': $ref: '#/components/responses/NotFoundApiResponse' '500': $ref: '#/components/responses/InternalErrorApiResponse' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MultiVariantRTOfferOverrides' components: schemas: DRR2CommitStatus: type: string enum: - NotParticipating - Economic - Emergency - MustRun - Outage PNodeName: description: Commercial Pricing Node (PNode) name. type: string minLength: 1 maxLength: 30 example: PNODE1 EAREnergyDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - null OfflineSTRDispatchStatus: type: string enum: - Economic - NotParticipating LocationType: description: Unit type of a Commercial Pricing Node (PNode). type: string enum: - GEN - DIR - DRR1 - DRR2 - EAR - SER - ESR DRR2ScheduleDefaultItem: type: object properties: offerType: type: string enum: - drr2DefaultOffer example: drr2DefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: rampRate: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' additionalProperties: false defaultRunTimes: type: object properties: maximumDailyCRDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' maximumDailyRegUpDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' maximumDailyRegDownDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' additionalProperties: false defaultStartupCosts: type: object properties: noLoadCost: $ref: '#/components/schemas/OpCostNullable' coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/DRR2CommitStatus' energyDispatchStatus: $ref: '#/components/schemas/DRR2EnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/DRR2RegDispatchStatus' spinningDispatchStatus: $ref: '#/components/schemas/DRR2SpinDispatchStatus' onlineSuppDispatchStatus: $ref: '#/components/schemas/DRR2OnSuppDispatchStatus' offlineSuppDispatchStatus: $ref: '#/components/schemas/DRR2OffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/DRR2RampDispatchStatus' additionalProperties: false defaultLimits: type: object properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false RetrievedMultiVariantRTOfferOverrides: description: Real Time Offer Overrides response. Offer format will vary based on offerType variant. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array items: oneOf: - $ref: '#/components/schemas/RetrievedGenRTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedDRR2RTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedDRR1RTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedEARRTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedSERRTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedDIRRTOfferOverridesItem' - $ref: '#/components/schemas/RetrievedESRRTOfferOverridesItem' required: - pnodeName - offers required: - day - resources ESRSpinDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified GenOnSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified RetrievedDIRRTOfferOverridesItem: type: object properties: offerType: type: string enum: - dirScheduleOfferOverrides example: dirScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' required: - minMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' required: - minMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - economicLimits - emergencyLimits - unitLimitOverrideReason - unitLimitOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energySelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energyDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/GenCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: - boolean - 'null' example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: - boolean - 'null' example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText required: - offerType - effectiveOfferOverrides MarketTypeIncBoth: description: Energy Market types, includes support for both markets. type: string enum: - day-ahead - real-time - both SERScheduleDefaultItem: type: object properties: offerType: type: string enum: - serDefaultOffer example: serDefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: rampRate: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/SERCommitStatus' regulationDispatchStatus: $ref: '#/components/schemas/SERRegDispatchStatus' additionalProperties: false defaultLimits: type: object properties: regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false GenRampDispatchStatus: type: string enum: - Economic - NotParticipating ESRScheduleDefaultItem: type: object properties: offerType: type: string enum: - esrDefaultOffer example: esrDefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: chargeRampRate: $ref: '#/components/schemas/ESRMWRampRate' dischargeRampRate: $ref: '#/components/schemas/ESRMWRampRate' additionalProperties: false defaultStartupCosts: type: object properties: noLoadCost: $ref: '#/components/schemas/OpCostNullable' startupCost: $ref: '#/components/schemas/OpCostNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/ESRCommitStatus' energyDispatchStatus: $ref: '#/components/schemas/ESREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/ESRRegDispatchStatus' spinningDispatchStatus: $ref: '#/components/schemas/ESRSpinDispatchStatus' onlineSuppDispatchStatus: $ref: '#/components/schemas/ESROnSuppDispatchStatus' offlineSuppDispatchStatus: $ref: '#/components/schemas/ESROffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/ESRRampDispatchStatus' additionalProperties: false defaultLimits: type: object properties: chargeEconomicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeEmergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeRegulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' dischargeEconomicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeEmergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeRegulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' additionalProperties: false defaultEnergyStorageLevels: type: object properties: minimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' maximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMinimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMaximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' energyStorageEfficiencyFactor: $ref: '#/components/schemas/Percentage4DP' additionalProperties: false required: - offerType - market additionalProperties: false ESROffSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency - null NotificationTime: description: Type used to represent time required for Cold Notification/Intermediate Notification/Hot Notification for the resource. type: string pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 001:59 EARRampDispatchStatus: type: string enum: - Economic - NotParticipating DRR1ScheduleDefaultItem: type: object properties: offerType: type: string enum: - drr1DefaultOffer example: drr1DefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRunTimes: type: object properties: maximumDailyCRDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/DRR1CommitStatus' spinningDispatchStatus: $ref: '#/components/schemas/DRR1SpinDispatchStatus' onlineSuppDispatchStatus: $ref: '#/components/schemas/DRR1OnSuppDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' additionalProperties: false defaultLimits: type: object properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false ESROnSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified GenOnSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null DRR1SpinDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - Emergency - NotParticipating RetrievedDRR2RTOfferOverridesItem: type: object properties: offerType: type: string enum: - drr2ScheduleOfferOverrides example: drr2ScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason - unitLimitOverrideText offlineRespOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offlineResourceLimit - offlineRespOverrideReason - offlineRespOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energyDispatchStatus: $ref: '#/components/schemas/DRR2EnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/DRR2RegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/DRR2SpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/DRR2OnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/DRR2OffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/DRR2RampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/DRR2CommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText fastRampResourceOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - fastRampResource - fastRampOverrideReason - fastRampOverrideText required: - offerType - effectiveOfferOverrides HourLabel: description: Hour ending label. Represents an hour segment of time. type: integer minimum: 1 maximum: 24 example: 1 ESRSpinDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null RunTimeNullable: description: Type used to represent run time for the resource. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: '999:00' DurationNullable: description: Type used to represent time duration. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 001:00 ESRCommitStatus: type: string enum: - Discharge - Charge - Continuous - EmergencyDischarge - EmergencyCharge - Available - NotParticipating - Outage EARSpinDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified DRR2SpinDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null SERCommitStatus: type: string enum: - Available - Unavailable SERCommitStatusNullable: type: - string - 'null' enum: - Available - Unavailable - null RetrievedEARRTOfferOverridesItem: type: object properties: offerType: type: string enum: - earScheduleOfferOverrides example: earScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason - unitLimitOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energyDispatchStatus: $ref: '#/components/schemas/EAREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/EARRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/EARSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/EAROnSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/EARRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/EARCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText fastRampResourceOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - fastRampResource - fastRampOverrideReason - fastRampOverrideText required: - offerType - effectiveOfferOverrides DRR2OffSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency - null EAROnSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null RealEnergyNegativeNullable: description: Used to represent real energy values submitted to the market that must be less than or equal to zero. Nullable added to allow for data driven delete behaviour. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: -9.99999999E7 maximum: 0 example: -1200.7 DRR2RampDispatchStatus: type: string enum: - Economic - NotParticipating ESROffSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency ParticipantName: description: Market participant name. type: string minLength: 1 maxLength: 40 example: MP ESRScheduleOfferItem: type: object properties: offerType: type: string enum: - esrOffer example: esrOffer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' startupCostsDaily: type: object properties: startupCost: $ref: '#/components/schemas/OpCostNullable' noLoadCostsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' cost: $ref: '#/components/schemas/OpCostNullable' required: - hour commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/ESRCommitStatusNullable' required: - hour runtimesDaily: type: object properties: minimumChargeTime: $ref: '#/components/schemas/RunTimeNullable' maximumChargeTime: $ref: '#/components/schemas/MaxRunTimeNullable' minimumDischargeTime: $ref: '#/components/schemas/RunTimeNullable' maximumDischargeTime: $ref: '#/components/schemas/MaxRunTimeNullable' maximumDailyStarts: type: - integer - 'null' maximumDailyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumWeeklyStarts: type: - integer - 'null' maximumWeeklyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' runtimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' runtimesHourlyDetail: type: - object - 'null' properties: coldStartupTime: $ref: '#/components/schemas/StartupTimeNullable' intermediateStartupTime: $ref: '#/components/schemas/StartupTimeNullable' hotStartupTime: $ref: '#/components/schemas/StartupTimeNullable' coldNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' intermediateNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' hotNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: chargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' maxMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' chargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' maxMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' chargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' maxMW: $ref: '#/components/schemas/RealEnergyNegativeNullable' dischargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySignedNullable' maxMW: $ref: '#/components/schemas/RealEnergySignedNullable' dischargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySignedNullable' maxMW: $ref: '#/components/schemas/RealEnergySignedNullable' dischargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySignedNullable' maxMW: $ref: '#/components/schemas/RealEnergySignedNullable' offlineResourceLimit: $ref: '#/components/schemas/RealEnergyNullable' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: enableRampRateCurvesHourly: type: boolean example: true chargeRampRate: $ref: '#/components/schemas/MWRampRateNullable' dischargeRampRate: $ref: '#/components/schemas/MWRampRateNullable' required: - hour energyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 10 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/ESREnergyDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' rampCapabilityDispatchStatus: $ref: '#/components/schemas/ESRRampDispatchStatusNullable' required: - hour regulationOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' regulationOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments mileageOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/ESRRegDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour spinningOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' spinningOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/ESRSpinDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/ESROnSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour offlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/ESROffSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineShortTermReserveDispatchStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/OnlineSTRDispatchStatusNullable' offlineShortTermReserveOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' shortTermReserveOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatusNullable' required: - hour fastRampResourceHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' fastRampResourceHourlyDetail: type: - object - 'null' properties: fastRampResource: type: - boolean - 'null' example: true fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/PercentageNullable' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/PercentageNullable' required: - hour energyStorageLevelsDaily: type: object properties: initialEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySignedNullable' energyStorageLevelsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyStorageLevelsHourlyDetail: type: - object - 'null' properties: minimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySignedNullable' maximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySignedNullable' emergencyMinimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySignedNullable' emergencyMaximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySignedNullable' energyStorageEfficiencyFactor: $ref: '#/components/schemas/Percentage4DPNullable' additionalProperties: false required: - hour required: - offerType - scheduleType - market GenScheduleDefaultItem: type: object properties: offerType: type: string enum: - genDefaultOffer example: genDefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: rampRate: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' additionalProperties: false defaultStartupCosts: type: object properties: noLoadCost: $ref: '#/components/schemas/OpCostNullable' coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/GenCommitStatus' energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/GenRegDispatchStatus' spinningDispatchStatus: $ref: '#/components/schemas/GenSpinDispatchStatus' onlineSuppDispatchStatus: $ref: '#/components/schemas/GenOnSuppDispatchStatus' offlineSuppDispatchStatus: $ref: '#/components/schemas/GenOffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' additionalProperties: false defaultLimits: type: object properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false EARRegDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - null MarketType: description: Energy Market types. type: string enum: - day-ahead - real-time RealEnergyResultsSignedNullable: description: Used to represent real energy values in market outcomes. Historically simliar to 'MWType'. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: 0.0 maximum: 9.99999999E7 example: 120001.7 DRR2RampDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null EAROnSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified GenRTOfferOverridesItem: type: object properties: offerType: type: string enum: - genScheduleOfferOverrides example: genScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason unitLimitOverrides: type: - object - 'null' properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason offlineRespOverrides: type: - object - 'null' properties: offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offlineResourceLimit - offlineRespOverrideReason - offlineShortTermReserveLimit rampRateOverrides: type: - object - 'null' properties: rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason selfScheduleOverrides: type: - object - 'null' properties: energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/GenRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/GenSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/GenOnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/GenOffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - onlineShortTermReserveDispatchStatus - offlineShortTermReserveDispatchStatus commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/GenCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason fastRampResourceOverrides: type: - object - 'null' properties: fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - fastRampResource - fastRampOverrideReason required: - offerType - effectiveOfferOverrides GenSpinDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified DRR1OnSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency - null EARRampDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null ESRRampRateCurveItem: type: object properties: offerType: type: string enum: - esrRampCurve example: esrRampCurve rampRateCurves: description: Hourly ramp rate curves. Including a null collection will act as a data driven delete. type: - array - 'null' minItems: 0 maxItems: 24 items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRateCurve: description: Ramp Rate Curve segments. Including a null collection will act as a data driven delete. type: - array - 'null' minItems: 0 maxItems: 10 items: type: object description: Set of ramp rates for a given MW level. All of the ramp rates must be included. properties: mw: $ref: '#/components/schemas/RealEnergy' chargeRampRate: $ref: '#/components/schemas/MWRampRate' dischargeRampRate: $ref: '#/components/schemas/MWRampRate' required: - mw - chargeRampRate - dischargeRampRate required: - hour - rampRateCurve additionalProperties: false required: - offerType - rampRateCurves RetrievedDRR1RTOfferOverridesItem: type: object properties: offerType: type: string enum: - drr1ScheduleOfferOverrides example: drr1ScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText drr1OfferOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' targetDemandReductionMW: $ref: '#/components/schemas/RealEnergy' drr1OfferOverrideReason: $ref: '#/components/schemas/RTOverrideReason' drr1OfferOverrideReasonText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - targetDemandReductionMW - drr1OfferOverrideReason - drr1OfferOverrideReasonText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' supplementalSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - spinningSelfScheduleMW - supplementalSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' spinningReserveDispatchStatus: $ref: '#/components/schemas/DRR1SpinDispatchStatus' supplementalReserveDispatchStatus: $ref: '#/components/schemas/DRR1OnSuppDispatchStatus' shortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - spinningReserveDispatchStatus - supplementalReserveDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/DRR1CommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText required: - offerType - effectiveOfferOverrides MarketPriceNullable: description: General type for all market prices. format: money type: - number - 'null' multipleOf: 0.01 minimum: -9999.99 maximum: 9999.99 example: 34.91 RegulationOverrideReasons: description: Regulation Override Reasons. type: array items: type: string enum: - PriceCap - DAtoRTOfferConflict RealEnergy: description: Used to represent real energy values submitted to the market. type: number format: realenergy multipleOf: 0.1 minimum: -9.99999999E7 maximum: 9.99999999E7 example: 1200.7 ESRRampDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null CombinedCycleStatus: description: Combined Cycle status. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object additionalProperties: false properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array items: type: object additionalProperties: false properties: offerType: type: string enum: - combinedCycleOffer example: combinedCycleOffer combinedCycleStatus: $ref: '#/components/schemas/CCStatus' required: - offerType - combinedCycleStatus required: - pnodeName - offers required: - day - resources RegulationOfferOverrides: description: Regulation Offer Overrides. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' regulationOfferOverridesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' offerPrice: $ref: '#/components/schemas/MarketPrice' offerPriceCurve: type: object description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' mileageOfferPrice: $ref: '#/components/schemas/MarketPrice' offerPriceOverride: $ref: '#/components/schemas/MarketPrice' offerPriceCurveOverride: type: object description: The override price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' mileageOfferPriceOverride: $ref: '#/components/schemas/RealEnergyNullable' regulationOverrideReasons: $ref: '#/components/schemas/RegulationOverrideReasons' required: - pnodeName - regulationOfferOverridesHourly required: - day - resources RetrievedSERRTOfferOverridesItem: type: object properties: offerType: type: string enum: - serScheduleOfferOverrides example: serScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - regulationLimits - unitLimitOverrideReason - unitLimitOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - rampRateBidirectional - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - regulationSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' regulationDispatchStatus: $ref: '#/components/schemas/SERRegDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - regulationDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/SERCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText fastRampResourceOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/Percentage' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/Percentage' fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - fastRampNeutralZoneLowerLimit - fastRampNeutralZoneUpperLimit - fastRampResource - fastRampOverrideReason - fastRampOverrideText required: - offerType - effectiveOfferOverrides DownTimeNullable: description: Type used to represent down time for the resource. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 002:00 RTOverrideReason: description: Real Time Offer Overrides reason. RGDOverride is a query-only value. type: string enum: - EquipmentFailure - OperatorAction - Weather - AirOrGasSystems - BoilerTubeLeak - CondenserTubeLeak - Pulveriser - Pump - EPARegulation - FuelOrSupplyIssues - FuelQuality - TranmissionSysLimits - StatusChange - UnitTrip - Other - RGDOverride RealEnergyNullable: description: Used to represent real energy values submitted to the market. Nullable added to allow for data driven delete behaviour. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: -9.99999999E7 maximum: 9.99999999E7 example: 1200.7 DRR2ScheduleOfferItem: type: object properties: offerType: type: string enum: - drr2Offer example: drr2Offer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' startupCostsDaily: type: object properties: coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' noLoadCostsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' cost: $ref: '#/components/schemas/OpCostNullable' required: - hour commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/DRR2CommitStatusNullable' required: - hour runtimesDaily: type: object properties: minimumRuntime: $ref: '#/components/schemas/RunTimeNullable' maximumRuntime: $ref: '#/components/schemas/MaxRunTimeNullable' minimumDowntime: $ref: '#/components/schemas/DownTimeNullable' hotToColdTime: $ref: '#/components/schemas/TransitionTimeNullable' hotToIntermediateTime: $ref: '#/components/schemas/TransitionTimeNullable' maximumDailyStarts: type: - integer - 'null' maximumDailyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumWeeklyStarts: type: - integer - 'null' maximumWeeklyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumDailyCRDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' maximumDailyRegUpDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' maximumDailyRegDownDeployment: $ref: '#/components/schemas/RealEnergyResultsNullable' runtimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' runtimesHourlyDetail: type: - object - 'null' properties: coldStartupTime: $ref: '#/components/schemas/StartupTimeNullable' intermediateStartupTime: $ref: '#/components/schemas/StartupTimeNullable' hotStartupTime: $ref: '#/components/schemas/StartupTimeNullable' coldNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' intermediateNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' hotNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: emergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' economicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' regulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' offlineResourceLimit: $ref: '#/components/schemas/RealEnergyNullable' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: enableRampRateCurvesHourly: type: boolean example: true rampRate: $ref: '#/components/schemas/MWRampRateNullable' rampRateBidirectional: $ref: '#/components/schemas/MWRampRateNullable' rampRateUp: $ref: '#/components/schemas/MWRampRateNullable' rampRateDown: $ref: '#/components/schemas/MWRampRateNullable' required: - hour energyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 10 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR2EnergyDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' rampCapabilityDispatchStatus: $ref: '#/components/schemas/DRR2RampDispatchStatusNullable' required: - hour regulationOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' regulationOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments mileageOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/DRR2RegDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour spinningOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' spinningOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR2SpinDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR2OnSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour offlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR2OffSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineShortTermReserveDispatchStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/OnlineSTRDispatchStatusNullable' offlineShortTermReserveOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' shortTermReserveOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatusNullable' required: - hour fastRampResourceHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' fastRampResourceHourlyDetail: type: - object - 'null' properties: fastRampResource: type: - boolean - 'null' example: true required: - hour required: - offerType - scheduleType - market DRR2OnSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null NotificationTimeNullable: description: Type used to represent time required for Cold Notification/Intermediate Notification/Hot Notification for the resource. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 001:59 ESREnergyDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotParticipating - null DRR2EnergyDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - null EARScheduleOfferItem: type: object properties: offerType: type: string enum: - earOffer example: earOffer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' startupCostsDaily: type: object properties: coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' noLoadCostsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' cost: $ref: '#/components/schemas/OpCostNullable' required: - hour commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/EARCommitStatusNullable' required: - hour runtimesDaily: type: object properties: minimumRuntime: $ref: '#/components/schemas/RunTimeNullable' maximumRuntime: $ref: '#/components/schemas/MaxRunTimeNullable' minimumDowntime: $ref: '#/components/schemas/DownTimeNullable' hotToColdTime: $ref: '#/components/schemas/NotificationTimeNullable' hotToIntermediateTime: $ref: '#/components/schemas/NotificationTimeNullable' maximumDailyStarts: type: - integer - 'null' maximumDailyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumWeeklyStarts: type: - integer - 'null' maximumWeeklyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' runtimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' runtimesHourlyDetail: type: - object - 'null' properties: coldStartupTime: $ref: '#/components/schemas/StartupTimeNullable' intermediateStartupTime: $ref: '#/components/schemas/StartupTimeNullable' hotStartupTime: $ref: '#/components/schemas/StartupTimeNullable' coldNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' intermediateNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' hotNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: emergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' economicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' regulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: enableRampRateCurvesHourly: type: boolean example: true rampRate: $ref: '#/components/schemas/MWRampRateNullable' rampRateBidirectional: $ref: '#/components/schemas/MWRampRateNullable' rampRateUp: $ref: '#/components/schemas/MWRampRateNullable' rampRateDown: $ref: '#/components/schemas/MWRampRateNullable' required: - hour energyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 10 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/EAREnergyDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' rampCapabilityDispatchStatus: $ref: '#/components/schemas/EARRampDispatchStatusNullable' required: - hour regulationOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' regulationOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' mileageOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/EARRegDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour spinningOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' spinningOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/EARSpinDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/EAROnSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineShortTermReserveDispatchStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/OnlineSTRDispatchStatusNullable' fastRampResourceHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' fastRampResourceHourlyDetail: type: - object - 'null' properties: fastRampResource: type: - boolean - 'null' example: true required: - hour required: - offerType - scheduleType - market StartupTimeNullable: description: Type used to represent time required for Cold Startup/Intermediate Startup/Hot Startup for the resource. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 001:50 MarketOperatingDay: description: Effective Market operating day of data. RFC 3339. 'YYYY-MM-DD'. type: string format: date example: '2019-03-14' RealEnergyNegative: description: Used to represent real energy values submitted to the market that must be less than or equal to zero. type: number format: realenergy multipleOf: 0.1 minimum: -9.99999999E7 maximum: 0 example: -1200.7 Percentage4DP: description: Used to represent a percentage in the range of 0.0001-1.0000. type: number multipleOf: 0.0001 minimum: 0.0001 maximum: 1.0 example: 0.4211 GenSpinDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null GenEnergyDispatchStatus: type: string enum: - Economic - SelfSchedule CCStatus: description: Combined Cycle status. type: string enum: - Aggregate - Individual example: Aggregate TransitionTimeNullable: description: Type used to represent time required for transitioning from Hot To Cold state/Hot to Intermediate state for the resource. type: - string - 'null' pattern: ^[0-9]{1,3}[:][0-5][0-9]$ example: 008:00 ESRMWRampRate: description: Used to represent a ramp rate which is measured in MW/Min and may only be > 0. type: number format: realenergy multipleOf: 0.1 maximum: 9.99999999E7 example: 121.7 exclusiveMinimum: 0 RampRateCurveItem: type: object properties: offerType: type: string enum: - rampCurve example: rampCurve rampRateCurves: description: Hourly ramp rate curves. Including a null collection will act as a data driven delete. type: - array - 'null' minItems: 0 maxItems: 24 items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRateCurve: description: Ramp Rate Curve segments. Including a null collection will act as a data driven delete. type: - array - 'null' minItems: 0 maxItems: 10 items: type: object description: Set of ramp rates for a given MW level. properties: mw: $ref: '#/components/schemas/RealEnergy' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' required: - mw - rampRateUp - rampRateDown - rampRateBidirectional required: - hour - rampRateCurve additionalProperties: false required: - offerType - rampRateCurves DIRScheduleOfferItem: type: object properties: offerType: type: string enum: - dirOffer example: dirOffer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' startupCostsDaily: type: object properties: coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' noLoadCostsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' cost: $ref: '#/components/schemas/OpCostNullable' required: - hour commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/GenCommitStatusNullable' required: - hour runtimesDaily: type: object properties: minimumRuntime: $ref: '#/components/schemas/RunTimeNullable' maximumRuntime: $ref: '#/components/schemas/MaxRunTimeNullable' minimumDowntime: $ref: '#/components/schemas/DownTimeNullable' hotToColdTime: $ref: '#/components/schemas/TransitionTimeNullable' hotToIntermediateTime: $ref: '#/components/schemas/TransitionTimeNullable' maximumDailyStarts: type: - integer - 'null' maximumDailyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumWeeklyStarts: type: - integer - 'null' maximumWeeklyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' runtimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' runtimesHourlyDetail: type: - object - 'null' properties: coldStartupTime: $ref: '#/components/schemas/StartupTimeNullable' intermediateStartupTime: $ref: '#/components/schemas/StartupTimeNullable' hotStartupTime: $ref: '#/components/schemas/StartupTimeNullable' coldNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' intermediateNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' hotNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: emergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' economicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: enableRampRateCurvesHourly: type: boolean example: true rampRate: $ref: '#/components/schemas/MWRampRateNullable' rampRateBidirectional: $ref: '#/components/schemas/MWRampRateNullable' rampRateUp: $ref: '#/components/schemas/MWRampRateNullable' rampRateDown: $ref: '#/components/schemas/MWRampRateNullable' required: - hour energyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 10 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatusNullable' required: - hour required: - offerType - scheduleType - market MultiVariantRampRateCurves: description: Multi-variant Ramp Rate Curves. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: description: Collection of resources refernced via pnodeName. type: array minItems: 1 items: description: Resource which has offered in a ramp rate curve. type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/RampRateCurveItem' - $ref: '#/components/schemas/ESRRampRateCurveItem' required: - pnodeName - offers additionalProperties: false required: - day - resources Percentage4DPNullable: description: Used to represent a percentage in the range of 0.0001-1.0000. type: - number - 'null' multipleOf: 0.0001 minimum: 0.0001 maximum: 1.0 example: 0.4211 ESREnergyDispatchStatus: type: string enum: - Economic - SelfSchedule - NotParticipating CheckHourLabel: description: Hour ending label that can be provided to enable a validation on the current hour during submission. If specified then current hour must equal this value otherwise a validation error is raised. type: integer minimum: 1 maximum: 24 example: 1 RealEnergyResultsNullable: description: Used to represent real energy values in market outcomes. Historically simliar to 'MWType'. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: -9.99999999E7 maximum: 9.99999999E7 example: 120001.7 DRR2OnSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified Percentage: description: Used to represent a percentage in the range of 0-100. type: number format: percentage multipleOf: 0.1 minimum: 0.0 maximum: 100.0 example: 42.0 EARSpinDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null EAREnergyDispatchStatus: type: string enum: - Economic - SelfSchedule ESRCommitStatusNullable: type: - string - 'null' enum: - Discharge - Charge - Continuous - EmergencyDischarge - EmergencyCharge - Available - NotParticipating - Outage - null DIRRTOfferOverridesItem: type: object properties: offerType: type: string enum: - dirScheduleOfferOverrides example: dirScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason unitLimitOverrides: type: - object - 'null' properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' required: - minMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' required: - minMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - economicLimits - emergencyLimits - unitLimitOverrideReason rampRateOverrides: type: - object - 'null' properties: rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason selfScheduleOverrides: type: - object - 'null' properties: energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energySelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energyDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/GenCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason required: - offerType - effectiveOfferOverrides SERRegDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - null EARCommitStatusNullable: type: - string - 'null' enum: - Available - Unavailable - null DRR1OnSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency QualificationStatus: description: Qualification status. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array items: type: object properties: offerType: type: string market: $ref: '#/components/schemas/MarketType' regulationQualified: type: boolean spinQualified: type: boolean onlineSupplementalQualified: type: boolean offlineSupplementalQualified: type: boolean offlineShortTermQualified: type: boolean rampCapabilityQualified: type: boolean required: - pnodeName - offers required: - day - resources DRR2RegDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - null EARCommitStatus: type: string enum: - Available - Unavailable EARRegDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating GenRegDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - null GenOffSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency - null OfflineSTRDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null EARScheduleDefaultItem: type: object properties: offerType: type: string enum: - earDefaultOffer example: earDefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: rampRate: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' additionalProperties: false defaultStartupCosts: type: object properties: noLoadCost: $ref: '#/components/schemas/OpCostNullable' coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/EARCommitStatus' energyDispatchStatus: $ref: '#/components/schemas/EAREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/EARRegDispatchStatus' spinningDispatchStatus: $ref: '#/components/schemas/EARSpinDispatchStatus' onlineSuppDispatchStatus: $ref: '#/components/schemas/EAROnSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/EARRampDispatchStatus' additionalProperties: false defaultLimits: type: object properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false RTOverrideText: type: - string - 'null' example: Optional override comments GenEnergyDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - null ScheduleType: description: Participant offer schedule types. type: string enum: - Price - Cost MarketIntervalLabel: description: Date-time as defined in RFC 3339. 'YYYY-MM-DDTHH:MM:SS-05:00'. Effective Market interval of data. type: string format: date-time example: '2019-03-14T14:50:00-05:00' MarketPrice: description: General type for all market prices. format: money type: number multipleOf: 0.01 minimum: -9999.99 maximum: 9999.99 example: 34.91 ESRRTOfferOverridesItem: type: object properties: offerType: type: string enum: - esrScheduleOfferOverrides example: esrScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason unitLimitOverrides: type: - object - 'null' properties: chargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' dischargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - chargeEmergencyLimits - chargeEconomicLimits - chargeRegulationLimits - dischargeEmergencyLimits - dischargeEconomicLimits - dischargeRegulationLimits - unitLimitOverrideReason - unitLimitOverrideText offlineRespOverrides: type: - object - 'null' properties: offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offlineResourceLimit - offlineRespOverrideReason - offlineShortTermReserveLimit rampRateOverrides: type: - object - 'null' properties: chargeRampRate: $ref: '#/components/schemas/MWRampRate' dischargeRampRate: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - chargeRampRate - dischargeRampRate - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: - object - 'null' properties: energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: energyDispatchStatus: $ref: '#/components/schemas/ESREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/ESRRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/ESRSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/ESROnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/ESROffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/ESRRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - onlineShortTermReserveDispatchStatus - offlineShortTermReserveDispatchStatus commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/ESRCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason fastRampResourceOverrides: type: - object - 'null' properties: fastRampResource: type: boolean example: true fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/PercentageNullable' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/PercentageNullable' fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - fastRampResource - fastRampNeutralZoneLowerLimit - fastRampNeutralZoneUpperLimit - fastRampOverrideReason - fastRampOverrideText energyStorageLevelOverrides: type: - object - 'null' properties: minimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' maximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMinimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMaximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' energyStorageLevelOverrideReason: $ref: '#/components/schemas/RTOverrideReason' energyStorageLevelOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - minimumEnergyStorageLevel - maximumEnergyStorageLevel - emergencyMinimumEnergyStorageLevel - emergencyMaximumEnergyStorageLevel - energyStorageLevelOverrideReason - energyStorageLevelOverrideText required: - offerType - effectiveOfferOverrides ESRRegDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating DRR1SpinDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - Emergency - NotParticipating - null MWRampRate: description: Used to represent a ramp rate which is measured in MW/Min and may only be >= 0. type: number format: realenergy multipleOf: 0.1 minimum: 0 maximum: 9.99999999E7 example: 121.7 MaxRunTimeNullable: description: Type used to represent run time for the resource. type: - string - 'null' pattern: ^[0-9]{1,5}[:][0-5][0-9]$ example: '999:00' SERRTOfferOverridesItem: type: object properties: offerType: type: string enum: - serScheduleOfferOverrides example: serScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' unitLimitOverrides: type: - object - 'null' properties: regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - regulationLimits - unitLimitOverrideReason rampRateOverrides: type: - object - 'null' properties: rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - rampRateBidirectional - rampRateOverrideReason selfScheduleOverrides: type: - object - 'null' properties: regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - regulationSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: regulationDispatchStatus: $ref: '#/components/schemas/SERRegDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - regulationDispatchStatus - dispatchStatusOverrideReason commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/SERCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason fastRampResourceOverrides: type: - object - 'null' properties: fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/Percentage' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/Percentage' fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - fastRampNeutralZoneLowerLimit - fastRampNeutralZoneUpperLimit - fastRampResource - fastRampOverrideReason required: - offerType - effectiveOfferOverrides SERScheduleOfferItem: type: object properties: offerType: type: string enum: - serOffer example: serOffer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/SERCommitStatusNullable' required: - hour serOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' serOfferHourlyDetail: type: - object - 'null' properties: maxEnergyStorageLevel: type: - number - 'null' format: float maxEnergyChargeRate: type: - number - 'null' format: float minimum: 0 maxEnergyDischargeRate: type: - number - 'null' format: float energyStorageLossRate: type: - number - 'null' format: float maxFullChargeEnergyWithdrawRate: type: - number - 'null' format: float required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: regulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: rampRateBidirectional: $ref: '#/components/schemas/MWRampRateNullable' required: - hour regulationOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' regulationOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/SERRegDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' mileageOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' required: - hour fastRampResourceHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' fastRampResourceHourlyDetail: type: - object - 'null' properties: fastRampResource: type: - boolean - 'null' example: true fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/PercentageNullable' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/PercentageNullable' required: - hour required: - offerType - scheduleType - market APIResponse: description: General container for API response. type: object properties: action: description: A general action code summary of the result. HTTP status codes will be applied that match. These indicate the type of operation that was done (or not). Note, some APIs use REST verbiage like created/updated/deleted while others use submit/query. enum: - CREATED - UPDATED - DELETED - CREATE_FAILED - UPDATE_FAILED - DELETE_FAILED - GET_FAILED - SUBMITTED - SUBMIT_FAILED - QUERY - QUERY_FAILED responses: description: List of responses in case multiple resources are modified, or general errors that are not resource specific. type: array minItems: 0 items: description: A single response which may contain multiple messages, both error and warning, per response. type: object properties: messages: description: List of warnings and errors resulting from the command. type: array minItems: 0 items: description: An individual warning or error message. Designed to be either localized or categorized as an event. type: object properties: level: description: An indication of severity of the message. type: string enum: - ERROR - WARNING - INFO msgId: description: A categorized ID for this message, identifying it as a particular type of event. Useful for checking for specific errors, or localization. type: string params: description: Ordered list of parameter values for the message. type: array items: type: string userMsg: description: The message, fully rendered in the default locale on the service side. type: string transactionId: description: Unique identifier for the transaction which can be queried at a later date. Identifier is a GUID represented without hyphens. Only returned for submissions and errors though all calls generate a transaction ID that is returned in the http-x-request-id response header. type: string format: guid transactionTime: description: The time at which the transaction was received by the system. type: string format: date-time DIRScheduleDefaultItem: type: object properties: offerType: type: string enum: - dirDefaultOffer example: dirDefaultOffer market: $ref: '#/components/schemas/MarketType' defaultRampRates: type: object properties: rampRate: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' additionalProperties: false defaultStartupCosts: type: object properties: noLoadCost: $ref: '#/components/schemas/OpCostNullable' coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' additionalProperties: false defaultStatus: type: object properties: commitStatus: $ref: '#/components/schemas/GenCommitStatus' energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' additionalProperties: false defaultLimits: type: object properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' additionalProperties: false required: - offerType - market additionalProperties: false MultiVariantScheduleDefault: description: Schedule Offer Defaults. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/GenScheduleDefaultItem' - $ref: '#/components/schemas/DRR2ScheduleDefaultItem' - $ref: '#/components/schemas/DRR1ScheduleDefaultItem' - $ref: '#/components/schemas/EARScheduleDefaultItem' - $ref: '#/components/schemas/SERScheduleDefaultItem' - $ref: '#/components/schemas/DIRScheduleDefaultItem' - $ref: '#/components/schemas/ESRScheduleDefaultItem' required: - pnodeName - offers additionalProperties: false required: - day - resources additionalProperties: false MultiVariantRTOfferOverrides: description: Real Time Offer Override submission. Offer format will vary based on offerType variant. type: object properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array maxItems: 1 items: oneOf: - $ref: '#/components/schemas/GenRTOfferOverridesItem' - $ref: '#/components/schemas/DRR2RTOfferOverridesItem' - $ref: '#/components/schemas/DRR1RTOfferOverridesItem' - $ref: '#/components/schemas/EARRTOfferOverridesItem' - $ref: '#/components/schemas/SERRTOfferOverridesItem' - $ref: '#/components/schemas/DIRRTOfferOverridesItem' - $ref: '#/components/schemas/ESRRTOfferOverridesItem' required: - pnodeName - offers required: - day - resources ESRRegDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - NotParticipating - null PercentageNullable: description: Used to represent a percentage in the range of 0-100. type: - number - 'null' format: percentage multipleOf: 0.1 minimum: 0.0 maximum: 100.0 example: 42.0 DRR1ScheduleOfferItem: type: object properties: offerType: type: string enum: - drr1Offer example: drr1Offer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' shutdownCost: $ref: '#/components/schemas/OpCostNullable' deployStatus: description: Deploy Status of the resource. type: - string - 'null' enum: - DeployAsOnline - DeployAsOffLine - null drr1CommitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/DRR1CommitStatusNullable' required: - hour drr1RuntimesDaily: type: object properties: minInterruptionDuration: $ref: '#/components/schemas/DurationNullable' maxInterruptionDuration: $ref: '#/components/schemas/DurationNullable' minNonInterruptionInterval: $ref: '#/components/schemas/DurationNullable' maxDailyEnergyCurtailment: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maxDailyStops: type: - integer - 'null' maxDailyCRDeployment: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' drr1RuntimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' drr1RuntimesHourlyDetail: type: - object - 'null' properties: shutdownTime: $ref: '#/components/schemas/DownTimeNullable' shutdownNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour drr1EnergyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' drr1EnergyOfferHourlyDetail: type: - object - 'null' properties: curtailmentOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' targetDemandReductionMW: $ref: '#/components/schemas/RealEnergyNullable' energyOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' required: - hour drr1SpinningOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' spinningOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR1SpinDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour drr1SuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/DRR1OnSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour drr1ShortTermReserveOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' shortTermReserveOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 3 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatusNullable' required: - hour required: - offerType - scheduleType - market GenCommitStatusNullable: type: - string - 'null' enum: - NotParticipating - Economic - Emergency - MustRun - Outage - null GenOffSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency ESRRampDispatchStatus: type: string enum: - Economic - NotParticipating EARRTOfferOverridesItem: type: object properties: offerType: type: string enum: - earScheduleOfferOverrides example: earScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason unitLimitOverrides: type: - object - 'null' properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason rampRateOverrides: type: - object - 'null' properties: rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason selfScheduleOverrides: type: - object - 'null' properties: energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: energyDispatchStatus: $ref: '#/components/schemas/EAREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/EARRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/EARSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/EAROnSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/EARRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - onlineShortTermReserveDispatchStatus commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/EARCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason fastRampResourceOverrides: type: - object - 'null' properties: fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - fastRampResource - fastRampOverrideReason required: - offerType - effectiveOfferOverrides DRR1CommitStatus: type: string enum: - NotParticipating - Economic - Emergency GenRegDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating GenScheduleOfferItem: type: object properties: offerType: type: string enum: - genOffer example: genOffer scheduleType: $ref: '#/components/schemas/ScheduleType' market: $ref: '#/components/schemas/MarketType' startupCostsDaily: type: object properties: coldStartupCost: $ref: '#/components/schemas/OpCostNullable' intermediateStartupCost: $ref: '#/components/schemas/OpCostNullable' hotStartupCost: $ref: '#/components/schemas/OpCostNullable' noLoadCostsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' cost: $ref: '#/components/schemas/OpCostNullable' required: - hour commitStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/GenCommitStatusNullable' required: - hour runtimesDaily: type: object properties: minimumRuntime: $ref: '#/components/schemas/RunTimeNullable' maximumRuntime: $ref: '#/components/schemas/MaxRunTimeNullable' minimumDowntime: $ref: '#/components/schemas/DownTimeNullable' hotToColdTime: $ref: '#/components/schemas/TransitionTimeNullable' hotToIntermediateTime: $ref: '#/components/schemas/TransitionTimeNullable' maximumDailyStarts: type: - integer - 'null' maximumDailyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' maximumWeeklyStarts: type: - integer - 'null' maximumWeeklyEnergy: $ref: '#/components/schemas/RealEnergyResultsSignedNullable' runtimesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' runtimesHourlyDetail: type: - object - 'null' properties: coldStartupTime: $ref: '#/components/schemas/StartupTimeNullable' intermediateStartupTime: $ref: '#/components/schemas/StartupTimeNullable' hotStartupTime: $ref: '#/components/schemas/StartupTimeNullable' coldNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' intermediateNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' hotNotificationTime: $ref: '#/components/schemas/NotificationTimeNullable' required: - hour unitLimitsHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' unitLimitsHourlyDetail: type: - object - 'null' properties: emergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' economicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' regulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNullable' maxMW: $ref: '#/components/schemas/RealEnergyNullable' offlineResourceLimit: $ref: '#/components/schemas/RealEnergyNullable' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergyNullable' required: - hour rampRatesHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' rampRatesHourlyDetail: type: - object - 'null' properties: enableRampRateCurvesHourly: type: boolean example: true rampRate: $ref: '#/components/schemas/MWRampRateNullable' rampRateBidirectional: $ref: '#/components/schemas/MWRampRateNullable' rampRateUp: $ref: '#/components/schemas/MWRampRateNullable' rampRateDown: $ref: '#/components/schemas/MWRampRateNullable' required: - hour energyOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' energyOfferHourlyDetail: type: - object - 'null' properties: offerPriceCurve: type: - object - 'null' description: The scheduled price curve for a given hour ending. properties: slope: type: boolean description: If slope is true then curve is interpreted as a piece-wise linear curve otherwise it is treated as a block curve. A curve with no segments is given the default slope value of false. priceCurveSegments: type: array items: type: object properties: mw: $ref: '#/components/schemas/RealEnergy' price: $ref: '#/components/schemas/MarketPrice' required: - mw - price maxItems: 10 required: - slope - priceCurveSegments dispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatusNullable' required: - hour regulationOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' regulationOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' mileageOfferPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/GenRegDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour spinningOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' spinningOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/GenSpinDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/GenOnSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour offlineSuppOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' suppOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/GenOffSuppDispatchStatusNullable' selfScheduleMW: $ref: '#/components/schemas/RealEnergyNullable' required: - hour onlineShortTermReserveDispatchStatusHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' status: $ref: '#/components/schemas/OnlineSTRDispatchStatusNullable' offlineShortTermReserveOfferHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' shortTermReserveOfferHourlyDetail: type: - object - 'null' properties: offerPrice: $ref: '#/components/schemas/MarketPriceNullable' dispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatusNullable' required: - hour fastRampResourceHourly: type: array items: type: object properties: hour: $ref: '#/components/schemas/HourLabel' fastRampResourceHourlyDetail: type: - object - 'null' properties: fastRampResource: type: - boolean - 'null' example: true required: - hour required: - offerType - scheduleType - market GenRampDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null SERRegDispatchStatus: type: string enum: - Economic - SelfSchedule MWRampRateNullable: description: Used to represent a ramp rate which is measured in MW/Min. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: 0 maximum: 9.99999999E7 example: 121.7 OnlineSTRDispatchStatus: type: string enum: - Economic - NotParticipating DRR2EnergyDispatchStatus: type: string enum: - Economic - SelfSchedule RetrievedGenRTOfferOverridesItem: type: object properties: offerType: type: string enum: - genScheduleOfferOverrides example: genScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason - unitLimitOverrideText offlineRespOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offlineResourceLimit - offlineRespOverrideReason - offlineRespOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energyDispatchStatus: $ref: '#/components/schemas/GenEnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/GenRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/GenSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/GenOnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/GenOffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/GenRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/GenCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText fastRampResourceOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - fastRampResource - fastRampOverrideReason - fastRampOverrideText required: - offerType - effectiveOfferOverrides DRR2RTOfferOverridesItem: type: object properties: offerType: type: string enum: - drr2ScheduleOfferOverrides example: drr2ScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason unitLimitOverrides: type: - object - 'null' properties: economicLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW emergencyLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW regulationLimits: type: object properties: minMW: $ref: '#/components/schemas/RealEnergy' maxMW: $ref: '#/components/schemas/RealEnergy' required: - minMW - maxMW unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - economicLimits - emergencyLimits - regulationLimits - unitLimitOverrideReason offlineRespOverrides: type: - object - 'null' properties: offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offlineResourceLimit - offlineRespOverrideReason - offlineShortTermReserveLimit rampRateOverrides: type: - object - 'null' properties: rampRateUp: $ref: '#/components/schemas/MWRampRate' rampRateDown: $ref: '#/components/schemas/MWRampRate' rampRateBidirectional: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - rampRateUp - rampRateDown - rampRateBidirectional - rampRateOverrideReason selfScheduleOverrides: type: - object - 'null' properties: energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: energyDispatchStatus: $ref: '#/components/schemas/DRR2EnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/DRR2RegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/DRR2SpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/DRR2OnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/DRR2OffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/DRR2RampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - onlineShortTermReserveDispatchStatus - offlineShortTermReserveDispatchStatus commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/DRR2CommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason fastRampResourceOverrides: type: - object - 'null' properties: fastRampResource: type: boolean example: true fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - fastRampResource - fastRampOverrideReason required: - offerType - effectiveOfferOverrides RetrievedESRRTOfferOverridesItem: type: object properties: offerType: type: string enum: - esrScheduleOfferOverrides example: esrScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 0 items: type: object properties: effectiveTime: $ref: '#/components/schemas/MarketIntervalLabel' runtimeOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - notificationTime - runtimeOverrideReason - runtimeOverrideText unitLimitOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' chargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' chargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergyNegative' maxMW: $ref: '#/components/schemas/RealEnergyNegative' dischargeEmergencyLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeEconomicLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' dischargeRegulationLimits: type: object description: Either one or both the MW limit properties can be submitted to update the unit limit pair with a MW value or with a null. Submitting mixed null and MW values when both are submitted is not allowed. properties: minMW: $ref: '#/components/schemas/RealEnergySigned' maxMW: $ref: '#/components/schemas/RealEnergySigned' unitLimitOverrideReason: $ref: '#/components/schemas/RTOverrideReason' unitLimitOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - chargeEmergencyLimits - chargeEconomicLimits - chargeRegulationLimits - dischargeEmergencyLimits - dischargeEconomicLimits - dischargeRegulationLimits - unitLimitOverrideReason - unitLimitOverrideText offlineRespOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offlineResourceLimit: $ref: '#/components/schemas/RealEnergy' offlineShortTermReserveLimit: $ref: '#/components/schemas/RealEnergy' offlineRespOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offlineRespOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offlineResourceLimit - offlineRespOverrideReason - offlineRespOverrideText rampRateOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' chargeRampRate: $ref: '#/components/schemas/MWRampRate' dischargeRampRate: $ref: '#/components/schemas/MWRampRate' rampRateOverrideReason: $ref: '#/components/schemas/RTOverrideReason' rampRateOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - chargeRampRate - dischargeRampRate - rampRateOverrideReason - rampRateOverrideText selfScheduleOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energySelfScheduleMW: $ref: '#/components/schemas/RealEnergy' regulationSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' onlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' offlineSuppSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energySelfScheduleMW - regulationSelfScheduleMW - spinningSelfScheduleMW - onlineSuppSelfScheduleMW - offlineSuppSelfScheduleMW - selfScheduleOverrideReason - selfScheduleOverrideText dispatchStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' energyDispatchStatus: $ref: '#/components/schemas/ESREnergyDispatchStatus' regulationDispatchStatus: $ref: '#/components/schemas/ESRRegDispatchStatus' spinningReserveDispatchStatus: $ref: '#/components/schemas/ESRSpinDispatchStatus' onlineSuppReserveDispatchStatus: $ref: '#/components/schemas/ESROnSuppDispatchStatus' offlineSuppReserveDispatchStatus: $ref: '#/components/schemas/ESROffSuppDispatchStatus' onlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OnlineSTRDispatchStatus' offlineShortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' rampCapabilityDispatchStatus: $ref: '#/components/schemas/ESRRampDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - energyDispatchStatus - regulationDispatchStatus - spinningReserveDispatchStatus - onlineSuppReserveDispatchStatus - offlineSuppReserveDispatchStatus - rampCapabilityDispatchStatus - dispatchStatusOverrideReason - dispatchStatusOverrideText commitStatusOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' commitStatus: $ref: '#/components/schemas/ESRCommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - commitStatus - commitStatusOverrideReason - commitStatusOverrideText offControlOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. When reason is RGDOverride then may not be present in output. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - offControlFlag - offControlOverrideReason - offControlOverrideText fastRampResourceOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' fastRampResource: type: boolean example: true fastRampNeutralZoneLowerLimit: $ref: '#/components/schemas/PercentageNullable' fastRampNeutralZoneUpperLimit: $ref: '#/components/schemas/PercentageNullable' fastRampOverrideReason: $ref: '#/components/schemas/RTOverrideReason' fastRampOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - fastRampResource - fastRampNeutralZoneLowerLimit - fastRampNeutralZoneUpperLimit - fastRampOverrideReason - fastRampOverrideText energyStorageLevelOverrides: type: object properties: start: $ref: '#/components/schemas/MarketIntervalLabel' end: $ref: '#/components/schemas/MarketIntervalLabel' minimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' maximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMinimumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' emergencyMaximumEnergyStorageLevel: $ref: '#/components/schemas/RealEnergySigned' energyStorageLevelOverrideReason: $ref: '#/components/schemas/RTOverrideReason' energyStorageLevelOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - start - end - minimumEnergyStorageLevel - maximumEnergyStorageLevel - emergencyMinimumEnergyStorageLevel - emergencyMaximumEnergyStorageLevel - energyStorageLevelOverrideReason - energyStorageLevelOverrideText required: - offerType - effectiveOfferOverrides MultiVariantScheduleOffer: description: Multi-variant Schedule Offer. type: object required: - resources - day properties: day: $ref: '#/components/schemas/MarketOperatingDay' resources: type: array items: type: object properties: pnodeName: $ref: '#/components/schemas/PNodeName' offers: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/GenScheduleOfferItem' - $ref: '#/components/schemas/DRR2ScheduleOfferItem' - $ref: '#/components/schemas/DRR1ScheduleOfferItem' - $ref: '#/components/schemas/EARScheduleOfferItem' - $ref: '#/components/schemas/SERScheduleOfferItem' - $ref: '#/components/schemas/DIRScheduleOfferItem' - $ref: '#/components/schemas/ESRScheduleOfferItem' GenCommitStatus: type: string enum: - NotParticipating - Economic - Emergency - MustRun - Outage ESROnSuppDispatchStatusNullable: type: - string - 'null' enum: - Economic - SelfSchedule - NotQualified - null DRR2OffSuppDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating - Emergency DRR2CommitStatusNullable: type: - string - 'null' enum: - NotParticipating - Economic - Emergency - MustRun - Outage - null PortfolioName: description: Portfolio name which is unique to a participant company and may be shared among users registered with the same company. type: string minLength: 1 maxLength: 40 example: Sample Portfolio RealEnergySigned: description: Used to represent real energy values submitted to the market. type: number format: realenergy multipleOf: 0.1 minimum: 0 maximum: 9.99999999E7 example: 1200.7 OnlineSTRDispatchStatusNullable: type: - string - 'null' enum: - Economic - NotParticipating - null DRR2SpinDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified OpCostNullable: description: Operational cost for resource such as startup, noload, or shutdown costs. type: - number - 'null' format: money multipleOf: 0.01 minimum: 0.0 maximum: 9.999999999E7 example: 120001.7 DRR1CommitStatusNullable: type: - string - 'null' enum: - NotParticipating - Economic - Emergency - null DRR1RTOfferOverridesItem: type: object properties: offerType: type: string enum: - drr1ScheduleOfferOverrides example: drr1ScheduleOfferOverrides effectiveOfferOverrides: type: array minItems: 1 maxItems: 1 items: type: object properties: checkHour: $ref: '#/components/schemas/CheckHourLabel' runtimeOverrides: type: - object - 'null' properties: notificationTime: $ref: '#/components/schemas/NotificationTime' runtimeOverrideReason: $ref: '#/components/schemas/RTOverrideReason' runtimeOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - notificationTime - runtimeOverrideReason drr1OfferOverrides: type: - object - 'null' properties: targetDemandReductionMW: $ref: '#/components/schemas/RealEnergy' drr1OfferOverrideReason: $ref: '#/components/schemas/RTOverrideReason' drr1OfferOverrideReasonText: $ref: '#/components/schemas/RTOverrideText' required: - targetDemandReductionMW - drr1OfferOverrideReason selfScheduleOverrides: type: - object - 'null' properties: spinningSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' supplementalSelfScheduleMW: $ref: '#/components/schemas/RealEnergy' selfScheduleOverrideReason: $ref: '#/components/schemas/RTOverrideReason' selfScheduleOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - spinningSelfScheduleMW - supplementalSelfScheduleMW - selfScheduleOverrideReason dispatchStatusOverrides: type: - object - 'null' properties: spinningReserveDispatchStatus: $ref: '#/components/schemas/DRR1SpinDispatchStatus' supplementalReserveDispatchStatus: $ref: '#/components/schemas/DRR1OnSuppDispatchStatus' shortTermReserveDispatchStatus: $ref: '#/components/schemas/OfflineSTRDispatchStatus' dispatchStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' dispatchStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - spinningReserveDispatchStatus - supplementalReserveDispatchStatus - dispatchStatusOverrideReason - shortTermReserveDispatchStatus commitStatusOverrides: type: - object - 'null' properties: commitStatus: $ref: '#/components/schemas/DRR1CommitStatus' commitStatusOverrideReason: $ref: '#/components/schemas/RTOverrideReason' commitStatusOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - commitStatus - commitStatusOverrideReason offControlOverrides: type: - object - 'null' properties: offControlFlag: type: boolean example: true eeeFlag: description: Specifies the Energy Deployment Charge Exemption (EEE) override. May be set true only when OffControlFlag = true. type: boolean example: true offControlOverrideReason: $ref: '#/components/schemas/RTOverrideReason' offControlOverrideText: $ref: '#/components/schemas/RTOverrideText' required: - offControlFlag - eeeFlag - offControlOverrideReason required: - offerType - effectiveOfferOverrides DRR2RegDispatchStatus: type: string enum: - Economic - SelfSchedule - NotQualified - NotParticipating RealEnergySignedNullable: description: Used to represent real energy values submitted to the market. Nullable added to allow for data driven delete behaviour. type: - number - 'null' format: realenergy multipleOf: 0.1 minimum: 0 maximum: 9.99999999E7 example: 1200.7 parameters: Hour: in: query name: hour description: Optional parameter to specifiy the particular hour to be returned, otherwise all hours are returned. required: false schema: $ref: '#/components/schemas/HourLabel' Portfolio: in: query name: portfolio description: Optional parameter to specify the name of the Portfolio of pricing nodes for the requested data. If neither pnode or portfolio is provided then all applicable data is returned. required: false schema: $ref: '#/components/schemas/PortfolioName' MarketTypeIncBoth: in: path name: market description: Energy Market or both (day-ahead, real-time, or both). required: true schema: $ref: '#/components/schemas/MarketTypeIncBoth' x-acting-participant: in: header name: x-acting-participant description: Header to override default acting participant of NERC ID. Will be validated against participant collection resource when specified in path. schema: type: string example: MP Participant: in: path name: participantName description: The NERC ID of asset owner specified in the path for a collection resource. required: true schema: $ref: '#/components/schemas/ParticipantName' MarketType: in: path name: market description: Energy Market (day-ahead, real-time). required: true schema: $ref: '#/components/schemas/MarketType' Pnode: in: query name: pnode description: Optional parameter to specify the name of a pricing node for the requested data. If neither pnode or portfolio is provided then all applicable data is returned. required: false schema: $ref: '#/components/schemas/PNodeName' MarketOperatingDay: in: path name: day description: The operating day of the data. required: true schema: $ref: '#/components/schemas/MarketOperatingDay' LocationType: in: query name: locationType required: false schema: type: array minItems: 1 items: $ref: '#/components/schemas/LocationType' style: form explode: false responses: InternalErrorApiResponse: description: Internal error occurred, details in server-side logs. content: application/json: schema: $ref: '#/components/schemas/APIResponse' example: action: responses: - messages: - level: ERROR msgId: MESSAGE_ID params: [] userMsg: Internal error message for MESSAGE_ID. transactionId: 34571c664e48ca0b1e30d7ffb9b3b287 transactionTime: '2020-07-02T17:45:00-05:00' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' OkApiResponse: description: Successful operation. content: application/json: schema: $ref: '#/components/schemas/APIResponse' example: action: responses: [] transactionId: 34571c664e48ca0b1e30d7ffb9b3b287 transactionTime: '2020-07-02T17:45:00-05:00' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' UnauthorizedApiResponse: description: Rejected due to insufficient permissions. content: application/json: schema: $ref: '#/components/schemas/APIResponse' example: action: responses: - messages: - level: ERROR msgId: MESSAGE_ID params: [] userMsg: Unauthorized message for MESSAGE_ID. transactionId: 34571c664e48ca0b1e30d7ffb9b3b287 transactionTime: '2020-07-02T17:45:00-05:00' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' BadRequestApiResponse: description: User error. Request was invalid for some reason. See response for details. content: application/json: schema: $ref: '#/components/schemas/APIResponse' example: action: responses: - messages: - level: ERROR msgId: MESSAGE_ID params: [] userMsg: Bad request message for MESSAGE_ID. transactionId: 34571c664e48ca0b1e30d7ffb9b3b287 transactionTime: '2020-07-02T17:45:00-05:00' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' NotFoundApiResponse: description: Resource not found. The path provided does not point to an entity in the system. content: application/json: schema: $ref: '#/components/schemas/APIResponse' example: action: responses: - messages: - level: ERROR msgId: MESSAGE_ID params: [] userMsg: Not found message for MESSAGE_ID. transactionId: 34571c664e48ca0b1e30d7ffb9b3b287 transactionTime: '2020-07-02T17:45:00-05:00' headers: http-x-request-id: $ref: '#/components/headers/http-x-request-id' headers: http-x-request-id: description: Response header contains a unique transaction identifier assigned by MUI. Identifier is a GUID represented without hyphens. schema: type: string format: guid example: 34571c664e48ca0b1e30d7ffb9b3b287