Nouveau Audit de site web gratuit & automatisé

Documentation API

NexaLab expose deux capacités publiques : lancer un audit web automatisé gratuit et transmettre une demande de contact. Aucune authentification n'est requise. Ces endpoints sont utilisables par un humain comme par un agent IA.

En bref

  • Base URL : https://nexa-lab.ch
  • Spécification machine : OpenAPI 3.1 (/openapi.json)
  • Catalogue d'API : /.well-known/api-catalog (RFC 9727)
  • État du service : /api/status
  • Authentification : aucune
  • Format : JSON en entrée et en sortie (Content-Type: application/json)
  • Limites : 10 requêtes par adresse IP et 5 par e-mail sur 24 heures
  • Hébergement des données : Suisse et Union européenne, conforme nLPD et RGPD

Audit web gratuit

POST /api/audit

Démarre un audit automatisé du site indiqué. Le traitement est asynchrone : la réponse renvoie immédiatement un token, le rapport arrive par e-mail en quelques minutes et reste consultable sur /audit/r/{token}.

Champs requis : url, prenom, email, consent (qui doit valoir exactement true — consentement nLPD/RGPD explicite).
Champs optionnels : entreprise, secteur, socials, competitor.

curl -X POST https://nexa-lab.ch/api/audit \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://exemple-pme.ch",
    "prenom": "Camille",
    "email": "camille@exemple-pme.ch",
    "entreprise": "Exemple PME SA",
    "secteur": "Fiduciaire",
    "consent": true
  }'

Réponse 200 :

{
  "ok": true,
  "message": "Votre audit est lancé. Vous recevrez le rapport par e-mail dans quelques minutes.",
  "token": "9f2c1ab74e5d0836bb41c7e29da5f0631c8ee47a25b9d0f3"
}

Les cibles internes sont refusées : localhost, plages IP privées, adresses IPv6 littérales, domaines en .local et .internal.

GET /audit/r/{token}

Affiche le rapport d'audit en HTML, ou une page d'attente si le traitement est encore en cours. Le token fait 48 caractères hexadécimaux. La page est servie en noindex : elle n'est pas destinée à être partagée publiquement.

Contact

POST /api/contact

Transmet une demande commerciale. Réponse humaine sous 24 heures ouvrées.

Champs requis : prenom, email, message (10 caractères minimum, 4000 maximum).
Champs optionnels : nom, entreprise, site.

curl -X POST https://nexa-lab.ch/api/contact \
  -H "Content-Type: application/json" \
  -d '{
    "prenom": "Camille",
    "email": "camille@exemple-pme.ch",
    "entreprise": "Exemple PME SA",
    "message": "Nous cherchons à automatiser la relance de nos factures impayées."
  }'

Réponse 200 :

{ "ok": true, "message": "Votre message a bien été envoyé. On vous répond sous 24h." }

Codes d'erreur

  • 400 — validation échouée. Les messages sont en français et concaténés par . Exemple : {"error": "email invalide, consentement RGPD requis"}
  • 405 — méthode HTTP non supportée.
  • 429 — limite de débit atteinte : réessayez dans 24 heures ou écrivez à contact@nexa-lab.ch.
  • 500 — erreur interne.

Pour les agents IA

NexaLab publie plusieurs points d'entrée destinés aux agents autonomes :

Conditions d'usage

Ces endpoints sont fournis pour permettre à une PME — ou à l'agent qui la représente — d'obtenir un audit et d'entrer en contact. Toute utilisation automatisée doit respecter les limites de débit, n'auditer que des sites dont l'utilisateur a le droit de demander l'analyse, et n'envoyer que des demandes de contact légitimes. Voir les mentions légales et la politique de confidentialité.