Referensi API Monitor

Nilai yang mungkin untuk kolom

Lokasi Monitor

NilaiDeskripsi
US_EAST_1N. Virginia
CA_CENTRAL_1Kanada (Montreal)
EU_CENTRAL_1Frankfurt
AP_NORTHEAST_1Tokyo

Jenis Peringatan Monitor

NilaiDeskripsi
INCIDENTPeringatan insiden
EMAILPeringatan email
SMSPeringatan SMS
SLACKPeringatan Slack
DISCORDPeringatan Discord
MICROSOFT_TEAMSPeringatan Microsoft Teams
PHONE_CALLPeringatan panggilan telepon
WEBHOOKPeringatan webhook
GOOGLE_CHATPeringatan Google Chat
WHATSAPPPeringatan WhatsApp

Status Monitor

NilaiDeskripsi
UPMonitor berjalan normal
DOWNMonitor telah gagal
DEGRADEDMonitor mengalami masalah
UNKNOWNStatus monitor tidak bisa ditentukan

Keadaan Monitor

NilaiDeskripsi
ACTIVEMonitor menjalankan pemeriksaan dan mengirim peringatan
MUTEDMonitor menjalankan pemeriksaan tetapi tidak mengirim peringatan
PAUSEDMonitor tidak menjalankan pemeriksaan

Mendapatkan Monitor

Anda bisa memakai endpoint ini untuk menemukan dan menelusuri daftar semua monitor yang ada.

Endpoint:

GET /:page_id/monitors

Parameter Query

ParameterTipeNilai BawaanDeskripsi
pagenumber1Nomor halaman yang diambil.
limitnumber100Jumlah monitor per halaman.
searchstringnullKata kunci untuk menyaring hasil.
statusenumnullFilter status ('UP', 'DOWN', 'UNKNOWN', 'DEGRADED').

Contoh permintaan

GET /1/monitors?limit=3&page=2&status=DOWN

Contoh respons

{
"monitors": [{ "...": "monitor objects" }],
"total": 10,
"page": 3,
"totalPages": 5,
"limit": 2
}

Membuat Monitor

Endpoint:

POST /monitors

Contoh permintaan

{
"pageId": "page123",
"url": "https://example.com",
"httpMethod": "GET",
"body": null,
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer token"
},
"queryParams": {
"search": "test",
"limit": "10"
},
"basicAuth": {
"username": "user",
"password": "password"
},
"type": "HTTP",
"assertions": [
{
"type": "STATUSCODE",
"comparison": "EQUALS",
"selector": null,
"target": "200"
}
],
"alerts": ["alert-id-1", "alert-id-2"],
"name": "Example Monitor",
"locations": "US_EAST_1",
"checksInterval": 300,
"createComponent": true,
"createMetric": true,
"onFail": {
"createIncident": true,
"createOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
},
"onRecover": {
"resolveIncident": true,
"resolveOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
}
}

Contoh respons

{
"monitor": {
"pageId": "page123",
"url": "https://example.com",
"httpMethod": "GET",
"body": null,
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer token"
},
"queryParams": {
"search": "test",
"limit": "10"
},
"basicAuth": {
"username": "user",
"password": "password"
},
"type": "HTTP",
"assertions": [
{
"id": "assertion1",
"type": "STATUSCODE",
"comparison": "EQUALS",
"selector": null,
"target": "200"
}
],
"alerts": ["alert1", "alert2"],
"name": "Example Monitor",
"locations": "US_EAST_1",
"checksInterval": 300,
"createComponent": true,
"createMetric": true,
"onFail": {
"createIncident": true,
"createOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
},
"onRecover": {
"resolveIncident": true,
"resolveOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
},
"createdAt": "2023-08-08T12:00:00Z",
"updatedAt": "2023-08-08T12:00:00Z"
},
"message": "Monitor created successfully"
}

Memperbarui Monitor

Endpoint:

PUT /monitors/:id

Contoh permintaan

{
"url": "https://updated.com",
"name": "Updated Monitor Name"
}

Contoh respons

{
"monitor": {
"pageId": "page123",
"url": "https://updated.com",
"httpMethod": "GET",
"body": null,
"headers": {
"Content-Type": "application/json",
"Authorization": "Bearer token"
},
"queryParams": {
"search": "test",
"limit": "10"
},
"basicAuth": {
"username": "user",
"password": "password"
},
"type": "HTTP",
"assertions": [
{
"id": "assertion1",
"type": "STATUSCODE",
"comparison": "EQUALS",
"selector": null,
"value": "200"
}
],
"alerts": ["alert1", "alert2"],
"name": "Updated Monitor Name",
"locations": "US_EAST_1",
"checksInterval": 300,
"createComponent": true,
"createMetric": true,
"onFail": {
"createIncident": true,
"createOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
},
"onRecover": {
"resolveIncident": true,
"resolveOutageDuration": true,
"publishIncident": true,
"notifySubscribers": true
},
"createdAt": "2023-08-08T12:00:00Z",
"updatedAt": "2023-08-08T12:00:00Z"
},
"message": "Monitor updated successfully"
}

Memperbarui Keadaan Monitor

Lanjutkan, bisukan, atau jeda monitor, sama seperti lewat menu status di dashboard. Monitor yang dibisukan tetap melakukan pemeriksaan, tetapi tidak mengirim peringatan, tidak menjalankan aturan perutean, dan tidak memberi tahu pelanggan. Monitor yang dijeda berhenti memeriksa sampai Anda mengaturnya kembali ke ACTIVE.

Endpoint:

PUT /monitors/:id/state

Parameter body

ParameterTipeDeskripsi
stateenumWajib. Keadaan baru ('ACTIVE', 'MUTED', 'PAUSED').
forMinutesnumberOpsional, hanya dengan MUTED. Membatalkan pembisuan setelah sekian menit, maksimal 10080 (7 hari). Jangan sertakan agar monitor tetap dibisukan sampai Anda mengubah keadaannya lagi.

Contoh permintaan

{
"state": "MUTED",
"forMinutes": 60
}

Contoh respons

{
"id": "monitor-id-1",
"state": "MUTED",
"message": "Monitor state updated successfully."
}

Monitor yang dikembalikan oleh Mendapatkan Monitor menampilkan keadaannya saat ini di kolom active, muted, dan mutedUntil. Monitor yang dijeda memiliki active: false. Monitor yang dibisukan memiliki active: true dan muted: true, dan mutedUntil menunjukkan kapan pembisuan sementara berakhir.

Menghapus Monitor

Endpoint:

DELETE /monitors/:id

Contoh permintaan

DELETE /monitors/monitor-id-1

Contoh respons

{
"message": "Monitor deleted successfully."
}

Mendapatkan Log Monitor

Endpoint:

GET /monitors/:id/logs

Parameter Query

ParameterTipeNilai BawaanDeskripsi
limitnumber100Jumlah item per halaman. Tidak boleh lebih dari 1000.
pagenumber1Nomor halaman yang diambil.
fromstringsatu tahun laluHanya hasil pada atau setelah waktu ISO 8601 ini. Paling jauh satu tahun ke belakang.
tostringnullHanya hasil pada atau sebelum waktu ISO 8601 ini.
monitorIdstring-ID monitor.
locationstringnullLokasi monitor.
createdAtstring | object | numbernullTanggal pembuatan. Bisa berupa string, angka, atau objek dengan kolom gte dan lte.
isSuccessfulbooleannullApakah pemeriksaan berhasil.
isSSLCheckbooleannullApakah pemeriksaan berupa pemeriksaan SSL.
httpStatusCodestringnullKode status HTTP dari respons.
status('UP', 'DOWN', 'UNKNOWN', 'DEGRADED')nullStatus monitor.
dnsTimestring | number | objectnullWaktu untuk resolusi DNS.
tcpTimestring | number | objectnullWaktu untuk koneksi TCP.
tlsTimestring | number | objectnullWaktu untuk handshake TLS.
firstByteTimestring | number | objectnullWaktu sampai bita pertama diterima.
downloadTimestring | number | objectnullWaktu untuk pengunduhan.
responseTimestring | number | objectnullTotal waktu respons.
performanceTimestring | number | objectnullWaktu performa.
accessabilityScorestring | number | objectnullSkor aksesibilitas.
seoScorestring | number | objectnullSkor SEO.
bestPracticesScorestring | number | objectnullSkor praktik terbaik.
successfulAssertionsstring | number | objectnullJumlah pernyataan yang berhasil.
sortstringkronologisKolom untuk pengurutan.

Contoh permintaan

GET /monitors/monitor-id-1/logs?limit=100&page=1

Contoh respons

{
"monitorLogs": [
// {monitor log object},
// {monitor log object 2}
],
"total": 478,
"page": 1,
"totalPages": 5,
"limit": 100
}

Mendapatkan Uptime Monitor

Ketersediaan dan waktu respons monitor dalam suatu rentang, dengan rincian harian. Rentang bawaannya 30 hari terakhir dan paling lama 395 hari. Rentang yang lebih dari lima hari diukur dalam hari penuh, dan akhir pada tengah malam berhenti di hari sebelumnya, jadi start=2026-10-01T00:00:00Z&end=2026-11-01T00:00:00Z tepat bulan Oktober.

Endpoint:

GET /monitors/:id/summary

Parameter Query

ParameterTipeNilai BawaanDeskripsi
startstring30 hari sebelum akhirAwal rentang, dalam format ISO 8601.
endstringsekarangAkhir rentang, dalam format ISO 8601.

Contoh permintaan

GET /monitors/monitor-id-1/summary?start=2026-10-01T00:00:00Z&end=2026-11-01T00:00:00Z

Contoh respons

{
"monitorId": "monitor-id-1",
"start": "2026-10-01T00:00:00.000Z",
"end": "2026-10-31T23:59:59.999Z",
"firstCheckDay": "2026-09-12",
"availability": 99.95,
"checks": 8928,
"failedChecks": 4,
"downtimeSeconds": 720,
"avgResponseTime": 216,
"response95": null,
"avgDailyResponse95": 268,
"days": [
{
"date": "2026-10-01",
"availability": 100,
"checks": 288,
"failedChecks": 0,
"avgResponseTime": 212
}
]
}
  • availability adalah persentase pemeriksaan yang berhasil, dan bernilai null jika tidak ada pemeriksaan dalam rentang tersebut.
  • downtimeSeconds adalah jumlah pemeriksaan yang gagal dikalikan interval pemeriksaan.
  • firstCheckDay adalah hari pertama monitor memiliki pemeriksaan. Jika jatuh setelah start, angkanya hanya mencakup hari-hari sejak tanggal itu.
  • days hanya mencantumkan hari yang memiliki pemeriksaan.

Menjalankan Pemeriksaan Monitor berdasarkan ID

Endpoint:

GET /monitors/:id/run

Parameter Query

ParameterTipeNilai BawaanDeskripsi
location'US_EAST_1', 'EU_CENTRAL_1', 'AP_NORTHEAST_1', 'AP_SOUTHEAST_2', 'CA_CENTRAL_1'-Lokasi monitor. Harus salah satu dari nilai yang ditentukan.
retrybooleanfalseMenunjukkan apakah operasi harus dicoba ulang. Opsional.
monitorLogIdstringnullPengenal unik log monitor. Opsional.

Contoh permintaan

GET /monitors/monitor-id-1/run?monitorId=abc123&location=US_EAST_1&retry=true&monitorLogId=log456

Contoh respons

{
"status": "success",
"message": "Monitor check run successfully."
}

Membuat Peringatan Monitor

Endpoint:

POST /monitor-alerts

Contoh permintaan

{
"type": "EMAIL",
"pageId": "page123",
"recipient": "user@example.com",
"recipientWorkspace": "workspace123",
"whenFails": true,
"whenRecovers": true,
"whenDegrades": false,
"whenSslExpires": true,
"sslExpiresInDays": 30,
"monitors": ["monitor1", "monitor2"],
"metadata": "Additional information about the alert"
}

Contoh respons

{
"monitor": {
"id": "alert123",
"siteId": "site123",
"type": "EMAIL",
"recipient": "user@example.com",
"whenFails": true,
"whenRecovers": true,
"whenDegrades": false,
"whenSslExpires": true,
"sslExpiresInDays": 30,
"monitors": [{ "id": "monitor1" }, { "id": "monitor2" }],
"createdAt": "2023-08-08T12:00:00Z",
"updatedAt": "2023-08-08T12:00:00Z",
"metadata": "Additional information about the alert"
},
"message": "Monitor Alert created successfully"
}

Memperbarui Peringatan Monitor

Endpoint:

PUT /monitor-alerts/:id

Contoh permintaan

{
"type": "EMAIL",
"monitors": ["monitor-1-id", "monitor-2-id", "monitor-3-id"]
}

Contoh respons

{
"monitor": {
"type": "EMAIL",
"pageId": "page123",
"recipient": "user@example.com",
"recipientWorkspace": "workspace123",
"whenFails": true,
"whenRecovers": true,
"whenDegrades": false,
"whenSslExpires": true,
"sslExpiresInDays": 30,
"monitors": ["monitor-1-id", "monitor-2-id"],
"metadata": "Additional information about the alert"
},
"message": "Monitor alert updated successfully."
}

Mendapatkan Peringatan Monitor

Endpoint:

GET /:page_id/monitor-alerts

Parameter Query

ParameterTipeNilai BawaanDeskripsi
limitnumber100Jumlah item per halaman.
pagenumber1Nomor halaman yang diambil.

Contoh permintaan

GET /1/monitor-alerts?limit=2&page=3

Contoh respons

{
"monitorAlerts": [
{...monitor alert objects}
],
"total": 27,
"page": 3,
"totalPages": 14,
"limit": 2
}

Menghapus Peringatan Monitor

Endpoint:

DELETE /monitor-alerts/:id

Contoh permintaan

DELETE /monitor-alerts/alert-id-1

Contoh respons

{
"message": "Monitor alert deleted successfully."
}

Membuat Grup Monitor

Endpoint:

POST /monitors-groups

Contoh permintaan

{
"pageId": "page123",
"name": "Example Name",
"childId": "child456"
}

Contoh respons

{
"monitor": {
"id": "group123",
"name": "Example Name",
"siteId": "site123",
"collapsed": false,
"monitors": [{ "id": "monitor1" }, { "id": "monitor2" }],
"groupId": "parentGroup123",
"children": [
{ "id": "childGroup1", "name": "Child Group 1" },
{ "id": "childGroup2", "name": "Child Group 2" }
],
"order": 1,
"createdAt": "2023-08-08T12:00:00Z",
"updatedAt": "2023-08-08T12:00:00Z",
"parents": ["parent1", "parent2"],
"componentId": "component123"
},
"message": "Monitor group created successfully."
}

Memperbarui Grup Monitor

Endpoint:

PUT /monitors-groups/:id

Contoh permintaan

{
"name": "Updated Monitor Group Name"
}

Contoh respons

{
"monitor": {
"id": "group123",
"name": "Updated Monitor Group Name",
"siteId": "site123",
"collapsed": true,
"monitors": [{ "id": "monitor1" }, { "id": "monitor2" }],
"groupId": "parentGroup123",
"children": [
{ "id": "childGroup1", "name": "Child Group 1" },
{ "id": "childGroup2", "name": "Child Group 2" }
],
"order": 1,
"createdAt": "2023-08-08T12:00:00Z",
"updatedAt": "2023-08-08T12:00:00Z",
"parents": ["parent1", "parent2"],
"componentId": "component123"
},
"message": "Monitor group updated successfully."
}

Menghapus Grup Monitor

Endpoint:

DELETE /monitors-groups/:id

Contoh permintaan

DELETE /monitors-groups/group-id-1

Contoh respons

{
"message": "Monitor group deleted successfully."
}

Menambahkan Monitor ke Grup

Endpoint:

POST /monitors-groups/:id/monitors

Contoh permintaan

{
"monitors": ["monitor1", "monitor2", "monitor3"]
}

Contoh respons

{
"message": "Monitors added to the group successfully."
}

Menjalankan Pemeriksaan Grup Monitor

Endpoint:

GET /monitors-groups/:id/run

Parameter Query

ParameterTipeNilai BawaanDeskripsi
location'US_EAST_1', 'EU_CENTRAL_1', 'AP_NORTHEAST_1', 'AP_SOUTHEAST_2', 'CA_CENTRAL_1'-Lokasi monitor. Harus salah satu dari nilai yang ditentukan.
retrybooleanfalseMenunjukkan apakah operasi harus dicoba ulang. Opsional.
monitorLogIdstringnullPengenal unik log monitor. Opsional.

Contoh permintaan

GET /monitors-groups/group-id-1/run

Contoh respons

{
"result": "OK",
"monitorLogId": "monitor-log-id-1"
}

Monitor Cron

Monitor cron melacak pekerjaan terjadwal lewat ping HTTP. Untuk penyiapan produk dan penggunaan dashboard, lihat Pemantauan Cron.

Nilai yang mungkin untuk kolom

Status Monitor Cron

NilaiDeskripsi
UPMonitor berjalan normal
DOWNMonitor telah gagal
DEGRADEDMonitor mengalami masalah
UNKNOWNStatus monitor tidak bisa ditentukan

Keadaan Monitor Cron

NilaiDeskripsi
ACTIVEMonitor diperiksa secara aktif
PAUSEDPemeriksaan monitor dijeda
MUTEDMonitor dibisukan (tanpa notifikasi)

Status Log Monitor Cron

NilaiDeskripsi
SUCCESSPekerjaan selesai dengan sukses
FAILUREPekerjaan secara eksplisit melaporkan kegagalan
MISSEDPekerjaan tidak melakukan ping dalam jendela yang diharapkan
LATEPekerjaan melakukan ping setelah periode tetapi masih dalam tenggang
STARTEDPekerjaan melaporkan bahwa ia dimulai (pencatatan waktu eksekusi)

Periode dan tenggang

Baik period maupun grace dinyatakan dalam detik. period adalah seberapa sering pekerjaan harus berjalan; grace adalah waktu tambahan yang diberikan sebelum monitor ditandai mati.

Mendapatkan Monitor Cron

Endpoint:

GET /:page_id/monitors/cron

Parameter Query

ParameterTipeNilai BawaanDeskripsi
limitnumber100Jumlah monitor cron per halaman. Maksimum 100.
pagenumber1Nomor halaman.
searchstringnullKata kunci untuk menyaring hasil berdasarkan nama.
statusenumnullFilter status ('UP', 'DOWN', 'UNKNOWN', 'DEGRADED').

Contoh permintaan

GET /page123/monitors/cron?limit=10&page=1&status=DOWN

Contoh respons

{
"cronMonitors": [
{
"id": "cron-abc123",
"name": "Daily backup",
"slug": "my-page-x7k2m9n4p1q8w3e5",
"period": 86400,
"grace": 3600,
"status": "UP",
"state": "ACTIVE",
"siteId": "page123",
"order": 1,
"groupId": null,
"componentId": "component-id-1",
"onFailCreateIncident": true,
"onFailCreateOutageDuration": false,
"onFailPublishIncident": true,
"onFailNotifySubscribers": true,
"onRecoverResolveIncident": true,
"onRecoverResolveOutageDuration": false,
"onRecoverPublishIncident": true,
"onRecoverNotifySubscribers": true,
"createTemplateId": null,
"resolveTemplateId": null,
"createdAt": "2024-01-15T08:00:00.000Z",
"updatedAt": "2024-01-15T08:00:00.000Z"
}
],
"total": 1,
"page": 1,
"totalPages": 1,
"limit": 10
}

Membuat Monitor Cron

Endpoint:

POST /monitors/cron

Contoh permintaan

{
"pageId": "page123",
"name": "Daily backup",
"period": 86400,
"grace": 3600,
"alerts": ["alert-id-1", "alert-id-2"],
"createComponent": true,
"onFail": {
"createIncident": true,
"createOutageDuration": false,
"publishIncident": true,
"notifySubscribers": true
},
"onRecover": {
"resolveIncident": true,
"resolveOutageDuration": false,
"publishIncident": true,
"notifySubscribers": true
}
}

Contoh respons

{
"cronMonitor": {
"id": "cron-abc123",
"name": "Daily backup",
"slug": "my-page-x7k2m9n4p1q8w3e5",
"period": 86400,
"grace": 3600,
"status": "UP",
"state": "ACTIVE",
"siteId": "page123",
"order": 1,
"groupId": null,
"componentId": "component-id-1",
"onFailCreateIncident": true,
"onFailCreateOutageDuration": false,
"onFailPublishIncident": true,
"onFailNotifySubscribers": true,
"onRecoverResolveIncident": true,
"onRecoverResolveOutageDuration": false,
"onRecoverPublishIncident": true,
"onRecoverNotifySubscribers": true,
"createTemplateId": null,
"resolveTemplateId": null,
"createdAt": "2024-01-15T08:00:00.000Z",
"updatedAt": "2024-01-15T08:00:00.000Z"
},
"message": "Cron monitor created successfully."
}

Respons menyertakan sebuah slug. Pakai slug itu untuk menyusun URL ping bagi pekerjaan Anda. Ping berhasil yang pertama akan menjadwalkan pekerjaan pemeriksaan latar belakang.

Memperbarui Monitor Cron

Endpoint:

PUT /monitors/cron/:id

Contoh permintaan

{
"name": "Daily backup (updated)",
"period": 43200,
"grace": 1800,
"state": "PAUSED",
"alerts": ["alert-id-1"],
"onFail": {
"notifySubscribers": false
}
}

Contoh respons

{
"cronMonitor": {
"id": "cron-abc123",
"name": "Daily backup (updated)",
"slug": "my-page-x7k2m9n4p1q8w3e5",
"period": 43200,
"grace": 1800,
"status": "UP",
"state": "PAUSED",
"siteId": "page123",
"order": 1,
"groupId": null,
"componentId": "component-id-1",
"onFailCreateIncident": true,
"onFailCreateOutageDuration": false,
"onFailPublishIncident": true,
"onFailNotifySubscribers": false,
"onRecoverResolveIncident": true,
"onRecoverResolveOutageDuration": false,
"onRecoverPublishIncident": true,
"onRecoverNotifySubscribers": true,
"createTemplateId": null,
"resolveTemplateId": null,
"alerts": [
{
"id": "alert-id-1",
"type": "EMAIL",
"recipient": "ops@example.com"
}
],
"createdAt": "2024-01-15T08:00:00.000Z",
"updatedAt": "2024-01-16T10:30:00.000Z"
},
"message": "Cron monitor updated successfully."
}

Menghapus Monitor Cron

Endpoint:

DELETE /monitors/cron/:id

Contoh permintaan

DELETE /monitors/cron/cron-abc123

Contoh respons

{
"cronMonitor": {
"id": "cron-abc123",
"name": "Daily backup",
"slug": "my-page-x7k2m9n4p1q8w3e5",
"period": 86400,
"grace": 3600,
"status": "UP",
"state": "ACTIVE",
"siteId": "page123",
"order": 1,
"groupId": null,
"componentId": "component-id-1",
"onFailCreateIncident": true,
"onFailCreateOutageDuration": false,
"onFailPublishIncident": true,
"onFailNotifySubscribers": true,
"onRecoverResolveIncident": true,
"onRecoverResolveOutageDuration": false,
"onRecoverPublishIncident": true,
"onRecoverNotifySubscribers": true,
"createTemplateId": null,
"resolveTemplateId": null,
"createdAt": "2024-01-15T08:00:00.000Z",
"updatedAt": "2024-01-15T08:00:00.000Z"
},
"message": "Cron monitor deleted successfully."
}

Mendapatkan Log Monitor Cron

Endpoint:

GET /monitors/cron/:id/logs

Parameter Query

ParameterTipeNilai BawaanDeskripsi
limitnumber100Jumlah log per halaman. Maksimum 127.
pagenumber1Nomor halaman. Maksimum 1000.
startDatestring1 tahun laluTanggal mulai ISO 8601 untuk rentang log.
endDatestringsekarangTanggal berakhir ISO 8601 untuk rentang log.
importanceenumnullSaring log berdasarkan kepentingan ('all', 'important').

Contoh permintaan

GET /monitors/cron/cron-abc123/logs?limit=50&page=1&importance=important

Contoh respons

{
"logs": [
{
"id": "log-xyz789",
"monitorId": "cron-abc123",
"status": "SUCCESS",
"requestType": "GET",
"agent": "curl/8.4.0",
"ipAddress": "203.0.113.10",
"createdAt": "2024-01-16T06:00:00.000Z",
"startedAt": "2024-01-16T05:59:58.000Z"
}
],
"page": 1
}

Mendapatkan Ringkasan Monitor Cron

Endpoint:

GET /monitors/cron/:id/summary

Contoh permintaan

GET /monitors/cron/cron-abc123/summary

Contoh respons

{
"summary": {
"totalLogs": 120,
"totalFailedLogs": 3,
"availability": 97.5,
"oneDayAvailability": 100,
"previousDayAvailability": 100,
"sevenDayAvailability": 98.2,
"previousSevenDayAvailability": 96.1,
"thirtyDayAvailability": 97.5,
"previousThirtyDayAvailability": 95.8,
"lastSuccess": "2024-01-16T06:00:00.000Z",
"lastFailure": "2024-01-10T06:00:00.000Z",
"lastStarted": null,
"upSince": "2024-01-10T07:00:00.000Z",
"downSince": null
}
}

Endpoint ping

Endpoint ini tidak memerlukan autentikasi. slug monitor berperan sebagai secret-nya.

Anda bisa melakukan ping lewat URL dasar API atau host cron khusus:

  • Berhasil: https://cron.instatus.com/{slug} atau GET / POST / HEAD /monitors/cron/{slug}
  • Gagal: https://cron.instatus.com/{slug}/fail atau GET / POST / HEAD /monitors/cron/{slug}/fail
  • Mulai: https://cron.instatus.com/{slug}/start atau GET / POST / HEAD /monitors/cron/{slug}/start

Kirim ping keberhasilan setiap kali pekerjaan Anda selesai sesuai jadwal. Kirim ping mulai sebelum pekerjaan berjalan dan ping keberhasilan atau kegagalan saat selesai untuk mencatat waktu eksekusi.

Contoh ping keberhasilan

curl https://cron.instatus.com/my-page-x7k2m9n4p1q8w3e5

Contoh respons

{
"id": "log-xyz789",
"monitorId": "cron-abc123",
"status": "SUCCESS",
"requestType": "GET",
"agent": "curl/8.4.0",
"ipAddress": "203.0.113.10",
"createdAt": "2024-01-16T06:00:00.000Z"
}

Jika slug-nya tidak valid, responsnya adalah:

{
"message": "Monitor not found"
}