Endpoint REST API

GET /v1/recap

Dati di Recap, metriche riepilogative e Pagine principali per i preset o per un intervallo di date personalizzato.

Richiesta

GET https://api.nowmetrix.com/v1/recap?site=TRACKER_ID&preset=last30&limit=25

Usare Recap quando l’integrazione deve analizzare dati storici: report, esportazioni delle Pagine principali, intervalli di date personalizzati o risultati filtrati in base alla ricerca.

Autenticazione

È richiesta una chiave API nell’header Authorization: Authorization: Bearer nm_YOUR_KEY.

Parametri della query

Nome Tipo Obbligatorio Descrizione
site string obbligatorio ID del tracker. La chiave API deve avere accesso a questo tracker.
preset string facoltativo Preset per l’intervallo di date. Uno tra today, yesterday, last7, last14, last30, last90, this_month, last_month, custom. Valore predefinito: last30.
start date facoltativo Data di inizio per preset=custom. Formato: YYYY-MM-DD.
end date facoltativo Data di fine per preset=custom. Formato: YYYY-MM-DD.
limit integer facoltativo Numero massimo di Pagine principali da restituire. I valori vengono ricondotti all’intervallo 1-100. Valore predefinito: 100.
q string facoltativo Termine di ricerca per le Pagine principali. Corrisponde all’URL, al titolo o all’autore. Alias: search.
search string facoltativo Alias di q.

Esempio cURL

curl -H "Authorization: Bearer nm_YOUR_KEY" \
  "https://api.nowmetrix.com/v1/recap?site=TRACKER_ID&preset=last30&limit=25"

Esempio di risposta

{
  "site": "TRACKER_ID",
  "preset": "last30",
  "timezone": "Europe/Zurich",
  "range": {
    "from": "2026-05-28",
    "to": "2026-06-26",
    "label": "Last 30 Days",
    "days": 30
  },
  "limits": {
    "min_date": "2025-03-17",
    "max_date": "2026-06-26",
    "max_days": null
  },
  "search": {
    "query": ""
  },
  "daily": [
    {
      "date": "2026-06-25",
      "pageviews": 102400,
      "visits": 12800
    },
    {
      "date": "2026-06-26",
      "pageviews": 98450,
      "visits": 12130
    }
  ],
  "summary": {
    "total_pageviews": 3158127,
    "total_visits": 388450,
    "pages_per_visitor": 8.1
  },
  "top_pages": [
    {
      "rank": 1,
      "title": "Home page",
      "author": "",
      "pubdate": "",
      "url": "/",
      "url_full": "https://example-media.test/",
      "url_id": "5dc0a5883395e2a126e5239650d9268e",
      "thumbnail": "https://realtimemetadata.fra1.cdn.digitaloceanspaces.com/thumbnails/example.jpg",
      "pageviews": 159280
    },
    {
      "rank": 2,
      "title": "Culture desk live notes",
      "author": "Alex Morgan",
      "pubdate": "2026-06-24",
      "url": "/culture/live-notes",
      "url_full": "https://example-media.test/culture/live-notes",
      "url_id": "b35c1a5f2fd0cbb7f3c13b853c2a9d2c",
      "thumbnail": "https://realtimemetadata.fra1.cdn.digitaloceanspaces.com/thumbnails/example-2.jpg",
      "pageviews": 85632
    }
  ],
  "generated_at": "2026-06-26T12:30:00Z"
}

Campi della risposta

Campo Tipo Descrizione
site string ID del tracker utilizzato per la richiesta.
preset string Preset effettivamente utilizzato per la risposta.
timezone string Fuso orario del tracker utilizzato per determinare le date locali.
range object Intervallo di date determinato, con data iniziale, data finale, etichetta e numero di giorni.
limits object Limiti dello storico disponibile per il tracker.
search.query string Query di ricerca normalizzata utilizzata per filtrare le Pagine principali.
daily[] array<object> Pageview e visite giornalieri per l’intervallo determinato.
summary.total_pageviews integer Totale dei Pageview nell’intervallo determinato.
summary.total_visits integer Totale delle visite nell’intervallo determinato.
summary.pages_per_visitor number Pageview diviso per il numero di visite, arrotondato a una cifra decimale.
top_pages[] array<object> Pagine principali ordinate per Pageview.
top_pages[].rank integer Posizione nella lista restituita delle Pagine principali.
top_pages[].title string Titolo della pagina.
top_pages[].author string Autore, se disponibile.
top_pages[].pubdate string Data di pubblicazione, se disponibile.
top_pages[].url string Percorso o URL abbreviato.
top_pages[].url_full string URL assoluto, se disponibile.
top_pages[].url_id string Identificatore stabile dell’URL.
top_pages[].thumbnail string URL della miniatura, se disponibile.
top_pages[].pageviews integer Pageview nell’intervallo determinato.
generated_at string Timestamp UTC di generazione del payload.

Aggiornamento e caching

Le risposte vengono memorizzate in microcache per 60 secondi per ciascun tracker, preset, intervallo personalizzato, limite e termine di ricerca normalizzato.

Errori

HTTP Codice Descrizione
400 site_required Manca il parametro obbligatorio site.
401 missing_token Manca l’header Authorization.
401 invalid_token Il token non è valido o è stato revocato.
403 site_not_authorized La chiave API non ha accesso a questo tracker.
429 rate_limit_exceeded È stato superato il limite di richieste.
503 redis_unavailable Il backend realtime non è temporaneamente disponibile.
503 clickhouse_unavailable I dati storici non sono temporaneamente disponibili.
500 encoding_failed Non è stato possibile codificare la risposta di Recap.
{
  "error": {
    "code": "invalid_token",
    "message": "Bearer token is invalid or revoked."
  }
}