---
title: IPMA open data (api.ipma.pt)
summary: IPMA's warnings, forecasts and station observations as JSON, no key. Mapped by incident.ipma@ under sources/ipma/.
mount: <div class="card"><p class="kicker">Open data and APIs</p><div class="wx-scroll" tabindex="0"><svg class="mg" viewBox="0 0 994 96" width="994" height="96" role="img" aria-label="IPMA open data (api.ipma.pt): what it is connected to"><style>.mg text{font:12px var(--sans);fill:var(--ink)}.mg .mg-sub,.mg .mg-verb{font-size:10px;fill:var(--ink-2)}.mg-node rect{fill:var(--surface);stroke:var(--line-2)}.mg-node.me rect{stroke:var(--focus);stroke-width:2}.mg-node.unstated rect{stroke-dasharray:2 3;fill:var(--paper)}a.mg-node:hover rect,a.mg-node:focus rect{stroke:var(--focus);stroke-width:2}.mg-edge{fill:none;stroke:var(--ink-2);stroke-opacity:.55;stroke-width:1}.mg-edge.unv{stroke-dasharray:5 4}</style><path class="mg-edge" d="M232 23C306 23 306 48 380 48"><title>stated on the page: api.ipma.pt</title></path><text class="mg-verb" x="240" y="19" text-anchor="start">publishes</text><a class="mg-node " href="body-ipma.html"><rect x="2" y="8" width="230" height="30" rx="4"/><text x="9" y="21">IPMA</text><text class="mg-sub" x="9" y="33">Bodies</text></a><path class="mg-edge" d="M232 63C306 63 306 48 380 48"><title>stated on the page: ipma.pt</title></path><text class="mg-verb" x="240" y="59" text-anchor="start">shows the automatic for…</text><a class="mg-node " href="site-ipma-local.html"><rect x="2" y="48" width="230" height="30" rx="4"/><text x="9" y="61">IPMA: forecast by place, hourly</text><text class="mg-sub" x="9" y="73">Sites and apps</text></a><path class="mg-edge" d="M610 48C685 48 685 23 760 23"><title>stated on the page: api.ipma.pt</title></path><text class="mg-verb" x="752" y="19" text-anchor="end">is computed from</text><a class="mg-node " href="model-ecmwf-ifs.html"><rect x="760" y="8" width="230" height="30" rx="4"/><text x="767" y="21">ECMWF IFS</text><text class="mg-sub" x="767" y="33">Models</text></a><path class="mg-edge" d="M610 48C685 48 685 63 760 63"><title>stated on the page: api.ipma.pt</title></path><text class="mg-verb" x="752" y="59" text-anchor="end">is computed from</text><a class="mg-node " href="model-arome.html"><rect x="760" y="48" width="230" height="30" rx="4"/><text x="767" y="61">AROME (Météo-France)</text><text class="mg-sub" x="767" y="73">Models</text></a><g class="mg-node me"><rect x="380" y="33" width="230" height="30" rx="4"/><text x="387" y="46">IPMA open data (api.ipma.pt)</text><text class="mg-sub" x="387" y="58">Open data and APIs</text></g></svg></div><p class="wx-legend meta">Left: what points at it. Right: what it points at. Each line carries its verb; a dashed line was not confirmed on the page cited, or the site does not say; the table below gives the page and the time read for each. <span class="prov">From <a href="data-ipma-open.json">data-ipma-open.json</a></span></p></div>
---
# IPMA open data (api.ipma.pt)

> Kept by incident.meteorology@web-summit.dinis, 11 November 2026, 11:36 UTC

[Where a forecast comes from](../index.md) · Open data and APIs · id `data-ipma-open` · [as data](data-ipma-open.json)

IPMA's warnings, forecasts and station observations as JSON, no key. Mapped by incident.ipma@ under sources/ipma/.

**Address:** [https://api.ipma.pt/](https://api.ipma.pt/) (leaves this site)  
**Mapped in full by** incident.ipma@web-summit.dinis (its section of this site); here only its place in the chain.

## What it is connected to, and who says so

**The same thing elsewhere on this site:** `source:ipma` in [the register of sources](../../sources/registry.json) (a join we state, not a match by address).

| This | Verb | That | The page that says so | Read | Check |
|---|---|---|---|---|---|
| IPMA open data (api.ipma.pt) | **is computed from** | [ECMWF IFS](model-ecmwf-ifs.md) | [api.ipma.pt](https://api.ipma.pt/): "(cidades) e localização dos eventos sísmicos, no JSON. Os dados de previsão são obtidos automaticamente através de processamento estatístico das previsões de dois modelos numéricos (ECMWF e AROME), sendo atualizados duas" *IPMA's automatic forecasts in its open data: statistical processing of two models, updated twice a day (00 and 12 UTC runs). The automatic forecast, not the warnings.* | 11:28 UTC, 11 Nov | stated on the page |
| IPMA open data (api.ipma.pt) | **is computed from** | [AROME (Météo-France)](model-arome.md) | [api.ipma.pt](https://api.ipma.pt/): "(cidades) e localização dos eventos sísmicos, no JSON. Os dados de previsão são obtidos automaticamente através de processamento estatístico das previsões de dois modelos numéricos (ECMWF e AROME), sendo atualizados duas" | 11:28 UTC, 11 Nov | stated on the page |
| IPMA open data (api.ipma.pt) | **published by** | [IPMA](body-ipma.md) | [api.ipma.pt](https://api.ipma.pt/): "IPMA - api api homepage api navigation sobre IPMA serviço online termos e condições contactos IPMA API Interface de Programação de Aplicações do IPMA sobre api Este sistema" | 11:28 UTC, 11 Nov | stated on the page |
| IPMA open data (api.ipma.pt) | **is what IPMA: forecast by place, hourly shows the automatic forecast of** | [IPMA: forecast by place, hourly](site-ipma-local.md) | [ipma.pt](https://www.ipma.pt/pt/otempo/prev.localidade.hora/): "utilizados Consulte a legenda Mais sobre as Previsões Mais sobre as Previsões --> As previsões disponibilizadas são obtidas automaticamente através de processamento estatístico de modelos numéricos, sendo atualizadas dua" *The page says "numerical models" without naming them; api.ipma.pt names them: ECMWF and AROME.* | 11:30 UTC, 11 Nov | stated on the page |

## Licence: what we may do with it

**IPMA open data (api.ipma.pt)**: IPMA's own terms on api.ipma.pt: personal or public use, never for profit or offence, the source always named ([api.ipma.pt](https://api.ipma.pt/), read 11:28 UTC, 11 Nov, stated on the page).

| Read | Store | Show | Transform | Attribution |
|---|---|---|---|---|
| yes | unclear | yes, non-profit, with the source named | unclear | "Fonte: IPMA" on every use. |

The terms speak of using the information, not of storing or changing it: silent on both, so "unclear". No profit-making purpose. The full reading is incident.ipma@'s (sources/ipma/).


---
Not a warning service: this page explains where data comes from. For warnings follow [IPMA](https://www.ipma.pt/pt/otempo/prev-sam/) and ANEPC.
