Coffre-fort client souverain. Sur votre WordPress. Installé en 3 minutes.

API & développeurs

Tout le coffre s’opère en code. Sans toucher au cœur.

API REST complète, 28+ webhooks signés HMAC, hooks WordPress natifs, intégrations Fluent zero‑config. Si vous avez un IT, il branche votre stack en une après‑midi.

Anti‑SSRF

Signature HMAC SHA‑256

AES‑256‑CBC au repos

Audit horodaté opposable

TLS 1.3 obligatoire

Anti‑tamper plugin

01

API REST complète

Tout est exposable en REST — clients, fichiers, cartes, liens, embeds, tags, parcours, certificats, audit. Auth par clé API, ACL granulaires, journal des appels.

Endpoints clients

  • GET /wp-json/cv/v1/clients
  • POST /wp-json/cv/v1/clients
  • PUT /wp-json/cv/v1/clients/{id}
  • DEL /wp-json/cv/v1/clients/{id}

Endpoints fichiers

  • POST /cv/v1/files/upload
  • GET /cv/v1/files/{id}/token
  • POST /cv/v1/files/{id}/archive
  • POST /cv/v1/files/{id}/expiry

Endpoints cartes / liens / embeds

  • GET /cv/v1/cards
  • POST /cv/v1/links
  • POST /cv/v1/embeds
  • GET /cv/v1/tags

Endpoints transverses

  • GET /cv/v1/search
  • GET /cv/v1/audit
  • GET /cv/v1/parcours
  • GET /cv/v1/certificates

Exemple : récupérer la liste des clients

curl -X GET https://votre-site.fr/wp-json/cv/v1/clients \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

# Réponse JSON :
# {
#   "data": [
#     {"id": 12, "name": "M. Bertrand", "email": "...", "tier": 1},
#     {"id": 13, "name": "SCI Verdun", "email": "...", "tier": 2}
#   ],
#   "meta": { "total": 124, "page": 1, "per_page": 20 }
# }

Authentification & logging : clés API par utilisateur (Rôles WP), ACL par endpoint, journal complet des appels (méthode, URL, IP, opérateur, durée). Quotas et rate‑limit configurables.

02

Webhooks (28+ événements)

Chaque action significative déclenche un POST signé HMAC vers vos endpoints. Multi-targets, secrets indépendants, anti‑SSRF, retry exponentiel.

Coffre & documents

  • file.uploaded
  • file.validated
  • file.refused
  • file.expired
  • file.archived
  • file.signed

Clients & auth

  • client.created
  • client.archived
  • client.tagged
  • client.login
  • client.logout
  • client.password_reset

Parcours & gates

  • parcours.enrolled
  • step.unlocked
  • step.completed
  • quiz.submitted
  • certificate.issued
  • parcours.finished

Communauté & engagement

  • comment.posted
  • announcement.published
  • trophy.unlocked
  • event.created
  • event.rsvp
  • replay.viewed

Exemple : payload + signature HMAC

POST https://votre-stack.fr/webhooks/cv-receiver
Headers:
  X-CV-Event: file.validated
  X-CV-Signature: sha256=8b1cde…
  Content-Type: application/json

{
  "event": "file.validated",
  "occurred_at": "2026-05-02T10:34:21.842Z",
  "data": {
    "file_id": 4521,
    "client_id": 12,
    "operator_id": 3,
    "name": "Bilan 2024 SARL VERDIA.pdf",
    "audit_url": "https://votre-site.fr/cv/audit/4521"
  }
}

# Vérifier la signature côté receveur :
# computed = "sha256=" + hmac_sha256(secret, raw_body)
# hmac.compare_digest(computed, header) → true

Configuration : plusieurs URLs cibles, chacune avec son secret. Filtrage anti-SSRF (RFC 1918, link-local). Retry exponentiel jusqu’à 24 h. Logs des délivrances.

03

Hooks WordPress natifs

Le coffre est un plugin WordPress — toute la chaîne est extensible via add_action / add_filter sans toucher au coeur. Compatible avec votre code existant et vos plugins maison.

Actions principales

  • cv_after_file_uploaded
  • cv_after_file_validated
  • cv_after_step_completed
  • cv_after_client_created
  • cv_after_audit_log

Filtres principaux

  • cv_email_subject
  • cv_email_body
  • cv_max_upload_size
  • cv_storage_quota_gb
  • cv_token_lifetime

Capabilities & rôles

  • cv_user_can_view_client
  • cv_user_can_validate
  • cv_user_can_export
  • cv_user_capabilities_map

Exemple : envoyer un Slack après validation

add_action( 'cv_after_file_validated', function ( $file_id, $client_id, $operator_id ) {
    $file   = cv_get_file( $file_id );
    $client = cv_get_client( $client_id );

    wp_remote_post( 'https://hooks.slack.com/services/T0…', [
        'headers' => [ 'Content-Type' => 'application/json' ],
        'body'    => wp_json_encode( [
            'text' => sprintf(
                '✅ %s a validé "%s" pour %s',
                wp_get_user( $operator_id )->display_name,
                $file->name,
                $client->name
            ),
        ] ),
    ] );
}, 10, 3 );

04

Sécurité & audit

Si votre RSSI / DPO valide, c’est sur ces points qu’il regardera. Tout est documenté, configurable, journalisé.

Chiffrement AES‑256‑CBC

Clé par espace client, IV unique par fichier, chiffrement au repos sur disque. La clé maître vit dans wp‑config.php, jamais en BDD.

Anti‑SSRF (webhooks)

Bloque l’envoi de webhooks vers les réseaux internes (RFC 1918), localhost, link-local, IPv6 privé, métadonnées cloud (169.254.x.x). Allowlist optionnelle.

Anti‑tamper plugin

Hash des fichiers clés vérifié au boot du plugin. Si un fichier critique a été modifié (compromission ?), le plugin refuse de démarrer en mode sensible.

Audit horodaté complet

Chaque appel API, chaque action UI, chaque webhook envoyé consignés : opérateur, IP, méthode, cible, durée, statut. Export PDF ou CSV opposable.

Filtrage IP admin

Restreindre l’accès admin à un set d’IP / CIDR (cabinet, VPN, télétravail). Compatible IPv4 et IPv6.

RGPD : export & effacement

Export sélectif des données d’un client (JSON/ZIP), droit à l’oubli en un clic, rétention configurable par catégorie de données.

05

Intégrations Fluent natives

Pour la stack Fluent, c’est zero‑config. Client Vault détecte la présence du plugin et active la passerelle.

FluentCRM

Auto-tag des contacts depuis les événements coffre, séquences déclenchées par étape de parcours, segments dynamiques.

FluentPlayer

Lecteur vidéo intégré pour les replays / pièces media du coffre, tracking de visionnage par client.

FluentCart

Paiements Stripe intégrés aux parcours : une étape « paiement » valide automatiquement à la réception du webhook Stripe.

Fluent Community

Mapping N × N parcours / spaces, 21 widgets contextualisés, recherche multi-source, classement et trophées.

Au-delà de Fluent : tout le reste passe par les webhooks ou l’API REST. Stripe direct, Calendly, Cal.com, Zapier, n8n, Make, votre CRM custom — aucune limite.

06

Ressources développeur

La doc complète, des collections prêtes à l’emploi, et un canal d’entraide.

Documentation complète

Endpoints, payloads, exemples, codes d’erreur, rate-limits, changelog.

Collection Postman

Tous les endpoints pré-configurés, environnements dev/staging/prod, exemples de payloads.

OpenAPI / Swagger

Spécification YAML / JSON pour générer vos clients en TypeScript, Python, Go, etc.

Communauté développeurs

Espace privé pour les intégrateurs : exemples, cas d’usage, retours sur les hooks utiles.

Prêt à brancher votre stack ?
On vous montre en visio.

Démo CTO 30 minutes : on prend votre stack, on liste les points de branchement, on répond en live aux questions sécurité / RGPD.