leads centralisés
AccueilDocumentation

API Reference

L'API REST de Qualify CRM vous permet d'intégrer la gestion de leads dans vos outils et workflows existants. Tous les endpoints sont accessibles via HTTPS avec authentification JWT.

URL de base

https://qualify-crm.com/api

Authentification

Les endpoints authentifiés nécessitent un token JWT dans le header Authorization et un identifiant de projet dans le header X-Project-Id.

// Header required for authenticated endpoints
Authorization: Bearer <your-jwt-token>

// Multi-tenant context (required for project-scoped endpoints)
X-Project-Id: <your-project-id>

Obtenez un token via POST /api/auth/login. Le token expire après 24h — utilisez /api/auth/refresh pour le renouveler.

Rate Limiting

Les endpoints publics (webhook, contact, tracking) sont limités à 60 requêtes/minute par IP. Les endpoints authentifiés sont limités à 200 requêtes/minute par token.

Authentification

Inscription, connexion, tokens JWT et gestion de session.

Leads

Créer, lister, modifier et exporter des leads.

Webhooks entrants

Recevoir des leads depuis des formulaires WordPress ou tout autre source.

Sites

Gérer les sites WordPress connectés.

Formulaires

Gérer les formulaires et récupérer les snippets d'intégration.

Analytiques

Métriques de performance, conversion et délivrabilité.

Tracking comportemental

Enregistrer les visites de pages pour les leads connus.

Relances email

Templates, envoi, génération IA et statistiques de relance.

Exemple JavaScript

Voici comment récupérer vos leads depuis une application JavaScript :

// Example: Fetch leads with JavaScript
const response = await fetch('https://qualify-crm.com/api/leads?page=1&limit=10', {
  headers: {
    'Authorization': 'Bearer ' + token,
    'X-Project-Id': projectId,
    'Content-Type': 'application/json',
  },
});
const { leads, total } = await response.json();
console.log(`Found ${total} leads`);

Intégration WordPress

Deux méthodes pour envoyer des leads depuis WordPress :

<!-- Add this to your WordPress site -->
<div data-qcrm="<formId>"></div>
<script src="https://qualify-crm.com/api/forms/<formId>/snippet.js" defer></script>

<!-- Or use the generic webhook endpoint -->
<script>
document.getElementById('my-form').addEventListener('submit', async (e) => {
  e.preventDefault();
  const formData = new FormData(e.target);
  await fetch('https://qualify-crm.com/api/webhook/<siteKey>/generic', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify(Object.fromEntries(formData)),
  });
});
</script>

Besoin d'aide ? Consultez la page Webhooks pour la configuration HMAC et les événements temps réel.