Référence API
API : Journaux d'audit
Accéder aux journaux d'audit immutables. Chaque opération de chiffrement, déchiffrement, rotation et gestion de clés est enregistrée avec une chaîne HMAC.
| Méthode | Endpoint | Description |
|---|---|---|
| GET /v1/audit | Lister les entrées d'audit (paginé) | |
| GET /v1/audit/verify | Recalculer le HMAC de chaque entrée et vérifier le chaînage |
Paramètres de requête
| Paramètre | Type | Description |
|---|---|---|
| key_id | uuid | Filtrer par identifiant de clé, l’UUID et non le nom |
| action | string | key.wrap | key.unwrap | key.create | key.rotate | key.disable | key.destroy | key.export | key.rotation_policy | encrypt | decrypt | envelope_only.refused | api_key.create | api_key.update | api_key.revoke |
| date_from | RFC 3339 | Début de période. Une date illisible renvoie 400, elle n’est jamais ignorée. |
| date_to | RFC 3339 | Fin de période |
| limit | integer | Taille de page. 50 par défaut, plafonné à 100 sans erreur. |
| offset | integer | Décalage de pagination. Il n’existe pas de curseur. |
Exemples
# Lister les entrees d'audit. Le filtre est `action`, pas `operation`.
curl -s "https://api.mafate.io/v1/audit?key_id=$KEY_ID&action=key.unwrap&limit=50" \
-H "Authorization: Bearer $MAFATE_API_KEY"
# Filtrer par periode. ⚠️ Une date illisible est une ERREUR (400), et non un
# filtre ignore : c'est deliberé, un journal filtre qui renvoie tout n'a
# aucune valeur probante.
curl -s "https://api.mafate.io/v1/audit?date_from=2026-01-01T00:00:00Z&date_to=2026-03-31T23:59:59Z" \
-H "Authorization: Bearer $MAFATE_API_KEY"
# Reponse
{
"logs": [
{
"id": 148731,
"tenant_id": "3f1a...",
"action": "key.unwrap",
"key_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"key_version": 3,
"actor": "ak_01HXK9B2YZ...",
"ip_address": "203.0.113.42",
"metadata": { "key_version": 3 },
"created_at": "2026-03-18T14:22:05Z"
}
],
"count": 1,
"total": 14873,
"limit": 50,
"offset": 0
}
# ⚠️ `limit` est plafonne a 100. Demander 500 renvoie 100 SANS erreur :
# comparez toujours `count` a ce que vous avez demande.Rétention des journaux
MAFATE conserve les journaux d'audit 60 mois, valeur portée par EAAS_AUDIT_RETENTION_MONTHS et appliquée par une purge périodique. Passé ce délai, les entrées sont supprimées définitivement : si votre propre obligation de conservation est plus longue, exportez le journal, ne comptez pas sur le nôtre.