Skip to contents

Actual capacity of Frequency Restoration Reserve (FRR) or Replacement Reserve (RR).

Usage

rr_and_frr_actual_capacity(
  eic = NULL,
  process_type = NULL,
  period_start = ymd(Sys.Date() - days(x = 7L), tz = "CET"),
  period_end = ymd(Sys.Date(), tz = "CET"),
  tidy_output = TRUE,
  security_token = Sys.getenv("ENTSOE_PAT")
)

Arguments

eic

Energy Identification Code of the area domain

process_type

type of reserve "A56" FRR "A46" RR

period_start

POSIXct or YYYY-MM-DD HH:MM:SS format

period_end

POSIXct or YYYY-MM-DD HH:MM:SS format

tidy_output

Defaults to TRUE. flatten nested tables

security_token

Security token for ENTSO-E transparency platform

Value

A tibble::tibble() with the queried data.

Examples

df1 <- entsoeapi::rr_and_frr_actual_capacity(
  eic = "10YFR-RTE------C",
  process_type = "A46",
  period_start = lubridate::ymd(x = "2024-01-01", tz = "CET"),
  period_end = lubridate::ymd(x = "2024-04-01", tz = "CET"),
  tidy_output = TRUE
)
#> 
#> ── API call ────────────────────────────────────────────────────────────────────────────────────────────────────────────
#> → https://web-api.tp.entsoe.eu/api?documentType=A26&processType=A46&businessType=C78&Area_Domain=10YFR-RTE------C&periodStart=202312312300&periodEnd=202403312200&securityToken=<...>
#> <- HTTP/2 200 
#> <- date: Mon, 13 Apr 2026 08:52:32 GMT
#> <- content-type: text/xml
#> <- content-disposition: inline; filename="FRR and RR Actual Capacity_202312312300-202403312200.xml"
#> <- x-content-type-options: nosniff
#> <- x-xss-protection: 0
#> <- vary: accept-encoding
#> <- content-encoding: gzip
#> <- strict-transport-security: max-age=15724800; includeSubDomains
#> <- 
#>  response has arrived
#>  Additional type names have been added!
#>  Additional eic names have been added!
#>  Additional definitions have been added!

dplyr::glimpse(df1)
#> Rows: 6
#> Columns: 19
#> $ area_domain_mrid              <chr> "10YFR-RTE------C", "10YFR-RTE------C", "10YFR-RTE------C", "10YFR-RTE------C", 
#> $ area_domain_name              <chr> "France", "France", "France", "France", "France", "France"
#> $ type                          <chr> "A26", "A26", "A26", "A26", "A26", "A26"
#> $ type_def                      <chr> "Capacity document", "Capacity document", "Capacity document", "Capacity documen…
#> $ process_type                  <chr> "A46", "A46", "A46", "A46", "A46", "A46"
#> $ process_type_def              <chr> "Replacement reserve", "Replacement reserve", "Replacement reserve", "Replacemen…
#> $ ts_flow_direction             <chr> "A02", "A02", "A01", "A02", "A01", "A01"
#> $ ts_flow_direction_def         <chr> "DOWN", "DOWN", "UP", "DOWN", "UP", "UP"
#> $ ts_business_type              <chr> "C77", "C79", "C78", "C78", "C77", "C79"
#> $ ts_business_type_def          <chr> "Minimum available capacity", "Maximum available capacity", "Average available c…
#> $ created_date_time             <dttm> 2026-04-13 08:52:32, 2026-04-13 08:52:32, 2026-04-13 08:52:32, 2026-04-13 08:52:…
#> $ revision_number               <dbl> 1, 1, 1, 1, 1, 1
#> $ ts_resolution                 <chr> "P3M", "P3M", "P3M", "P3M", "P3M", "P3M"
#> $ ts_time_interval_start        <dttm> 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:…
#> $ ts_time_interval_end          <dttm> 2024-03-31 22:00:00, 2024-03-31 22:00:00, 2024-03-31 22:00:00, 2024-03-31 22:00:…
#> $ ts_mrid                       <dbl> 1, 2, 3, 4, 5, 6
#> $ ts_point_dt_start             <dttm> 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:…
#> $ ts_point_quantity             <dbl> 2462, 27827, 9967, 14423, 2776, 21779
#> $ ts_quantity_measure_unit_name <chr> "MAW", "MAW", "MAW", "MAW", "MAW", "MAW"

df2 <- entsoeapi::rr_and_frr_actual_capacity(
  eic = "10YFR-RTE------C",
  process_type = "A56",
  period_start = lubridate::ymd(x = "2024-01-01", tz = "CET"),
  period_end = lubridate::ymd(x = "2024-04-01", tz = "CET"),
  tidy_output = TRUE
)
#> 
#> ── API call ────────────────────────────────────────────────────────────────────────────────────────────────────────────
#> → https://web-api.tp.entsoe.eu/api?documentType=A26&processType=A56&businessType=C78&Area_Domain=10YFR-RTE------C&periodStart=202312312300&periodEnd=202403312200&securityToken=<...>
#> <- HTTP/2 200 
#> <- date: Mon, 13 Apr 2026 08:52:32 GMT
#> <- content-type: text/xml
#> <- content-disposition: inline; filename="FRR and RR Actual Capacity_202312312300-202403312200.xml"
#> <- x-content-type-options: nosniff
#> <- x-xss-protection: 0
#> <- vary: accept-encoding
#> <- content-encoding: gzip
#> <- strict-transport-security: max-age=15724800; includeSubDomains
#> <- 
#>  response has arrived
#>  Additional type names have been added!
#>  Additional eic names have been added!
#>  Additional definitions have been added!

dplyr::glimpse(df2)
#> Rows: 6
#> Columns: 19
#> $ area_domain_mrid              <chr> "10YFR-RTE------C", "10YFR-RTE------C", "10YFR-RTE------C", "10YFR-RTE------C", 
#> $ area_domain_name              <chr> "France", "France", "France", "France", "France", "France"
#> $ type                          <chr> "A26", "A26", "A26", "A26", "A26", "A26"
#> $ type_def                      <chr> "Capacity document", "Capacity document", "Capacity document", "Capacity documen…
#> $ process_type                  <chr> "A56", "A56", "A56", "A56", "A56", "A56"
#> $ process_type_def              <chr> "Frequency restoration reserve", "Frequency restoration reserve", "Frequency res…
#> $ ts_flow_direction             <chr> "A02", "A02", "A01", "A02", "A01", "A01"
#> $ ts_flow_direction_def         <chr> "DOWN", "DOWN", "UP", "DOWN", "UP", "UP"
#> $ ts_business_type              <chr> "C77", "C79", "C78", "C78", "C77", "C79"
#> $ ts_business_type_def          <chr> "Minimum available capacity", "Maximum available capacity", "Average available c…
#> $ created_date_time             <dttm> 2026-04-13 08:52:32, 2026-04-13 08:52:32, 2026-04-13 08:52:32, 2026-04-13 08:52:…
#> $ revision_number               <dbl> 1, 1, 1, 1, 1, 1
#> $ ts_resolution                 <chr> "P3M", "P3M", "P3M", "P3M", "P3M", "P3M"
#> $ ts_time_interval_start        <dttm> 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:…
#> $ ts_time_interval_end          <dttm> 2024-03-31 22:00:00, 2024-03-31 22:00:00, 2024-03-31 22:00:00, 2024-03-31 22:00:…
#> $ ts_mrid                       <dbl> 1, 2, 3, 4, 5, 6
#> $ ts_point_dt_start             <dttm> 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:00, 2023-12-31 23:00:…
#> $ ts_point_quantity             <dbl> 381, 9151, 4604, 2931, 1173, 9348
#> $ ts_quantity_measure_unit_name <chr> "MAW", "MAW", "MAW", "MAW", "MAW", "MAW"