Endpoint de l’API REST

GET /v1/pulse

Indicateur du jour, comparaison avec la veille et courbes intrajournalières par tranches de 15 minutes.

Requête

GET https://api.nowmetrix.com/v1/pulse?site=TRACKER_ID

Utilisez Pulse pour répondre à une question plus utile que « Quel est notre trafic ? » : le trafic du jour est-il supérieur ou inférieur à la tendance habituelle pour ce jour de la semaine et cette heure ?

Authentification

Une clé API est requise dans l’en-tête Authorization : Authorization: Bearer nm_YOUR_KEY.

Paramètres de requête

Nom Type Obligatoire Description
site string obligatoire Identifiant du tracker. La clé API doit avoir accès à ce tracker.

Exemple cURL

curl -H "Authorization: Bearer nm_YOUR_KEY" \
  "https://api.nowmetrix.com/v1/pulse?site=TRACKER_ID"

Exemple de réponse

{
  "site": "TRACKER_ID",
  "updated_at": "2026-06-26T12:24:30Z",
  "timezone": "Europe/Zurich",
  "pulse": {
    "available": true,
    "reason": null,
    "delta_percent": 12,
    "days_counted": 8,
    "is_provisional": false,
    "minute_of_day": 865,
    "metrics": {
      "pageviews": {
        "today": 48215,
        "avg": 43040,
        "delta_percent": 12
      },
      "visitors": {
        "today": 31890,
        "avg": 29620,
        "delta_percent": 8
      },
      "active_users": {
        "today": 128,
        "avg": 104,
        "delta_percent": 23
      }
    },
    "baseline": {
      "snapshot_time": "14:25",
      "aggregation": "median",
      "combination": "mean_of_deltas",
      "days_counted": 8,
      "samples": [
        {
          "date": "2026-06-19",
          "pageviews": 42110,
          "visitors": 29100,
          "active_users": 98
        }
      ]
    }
  },
  "yesterday_vs_day_before": {
    "yesterday": {
      "date": "2026-06-25",
      "pageviews": 77480,
      "visitors": 50195
    },
    "day_before": {
      "date": "2026-06-24",
      "pageviews": 81240,
      "visitors": 53210
    },
    "delta_percent": {
      "pageviews": -5,
      "visitors": -6
    }
  },
  "chart": {
    "interval_minutes": 15,
    "today_date": "2026-06-26",
    "yesterday_date": "2026-06-25",
    "average_basis_days": 8,
    "average_method": "median_same_weekday",
    "pageviews": {
      "today": [
        {
          "time": "08:00",
          "value": 920
        },
        {
          "time": "08:15",
          "value": 1110
        }
      ],
      "yesterday": [
        {
          "time": "08:00",
          "value": 870
        }
      ],
      "average": [
        {
          "time": "08:00",
          "value": 810
        }
      ]
    },
    "visitors": {
      "today": [
        {
          "time": "08:00",
          "value": 620
        }
      ],
      "yesterday": [
        {
          "time": "08:00",
          "value": 580
        }
      ],
      "average": [
        {
          "time": "08:00",
          "value": 540
        }
      ]
    }
  }
}

Champs de réponse

Champ Type Description
site string Identifiant du tracker utilisé pour la requête.
updated_at string Horodatage UTC de génération de la réponse.
timezone string Fuseau horaire du tracker utilisé pour déterminer les dates locales.
pulse.available boolean Indique si l’historique disponible est suffisant pour calculer l’indicateur.
pulse.reason string|null Motif lorsque l’indicateur n’est pas disponible.
pulse.delta_percent integer|null Écart global en pourcentage par rapport à la référence.
pulse.days_counted integer Nombre de jours de référence pris en compte.
pulse.is_provisional boolean Indique si le résultat de l’indicateur est provisoire.
pulse.minute_of_day integer Minute actuelle de la journée locale utilisée pour la comparaison.
pulse.metrics.pageviews object Valeur du jour, moyenne et delta_percent pour les pages vues.
pulse.metrics.visitors object Valeur du jour, moyenne et delta_percent pour les visiteurs.
pulse.metrics.active_users object Valeur du jour, moyenne et delta_percent pour les utilisateurs actifs.
pulse.baseline object Métadonnées de référence et jours échantillonnés utilisés pour calculer l’indicateur.
yesterday_vs_day_before object Comparaison entre journées complètes pour les pages vues et les visiteurs.
chart object Séries de 15 minutes pour aujourd’hui, hier et la moyenne, réparties entre pages vues et visiteurs.

Actualisation et mise en cache

Les réponses sont conservées dans un micro-cache par tracker pendant 30 secondes, avec une fenêtre de 90 secondes durant laquelle des données périmées peuvent être servies afin de protéger le service contre les pics de charge.

Erreurs

HTTP Code Description
400 site_required Le paramètre site obligatoire est manquant.
401 missing_token L’en-tête Authorization est manquant.
401 invalid_token Le token n’est pas valide ou a été révoqué.
403 site_not_authorized La clé API n’a pas accès à ce tracker.
429 rate_limit_exceeded La limite de débit a été dépassée.
503 redis_unavailable Le backend temps réel est temporairement indisponible.
{
  "error": {
    "code": "invalid_token",
    "message": "Bearer token is invalid or revoked."
  }
}