% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/outages.R
\name{aemo_outages}
\alias{aemo_outages}
\title{Planned and forced network outages}
\source{
AEMO NEMweb MMSDM archive, NETWORK_OUTAGEDETAIL
table. AEMO Copyright Permissions Notice.
}
\usage{
aemo_outages(start, end, element_id = NULL, outage_type = NULL, region = NULL)
}
\arguments{
\item{start, end}{Outage window (inclusive). Filters on
\code{starttime} and \code{endtime}: any outage active during the
window is returned. Character or POSIXct.}

\item{element_id}{Optional character vector of network
element IDs. \code{NULL} returns all elements.}

\item{outage_type}{Optional character. One of \code{"PLANNED"},
\code{"FORCED"}, or \code{NULL} (both). Case-insensitive.}

\item{region}{Optional NEM region code. Filters on the
region column where available.}
}
\value{
An \code{aemo_tbl} with columns from
NETWORK_OUTAGEDETAIL including \code{outageid}, \code{starttime},
\code{endtime}, \code{substationid}, \code{equipmenttype},
\code{equipmentid}, \code{outagetype}, \code{regionid}, and
\code{restarttimeunknown}. Exact column set depends on the
MMSDM version.
}
\description{
Returns the \code{NETWORK_OUTAGEDETAIL} table from MMSDM, which
records every planned and forced outage on NEM transmission
and distribution network elements. Outages are a primary
driver of binding constraints and price spikes: when a line
or transformer is out of service the network is more
constrained, reducing the thermal limits that appear as RHS
values in DISPATCHCONSTRAINT.
}
\details{
\strong{Use case.} Pair with \code{\link[=aemo_constraints]{aemo_constraints()}} to explain a
price spike: \code{aemo_outages()} tells you which elements were
off-service at the time; \code{aemo_constraints()} tells you
which constraints bound; together they answer "why was SA
spot price AUD 15,000 at 17:35?".
}
\examples{
\donttest{
op <- options(aemo.cache_dir = tempdir())
try({
  # Forced outages during a recent high-price period in SA
  o <- aemo_outages(
    start = "2024-03-01",
    end   = "2024-03-02",
    outage_type = "FORCED"
  )
  head(o)
})
options(op)
}
}
\seealso{
\code{\link[=aemo_constraints]{aemo_constraints()}} for the binding constraint
shadow prices that these outages drive.

Other dispatch: 
\code{\link{aemo_bids}()},
\code{\link{aemo_constraints}()},
\code{\link{aemo_dispatch_units}()},
\code{\link{aemo_fcas_enablement}()},
\code{\link{aemo_gencon}()},
\code{\link{aemo_interconnector}()},
\code{\link{aemo_market_notices}()},
\code{\link{aemo_rooftop_pv}()},
\code{\link{aemo_spd_constraints}()}
}
\concept{dispatch}
