🇨🇵 API Paquets Modèles (FR)
Jun 12, 2025
NB : cette documentation est valable pour les modèles déterministes suivants : AROME, AROME Outre-mer, ARPEGE, Vagues et surcote.
Pré-requis : avoir consulté l'aide d'utilisation des API du portail de Météo-France
Caractéristiques principales de ces API :
Durée de rétention (profondeur) des données = 1 jour
Temps réel = oui
Archive = non
Granularité d'accès (selon le modèle et le paquet) =
1 modèle / 1 réseau / 1 échéance / 1 niveau / groupement de paramètres météo
ou 1 modèle / 1 réseau / 1 échéance / groupement de niveaux / groupement de paramètres météo
ou 1 modèle / 1 réseau / groupement d'échéances / 1 niveau / groupement de paramètres météo
ou 1 modèle / 1 réseau / groupement d'échéances / groupement de niveaux / groupement de paramètres météo
Domaine = France métropole et outre-mer
Fréquence d'actualisation :
au plus tôt après l'exécution du réseau d'un modèle, avec les délais inhérents à la chaîne de production
Synchrone/asynchrone = synchrone
Limitation(s) = pas de limitation mais une recommandation forte est donnée pour le téléchargement des paquets de données modèle : étant donné leur volumétrie conséquente et afin de ne pas surcharger notre bande passante, ce qui conduirait à une dégradation du niveau de service pour tous les usagers, il est fortement recommandé de ne pas paralléliser les requêtes mais de les séquentialiser.
Fonctionnement de ces API :
Ces API au standard RESTful donnent accès au catalogue dynamique et au téléchargement des paquets de données de prévision des modèles en temps réel.
L’API permet d’accéder à des "paquets de données" différemment structurés selon le modèle et les grilles. Il est nécessaire de se reporter à la documentation des produits (cf plus haut) afin de connaitre la distribution des paramètres, des niveaux ainsi que le regroupement fait pour les échéances, dans les paquets disponibles.
Le format des fichiers renvoyés, pour un réseau et un groupement d'échéances donné, est un GRIB2 "multi-messages"; chaque message étant un GRIB concernant : un paramètre pour une échéance et un niveau.
Ces API permettent un mécanisme de "reprise" sur un téléchargement incomplet grâce au fonctionnement des entêtes Range
(entête de requête) et xxx
(entête de réponse) avec un code retour HTTP 206
.
Consulter le catalogue des paquets de données de prévision modèle disponibles avec les web services (cf plus bas un cas d'usage pour expliciter le fonctionnement) :
/models/{model}
/models/{model}/grids
/models/{model}/grids/{grid}
/models/{model}/grids/{grid}/packages
/models/{model}/grids/{grid}/packages/{package}
Télécharger le paquet souhaité avec les web services :
en mode RESTful :
/models/{model}/grids/{grid}/packages/{package}/productXXX
ou en mode KVP :
/productXXX
NB : le web service en mode KVP a été développé pour assurer une transition aisée avec l'ancienne API de téléchargement.
NB : un tutoriel vidéo sur la FAQ des Données Publiques est disponible qui décrit le fonctionnement de ces API de type "Paquets modèles".
Erreurs courantes :
404 :
mauvaise orthographe des mots clés du catalogue
ou donnée absente : il est intéressant d'utiliser les web service du catalogue dynamique pour connaitre les données disponibles
400 : erreur de format. Il faut être particulièrement vigilant avec le format du paramètre
time
car il diffère selon le modèle et la grille
Cas d'usage :
En mode développement, je cherche à télécharger toutes les prévisions de vent à la surface pour le modèle AROME à la plus grande résolution, et pour les 6 premières échéances du réseau du jour à 00h TU.
recherche de la grille de plus grande résolution du modèle AROME :
Requête des grilles du modèle AROME :
curl -X 'GET' \ 'https://public-api.meteofrance.fr/previnum/DPPaquetAROME/v1/models/AROME/grids' \ -H 'accept: text/json' \ -H 'Authorization: Bearer <votre_token_ici>'
cette commande renvoie un fichier JSON qui liste l'ensemble des grilles AROME actuellement disponibles au téléchargement. Cela permet de sélectionner la plus grande résolution (ici =
0.025
) :liste des grilles AROME disponibles :
{ "title": "Liste des grilles disponibles pour le modèle AROME", "description": "Grilles du modèle AROME", "attribution": "Source : Météo-France", "links": [ { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids", "rel": "self", "type": "application/json", "title": "Ce document" }, { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.01", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Grille 0,01° du modèle AROME (résolution au sol de 1,3 km)" }, { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Grille 0,025° du modèle AROME (résolution au sol de 2,5 km)" } ] }
recherche des paramètres d'intérêt pour AROME
0.025
par le parcours du catalogue :Requête de la liste des paquets disponibles :
curl -X 'GET' \ 'https://public-api.meteofrance.fr/previnum/DPPaquetAROME/v1/models/AROME/grids/0.025/packages' \ -H 'accept: text/json' \ -H 'Authorization: Bearer <votre_token_ici>'
cette commande renvoie un fichier JSON des paquets de paramètres disponibles, dont ceux à la surface :
Liste des paquets disponibles à la surface :
{ "title": "Liste des paquets disponibles pour le modèle AROME 0.025", "description": "Paquets du modèle AROME 0.025.", "attribution": "Source : Météo-France", "links": [ ... { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025/packages/SP1", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Paramètres courants à la surface" }, { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025/packages/SP2", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Paramètres additionnels à la surface" }, { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025/packages/SP3", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Paramètres additionnels (2) à la surface" }, ... ] }
description du contenu des paquets à la surface (ex avec
SP1
) :Requête de description du paquet SP1 :
curl -X 'GET' \ 'https://public-api.meteofrance.fr/previnum/DPPaquetAROME/v1/models/AROME/grids/0.025/packages/SP1' \ -H 'accept: text/json' \ -H 'Authorization: Bearer <votre_token_ici>'
cette commande renvoie un fichier JSON avec la liste des paramètres contenus dans le paquet (ici le paquet
SP1
contient bien les paramètres de vent) ainsi que les réseaux disponibles, dont le réseau du jour à 00h TU :description du paquet SP1 et réseaux disponibles :
{ "title": "Paramètres courants à la surface disponibles pour le modèle AROME 0.025", "description": "P(mer), U(10m), V(10m), DD(10m), FF(10m), FF_RAF(10m), U_RAF(10m), V_RAF (10m), T(2m), HU (2m), NEBUL, PRECIP, NEIGE, FLSOLAIRE_D , GRAUPEL.", "attribution": "Source : Météo-France", "links": [ ... { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025/packages/SP1?&referencetime=2025-03-06T00:00:00Z", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/json", "title": "Réseau du 2025-03-06 à 00:00:00 UTC" }, ... ] }
liste des échéances disponibles pour ce paquet (
SP1
) et le réseau d'intérêt (le 2025-03-06 à 00:00:00 UTC) :Requête de la liste des échéances pour un paquet et un réseau :
curl -X 'GET' \ 'https://public-api.meteofrance.fr/previnum/DPPaquetAROME/v1/models/AROME/grids/0.025/packages/SP1?referencetime=2025-03-06T00:00:00Z' \ -H 'accept: text/json' \ -H 'Authorization: Bearer <votre_token_ici>'
cette commande renvoie un fichier JSON avec la liste des échéances disponibles, dont le regroupement 00h-06h.
Les champs 'reference_time
' et 'insert_time
' permettent de connaître respectivement le réseau et la date et l’heure de la mise à disposition du produit sur le serveur, en heure UTC.
Le champ'time'
permet de connaître le regroupement d'échéances.liste des échéances :
{ "title": "Réseau du 2025-03-06 à 00:00:00 UTC pour le modèle AROME 0.025", "description": "Liste des échéances et formats des paquets disponibles au téléchargement pour le réseau du 2025-03-06 à 00:00:00 UTC.", "attribution": "Source : Météo-France", "links": [ ... { "href": "https://public-api.meteofrance.fr/previnum/DPPaquetAROME/models/AROME/grids/0.025/packages/SP1/productARO?&referencetime=2025-03-06T00:00:00Z&time=00H06H&format=grib2", "rel": "http://www.opengis.net/def/rel/ogc/1.0/data", "type": "application/octet-stream", "title": "Échéance 00H06H du réseau du 2025-03-06 à 00:00:00 UTC au format grib2", "reference_time": "2025-03-06T00:00:00Z", "time": "00H06H", "insert_time": "2025-03-06T01:57:18Z" }, ... ] }
les différents paramètres
{grid}, {package}, {reference-time}
et{time}
me sont désormais connus et valident ma requête finale pour le téléchargement du produit :Requête de téléchargement du paquet de prévision de vent à la surface du modèle AROME 0.025 :
curl -X 'GET' \ 'https://public-api.meteofrance.fr/previnum/DPPaquetAROME/v1/models/AROME/grids/0.025/packages/SP1/productARO?referencetime=2025-03-06T00:00:00Z&time=00H06H&format=grib2' \ -H 'accept: */*' \ -H 'Authorization: Bearer <votre_token_ici>'