💙POST waitinglist
Nom de l'API : /waitinglist (POST)
Description : Cette API POST permet d'ajouter un nouvel utilisateur à la liste d'attente de l'application. Elle vérifie d'abord si l'email est valide et si l'utilisateur n'existe pas déjà dans la liste d'attente avant de l'ajouter. Si l'utilisateur est nouveau, elle l'ajoute à la liste et envoie un email de confirmation.
Endpoint : /waitinglist
Méthode : POST
Authentification : Non requise (Public Endpoint)
Paramètres d'entrée :
email (type: text) : L'adresse email de l'utilisateur à ajouter à la liste d'attente
Fonctionnement détaillé :
Custom Function Error Empty Email :
Vérifie si l'email fourni est valide et non vide
Retourne le résultat sous le nom "check_email"
Query All Records From waitinglist :
Recherche si l'email existe déjà dans la liste d'attente
Filtre : db:waitinglist.email == input:email
Retourne le résultat sous le nom "check_user"
Conditional: If var:check_user = null
Vérifie si l'utilisateur n'existe pas déjà dans la liste d'attente
Si la condition est vraie (l'utilisateur n'existe pas) : 3.1. Add Record In waitinglist : - Ajoute un nouvel enregistrement dans la table waitinglist - Champs : - id : auto-incrémenté - created_at : timestamp actuel - email : email fourni en entrée - account_created : probablement initialisé à false - Retourne le résultat sous le nom "new_subscriber"
3.2. Get Record From transactional_emails : - Récupère un modèle d'email pour la confirmation d'inscription - Paramètres de recherche : - field_name : "email_name" - field_value : "waiting_position" - Retourne le résultat sous le nom "waiting_position_email"
3.3. API Request To https://api.resend.com/audiences/%s : - Envoie un email de confirmation via l'API Resend - Méthode : POST - URL : https://api.resend.com/audiences/%s (où %s est remplacé par env:resend_audience_id) - Paramètres : - to : input:email - from : "%s <%s>" (rempli avec waiting_position_email.send_name et waiting_position_email.email) - subject : waiting_position_email.subject - html : waiting_position_email.content (avec [POSITION] remplacé par new_subscriber.id) - Headers : - Authorization : "Bearer %s" (où %s est remplacé par env:resend_api_key) - Content-Type : application/json - Timeout : 10 secondes - follow_location : true - Retourne le résultat sous le nom "create_contact_resend"
3.4. Create Variable : - Crée une variable "answer" avec les propriétés suivantes : - subscriber_email : new_subscriber.email - subscriber_position : new_subscriber.id - Retourne le résultat sous le nom "answer"
Si la condition est fausse (l'utilisateur existe déjà) : 3.5. Create Variable : - Crée une variable "answer" avec les propriétés suivantes : - subscriber_email : check_user.email - subscriber_position : check_user.id - Retourne le résultat sous le nom "answer"
Réponse : L'API renvoie la variable "answer" (As Self), qui contient :
subscriber_email : L'email de l'abonné (nouveau ou existant)
subscriber_position : La position de l'abonné dans la liste d'attente
Notes supplémentaires :
L'API utilise une fonction personnalisée "Error Empty Email" pour valider l'email avant tout traitement.
La vérification de l'existence de l'utilisateur dans la liste d'attente est effectuée avant l'ajout.
L'API interagit avec un service externe (Resend) pour envoyer des emails de confirmation uniquement pour les nouveaux abonnés.
La position dans la liste d'attente est déterminée par l'ID auto-incrémenté de l'enregistrement.
Si l'utilisateur existe déjà, l'API renvoie ses informations existantes sans effectuer de nouvel ajout ou envoi d'email.
Cette API offre une fonctionnalité complète pour gérer l'ajout d'utilisateurs à une liste d'attente, avec gestion des doublons et envoi automatique d'emails de confirmation personnalisés pour les nouveaux abonnés.
Dernière mise à jour