Dokumentasi / AI Box Dan Software Analitik Video / Mulai Cepat API Basic Safety Guard
Mulai Cepat API Basic Safety Guard
Baca indeks kepatuhan APD, pelanggaran dan log deteksi suatu lokasi dari perangkat Basic Safety Guard dengan token API, dalam tiga panggilan.
Panduan mulai cepat ini membaca angka kepatuhan APD suatu lokasi dari perangkat Basic Safety Guard. Anda memerlukan
curl dan sekitar sepuluh menit. Angka pada jawaban di bawah adalah nilai contoh.
Sebelum Anda Mulai
Mintalah Admin perangkat membuat akun API di dasbor (halaman Akun API) dengan:
- peran Pemantau di lokasi yang ingin Anda baca;
- cakupan
read(tambahkanexportuntuk mengunduh log sebagai file); - tanggal berakhir.
Admin memberikan token (<API_KEY> di bawah), alamat perangkat (<BOX_HOST>) dan salinan sertifikat perangkat
(box.pem, dari Unduh sertifikat perangkat di halaman Akun API) beserta sidik jari SHA-256-nya: periksa seperti
yang ditunjukkan Sertifikat Perangkat.
Autentikasi dan Cakupan menjelaskan masing-masing.
Cari Lokasi Anda
curl --cacert box.pem \
-H "Authorization: Bearer <API_KEY>" \
"https://<BOX_HOST>/api/v1/sites"
{
"items": [
{
"id": 1,
"name": "North Plant",
"timezone": "Asia/Jakarta",
"created": "2026-10-01T02:00:00Z",
"version": 4,
"my_role": "viewer",
"location": { "lat": -6.2, "lon": 106.8 },
"area": null,
"zones": 3
}
]
}
Jawaban hanya mencantumkan lokasi tempat akun Anda memiliki peran. Simpan id lokasi (di sini 1).
Baca Ikhtisar Kepatuhan
Mintalah satu periode dengan from dan to (RFC 3339; %2B adalah tanda + dari selisih zona waktu):
curl --cacert box.pem \
-H "Authorization: Bearer <API_KEY>" \
"https://<BOX_HOST>/api/bsg/v1/sites/1/overview?from=2026-11-01T00:00:00%2B07:00&to=2026-11-02T00:00:00%2B07:00"
{
"index": 91.4,
"assessed_minutes": 5220,
"exposure_minutes": 5710,
"items": { "hard_hat": 96.2, "vest": 93.8, "boots": null, "gloves": null, "goggles": null },
"violations": 17,
"hazard_entries": 2,
"on_site": { "people": 34, "flagged": 1 },
"target": 95,
"bands": { "red": 80, "green": 95 },
"required_items": ["hard_hat", "vest"],
"unique_people": { "period": 52, "now": 9 }
}
| Kolom | Arti |
|---|---|
index |
Porsi waktu yang dinilai saat orang memakai semua item wajib, 0 sampai 100 (null bila tidak ada yang dinilai) |
assessed_minutes, exposure_minutes |
Menit-orang yang dinilai, dan menit-orang dengan item wajib yang tidak dipakai |
items |
Untuk setiap item, porsi waktu item itu terlihat dan dipakai (null bila tidak pernah terlihat) |
violations |
Pelanggaran dalam periode |
hazard_entries |
Masuk ke area bahaya dalam periode |
on_site |
Orang di area APD dalam 30 detik terakhir, dan berapa di antaranya yang tidak memakai item wajib |
target, bands |
Target lokasi dan batas rentang merah dan hijaunya |
required_items |
APD yang diwajibkan lokasi |
unique_people |
Orang yang terlihat di kamera-kamera lokasi, masing-masing dihitung sekali: dalam periode, dan dalam satu menit terakhir |
Untuk angka yang sama per jam atau hari, panggil GET /api/bsg/v1/sites/1/trend; per area APD,
GET /api/bsg/v1/sites/1/areas. Untuk orang unik per jam, panggil
GET /api/bsg/v1/sites/1/people dengan from dan to yang sama.
Baca Log Deteksi
curl --cacert box.pem \
-H "Authorization: Bearer <API_KEY>" \
"https://<BOX_HOST>/api/bsg/v1/sites/1/logs?from=2026-11-01T00:00:00%2B07:00&to=2026-11-02T00:00:00%2B07:00&limit=50"
{
"named": false,
"next_before": "2026-11-02T01:12:40Z",
"items": [
{
"track": "11:4821",
"camera_id": 11,
"first": "2026-11-02T01:14:05Z",
"last": "2026-11-02T01:15:32Z",
"areas": ["Loading Bay"],
"items": { "hard_hat": 100, "vest": 38.5, "boots": null, "gloves": null, "goggles": null },
"index": 69.2,
"violations": 1,
"person": null,
"evidence": null
}
]
}
Setiap baris adalah satu orang yang terlihat oleh satu kamera. Tanpa cakupan personal_data, log berbentuk anonim:
named bernilai false, serta person dan evidence bernilai null. Untuk halaman berikutnya, kirim next_before
sebagai before.
Untuk mengunduh periode itu sebagai file, panggil GET /api/bsg/v1/sites/1/logs/export?format=csv dengan cakupan
export.
Langkah Berikutnya
- Pelanggaran yang terbuka muncul sebagai peringatan:
GET /api/v1/alerts?site=1&state=open. - Kirim ke sistem Anda tanpa perlu menanyakan berulang kali: Webhook (jenis peristiwa
bsg.violationdanbsg.hazard_entry, serta ringkasan berkala angka ini). - Setiap operasi dan kolom: referensi API Basic Safety Guard dan referensi API platform.
1.0.0. Diperbarui 2026-11-06