23 janvier 2024

API Notion et Next.js : Guide pratique

Vous allez découvrir comment utiliser l’API de Notion avec un framework JavaScript. Dans un premier temps, j’aborderai les bases de Notion, vous découvrirez pourquoi l’API peut être un atout précieux, puis je détaillerai un scénario concret d’intégration avec un formulaire sur un site web Next.js.

Qu’est-ce que Notion ?

Notion est une application polyvalente de prise de notes, elle offre une gamme étendue de fonctionnalités telles que bases de données, calendrier, kanban, listes, tâches, et bien plus encore. Cette plateforme intuitive et collaborative propose des raccourcis ressemblant à ceux des balises HTML, rendant ainsi son utilisation aisée et accessible à tous.

Image : Exemple d’une page sur Notion
Exemple d’une base de donnée sur Notion

Intégrez l’API de Notion

Notion met à disposition une API robuste permettant aux développeurs d’interagir avec les pages, les bases de données et les utilisateurs. Cette API offre des possibilités étendues pour personnaliser et automatiser les flux de travail, comme par exemple la modification de pages et de bases de données, offrant ainsi une flexibilité totale pour répondre aux besoins spécifiques de vos projets.

Pourquoi utiliser l’API de Notion ?

Besoin de simplicité

Évoquons une situation concrète : pour la gestion d’un événement, il était nécessaire de collecter les réponses des invités et de les centraliser facilement. L’objectif était d’éviter un formulaire créé par une application tierce tout en respectant un délai court.

Les données recueillies devaient être faciles à lire et à manipuler par la suite, même pour quelqu’un qui n’a pas de connaissances en programmation.

Avec Notion, vous pouvez créer des bases de données qui sont triables, filtrables, et modifiables. L’interface est très simple à comprendre, la base de données s’affiche sous forme d’un tableau qui peut comporter plusieurs champs de différents types.

L’API de Notion permet d’interagir avec ce contenu.

Des prérequis minimum

  • Un compte Notion (gratuit ou payant).
  • Un site web avec un formulaire.
    Dans notre exemple, Next.js a été utilisé, notamment pour la sécurisation de la clé API Notion. Cependant, d’autres technologies peuvent être utilisées sur vos serveurs en fonction de vos préférences.

En pratique, comment fait-on ?

Architecture

Communication entre Client, Serveur, API Notion et Base de données

Configuration de Notion

  • Création d’un compte Notion
  • Création d’une intégration
  • Création d’une base de donnée, et connexion avec l’intégration précédemment créée
  • Obtention du secret de l’intégration et de l’identifiant de la base de données.

Création d’un formulaire

  • Page web avec formulaire HTML simple.

Configuration de Next.js

Résultat

En tant qu’utilisateur, je vais sur le formulaire du site internet, je remplis les champs et je valide le formulaire. Puis les données sont traitées sur le serveur Next.js, qui fait un appel vers l’API de Notion afin de mettre à jour la base de donnée côté Notion

Base de données Notion mise à jour depuis le site Next.js

Voir le code

Le lien suivant est un starter Next.js avec un formulaire utilisant l’API de Notion pour modifier une base de données Notion : https://github.com/pouletor/notion-api

Conclusion

L’intégration de l’API Notion avec Next.js offre une solution flexible pour simplifier la collecte et la gestion de données. Ce guide a présenté les bases de Notion, les avantages de son API, et un scénario concret d’intégration.

Je vous encourage à explorer l’API Notion dans vos propres projets et à adapter ces concepts à vos besoins spécifiques. Pour aller plus loin, n’hésitez pas à consulter la documentation détaillée de Notion et Next.js, ainsi que les forums de la communauté pour partager vos expériences et en apprendre davantage. Bonne intégration !

Suggestions

12 décembre 2023
Créez des ponts : Design d’API et Design Produit !

Créez des ponts : Design d’API et Design Produit !

Le Design et les API, bien que semblant éloignés au premier abord, sont plus proches qu’on ne le pense. Pour...
Créez des ponts : Design d’API et Design Produit !
28 septembre 2023
Accessibilité numérique : défis et stratégies clés

Accessibilité numérique : défis et stratégies clés

Le dernier meetup de notre série a été consacré à une thématique de plus en plus centrale dans le monde...
Accessibilité numérique : défis et stratégies clés
7 mars 2021

[DesignOps] Pourquoi un rôle de DesignOps ?

Le rôle du DesignOps intervient principalement lorsqu’une équipe design s’étoffe suffisamment. Son but est de mettre en place des processus...
[DesignOps] Pourquoi un rôle de DesignOps ?