MallaDocs

Créer un point de terminaison backend

Stockez des données dans une table native et exposez-les avec un workflow serveur, un webhook et un cron.

Guide utilisateur
Avancé30 min

Vous allez créer : Une table d’avis avec une API publique pour lire et ajouter des lignes, un webhook qui reçoit des avis depuis un autre outil, un rapport quotidien et une page qui liste les avis

À lire avant : Visite de l’éditeurPage interactive avec des workflows

Dans ce tutoriel, vous construisez un petit backend sans quitter l’éditeur. Vous stockez des avis dans une table native, vous les exposez avec des points de terminaison HTTP, vous les recevez d’autres outils avec un webhook et vous vous envoyez un résumé quotidien selon une planification. À la fin, une page de votre site liste les avis via le point de terminaison.

Créer un point de terminaison backendVidéo bientôt disponible. Les étapes écrites ci-dessous couvrent tout.
Créer un point de terminaison backend· 10 min

Créer la table

  1. Ajouter une table

    Ouvrez l’espace de travail Tables depuis le bas de la barre latérale gauche. Cliquez sur New à côté de Tables, tapez feedback et appuyez sur ↵. La table s’ouvre sur son onglet Schema avec une colonne de texte, title.

  2. Ajouter les colonnes

    Cliquez deux fois sur Add column. Nommez la première colonne message et gardez le type Text. Nommez la seconde rating et réglez son type sur Number. Cochez Required pour title et rating.

    Chaque ligne reçoit aussi id, createdAt et updatedAt : vous n’avez donc pas à les ajouter.

  3. Ajouter une règle d’écriture

    Sous Row rules, tapez row.rating >= 1 && row.rating <= 5 dans Write. Les visiteurs et les workflows ne peuvent plus enregistrer que des notes de 1 à 5. Laissez Read vide pour que tout le monde puisse lire. Cliquez sur Save schema.

  4. Ajouter une ligne à la main

    Passez à l’onglet Rows et cliquez sur Add row. Renseignez un titre, un message et une note, puis cliquez sur Add row dans le panneau. Les modifications faites dans l’éditeur ignorent les règles de ligne, car le site vous appartient.

Point de contrôle

La table feedback affiche une ligne dans l’onglet Rows, et l’en-tête de la table affiche le badge Rules.

Lire des lignes avec un point de terminaison

  1. Créer un workflow serveur

    Ouvrez l’espace de travail Logic et basculez l’interrupteur du haut de Client à Server. Cliquez sur + (Add server workflow) et choisissez HTTP endpoint. Nommez le workflow List feedback.

  2. Régler le déclencheur

    Dans Trigger, réglez Method sur GET, Path sur /feedback et Who can call it sur Public. L’indication sous les champs affiche l’adresse : /api/feedback sur votre site.

  3. Interroger la table

    Cliquez sur Add step et choisissez Query table sous Tables. Tapez feedback dans Table ; les workflows trouvent une table par son nom ou son identifiant. Réglez Limit sur 20. La carte de l’étape affiche son identifiant, s1.

  4. Renvoyer les lignes

    Cliquez sur Add step et choisissez Return sous Server. Réglez Value sur steps.s1.rows. La valeur de Return devient la réponse du point de terminaison.

  5. Le tester

    Cliquez sur Test run. Le panneau d’exécution affiche chaque étape au fil de l’eau avec son résultat et sa durée ; l’étape Return affiche votre ligne. Chaque exécution est conservée sous Runs.

Ajouter des lignes avec un point de terminaison

  1. Créer un point de terminaison POST

    Ajoutez un autre workflow HTTP endpoint nommé Add feedback. Réglez Method sur POST, Path sur /feedback et Who can call it sur Public. Un GET et un POST peuvent partager un chemin.

  2. Insérer la ligne

    Ajoutez une étape Insert row avec Table feedback et Values { title: input.title, message: input.message, rating: input.rating }. Le corps JSON de la requête arrive dans input.

  3. Renvoyer la nouvelle ligne

    Ajoutez une étape Return avec Value steps.s1, la ligne insérée avec son id.

  4. Tester avec des données d’exemple

    Dans Test input, tapez { "title": "Fast support", "message": "Answered in an hour", "rating": 5 } et cliquez sur Test run. Changez ensuite la note en 9 et relancez : la règle d’écriture refuse la ligne et l’exécution échoue.

Point de contrôle

L’onglet Rows de la table feedback affiche la ligne de l’exécution de test, et l’historique affiche une exécution réussie et une exécution échouée.

Recevoir un webhook

  1. Créer le webhook

    Ajoutez un workflow serveur et choisissez Webhook. Nommez-le Feedback webhook et réglez Path sur /webhooks/feedback. Un webhook répond toujours à POST.

  2. Enregistrer le contenu reçu

    Ajoutez une étape Insert row avec Table feedback et les mêmes Values que précédemment. Le contenu du webhook arrive dans input.

Envoyer un rapport quotidien

  1. Créer une planification

    Ajoutez un workflow serveur et choisissez Schedule. Nommez-le Daily report et cliquez sur le préréglage Every day at 09:00. Les planifications utilisent l’heure UTC, et l’indication sous le champ reformule la planification pour vous.

  2. Trouver les notes basses

    Ajoutez une étape Query table avec Table feedback et Filter [{ column: 'rating', op: 'lte', value: 2 }].

  3. Vous envoyer un e-mail

    Ajoutez une étape Send email. Réglez To sur 'you@example.com', Subject sur Daily feedback et Text sur l’expression steps.s1.rows.length + ' ratings of 2 or less'. Cliquez sur Test run pour recevoir l’e-mail tout de suite.

Publier et appeler le point de terminaison

  1. Publier en préproduction

    Les workflows serveur s’enregistrent pendant que vous les modifiez, mais ils ne passent en ligne qu’à la publication. Cliquez sur Publish dans la barre d’outils, laissez Staging sélectionné et confirmez. Dès lors, la planification s’exécute chaque jour en préproduction.

  2. L’appeler depuis un terminal

    Exécutez curl https://<your-staging-address>/api/feedback. La réponse est du JSON avec l’identifiant de l’exécution, son statut et les lignes dans result.

Afficher les avis sur une page

  1. Connecter l’API de votre site

    Ouvrez l’espace de travail Data, cliquez sur + (Add integration) à côté de Integrations et choisissez REST API. Réglez l’URL de base sur votre adresse de préproduction et cliquez sur Create integration.

  2. Créer une requête

    Cliquez sur + (Add query) à côté de Queries et nommez-la feedback. Choisissez votre intégration et l’opération Request. Dans Input, réglez le chemin sur /api/feedback. Réglez Response path sur result, laissez When it runs sur Client et cliquez sur Run.

  3. Lister les lignes

    Insérez une Collection list sur la page. Dans la section Collection list, réglez Source sur Expression et Items sur queries.feedback.data. Dans l’élément, liez un texte à item.title et un autre à item.message.

Terminé

La page liste les avis de votre table, lus via votre propre point de terminaison. Les nouvelles lignes venant du point de terminaison POST ou du webhook apparaissent au chargement suivant.

Ce que vous avez appris

  • Une table native a un schéma, un explorateur de données et des règles de ligne qui s’appliquent aux visiteurs et aux workflows.
  • Un workflow serveur démarre depuis un point de terminaison HTTP, un webhook ou une planification, et Return définit la réponse.
  • Test run exécute le brouillon avec des données d’exemple et affiche chaque étape ; la publication met les workflows en ligne.

Continuez avec les tutoriels suivants, ou lisez les guides sur lesquels celui-ci s’appuie :