Fini les tables activity_logs.
Ajoute des logs d'audit à ton produit en 3 lignes de code. Stockage, recherche et conformité, on s'en occupe.
Bêta fermée. Rejoins la waitlist, on te recontacte.
Pourquoi les équipes utilisent Recalled
Trois raisons concrètes de brancher un SDK d'audit dans ton produit.
- Suivre chaque action
Qui a changé son mot de passe ? Qui a partagé ce document ? Logue chaque action de tes users avec qui, quoi, quand, depuis où, et consulte tout depuis ton back-office admin.
- Être prêt pour l'audit
Ticket support, incident de sécurité, demande RGPD : le jour où quelqu'un doit savoir qui a fait quoi, tu n'écris pas une requête SQL à l'arrache. Recalled te livre un audit trail signé, exportable et conforme dès ton premier event.
- Ne pas saturer ta base
Les logs d'audit grossissent vite et ralentissent tes requêtes en prod. Recalled stocke les events chez lui, indexés pour la recherche, avec rétention configurable. Ta base reste focalisée sur ton métier.
- Audite tes agents IA
Tes agents IA agissent au nom de tes users. Recalled enregistre chaque action avec un reçu cryptographique que l'agent peut citer dans sa réponse. Preuve rejouable quand l'agent se trompe.
Trois étapes, c'est fini
Pas de migration, pas de queue, pas de SQL. Le log d'audit le plus rapide que tu livreras jamais.
- 1Crée un projet
Inscris-toi, nomme ton produit, c'est fait. 30 secondes, sans carte bleue.
- 2Récupère une clé API
Un clic pour générer une clé. Colle-la dans ton .env. Tu gardes le secret, on garde le hash.
- 3Envoie ton premier event
Trois lignes de code depuis notre SDK npm, ou un cURL depuis n'importe quel langage. Tu logges.
Utilise n'importe quel langage
Un SDK npm pour JavaScript et TypeScript, une API REST pour tout le reste. Python, Go, Ruby, PHP, Rust, le langage dans lequel tu codes.
# npm install @recalled/sdk
import { Recalled } from '@recalled/sdk'
const client = new Recalled({
apiKey: process.env.RECALLED_KEY
})
await client.events.create({
action: 'invoice.deleted',
actor: { id: 'user_123' }
})curl -X POST https://api.recalled.dev/v1/events \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{
"action": "invoice.deleted",
"actor": { "id": "user_123" }
}'Pensé pour les devs
Arrête de coder ton propre audit log. On fait la partie ennuyeuse pour que tu puisses livrer le reste.
- Tracking d'événements
Enregistre chaque action utilisateur, création, modification, suppression, connexion, permission accordée, avec qui, quoi, quand, depuis où.
- Recherche et filtres
Recherche full-text sur tous les événements. Filtre par user, action, ressource, date, IP. Résultats en temps réel, pagination cursor-based.
- UI embeddable
Un widget admin interne pour ton équipe support, ops et compliance. Branche le composant React dans le back-office qu'ils utilisent déjà pour investiguer "qui a fait quoi" sans changer d'outil.
- Export et rétention
Export CSV ou JSON à la demande, filtré par acteur, action, plage de dates, etc. Rétention configurable selon le plan, règles fines sur Scale.
- Tamper-evident par défaut
Chaque événement est signé en HMAC-SHA256 avec une clé serveur, puis chaîné au précédent. Les réécritures silencieuses sont détectables. Appelle GET /v1/events/verify à tout moment pour prouver l'intégrité à un auditeur.
- Dashboard analytics
Vue d'ensemble de l'activité, pics d'events, actions les plus fréquentes, users les plus actifs. Alertes sur comportements anormaux.
- Reçus cryptographiques
Chaque event a un reçu portable avec une URL de vérification publique. Envoie le lien à un client qui conteste, colle-le dans une réponse support, attache-le à un ticket. Le destinataire clique, voit le bandeau vert 'Vérifié', sans clé API.
Des tarifs simples, sans surprise
Démarre gratuit, upgrade quand tu as de vrais clients. Pas de tarif par siège. Pas de frais cachés. Annulation à tout moment.
Pour valider l'intégration.
- 1 projet
- 3 000 events / mois
- 1 entonnoir
- Rétention 7 jours
- Dashboard de base
- Tamper-proof signing
- Notifications Discord et Telegram
Pour tes premiers clients payants.
- Tout du plan Free, plus :
- 3 projets
- 20 000 events / mois
- Jusqu'à 2 membres d'équipe par projet
- 1 webhook générique
- Jusqu'à 2 entonnoirs
- Rétention 3 mois
- Export CSV / JSON
- Serveur MCP pour agents IA
- Support email
Pour les startups en production.
- Tout du plan Starter, plus :
- Projets illimités
- 100 000 events / mois
- Jusqu'à 5 membres d'équipe par projet
- Jusqu'à 3 webhooks génériques
- Jusqu'à 5 entonnoirs
- Rétention 1 an
- Dashboard avancé
- UI embeddable incluse
- Rétention configurable par type d'event
Pour les SaaS établis.
- Tout du plan Pro, plus :
- Projets illimités
- 500 000 events / mois
- Jusqu'à 10 membres d'équipe par projet
- Jusqu'à 10 webhooks génériques
- Entonnoirs illimités
- Rétention illimitée
- Support email prioritaire
- SLA 99,9% de disponibilité
Choisis le plan qui colle à ton vrai volume
Glisse le slider, on estime les events que ton projet va émettre et on te pointe vers le plan le moins cher qui passe.
Un audit log, ce n'est pas de l'analytics : on compte un event par changement d'état (login, action, intégration, webhook, accès sensible), pas par page vue. Un SaaS qui audit-log sérieusement est plutôt entre 15 et 40 events par user actif par mois — la valeur par défaut à 20 est un plancher réaliste. Baisse-la si ton produit est très silencieux.
La case conformité, cochée pour toi
RGPD, SOC2, ISO 27001. Pas besoin d'être une grosse boîte pour avoir un audit trail propre et conforme. Le RGPD s'applique dès le premier utilisateur, et un questionnaire de sécurité peut tomber à n'importe quel stade. Recalled te livre ce qu'il faut : hébergement UE, chiffrement AES-256 au repos, rétention configurable, et droit à l'effacement en un seul appel.
Questions fréquentes
Tu ne trouves pas ta réponse ? Réponds à n'importe quel email qu'on t'envoie, on les lit tous.
Combien de temps prend l'intégration ?
Environ 2 minutes. Tu installes le package npm, tu colles ta clé API dans le .env, tu appelles client.events.create() une fois dans ton code. C'est fait.
Que se passe-t-il si je dépasse mon quota ?
On renvoie un HTTP 429 avec un code d'erreur clair pour que ton app puisse le logger et que tu puisses upgrade. On ne drop jamais d'events en silence, et on ne te facture jamais sans ton accord.
Mes données sont-elles sécurisées ?
Oui. Toutes les données sont chiffrées au repos en AES-256 et en transit en TLS 1.3. Chaque event est signé en HMAC-SHA256 et chaîné au précédent, donc une réécriture depuis la base de données est détectable. Un endpoint public GET /v1/events/verify permet d'auditer toute la chaîne en un appel. Les clés API sont hashées en SHA-256, jamais stockées en clair.
Où sont hébergées les données ?
Exclusivement dans l'Union Européenne. Pas de transfert hors UE par défaut. Mentionné clairement dans notre DPA.
Puis-je exporter mes données ?
Oui, à tout moment. CSV ou JSON, à la demande, filtré par projet, organisation, acteur ou plage de dates. Droit de portabilité RGPD Article 20, et simplement de la bonne hygiène.
Comment ça marche pour le RGPD ?
Recalled est sous-traitant au sens RGPD. On fournit un DPA standard que tu acceptes à l'inscription. Pour le droit à l'effacement (Article 17), un appel API anonymise tous les events d'un utilisateur donné.
Êtes-vous certifié SOC 2 ou ISO 27001 ?
Pas encore. On applique les contrôles que ces audits demandent, events signés en HMAC, hébergement UE, AES-256 au repos, accès par rôle, DPA à l'inscription, pour que tes propres auditeurs vérifient la partie Recalled de ton trail via GET /v1/events/verify et des exports CSV/JSON. La plupart de nos clients utilisent Recalled pour collecter des preuves pour leur propre audit SOC 2 ou ISO 27001, pas l'inverse. Dès qu'on aura passé un rapport Type II, on le publiera ici.
Quels frameworks supporte l'UI embeddable ?
Un composant React publié sur npm sous @recalled/sdk/react, pensé pour vivre à l'intérieur du panneau admin que ton support, tes ops et tes auditeurs utilisent déjà. Il marche avec Next.js, Remix, Vite, CRA, n'importe quel setup React 18+. Si ton back-office n'est pas en React, tu peux interroger les mêmes données directement via l'API REST depuis l'outil admin existant.
Puis-je essayer avant de payer ?
Oui. Le plan Free te donne 3 000 events par mois, un projet, 7 jours de rétention, pour toujours. Sans carte bleue. Passe à Starter (90 jours) ou Pro (1 an) quand tes données doivent vivre plus d'une semaine.
Recalled marche pour les agents IA, pas que pour les users humains ?
Oui. Recalled enregistre les actions humaines et celles des agents IA côte à côte, avec la même chaîne de hash et la même signature HMAC. Mets actor.type à 'agent' pour les actions d'agent, garde 'user' pour les humaines. Chaque event a aussi une URL de reçu publique que tu peux envoyer à un client qui conteste une action, coller dans un ticket support, ou laisser ton agent IA citer dans sa réponse. Pas de clé API pour la vérification. Voir /docs/agent-audit pour le pattern complet.
Ton prochain audit log est à 2 minutes
Arrête de bricoler ta propre table de logs. Branche Recalled, émets ton premier event, passe à la suite.