Residual Audit API

L'API Residual Audit vous permet de déclencher des audits de sécurité, performance et SEO sur n'importe quelle URL, et de récupérer les résultats programmatiquement. Intégrez-la dans vos outils CI/CD, plateformes no-code ou tableaux de bord internes.

Base URL: https://audit.residual-labs.fr/api/v1

Rate limits

Les requêtes sont limitées à 10 req/min/IP. En cas de dépassement, l'API retourne un code 429.

Format

Toutes les réponses sont transmises au format JSON avec des codes de statut HTTP standards.

Coût en crédits

ActionCrédits
Audit complet (deep)10
Audit rapide (fast)3
Régénération email5
Génération lead email10

Démarrage rapide

Lancez votre premier audit en trois étapes.

1

Obtenez votre clé API

Rendez-vous dans Paramètres → API pour générer ou copier votre clé.

2

Lancez votre première requête

// 1. Lancer un audit

bash

curl -X POST https://audit.residual-labs.fr/api/v1/audit \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "mode": "deep"}'

// 2. Récupérer le résultat (polling)

bash

curl https://audit.residual-labs.fr/api/v1/audit/abc123 \
  -H "Authorization: Bearer YOUR_API_KEY"
3

Lisez le rapport

Interrogez GET /audit/{auditId} jusqu'à obtenir status: "completed". Le champ reportUrl contient le lien vers le rapport complet.

Authentification

Toutes les requêtes doivent inclure votre clé API dans l'en-tête Authorization sous forme d'un Bearer token.

http

Authorization: Bearer ra_live_xxxxxxxxxxxxxxxxxxxxx

Sécurité : Traitez votre clé comme un mot de passe — ne la committez jamais dans git et ne l'exposez pas côté client. Utilisez des variables d'environnement.

Endpoints

POST/v1/audit

Lance un audit sur une URL. Consomme 10 crédits en mode deep ou 3 crédits en mode fast. Retourne immédiatement un auditId à utiliser pour le polling.

Body Parameters

urlstringRequis

URL complète du site à auditer (ex: https://example.com)

mode'fast' | 'deep'

Mode d'audit. Défaut : deep (30+ sources, email enrichi)

Response 200

json

{
  "auditId": "abc123",
  "status": "pending",
  "creditsRemaining": 80,
  "pollUrl": "/api/v1/audit/abc123"
}
GET/v1/audit/{auditId}

Retourne l'état et le rapport complet d'un audit. Interrogez cet endpoint toutes les 5 secondes jusqu'à obtenir completed ou failed.

Status Values

pendingprocessingcompletedfailed

Response 200

json

{
  "auditId": "abc123",
  "status": "completed",
  "domain": "example.com",
  "score": 74,
  "scoreBreakdown": {
    "security": 80,
    "performance": 68,
    "seo": 75
  },
  "findings": [
    {
      "type": "critical",
      "category": "security",
      "title": "En-têtes HTTP de sécurité manquants",
      "description": "Content-Security-Policy absent"
    }
  ],
  "reportUrl": "https://audit.residual-labs.fr/audit/abc123",
  "creditsConsumed": 10,
  "createdAt": "2026-03-22T10:00:00Z",
  "completedAt": "2026-03-22T10:01:32Z"
}
GET/v1/credits

Retourne votre solde de crédits actuel, votre plan et le nombre d'audits restants.

bash

curl https://audit.residual-labs.fr/api/v1/credits \
  -H "Authorization: Bearer YOUR_API_KEY"

Response 200

json

{
  "credits": 180,
  "plan": "pro",
  "auditsRemaining": 9
}

Webhooks

Residual Audit enverra une requête POST à votre endpoint dès qu'un audit est terminé. Configurez votre URL de webhook depuis Paramètres → Intégrations.

json

{
  "event": "audit.completed",
  "auditId": "abc123",
  "domain": "example.com",
  "score": 74,
  "scoreBreakdown": {
    "security": 80,
    "performance": 68,
    "seo": 75
  },
  "criticalFindings": 2,
  "reportUrl": "https://audit.residual-labs.fr/audit/abc123",
  "timestamp": "2026-03-22T10:00:00Z"
}

Signature de sécurité

Vérifiez la signature HMAC-SHA256 incluse dans l'en-tête X-Residual-Signature pour valider l'authenticité de chaque payload.

Besoin d'aide?

Consultez notre centre d'aide ou contactez notre équipe support.