Skip to contents

Client tool to get data and metadata from AEMET and convert json to tibble.

Usage

get_data_aemet(apidest, verbose = FALSE)

get_metadata_aemet(apidest, verbose = FALSE)

Arguments

apidest

Character string as destination URL. See https://opendata.aemet.es/dist/index.html.

verbose

Logical TRUE/FALSE. Provides information about the flow of information between the client and server.

Value

A tibble (if possible) or the results of the query as provided by httr::content().

See also

Some examples on how to use these functions on vignette("extending-climaemet").

Examples

# Run this example only if AEMET_API_KEY is detected

url <- "/api/valores/climatologicos/inventarioestaciones/todasestaciones"

get_data_aemet(url)
#> # A tibble: 291 × 7
#>    latitud provincia altitud indicativo nombre                 indsinop longitud
#>    <chr>   <chr>     <chr>   <chr>      <chr>                  <chr>    <chr>   
#>  1 413515N BARCELONA 74      0252D      ARENYS DE MAR          "08186"  023224E 
#>  2 411734N BARCELONA 4       0076       BARCELONA AEROPUERTO   "08181"  020412E 
#>  3 412506N BARCELONA 408     0200E      BARCELONA, FABRA       ""       020727E 
#>  4 412326N BARCELONA 6       0201D      BARCELONA              "08180"  021200E 
#>  5 414312N BARCELONA 291     0149X      MANRESA                "08174"  015025E 
#>  6 413125N BARCELONA 146     0229I      SABADELL AEROPUERTO    "08192"  020611E 
#>  7 413903N BARCELONA 40      0255B      SANTA SUSANNA          "08188"  024149E 
#>  8 415442N GIRONA    143     0367       GIRONA AEROPUERTO      "08184"  024548E 
#>  9 415848N GIRONA    95      0370B      GIRONA, ANTIC INSTITUT ""       024931E 
#> 10 420616N GIRONA    157     0372C      PORQUERES              "08120"  024549E 
#> # … with 281 more rows


# Metadata

get_metadata_aemet(url)
#> # A tibble: 7 × 7
#>   unidad_generadora              perio…¹ descr…² formato copyr…³ notaL…⁴ campo…⁵
#>   <chr>                          <chr>   <chr>   <chr>   <chr>   <chr>   <chr>  
#> 1 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… latitud
#> 2 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… provin…
#> 3 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… indica…
#> 4 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… altitud
#> 5 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… nombre 
#> 6 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… indsin…
#> 7 Servicio del Banco de Datos N… 1 vez … Invent… applic… © AEME… https:… longit…
#> # … with 3 more variables: campos$descripcion <chr>, $tipo_datos <chr>,
#> #   $requerido <lgl>, and abbreviated variable names ¹​periodicidad,
#> #   ²​descripcion, ³​copyright, ⁴​notaLegal, ⁵​campos$id

# We can get data from any API endpoint

# Plain text

plain <- get_data_aemet("/api/prediccion/nacional/hoy")
#> 
#> Returning raw results. MIME type: text/plain

cat(plain)
#> AGENCIA ESTATAL DE METEOROLOGÍA


#> PREDICCIÓN GENERAL PARA ESPAÑA 


#> DÍA 27 DE ENERO DE 2023 A LAS 08:50 HORA OFICIAL


#> PREDICCIÓN VÁLIDA PARA EL VIERNES 27


#> 


#> A.- FENÓMENOS SIGNIFICATIVOS


#> Acumulaciones significativas de nieve en el área cantábrica y


#> norte de los sistemas Central e Ibérico. Heladas generalizadas,


#> fuertes en Pirineos. Viento fuerte o con rachas muy fuertes en los


#> litorales de Galicia, Ampurdán, norte de Baleares, Canarias,


#> Pirineos, sistemas Central e Ibérico y valle del Ebro.


#> 


#> B.- PREDICCIÓN


#> Predominio de cielos nubosos en los tercios noroeste y norte


#> peninsulares, con precipitaciones en el nordeste de Galicia y


#> área cantábrica, donde podrán ser localmente persistentes en


#> áreas montañosas. También se esperan precipitaciones, débiles


#> y dispersas en general, en otras zonas del norte de Galicia,


#> Pirineos, alto Ebro, y norte de la meseta Norte, y sin


#> descartarlas en los entornos de los sistemas Ibérico y Central.


#> Intervalos nubosos en Baleares y Alborán con probables chubascos


#> ocasionales, sin descartarlos en los litorales del sureste


#> peninsular. Predominio de poco nuboso en el resto del área


#> mediterránea, y mitad sur peninsular, con intervalos nubosos en


#> las Béticas. Las cotas de nieve en Pirineos estarán en unos


#> 300/500 m, 600/800 en la Cantábrica occidental, y 400/600 m en el


#> resto del área cantábrica y sistemas Central e Ibérico. Se


#> esperan acumulaciones significativas en el área cantábrica,


#> norte de los sistemas Central e Ibérico y noreste de la meseta


#> Norte. En Canarias, intervalos nubosos con probabilidad de


#> precipitaciones débiles durante la segunda mitad del día en el


#> norte de las islas de mayor relieve. Probables bancos de niebla


#> matinales en zonas de montaña del tercio norte peninsular. Las


#> temperaturas tendrán un aumento en la mitad suroeste peninsular,


#> tanto las máximas como las mínimas, y con pocos cambios o


#> ligeros descensos en el resto del país. Salvo en el extremo


#> suroeste, heladas generalizadas en zonas del interior peninsular,


#> más intensas en montaña y llegando a fuerte en Pirineos. Vientos


#> del norte y noreste, fuerte en litorales de Galicia, tramontana en


#> Ampurdán y norte de Baleares, y con intervalos fuertes en


#> Canarias occidentales. Rachas muy fuertes del noroeste en


#> Pirineos, sistemas Central e Ibérico y valle del Ebro.


#> 



# An image

image <- get_data_aemet("/api/satelites/producto/nvdi")
#> 
#> Returning raw results. MIME type: image/gif

# Write and read
tmp <- tempfile(fileext = ".gif")

writeBin(image, tmp)

gganimate::gif_file(tmp)