API du portail de données ouvertes : consommation automatisée de données
Savez-vous ce qu'est une API ?
Les interfaces de programmation d'applications (API) sont l'un des services d'échange d'informations et d'accès aux données les plus courants aujourd'hui.
Ils complètent la disponibilité des données dans des fichiers téléchargeables et offrent une série d'avantages qui en font un moyen essentiel d'accès et de consommation des données dans toute initiative d'ouverture des données.
En outre, il s'agit du mécanisme d'accès le plus approprié pour publier des données avec une fréquence de mise à jour élevée, telles que des données en temps réel (API météo) ou des données sur les transports publics, considérées comme de grande valeur (règlement d'exécution (UE) 2023/138 de la Commission du 21 décembre 2022 établissant une liste d'ensembles de données spécifiques de grande valeur et de modalités de publication et de réutilisation).
Les API sont particulièrement utiles pour consommer automatiquement tous les types de données et peuvent adapter le téléchargement aux données souhaitées.
Quels sont les avantages de l'utilisation de l'API de données du portail Open Data ?
L'un des avantages des API par rapport au téléchargement de fichiers est qu'elles permettent d'appliquer différentes opérations lors de l'accès aux données et de leur récupération. Lors de la consommation de données via les API, il est courant de filtrer les données et de sélectionner des catégories ou des formats.
Dans cet article, nous allons voir de plus près comment cela fonctionne et la possibilité de réutiliser le contenu du portail Open Data du Cabildo de Tenerife grâce à son utilisation.
Comment utiliser l'API datos.tenerife.es ?
La documentation sur l'API du portail Open Data du Cabildo de Tenerife se trouve dans le bloc Données en haut de la page du portail. Lorsque vous accédez à la section API, vous verrez l'écran suivant :
Dans les API, la communication entre le serveur et les clients sur le Web s'effectue par l'échange de messages HTTP dans un contexte d'interaction sécurisé.
Il existe deux types de messages : les requêtes, qui sont envoyées par le client au serveur pour demander le lancement d'une action visant à interagir avec les ressources d'information, et les réponses, qui constituent la matérialisation de l'action demandée.
Comme nous le verrons plus loin, chaque requête contient toutes les informations nécessaires à l'exécution de l'action demandée. Dans le portail Open Data du Cabildo, les opérations ou actions qui peuvent être effectuées utilisent la méthode "GET" sur différents types d'objets :
- Les ensembles de données
- Ressources
- Catégories d'objets
- Organisations
- Tags
Opérations sur les jeux de données
L'API permet d'obtenir la liste des jeux de données publiés sur le portail ; le flux d'activité de tous ceux qui ont été ajoutés ou modifiés récemment - au cours de la dernière journée ; les informations sur les jeux de données qui appartiennent à une catégorie ; les jeux de données qui répondent à un critère de recherche spécifique ou la relation entre les métadonnées d'un jeu de données et ses ressources.
Pour obtenir une réponse concrète, il faudrait d'abord établir les paramètres souhaités. Dans ce cas, nous commencerons par la première opération établie, qui correspond à la liste des ensembles de données existants dans le catalogue du portail.
Après avoir cliqué sur GET ou sur la flèche à l'extrême droite, il faudra lancer les actions "Essayer" et "Exécuter", afin d'exécuter le contenu de la demande. De cette manière, la requête à exécuter sera affichée en premier.
Ensuite, la réponse est affichée, où nous obtiendrons une liste de tous les ensembles de données, qui peuvent également être téléchargés.
L'URL de la requête fournira une liste des jeux de données disponibles sur le portail Open Data -au format JSON-, sans avoir à accéder au portail. Avec cette même URL, vous pouvez rendre les données disponibles sous une forme mise à jour en la collant dans votre propre navigateur.
Comment puis-je définir des paramètres pour obtenir des résultats spécifiques ?
Afin de segmenter spécifiquement les ensembles de données obtenus, vous pouvez choisir l'un des paramètres existants dans chaque opération, pour obtenir ceux qui appartiennent à une catégorie spécifique, qui répondent à un critère de recherche spécifique ou qui incluent des métadonnées spécifiques.
Dans le cas d'ensembles de données appartenant à une catégorie (/action/group_package_show) , il est obligatoire d'indiquer un "id".
Cet "id" correspond aux différentes catégories incluses dans le portail, également appelées "groupes". Pour identifier celle qui se rapproche le plus de votre recherche, vous pouvez consulter les catégories listées sur la page d'accueil du portail. Mais, sans quitter la page en cours, elles peuvent également être obtenues en utilisant les opérations sur les "Catégories" (/action/group_list), qui renvoient toutes celles dont dispose le portail (qu'elles contiennent ou non des jeux de données) .
Cliquez d'abord sur "Essayer" et ensuite sur "Exécuter" pour obtenir la liste correspondante. Dans cette image, la liste des "id" des différentes catégories existantes est affichée.
Après avoir obtenu les "id" correspondants, sélectionnez celui qui se rapproche le plus de la réponse que vous souhaitez obtenir et tapez-le dans la case correspondante, comme indiqué ci-dessus.
De cette façon, les résultats montreront tous les ensembles de données liés à cette catégorie. Dans l'exemple suivant, nous indiquerons "trade" pour visualiser les résultats obtenus.
Dans la case "limite", vous pouvez indiquer le nombre maximum d'ensembles de données que vous souhaitez obtenir par catégorie (10 par défaut).
Cette opération permet d'obtenir la liste des jeux de données spécifiques et mis à jour, ce qui peut faciliter leur réutilisation.
L'opération suivante (/action/package_search) permet de rechercher un ensemble de données répondant à un critère de recherche donné. Dans ce cas, différents paramètres sont affichés.
Dans le champ "q", les données peuvent être interrogées à l'aide de la syntaxe de recherche Solr. Pour ce faire, des codes tels que "tags", "groups" ou "organisation" seront utilisés, suivis de deux points et du mot correspondant. Des recherches simples peuvent également être effectuées dans ce champ, en utilisant le mot directement, sans utiliser de codes.
Par exemple, en entrant "tags:restaurants", vous obtiendrez les ensembles de données dans lesquels ce mot est inclus en tant que tag.
De la même manière, vous pouvez également restreindre la recherche par organisation ("organisation") ou par catégorie ("groupes"), comme dans l'exemple "organisation:transport-inter-urban-transport-from-tenerife-titsa".
Comment obtenir des métadonnées d'un ensemble de données et de ses ressources ?
Une autre possibilité offerte par l'API est d'obtenir les métadonnées d'un ensemble de données spécifique et de ses ressources (/action/package_show). Tout d'abord, il est nécessaire de connaître l'"id" ou le "nom" de l'ensemble de données à interroger, pour lequel nous pouvons utiliser n'importe laquelle des opérations précédentes dans les résultats desquelles nous pouvons trouver le nom et/ou l'identifiant des ensembles de données résultants.
Dans l'exemple précédent, l'opération /action/package_search permet de sélectionner l'"id" ou le "nom"correspondant de l'ensemble de données dont on veut obtenir les métadonnées spécifiques (pour l'exemple précédent des "restaurants") :
Dans ce cas, en utilisant son "id" (4912b6d8-89f3-48d7-9dd1-bdefb18dbb17) ou son "name" (establecimientos-de-hosteleria-y-restauracion-de-tenerife), nous obtiendrons les métadonnées de l'ensemble de données et de ses ressources.
De cette manière, la liste correspondante serait obtenue, avec l'URL qui pourrait être utilisée pour obtenir les données mises à jour, comme dans les exemples expliqués ci-dessus.
Si nous continuons à avancer dans la documentation de l'API, nous verrons d'autres opérations ou actions, indiquées comme suit :
/action/tag_list
/action/tag_show
/action/organisation_show
/action/resource_show
Dans ces cas, elles peuvent être exécutées de la même manière que celles indiquées ci-dessus.
Voilà une brève explication qui montre quelques-unes des possibilités de l'API du catalogue du portail de données ouvertes du Cabildo de Tenerife. Il est clair que les API sont des outils essentiels pour accéder aux données et les partager de manière efficace et programmatique dans le monde numérique.
Il ne vous reste plus qu'à en découvrir davantage sur notre propre portail datos.tenerife.es.