Endpoint REST API
GET /v1/pulse
Pulse hari ini, perbandingan dengan kemarin, dan kurva intrahari dalam interval 15 menit.
Permintaan
GET
https://api.nowmetrix.com/v1/pulse?site=TRACKER_ID
Gunakan Pulse untuk menjawab pertanyaan yang lebih berguna daripada 'Berapa banyak lalu lintas yang kami dapatkan?': apakah lalu lintas hari ini berada di atas atau di bawah pola normal untuk hari dan waktu yang sama?
Coba di API PlaygroundAutentikasi
Memerlukan API key dalam header Authorization dengan nilai Authorization: Bearer nm_YOUR_KEY.
Parameter kueri
| Nama | Tipe | Wajib | Deskripsi |
|---|---|---|---|
site |
string |
wajib | Tracker ID. API key harus memiliki akses ke tracker ini. |
Contoh cURL
curl -H "Authorization: Bearer nm_YOUR_KEY" \
"https://api.nowmetrix.com/v1/pulse?site=TRACKER_ID"
Contoh respons
{
"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
}
]
}
}
}
Field respons
| Field | Tipe | Deskripsi |
|---|---|---|
site |
string |
Tracker ID yang digunakan dalam permintaan. |
updated_at |
string |
Timestamp UTC saat payload dibuat. |
timezone |
string |
Zona waktu tracker yang digunakan untuk menentukan tanggal lokal. |
pulse.available |
boolean |
Menunjukkan apakah tersedia riwayat yang cukup untuk menghitung Pulse. |
pulse.reason |
string|null |
Alasan ketika Pulse tidak tersedia. |
pulse.delta_percent |
integer|null |
Selisih persentase keseluruhan dibandingkan dengan baseline. |
pulse.days_counted |
integer |
Jumlah hari baseline yang disertakan. |
pulse.is_provisional |
boolean |
Menunjukkan apakah hasil Pulse masih bersifat sementara. |
pulse.minute_of_day |
integer |
Menit saat ini dalam hari lokal yang digunakan untuk perbandingan. |
pulse.metrics.pageviews |
object |
Nilai hari ini, rata-rata, dan delta_percent untuk pageviews. |
pulse.metrics.visitors |
object |
Nilai hari ini, rata-rata, dan delta_percent untuk pengunjung. |
pulse.metrics.active_users |
object |
Nilai hari ini, rata-rata, dan delta_percent untuk pengguna aktif. |
pulse.baseline |
object |
Metadata baseline dan hari sampel yang digunakan untuk menghitung Pulse. |
yesterday_vs_day_before |
object |
Perbandingan antara hari yang telah selesai dan hari sebelumnya untuk pageviews dan pengunjung. |
chart |
object |
Rangkaian data dalam interval 15 menit untuk hari ini, kemarin, dan rata-rata, yang dibagi menjadi pageviews dan pengunjung. |
Pembaruan data dan caching
Respons disimpan dalam microcache per tracker selama 30 detik, dengan jendela stale selama 90 detik untuk melindungi dari lonjakan permintaan.
Error
| HTTP | Kode | Deskripsi |
|---|---|---|
| 400 | site_required |
Parameter site yang wajib tidak ada. |
| 401 | missing_token |
Header Authorization tidak ada. |
| 401 | invalid_token |
Token tidak valid atau telah dicabut. |
| 403 | site_not_authorized |
API key tidak memiliki akses ke tracker ini. |
| 429 | rate_limit_exceeded |
Batas laju permintaan telah terlampaui. |
| 503 | redis_unavailable |
Backend realtime untuk sementara tidak tersedia. |
{
"error": {
"code": "invalid_token",
"message": "Bearer token is invalid or revoked."
}
}