Codes et API

Apidae

Récupère les sélections du projet Apidae du hackathon, puis les objets touristiques (offres, lieux, événements) de ces sélections.

ScriptApidae.R
LangageR
Paquetshttr2, jsonlite, dplyr, tibble
AuthentificationClé d'API et identifiant de projet (9657) : clé du hackathon dans l'Excel du SSP Cloud.
Documentationhttps://dev.apidae-tourisme.com/

Accès

Clé d'API et identifiant de projet (9657) : clé du hackathon dans l'Excel du SSP Cloud. Ne jamais publier une clé dans le dépôt : la lire depuis une variable d'environnement (Sys.getenv("MA_CLE")).

Ce que fait le script

  1. Lister les sélections disponibles dans le projet (referentiel/selections).
  2. Choisir les identifiants de sélection à interroger.
  3. Interroger recherche/list-objets-touristiques (100 premiers objets par défaut, à paginer avec first et count).

Code

Apidae.R
### Récupérer la sélection Apidae et les identifiants ### library(httr2) library(jsonlite) projet_id <- 9657 requete <- list( projetId = projet_id, apiKey = "Ma clé" #Clé pour le hackathon dispo dans l'excel données à disposition ) reponse <- request( "https://api.apidae-tourisme.com/api/v002/referentiel/selections/" ) |> req_body_form( query = toJSON(requete, auto_unbox = TRUE) ) |> req_perform() selections <- resp_body_json(reponse) selections ### Visualiser la sélection possible dans le projet ### str(selections) ### Ouvrir les jeux de données ### # Installer les packages si nécessaire install.packages(c("httr2", "jsonlite", "dplyr", "tibble")) # Charger les packages library(httr2) library(jsonlite) library(dplyr) library(tibble) # --------------------------------------------------------- # 1. Informations de connexion Apidae # --------------------------------------------------------- projet_id <- 9657 selection_id <- list(211884,211888,211889,211890,211891,211892,211905,211906,211908,211911,211914,211999) #Modifier ici la sélection api_key <- "Ma clé" # --------------------------------------------------------- # 2. Construire la requête (ici sur les 100 premiers, à modifier) # --------------------------------------------------------- requete <- list( projetId = projet_id, apiKey = api_key, selectionIds = selection_id, count = 100, first = 0 ) # --------------------------------------------------------- # 3. Interroger l'API Apidae # --------------------------------------------------------- url <- "https://api.apidae-tourisme.com/api/v002/recherche/list-objets-touristiques/" reponse <- request(url) |> req_method("POST") |> req_body_form( query = toJSON(requete, auto_unbox = TRUE) ) |> req_error(is_error = function(resp) FALSE) |> req_perform() # --------------------------------------------------------- # 4. Récupérer les données # --------------------------------------------------------- donnees <- resp_body_json(reponse) # Afficher la structure de la réponse str(donnees) names(donnees$objetsTouristiques[[1]]) #colonnes dispos