Outils de développement
Jaha Jereshov
Développeur back-end
29 décembre 2022
Une plateforme low-code alliant la simplicité du no-code à la puissance du full-code 🚀
Commencez gratuitement
29 décembre 2022
10
min lire

Créer un nouvel événement dans Google Agenda avec Latenode

Jaha Jereshov
Développeur back-end
Table des matières

Remarque : après avoir ajouté de nouveaux nœuds dans la chaîne Latenode d'un projet, pour accéder aux données des nœuds précédents, vous devez exécuter le projet et appeler la chaîne avec toutes les données nécessaires. Les données substituées du nœud « JavaScript » au nœud « Requête HTTP » doivent souvent être échappées avec des guillemets doubles. Les objets ou tableaux complexes reçus en réponse à une requête provenant de serveurs distants et se présentant sous forme de chaîne doivent être traités par JSON.parse afin de pouvoir fonctionner avec eux dans les nœuds « JavaScript » comme avec le type de données correspondant.

Tout d'abord, assurez-vous d'obtenir le jeton selon le Des instructions dans notre article, uniquement dans la liste des serveurs sélectionnez "Google Calendar Api v..." et dans la portée "www.googleapis.com/auth/calendar " ;

Ensuite, créez un nouveau calendrier dans Calendrier, nous pouvons l'appeler par exemple « LatenodeTest » ;

Préparons une demande pour notre client de repos ;

REQ01 : Demande de repos client


curl --request POST --url 'https://webhook.latenode.com/00/dev/some_hash'
--header 'Accept: application/json'
--header 'Content-Type: application/x-www-form-urlencoded'
--data 'token=[Replace the square brackets with the content of your token]'
--data 'summary=Event created from Latenode'
--data 'location=https://app.latenode.com'
--data 'description=Adding an event to the calendar from Latenode using the API'
--data 'startDate=2022-12-21T09:00:00-07:00 Change to the nearest date'
--data 'startTZ=Europe/Moscow'
--data 'endDate=2022-12-22T09:00:00-07:00 Change to the nearest date'
--data 'endTZ=Europe/Moscow'

Remplaçons notre jeton obtenu à l’étape du début ;

Modifiez la date de début « startDate » et la date de fin « endDate » au plus proche, vous pouvez également modifier le fuseau horaire s'il ne correspond pas à startTZ et endTZ ;

Créer un nœud « Webhook » : « + Ajouter un nœud » => « Http » => « Webhook » ;

Copiez l’adresse du Webhook et collez-la dans la barre d’adresse du reste du client ;

Ensuite, ajoutons un autre nœud « JavaScrtipt » : « + Ajouter un nœud » => « Code » => « JavaScrtipt » ;

Enregistrer les modifications ;

Attachez le nœud ensemble ;

Commençons et appelons la chaîne pour transférer des données entre les nœuds ;

Copions-en le contenu :


  const apiURL = "https://www.googleapis.com/calendar/v3";
  const bToken = "Bearer " + data["{{1.body.token}}"];
  const event = {
    'summary': data["{{1.body.summary}}"],
    'location': data["{{1.body.location}}"],
    'description': data["{{1.body.description}}"],
    'start': {
      'dateTime': data["{{1.body.startDate}}"],
      'timeZone': data["{{1.body.startTZ}}"]
    },
    'end': {
      'dateTime': data["{{1.body.endDate}}"],
      'timeZone': data["{{1.body.endTZ}}"]
    },
    'reminders': {
      'useDefault': false,
      'overrides': [
        {'method': 'email', 'minutes': 24 * 60},
        {'method': 'popup', 'minutes': 10}
      ]
    }
  };
  return {
      apiURL, bToken, event
  }

Vérifions toutes les constructions comme «données["{{1.body.name}}"]" que le numéro de Webhook correspond à celui dont nous obtenons les données, sinon remplacez-le par celui nécessaire (je vous rappelle que 1 est le numéro de nœud écrit juste en dessous du nom du nœud au-dessus du type de nœud, alors s'il s'agit d'une requête alors le champ objet responsable du type de données envoyées/reçues est sélectionné - corps pour les formulaires ou requête pour les paramètres de requête) ;

Sauvegarder;

Créons le nœud « Requête HTTP » : « + Ajouter un nœud » => « Http » => « Requête HTTP » ;

Enregistrer les modifications ;

Attachez les nœuds ensemble ;

Commençons et appelons la chaîne pour transférer des données entre les nœuds ;

Dans le champ "Url" au début, remplaçons la variable "URL de l'API" de "JavaScrtipt" et après cela nous spécifions : /utilisateurs/moi/calendrierList ;

Assurez-vous que la méthode par défaut est « Get » ;

Ajoutons le titre « Autorisation » et dans sa valeur la variable «jeton b" de "JavaScrtipt" ;

Cliquez sur « Enregistrer » ;

Créons un autre nœud « JavaScrtipt » : « + Ajouter un nœud » => « Code » => « JavaScrtipt » ;

Enregistrer les modifications ;

Attachez les nœuds ensemble ;

Commençons et appelons la chaîne pour transférer des données entre les nœuds ;

Copions le contenu dedans, pour trouver le calendrier souhaité dans la liste obtenue à partir de la requête précédente :


  const tempCalendarsList = JSON.parse(data["{{3.body.items}}"]); // Make sure the information is from the correct node from the calendar list query
  const targetCalendar = tempCalendarsList.find((calendar) => calendar.summary === "LatenodeTest"); // Here instead of "LatenodeTest" you can write the name of the desired calendar
  return {
    targetCalendar
  }

Vérifiez les données spécifiées dans les commentaires du code ;

Enregistré

Créons le nœud « Requête HTTP » : « + Ajouter un nœud » => « Http » => « Requête HTTP » ;

Enregistrer les modifications ;

Attachez les nœuds ensemble ;

Commençons et appelons la chaîne pour transférer des données entre les nœuds ;

Dans le champ "Url" au début, nous substituons la variable "URL de l'API" à partir du premier nœud "JavaScrtipt", après cela nous ajoutons : /calendriers/, puis nous substituons la variable "targetCalendar.id" depuis "JavaScrtipt" avec le traitement de la liste des calendriers, et à la fin : /événements;

Changez la méthode en méthode « Post » ;

Dans le corps de « raw » : remplaçons la variable contenant l'objet par le nouvel événement du premier nœud « JavaScrtipt » ;

Ajoutons l'en-tête "Autorisation" et dans sa valeur la variable "jeton b" à partir du premier nœud "JavaScrtipt" ;

Cliquez sur « Enregistrer » ;

Attachez les nœuds ensemble ;

Commençons et appelons la chaîne pour transférer des données entre les nœuds ;

Après cela, un nouvel événement devrait apparaître dans le calendrier ;

À la fin de toute la chaîne dans Latenode, cela ressemblera à ceci :

A bientôt pour de prochains articles ;

Les

Liens utiles:

Les
Base:

Laténode
Aire de jeux Google OAuth 2.0

Les

Informations:

API Google Agenda
API Google Agenda CalendarList : liste
Événement de l'API Google Calendar : insertion

Première demandeDeuxième demande

Essayez maintenant

Blogs connexes

Cas d'utilisation

Soutenu par