Skip to contents

climaemet provides several functions for accessing a selection of endpoints of the AEMET API tool. However, this package does not cover in full all the capabilities of the API.

For that reason, we provide the get_data_aemet() function, that allows to access any API endpoint freely. The drawback is that the user would need to handle the results by him/herself.

Example: Normalized text

Some API endpoints, as predicciones-normalizadas-texto, provides the results as plain text on natural language. These results are not parsed by climaemet, but can be retrieved as this:

# endpoint, today forecast

today <- "/api/prediccion/nacional/hoy"

# Metadata
knitr::kable(get_metadata_aemet(today))
unidad_generadora descripcion periodicidad formato copyright notaLegal
Grupo Funcional de Predicción de Referencia Predicción general nacional para hoy / mañana / pasado mañana / medio plazo (tercer y cuarto día) / tendencia (del quinto al noveno día) Disponibilidad. Para hoy, solo se confecciona si hay cambios significativos. Para mañana y pasado mañana diaria a las 15:00 h.o.p.. Para el medio plazo diaria a las 16:00 h.o.p.. La tendencia, diaria a las 18:30 h.o.p. ascii/txt © AEMET. Autorizado el uso de la información y su reproducción citando a AEMET como autora de la misma. https://www.aemet.es/es/nota_legal

# Data
pred_today <- get_data_aemet(today)
#> 
#> Results are MIME type: text/plain
#> Returning data as string
# Produce a result

clean <- gsub("\r", "\n", pred_today, fixed = TRUE)
clean <- gsub("\n\n\n", "\n", clean, fixed = TRUE)

cat(paste("---\n\n", clean, "\n---"))

AGENCIA ESTATAL DE METEOROLOGÍA PREDICCIÓN GENERAL PARA ESPAÑA DÍA 03 DE JUNIO DE 2025 A LAS 08:17 HORA OFICIAL PREDICCIÓN VÁLIDA PARA EL MARTES 3

A.- FENÓMENOS SIGNIFICATIVOS Chubascos y tormentas con probabilidad de ser fuertes en ambas mesetas, áreas aledañas, este peninsular, sierras del nordeste de Andalucía, medio Ebro e Ibérica, donde podrían ser muy fuertes e incluso con granizo grande. Descenso notable de las temperaturas máximas en la meseta Sur y nordeste de Andalucía.

B.- PREDICCIÓN Se mantendrá una situación de inestabilidad en la Península con la formación de una pequeña dana. Se esperan cielos nubosos o cubiertos en el centro norte y noroeste peninsular con precipitaciones en el entorno del Cantábrico oriental, nubosidad baja matinal en los valles atlánticos tendiendo a levantar, e intervalos de nubes medias y altas en el resto. A partir de mediodía se desarrollará nubosidad de evolución con chubascos y tormentas en amplias zonas de interior, siendo probable que lleguen a fuertes y ocasionalmente vayan acompañadas de granizo y rachas muy fuertes en amplias zonas de ambas mesetas y regiones aledañas, así como en áreas del este peninsular, sierras del nordeste de Andalucía, medio Ebro y especialmente en el entorno del sistema Ibérico, Bajo Aragón y este de la meseta norte, donde podrían ser muy fuertes e ir acompañadas de granizo grande. En los archipiélagos predominarán nubes medias y altas con posibilidad de alguna tormenta ocasional que podría dejar algún chubasco aislado al suroeste de Canarias. También se darán intervalos de nubes bajas en los nortes de Canarias.

Probables bancos de niebla matinales en montañas del extremo norte peninsular y en Baleares. Calima débil en el este de la Península, Melilla, Baleares y Canarias.

Las temperaturas máximas aumentarán en el extremo noroeste y buena parte del tercio nordeste peninsular, predominando los descensos en el resto, notables en la meseta sur y nordeste de Andalucía. Las mínimas en general descenderán en la mitad sur peninsular permaneciendo con pocos cambios en el resto.

Predominarán vientos de componente oeste en la Península y Baleares, aunque empezarán de componente norte en el norte y de levante en el área mediterránea oriental y tercio nordeste peninsular. Soplarán más intensos en el Guadalquivir y en litorales, con intervalos de poniente fuerte en el Estrecho y Alborán. En Canarias soplará alisio también con intervalos de fuerte y alguna racha muy fuerte en zonas expuestas.


Example: Maps

AEMET also provides map data, usually on image/gif format. One way to get this kind of data is as follows:

# Endpoint of a map
a_map <- "/api/mapasygraficos/analisis"

# Metadata
knitr::kable(get_metadata_aemet(a_map))
unidad_generadora descripción periodicidad formato copyright notaLegal
Grupo Funcional de Jefes de Turno Mapas de análisis de frentes en superficie Dos veces al día, a las 02:00 y 14:00 h.o.p. en invierno y a las 03:00 y 15:00 en verano. image/gif © AEMET. Autorizado el uso de la información y su reproducción citando a AEMET como autora de la misma. https://www.aemet.es/es/nota_legal

the_map <- get_data_aemet(a_map)
#> 
#> Results are MIME type: image/gif
#> Returning raw data


# Write as gif and include it
giffile <- "example-gif.gif"
writeBin(the_map, giffile)

# Display on the vignette
knitr::include_graphics(giffile)
Example: Surface analysis map provided by AEMET

Example: Surface analysis map provided by AEMET