INFRASTRUCTURE DÉVELOPPEUR · SERVERLESS & JAMSTACK

Backend de formulaire fiable sans les tracas de SMTP.

Connectez vos formulaires HTML, React, Next.js ou Astro directement à un point de terminaison Lugatu. Filtrage antispam par honeypot, gestion centralisée des messages et alertes prêtes à l’emploi sans aucune configuration serveur.

Zéro serveur et zéro SMTP

N’exposez jamais les informations d’identification SMTP ou les mots de passe de messagerie dans le code frontend. Évitez les échecs de livraison et les listes noires de spam sans effort.

Pot de miel intelligent et limitation de débit

Défense anti-spam sans friction. Bloquez silencieusement les robots spam automatisés sans ennuyer vos véritables visiteurs avec des énigmes difficiles.

Boîte de réception centralisée et durable

Chaque réponse est stockée en toute sécurité dans la boîte de réception PostgreSQL de votre espace de travail. Les messages ne sont jamais supprimés même si les limites de courrier électronique sortant sont atteintes.

1. Pourquoi éliminer les serveurs SMTP pour les formulaires web

Les formulaires reposant sur SMTP ou PHP mail() souffrent de taux d’échec élevés, d’identifiants exposés côté client et de ports bloqués sur les hébergeurs serverless. Lugatu remplace les serveurs de messagerie fragiles par un pipeline HTTPS transactionnel adossé à PostgreSQL.

info

Lugatu gère SPF, DKIM, DMARC et les limites des FAI à votre place. Les messages sont persistés en base avant toute notification, garantissant zéro perte.

2. Réception côté client dans le navigateur

Pour les sites statiques, envoyez les demandes en JSON directement au point de terminaison public de votre formulaire. Un champ honeypot invisible bloque les robots sans imposer de CAPTCHA aux visiteurs.

contact-form.html html
<form id="contact-form">
  <input type="text" name="name" placeholder="Your Name" required />
  <input type="email" name="email" placeholder="you@domain.com" required />
  <textarea name="message" placeholder="How can we help?" required></textarea>

  <!-- Invisible Honeypot Field (Bots fill this; real users ignore it) -->
  <input type="text" name="_gotcha" style="display:none !important" tabindex="-1" autocomplete="off" />

  <button type="submit">Send Message</button>
</form>

<script>
document.getElementById('contact-form').addEventListener('submit', async (e) => {
  e.preventDefault();
  const form = e.target;
  const formData = new FormData(form);

  const payload = {
    fields: {
      name: formData.get('name'),
      email: formData.get('email'),
      message: formData.get('message')
    },
    honeypot: formData.get('_gotcha') || ''
  };

  const response = await fetch('https://www.lugatu.com/api/v1/public/forms/YOUR_PUBLIC_FORM_ID/submissions', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    },
    body: JSON.stringify(payload)
  });

  if (response.ok) {
    alert('Thank you! Your message was received.');
    form.reset();
  }
});
</script>
Remplacez YOUR_PUBLIC_FORM_ID par l'identifiant public de votre tableau de bord Lugatu.

3. Envoi programmatique de serveur à serveur

Pour les services backend et les Server Actions, utilisez la route sécurisée avec votre clé API privée et un en-tête d’idempotence pour prévenir les doublons.

submit.sh bash
curl -X POST "https://www.lugatu.com/api/v1/forms/YOUR_FORM_GUID/submissions" \
  -H "Authorization: Bearer lug_live_your_secret_api_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "fields": {
      "name": "Alex Taylor",
      "email": "alex@studio.design",
      "message": "Project consultation request from custom backend service."
    }
  }'
Les clés API de serveur à serveur sont strictement rejetées si elles sont envoyées depuis des origines de navigateur externes.

Sécurité architecturale et invariant de clé

Consigne de sécurité en production : n’intégrez jamais votre clé API serveur (lug_live_...) dans le code HTML ou JavaScript public. Utilisez l’identifiant public pour les formulaires web.

Dépannage et erreurs d’ingestion courantes

Erreur 403 Forbidden lors de la soumission navigateur

Vérifiez que vous ciblez bien /api/v1/public/forms/... et qu’aucun en-tête Authorization privé n’est transmis depuis le client.

Soumissions en double lors de clics répétés

Transmettez systématiquement un en-tête Idempotency-Key unique depuis votre backend. Lugatu renvoie le même reçu sous 24 heures pour les requêtes répétées.

Foire aux questions

Combien de notifications par e-mail sont incluses gratuitement ?

Chaque domaine racine vérifié dispose de 500 unités de notification par e-mail par mois. La conservation des messages dans la boîte de réception est toujours garantie.

Puis-je renseigner plusieurs destinataires pour les alertes ?

Oui, vous pouvez configurer jusqu’à 2 adresses e-mail de notification vérifiées par domaine racine.

Prêt à rationaliser le backend de votre formulaire ?

Déployez votre premier point de terminaison en moins de deux minutes. Niveau gratuit inclus.

Commencez gratuitement →