Authentification

L’API REST de Statnive utilise l’authentification WordPress REST standard. Vous pouvez vous authentifier avec des mots de passe d’application, l’authentification par Cookie (pour les utilisateurs connectés), ou tout Plugin d’authentification compatible avec l’API REST WordPress. Les endpoints de lecture requièrent la capacité manage_options ; les endpoints publics de collecte (/hit, /event, /engagement) sont ouverts aux visiteurs non authentifiés afin que le tracker puisse poster.

URL de base

Tous les endpoints sont enregistrés sous le namespace statnive/v1 :

https://yoursite.com/wp-json/statnive/v1/

Endpoints disponibles

Reporting (requièrent manage_options)

GET /summary

Retourne un résumé des indicateurs clés pour une plage de dates donnée.

Paramètres :

  • from (string, obligatoire) — Date de début au format YYYY-MM-DD.
  • to (string, obligatoire) — Date de fin au format YYYY-MM-DD.

GET /sources

Retourne la répartition des sources de trafic par canal.

GET /pages

Retourne les analyses au niveau des pages, triées par nombre de pages vues.

GET /pages/entry

Retourne les principales pages d’entrée (landing) pour une plage de dates.

GET /pages/exit

Retourne les principales pages de sortie pour une plage de dates.

GET /realtime

Retourne le nombre actuel de visiteurs actifs et le flux récent des pages vues.

GET /utm

Retourne les répartitions agrégées des paramètres UTM pour une plage de dates.

GET /events

Retourne les comptages agrégés des événements personnalisés pour une plage de dates.

GET /events/{name}

Retourne le détail d’un événement nommé.

GET /dimensions/{type}

Retourne les répartitions agrégées pour une dimension unique ({type} est l’un des types de dimensions pris en charge, par exemple country, device, browser, language).

Chiffre d’affaires WooCommerce (v1.0.0+, requièrent manage_options)

Tous les endpoints de chiffre d’affaires acceptent une plage de dates from + to (YYYY-MM-DD). Les endpoints paginés acceptent en plus un paramètre limit (1 à 200, par défaut 25 ; products est à 10 par défaut, max 100).

GET /revenue/wc-status

Retourne l’état d’activation de WooCommerce, le statut HPOS, le statut d’attribution et la progression du remplissage rétroactif.

POST /revenue/backfill

Déclenche l’import asynchrone des commandes historiques via Action Scheduler (ou repli WP-cron).

GET /revenue/summary

Retourne les 5 KPI : commandes, chiffre d’affaires brut, chiffre d’affaires net, panier moyen, total des remboursements + taux, taxes + livraison. Le découpage des dates utilise COALESCE(date_paid_gmt, date_created_gmt) (v1.1.0+) afin que les renouvellements d’abonnement et les commandes à paiement différé tombent le jour où le paiement a été encaissé.

GET /revenue/timeseries

Retourne le chiffre d’affaires quotidien et les nombres de commandes pour la plage de dates.

GET /revenue/by-channel

Retourne les commandes, le chiffre d’affaires et le panier moyen ventilés par les 8 canaux de trafic de Statnive (Direct, Assistants IA, Recherche organique, Réseaux sociaux, E-mail, Référent, Recherche payante, Social payant).

GET /revenue/by-utm

Retourne le chiffre d’affaires ventilé par utm_source, utm_medium et utm_campaign (paginé).

GET /revenue/by-landing

Retourne le chiffre d’affaires ventilé par page d’atterrissage d’entrée (paginé).

GET /revenue/products

Retourne les meilleurs produits par unités vendues et chiffre d’affaires, remboursements appliqués, variations regroupées sous le parent (paginé ; limit=10 par défaut).

GET /revenue/funnel

Retourne l’entonnoir Panier → Achat en 4 étapes (Produit vu → Ajouté au panier → Commande commencée → Achat finalisé). La v1.1.0+ affiche le % de conversion par étape, le « % global » étant calculé sur le dénominateur de l’étape la plus large.

GET /revenue/refunds

Retourne la tendance du taux de remboursement et les produits les plus remboursés.

GET /revenue/coupons

Retourne les utilisations de codes promo : code, nombre, montant de remise et chiffre d’affaires net après remise (paginé).

Conseiller Ask me! (v1.1.0+, requièrent manage_options)

GET /advisor/questions

Retourne l’inventaire complet des questions Ask me! (116 questions × 10 catégories) avec les libellés de catégorie traduits, les marqueurs d’offre (free / paid), viz_hint et un tableau searchable[] bilingue.

POST /advisor/answers

Résout un lot d’identifiants de questions sur les données du site courant. Corps : { "ids": ["q2","q41",…], "from": "YYYY-MM-DD", "to": "YYYY-MM-DD" }. Retourne une enveloppe de réponse par identifiant (statut ok avec une charge utile viz, coming_soon ou error).

GET /advisor/preferences

Retourne les identifiants de questions épinglées par l’utilisateur courant depuis wp_usermeta (5 épinglages par défaut si aucun n’est défini : q2, q41, q23, q72, q81).

PUT /advisor/preferences

Met à jour les identifiants de questions épinglées par l’utilisateur courant. Ignore les identifiants inconnus et applique le plafond MAX_PINS = 10.

Configuration (requièrent manage_options)

GET /settings

Retourne la configuration actuelle du Plugin.

PUT /settings

Met à jour la configuration du Plugin. Accepte un corps JSON limité aux clés autorisées (tracking_enabled, respect_dnt, respect_gpc, consent_mode, retention_days, retention_mode, excluded_ips, excluded_roles, geoip_enabled, maxmind_license_key).

GET /diagnostics

Retourne un instantané de l’état du Plugin (tables BDD, statut GeoIP, planification cron, environnement).

POST /self-test

Exécute la suite d’auto-tests in-process.

POST /cron/run

Déclenche manuellement les tâches cron planifiées de Statnive.

POST /diagnostics/enable-dbip-city

Active le repli DB-IP City pour les recherches GeoIP.

GET /privacy-audit

Retourne un résumé d’audit de confidentialité.

Collecte du tracker (publics)

Ces endpoints reçoivent les écritures du tracker fourni avec le Plugin et sont volontairement ouverts pour que les visiteurs non authentifiés puissent poster pages vues et événements :

POST /hit

Enregistre un hit de page vue.

POST /event

Enregistre un événement personnalisé.

POST /engagement

Enregistre une mise à jour d’engagement de session (profondeur de défilement, temps passé sur la page).

Limitation du débit

Les endpoints de collecte du tracker (/hit, /event, /engagement) sont protégés par un throttling au niveau de l’application contre les clients abusifs. Les endpoints de reporting s’appuient sur le comportement standard de l’API REST WordPress — encadrez tout polling automatisé intensif d’une couche de cache de votre côté.

Installer Statnive gratuitement