md
Autres IPA météorologiques
2018-09-29
<-L'IPA météorologique de Yahoo! en Free Pascal --

En février, j'examinais comment récupérer les conditions et prévisions météorologiques de Yahoo Weather avec un programme écrit en Pascal. Avec la récente installation de Free Pascal / Lazarus sur Ubuntu 18.04, j'ai décidé d'étendre l'étude à d'autres IPA (interface de programmation d'applications; API de l'acronyme anglais Application Programming Interface est plus courant) : Apixu, Dark Sky, MET Norway, OpenWeatherMap et Weatherbit.io.

Table des matières

  1. Architecture REST
  2. Support linguistique
  3. Spécification de l'endroit
  4. Prévisions météorologiques et données historiques
  5. Mises à jour des données
  6. Limites
  7. Programmes de démonstration

Architecture REST toc

Formellement, ces services sont plus ou moins conformes à l'architecture REST : une ressource, comme les conditions atmosphériques à un endroit précis, est obtenue d'un serveur Web avec une requête HTTP ou HTTPS formatée correctement. En principe, le protocole doit être sans état : serveur et le client ne devrait conserver aucune information. Ainsi, chaque requête est indépendante, sans lien avec la précédente ou la suivante. Il faut donc que chaque requête provenant du client contienne toute l'information nécessaire pour obtenir la ressource désirée et que la réponse du serveur contienne toute l'information exigée.

En pratique, les sites conservent de l'information au sujet de chaque requête. À deux exceptions près, les requêtes HTTP/HTTPS faites à un serveur doivent contenir une « clé » que l'on obtient en s'enregistrant auprès du fournisseur. Ainsi ces derniers peuvent comptabiliser l'utilisation pour fin de tarification. Lorsqu'un fournisseur exige une clé même pour son service gratuit c'est qu'il limite l'utilisation de ses serveurs en espérant vendre un abonnement à l'un de ses services plus performants ultérieurement. Aucun fournisseur n'offre l'accès illimité à ses services alors vraisemblablement, Yahoo Weather et MET Norway utilisent l'adresse IP du client pour contrôler le nombre de requêtes faites.

Voici la requête qu'il faut envoyer pour obtenir les conditions courantes à Paris en Ontario. Cette communauté canadienne d'un peu plus de 12 000 âmes est l'une des 17 communautés du même nom répertorier par le service de géolocalisation de Yahoo.

https://query.yahooapis.com/v1/public/yql?q=select%20item.condition%20from%20weather.forecast%20where%20woeid%20%3D%204352 https://api.weatherbit.io/v2.0/current?city=Paris&country=CA&key={clé} https://api.openweathermap.org/data/2.5/weather?q=Paris,CA&APPID={clé} https://api.darksky.net/forecast/{clé}/43.196,-80.388 https://api.apixu.com/v1/current.json?key={clé}&q=Paris,CA https://api.met.no/weatherapi/locationforecast/1.9/?lat=43.196&lon=-80.388

Les cinq derniers exemples ont la forme classique d'une URL et d'une chaîne de requête joint par le séparateur «?». Cette dernière est constituée d'un ou de plusieurs couples champ=valeur démarqués par le séparateur «&». Le premier exemple suit ce schéma, mais la valeur du champ q (sans doute une abréviation de query, le mot anglais signifiant requête) est en fait une expression qui se plie à la définition de la langue de requête structurée de Yahoo, YQL, dont la syntaxe est de type SQL.

Le plus souvent des éléments peuvent être ajoutés à la requête pour spécifier le format de la réponse, les unités des mesures météorologiques ou la langue de la réponse. Yahoo Weather n'offre pas cette dernière possibilité alors que MET Norway n'offre aucune de ces options.

Tous les services acceptent des requêtes faites avec le protocole HTTP sécurisé (HTTPS). Dark Sky refuse les requêtes qui ne sont pas sécurisées, Yahoo Weather et MET Norway les redirigent vers le protocole sécurisé et OpenWeatherMap, Weatherbit.io et Apixu les acceptent.

Presque tous les serveurs retournent les données météorologiques formatées en JSON ou XML mais le format par défaut est différent selon le service. L'exception est MET Norway qui n'utilise que le XML et Apixu où il faut spécifier le format désiré, car l'adresse Web est différente selon le format désiré.

Le tableau suivant résume cette information au sujet des protocoles acceptés pour les requêtes, la nécessité de s'enregistrer pour obtenir une clé et les formats disponibles pour les résultats. Les liens dans le tableau sont vers les pages d'enregistrement pour obtenir une clé. C'est gratuit et il n'est pas nécessaire de fournir d'information autre qu'une adresse de courriel valide.

Service Protocol Clé Format
HTTPS HTTP JSON XML Autre
Apixu
Dark Sky
MET Norway
OpenWeatherMap ✓ * HTML
Weatherbit.io
Yahoo Weather ✓ *

(*) dénote le format par défaut de la réponse lorsqu'un format n'est pas
spécifié dans la requête et qu'il y a plus d'une possibilité.

Évidemment, chaque service présente les données à sa façon, il serait bien trop simple qu'ils adoptent un gabarit JSON uniforme. D'ailleurs, les données météorologiques courantes retournées par les services ne sont pas les mêmes. Toutefois, certaines observations sont universellement disponibles dont la température, l'humidité, et la pression atmosphérique. En revanche, la nébulosité et la précipitation le cas échéant ne sont pas disponibles de tous les services.

Support linguistique toc

Tous les services donnent une courte description des conditions atmosphériques. C'est souvent qu'un seul mot tel « nuageux» ou « orages », mais le texte peut aussi être plus long.

Presque tous les serveurs utilisent l'anglais par défaut pour ces descriptions. On peut toutefois spécifier une autre langue, mais la liste des langues prises en charge est différente d'un fournisseur à l'autre. Les principales langues européennes, le français, l'espagnol, l'allemand, etc. sont toutes disponibles. Les exceptions sont Yahoo Weather et MET Norway qui n'utilisent que l'anglais et le norvégien respectivement.

Apixu Dark Sky OpenWeatherMap Weatherbit.io
ar - Arabic
az - Azerbaijani
be - Belarusian
bg - Bulgarian
bs - Bosnian
ca - Catalan
cz - Czech
da - Danish
de - German
el - Greek
en - English
es - Spanish
et - Estonian
fa - Persian (Farsi)
fi - Finnish
fr - French
gl - Galician
hi - Hindi
he - Hebrew
hr - Croatian
hu - Hungarian
id - Indonesian
is - Icelandic
it - Italian
ja - Japanese
jv - Javanese
ka - Georgian
ko - Korean
kr - Korean
kw - Cornish
la - Latvian
lt - Lithuanian
mk - Macedonian
mr - Marathi
nb - Norwegian Bokmål
nl - Dutch
no - Norwegian Bokmål
pa - Punjabi
pl - Polish
pt - Portuguese
ro - Romanian
ru - Russian
se - Swedish
si - Sinhalese
sk - Slovak
sl - Slovenian
sr - Serbian
sv - Swedish
ta - Tamil
te - Telugu
tet - Tetum
tr - Turkish
ua - Ukrainian
uk - Ukrainian
ur - Urdu
vi - Vietnamese
zh - Chinese Simplified
zh_cmn - Mandarin
zh_hsn - Xiang
zh_tw - Chinese Traditional
zh_wuu - Wu (Shanghainese)
zh_yue - Yue (Cantonese)
zu - Zulu

Il y a duplication comme l'ukrainien. OpenWeatherMap le dénote avec le code «ua» alors que les autres fournisseurs utilisent «uk». Il me semble que ces derniers ont raisons, car «uk» est le code (ISO 639-1) pour la langue alors que «ua» est le code (ISO 3166-1 alpha 2) pour l'Ukraine.

Tous les services accompagnent la description textuelle de conditions courantes d'un code numérique. Évidemment, les codes sont différents selon le fournisseur. On retrouve la liste des codes sur leur site Web et ainsi on peut plus facilement prendre en charge la traduction du texte s'il n'est pas possible de l'obtenir dans la langue désirée.

Spécification de l'endroit toc

Certains services offrent plus d'une façon d'identifier l'endroit pour lequel les mesures météorologiques sont désirées. Dans tous les cas, les coordonnées de l'endroit (latitude et longitude) peuvent être utilisées. D'ailleurs, c'est la seule méthode acceptée par Dark Sky et MET Norway.

Les autres fournisseurs (Apixu, OpenWeatherMap, Weatherbit.io et Yahoo Weather) acceptent le nom d'une localité. Si c'est naturel et pratique d'utiliser cette façon de spécifier un endroit, il faut composer avec une réalité : il peut y avoir plusieurs endroits avec un même nom. Natif de Montréal au Québec, j'ai trouvé cocasse de me retrouver à Montréal en Aude il y a quelques années. En fait, il y a une Association des Montréal de France et d'Europe qui regroupe 7 communautés, dont 6 en France. La base de données WOEID (Where on Earth Identifier) de Yahoo associe « Montréal » à 9 endroits et « Montreal » à 27. Pour contourner ce type de problème somme toute assez courant, les fournisseurs ajoutent un ou deux champs supplémentaires pour spécifier le pays et, éventuellement, une région administrative.

Il y a d'autres façons plus précises de spécifier l'endroit dont le code postal ou le code de la station météo ou de l'aéroport les plus près. Certains services ont une liste de localités avec un identificateur unique pour chacune. Cela évite toute ambiguïté pour autant qu'on sache l'identificateur pour la localité visée.

Service Lat/Long Endroit Identificateur Code postal IP Autre
Apixu Ville et région ou pays EU, GB et CA IATA et OACI
Dark Sky
MET Norway
OpenWeatherMap Ville et pays OpenWeather
Weatherbit.io Ville, région et pays Weatherbit.io OACI et station météo
Yahoo Weather Ville et région ou pays WOEID

On peut télécharger les bases de données pour les identificateurs de localité de OpenWeather et Weatherbit.io. Il suffit de suive le lien dans le tableau ci-dessus. La base de données WOEID était disponible publiquement de 2009 à 2012. Pour autant que je sache, on ne peut plus la télécharger, mais on y a accès avec des requêtes YQL envers l'IPA de Yahoo.

En principe, les coordonnées, les codes d'aéroport IATA ou OACI et les identificateurs de stations météo ne causent aucunes difficultés. L'identificateur des localités de OpenWeather, Weatherbit.io et Yahoo Weather devraient être aussi précis. Toutefois ce n'est pas exactement le cas. Si l'on examine une partie de la base de données de OpenWeatherMap (city.list.json) pour ce qui est de Montréal et Montreal en France on trouve plusieurs endroits différenciés seulement par leurs coordonnées géographiques.

{ "id": 6432033, "name": "Montréal", "country": "FR", "coord": { "lon": 0.2, "lat": 43.950001 } }, { "id": 2992118, "name": "Montreal", "country": "FR", "coord": { "lon": 0.20358, "lat": 43.950161 } }, { "id": 6453641, "name": "Montréal", "country": "FR", "coord": { "lon": 2.15, "lat": 43.200001 } }, { "id": 2992119, "name": "Montreal", "country": "FR", "coord": { "lon": 2.14122, "lat": 43.199799 } },

Il faudra trouver ailleurs les coordonnées pour déterminer si la région est l'Aude (Occitanie), l'Ardêche (Rhônes-Alpes), la Bourgogne et ainsi de suite. C'est plus ou moins le même problème avec la base de données de Weatherbit.io nommé cities_all.csv.

city_id city_name state_code state_name country_code country_name 2992118 Montréal 76 FR France 2992119 Montréal 76 FR France

Malheuresuement, la base states.csv est peu loquace quant au code régional 76.

state_code state_name country_code 76 FR

On peut essayer les codes des villes pour obtenir les coordonnées des endroit et ainsi déterminer leur nom précis.

2992118 Montréal -> lat 43.95016 long 0.20358 2992119 Montréal -> lat 43.1998 long 2.14122

La première est Montréal-du-Gers et le second est Montréal en Aude, les deux étant en région Occitanie. Étant donné cette base de données on n'est pas surpris d'apprendre que spécifier Aude, Languedoc-Roussillon ou Occitanie comme région n'aide pas Weatherbit.io à trouver Montréal en Aude. Yahoo est plus complet fournissant jusqu'à deux régions administratives en plus du pays.

https://query.yahooapis.com/v1/public/yql?q=select * from geo.places(0) where text="montréal"
query count : 8 created : "2018-09-26T23:26:57Z" lang : "en-US" results place [0] lang : "en-US" xmlns : "http://where.yahooapis.com/v1/schema.rng" yahoo : "http://www.yahooapis.com/v1/base.rng" uri : "http://where.yahooapis.com/v1/place/613017" woeid : "613017" placeTypeName code : "7" content : "Town" name : "Montreal" country code : "FR" type : "Country" woeid : "23424819" content : "France" admin1 code : "" type : "Region" woeid : "7153323" content : "Midi-Pyrenees" admin2 code : "" type : "Department" woeid : "12597194" content : "Gers" admin3 : null locality1 type : "Town" woeid : "613017" content : "Montreal" locality2 : null postal type : "Postal Code" woeid : "12724357" content : "32250" centroid latitude : "43.95076" longitude : "0.20081" boundingBox southWest latitude : "43.943958" longitude : "0.19411" northEast latitude : "43.956242" longitude : "0.20946" areaRank : "1" popRank : "1" timezone type : "Time Zone" woeid : "28350911" content : "Europe/Paris" [4] lang : "en-US" xmlns : "http://where.yahooapis.com/v1/schema.rng" yahoo : "http://www.yahooapis.com/v1/base.rng" uri : "http://where.yahooapis.com/v1/place/613018" woeid : "613018" placeTypeName code : "7" content : "Town" name : "Montreal" country code : "FR" type : "Country" woeid : "23424819" content : "France" admin1 code : "" type : "Region" woeid : "7153320" content : "Languedoc-Roussillon" admin2 code : "" type : "Department" woeid : "12597198" content : "Aude" admin3 : null locality1 type : "Town" woeid : "613018" content : "Montreal" locality2 : null postal type : "Postal Code" woeid : "12722994" content : "11290" centroid latitude : "43.197338" longitude : "2.14418" boundingBox southWest latitude : "43.192341" longitude : "2.13513" northEast latitude : "43.202351" longitude : "2.15662" areaRank : "1" popRank : "1" timezone type : "Time Zone" woeid : "28350911" content : "Europe/Paris"

On note que l'on ne tient pas compte de la réforme territoriale de 2016 qui fusionnait le Languedoc-Roussillon et le Midi-Pyrénées pour former l'Occitanie.

Clairement, rien n'est parfait. Et cette constatation s'étend au code postal. Apixu rapportait que « 75001, US » était Addison, Texas ce qui est correct selon le service postal américain. Selon Weatherbit.io, le même code représente Dallas, TX et selon OpenWeatherMap ce code postal identifie Plano, TX. Plano et Addison sont dans la grande périphérie de Dallas.

C'est peut-être surprenant, mais pour ce qui est de « 75001, FR» il y a un commun accord: il s'agit de la capitale française selon OpenWeatherMap, Weatherbit.io et Yahoo. Toutefois, OpenWeatherMap n'arrive pas a déchiffrer les codes postaux du Royaume-Uni et ne peut interpréter la première partie des codes postaux canadiens que depuis quelques jours. Apixu ne connaît pas les codes postaux français, mais en revanche semble bien s'en sortir avec les codes postaux des États-Unis, du Royaume-Uni et du Canada.

Prévisions météorologiques et données historiques toc

En plus des conditions actuelles, on peut obtenir des prévisions. Il faut soit une URL différent soit une modification à l'élément requête pour obtenir ces prévisions. L'exception est, encore une fois, MET Norway qui donne observations et prévisions ensemble. Mentionnons aussi que Dark Sky fonctionne à rebours; il faut spécifier dans la requête ce que l'on veut exclure, car autrement on obtient les conditions courantes et toutes les prévisions disponibles ensemble.

Le tableau suivant résume les prévisions disponibles gratuitement selon le fournisseur. On peut aussi obtenir des données historiques. Cette question m'intéresse beaucoup moins alors il ne faut pas trop se fier à cette colonne qui ne fait que répéter ce que l'on trouve dans la documentation des sites qui n'est pas nécessairement à jour.

Service Prévisions Données historiques
Apixu Quotidiennes sur 10 jours Horaires pour une journée
Dark Sky Horaires sur 48 heures,
quotidiennes sur 7 jours
Horaires pour une journée et
quotidiennes pour une journée.
MET Norway Quotidiennes sur 9 jours et plus fréquentes,
aux 6 heures, 3 heures et même 1 heure dans les premiers jours.
Autre IPA non examiné.
OpenWeatherMap Aux trois heures sur 5 jours et
quotidiennes sur 7 jours.
Weatherbit.io Horaires sur 48 heures,
aux trois heures sur 5 jours et
quotidiennes sur 16 jours
Horaires pour une journée et
quotidiennes pour une journée.
Yahoo Weather Quotidiennes sur 10 jours

Les fournisseurs limitent considérablement les données historiques gratuitement disponibles. Typiquement, on ne peut obtenir de données datant de plus de 30 jours.

Mises à jour des données toc

À l'exception de Met Norway, les services examinés ici ne produisent pas de données météorologiques. Ils obtiennent leurs données de diverses sources, puis les synthétisent pour les présenter à leurs clients. Conséquemment, l'intervalle entre mises à jour des conditions actuelles et des prévisions dépend en partie sur les mises à jours de fournisseurs de données météorologiques utilisées, et en partie du fournisseur qui procède à l'intégration des données selon le rythme choisi. On comprendra que l'information au sujet des intervalles n'est pas très claire.

Je n'ai rien trouvé à ce sujet en ce qui concerne Apixu, MET Norway et Yahoo Weather. Pour les autres voici ce que j'ai glané :

Dark Sky
How often is your data updated? « Next-hour minutely forecast data is updated every five minutes. Hourly and daily forecast data are updated every hour.» Les mises à jour se font toutes les cinq minutes pour les prévisions d'une minute et toutes les heures pour les prévisions d'une heure et d'un jour.
OpenWeatherMap
Data is not accurate "The update interval can be up to a couple of hours for free/start-up API servers,» Il peut s'écouler jusqu'à deux heures entre mises à jour des conditions courantes. Voir aussi Price.
Weatherbit.io
FAQ « How frequently do does the current weather API update? Data updates as fast as it is reported. This can vary by location. Typically between 15-30 mins. How frequently do forecasts update?Forecasts update once per hour in most locations.» Les conditions courantes sont révisées tous les 15 à 30 minutes typiquement alors que les prévisions sont refaites tous les 60 minutes.

Limites toc

L'Institut de météorologie de Norvège (MET Norway) est une entreprise publique dont

... la mission la plus importante est de protéger la vie et les biens. Nous le faisons notamment en fournissant des prévisions météorologiques et des avertissements aux particuliers, aux autorités de planification d’urgence et aux organismes gouvernementaux. (référence)

Les autres fournisseurs sont des entreprises à but lucratif. Ce qui les pousse à donner accès gratuitement à une partie de leurs services n'est pas immédiatement évident. Est-ce vu comme de la publicité ou un produit d'appel ? Qu'importe, l'avenir de ces services gratuits n'est pas garanti. D'ailleurs des fournisseurs privés ont cessé d'offrir un accès libre et d'autres n'ont jamais adopté cette tactique.

Toujours est-il que tous les fournisseurs examinés ici limitent le nombre de requêtes acceptées dans un intervalle donné. Si l'on dépasse ces limites, il faut passer à un forfait payant ou si l'on a déjà un tel forfait il faut passer à un forfait plus cher. Le tableau ci-dessous indique les limites pour l'utilisation gratuite. Comme mentionnez au début il faut néanmoins s'inscrire pour obtenir une clé qu'on doit inclure dans toute requête sauf pour ce qui est de MET Norway et Yahoo Weather.

Limite de requêtes
Service minute heure jour mois
Apixu (1)     250 10 000
Dark Sky     1 000  
MET Norway (2) 1 200
OpenWeatherMap 60      
Weatherbit.io   1 000  
Yahoo Weather   2 000  
AccuWeather (3)     50  
WeatherUnderground (3) - n'est plus disponible

Notes :
1    D'après la FAQ de World Weather Online, Apixu est son service gratuit. Toujours selon cette FAQ il y aurait une limite quotidienne de 250 requêtes. De plus, il devrait s'écouler au moins 15 minutes entre deux requêtes pour un même endroit. Or la page Web sur le site de Apixu au sujet des prix de divers forfaits (un peu surprenant pour un site «gratuit»), indique que la limite mensuelle est de 10 000 requêtes sans aucune autre indication. Notons que 250 requêtes pendant 30 jours consécutifs donne un limite mensuelle de 7 500.
2 Source: HTTP status codes, 429 Too Many Requests. Also see Conditions for use of the service.
3 Les deux derniers fournisseurs étaient mentionnés dans mon billet précédent. Or AccuWeather n'offre pas un forfait gratuit, mais plutôt un forfait d'essai limité. Weather Underground a annoncé la fin du forfait gratuit: End of Service for the Weather Underground API.

Le monde des services Internet n'est pas très stable. Le tableau reflète les données obtenues le 16 septembre 2018.


Programmes de démonstration toc

L'archive weather_api_src.zip contient le code source pour les six programmes qui accèdent à l'IPA de chaque fournisseur. Il y a aussi un programme pour interroger la base de données WOEID de Yahoo.

Les programmes ont été développés avec Free Pascal (version 3.1.1) Lazarus (version 1.9.0) (revision SVN 58721) sur la plateforme Ubuntu 18.04.1. Il faut ajouter le paquet DCPcrypt pour crypter et décrypter les clés. On le trouve dans le Lazarus Code and Component Repository (CCR). Le programme d'installation fpcpudeluxe peut être utilisé pour cette opération, voir mon billet Installer Free Pascal et Lazarus sur Ubuntu 18.04 avec fpcupdeluxe . Les messages d'erreurs affichés sont sans conséquence.

Il a été nécessaire de modifier les programmes pour qu'ils se compilent avec Free Pascal (version 3.0.4) et Lazarus (version 1.8.4) et fonctionnent sur Windows XP (32 bits). L'archive apixu_win_src.zip contient la source corrigée de l'un des programmes de démonstration. Trois fichiers ont été légèrement modifiés: main.pas, pwd.pas et apixu_demo.lpr. Voir les notes TODO dans les deux premiers fichiers. Les mêmes corrections devraient fonctionner avec les autres programmes.
 
En plus, il faut copier deux bibliothèques nécessaires au fonctionnement de OpenSSL, (ssleay32.dll et libeay32.dll dans le dossier contenant apixu_demo.exe) qu'on obtient de https://indy.fulgan.com/SSL/. Il faut s'assurer d'avoir la dernière version et d'obtenir la version 32 ou 64 bits selon le système d'exploitation. Puisque j'utilise Windows XP 32 bits pour les tests, j'ai télécharger l'archive openssl-1.0.2p-i386-win32.zip pour en tirer les fichiers désirés. Cette information provient de Phil qui répondait à la question Could not initialize openSSL library ? sur le Forum de Lazarus. Voir le commentaire de Remy Lebeau plus loin qui explique pourquoi utiliser les bibliothèques de Indy.

Le programme de démonstration initial pour Yahoo Weather est encore disponible. Ce dernier utilisait le paquet Ararat Synapse pour accéder au Web. Les nouveaux programmes utilisent plutôt fphttpclient qui fait partie de la bibliothèque Free Pascal standard. Il n'y a donc rien à installer. Si l'on préfère continuer d'utiliser Synapse, il suffit de mettre httprequest_synapse au lieu de httprequest dans la clause uses de la section implementation du fichier common/getweather.pas.

La première fois qu'on utilise le programme, il faut entrer la clé de l'IPA. Cliquez sur l'onglet Clé, entrez la clé dans le champ et puis cliquez sur le bouton OK. Dès que le bouton est activé, le contenu du champ est effacé. Ainsi la clé n'est jamais affichée sauf lorsqu'on entre sa valeur et que l'on active la visualisation de la clé.

onglet clé

La clé est sauvegardée dans un fichier crypté dans le répertoire du programme. Lors des prochaines utilisations, la clé sera tirée de ce fichier. La phrase de sécurité utilisée pour crypter la clé est évidemment la même pour toutes les copies du logiciel si l'on ne change rien. Il est possible de spécifier cette phrase à chaque départ de l'application. Le message suivant est affiché au début avec les instructions à ce sujet.

écran initial

C'est ma première incursion dans le monde de la cryptographie. Alors je n'ai pas trop confiance dans la sécurité des clés stockées avec ces programmes.

Voici la présentation du programme de démonstration owm_demo; les autres sont semblables.

écran principal

On sélectionne le moyen pour spécifier l'endroit parmi les onglets. Après il suffit de remplir les champs affichés sous l'onglet, sélectionner les données météorologiques désirées dans la liste déroulante Obtenir. On peut aussi choisir la langue utilisée pour les descriptions des conditions, les unités de mesure, le format de la réponse et le protocole à utiliser.

Pour enfin envoyer la requête et obtenir la réponse du fournisseur, on clique sur le bouton Brut ou Structuré. Dans le premier cas, on obtient la réponse brute du fournisseur. Dans le second cas, la réponse est analysée et affichée dans une arborescence. Son menu contextuel pourrait être utile.

Cliquer sur le bouton URL ajuste la requête en fonction des paramètres fixés et l'affiche dans la zone déroulante au centre de l'application sauf que la clé n'est pas affichée, mais sa position est indiqué par {clé}. La requête et la réponse peuvent être copiées au presse-papiers.

<-L'IPA météorologique de Yahoo! en Free Pascal --