se-hari.com se-hari.com

credit_cap_exceeded — Batas kredit harian API key tercapai

HTTP 403. Saldo Anda masih ada, tapi API key yang dipakai sudah menyentuh batas kredit hariannya. Batas ini Anda sendiri yang menetapkannya di dashboard…

2 menit baca Diperbarui 15 Agustus 2026 Lihat sebagai Markdown

credit_cap_exceeded adalah kode error HTTP 403 pada Se-Hari API. Saldo Anda masih ada, tapi API key yang dipakai sudah menyentuh batas kredit hariannya. Batas ini Anda sendiri yang menetapkannya di dashboard, per key.

#Bentuk responsnya

Semua error Se-Hari memakai amplop yang sama. Yang perlu dicabang di kode Anda adalah code, bukan message — teks pesan bisa kami perbaiki sewaktu-waktu, sedangkan code adalah kontrak publik yang hanya berubah lewat versi API baru.

json
{
  "error": {
    "code": "credit_cap_exceeded",
    "message": "Contoh pesan untuk credit_cap_exceeded.",
    "docs_url": "https://se-hari.com/docs/error/credit-cap-exceeded",
    "request_id": "req_a1b2c3d4e5f6",
    "details": {
      "cap": 5,
      "used_today": 5
    }
  }
}

#Kapan ini muncul

Batas ini bukan batas Se-Hari, melainkan batas yang Anda pasang sendiri pada satu API key. Karena itu kode ini tidak pernah muncul kecuali seseorang pernah memutuskan angkanya. Kalau Anda tidak ingat pernah memasangnya, kemungkinan besar key-nya dibuat orang lain di tim Anda — dan itu informasi yang berguna dengan sendirinya.

#Kenapa ini terjadi

  • Workflow memproses lebih banyak pekerjaan dari yang diperkirakan saat batas ditetapkan
  • Beberapa integrasi berbagi satu key sehingga saling menghabiskan jatah
  • Batas dipasang untuk pengujian lalu lupa dinaikkan saat masuk produksi
  • Key benar-benar bocor dan dipakai orang lain — inilah skenario yang membuat batas ini ada

#Cara memperbaikinya

Buka dashboard developer, lihat tab Aktivitas untuk memastikan pemakaiannya memang berasal dari Anda, lalu naikkan batasnya. Kalau pemakaiannya tidak Anda kenali, cabut key itu sekarang — batas harian sudah membatasi kerugiannya, dan mencabut menghentikannya sepenuhnya.

#Yang memicu error

bash
# Batas diatur 5 kredit/hari, pekerjaan butuh 20
curl -X POST "https://se-hari.com/api/v1/meetings" ...

#Yang seharusnya

bash
# Beri setiap integrasi key sendiri dengan batas yang sesuai skalanya.
# Cek pemakaian hari ini:
curl "https://se-hari.com/api/v1/credits/usage?limit=100" \
  -H "Authorization: Bearer $SEHARI_API_KEY"

#Aman diulang?

Percuma sampai batasnya diubah atau harinya berganti. Batas dihitung per hari, jadi pekerjaan yang tertunda bisa dijadwalkan ulang untuk besok kalau memang tidak mendesak — itu sering lebih tepat daripada menaikkan batas.

#Jangan tertukar dengan

Kalau saldo akun Anda yang habis, kodenya insufficient_credits, bukan ini. Cara membedakannya di lapangan: panggil GET /credits. Kalau saldonya masih besar sementara operasi tetap ditolak, batas harian key-lah yang tercapai — dan itu berarti pengaman Anda bekerja sebagaimana mestinya.

#Mencegahnya terulang

Pasang batas pada setiap key, bukan hanya pada yang terlihat berisiko. Batas harian adalah satu-satunya mekanisme yang membatasi kerugian sebuah key yang bocor tanpa Anda harus lebih dulu menyadari kebocorannya. Angkanya tidak perlu presisi — cukup beberapa kali lipat pemakaian normal, sehingga ia tidak pernah mengganggu operasi wajar tapi tetap menghentikan pemakaian yang jelas tidak wajar.

#Menangani ini di kode

Cabangkan pada error.code, dan bedakan kegagalan yang layak diulang dari yang tidak. Mengulang kegagalan yang tidak akan pernah berhasil hanya menghabiskan kuota rate limit — dan menyembunyikan kegagalan yang sebenarnya butuh perhatian Anda.

javascript
const res = await fetch('https://se-hari.com/api/v1/me', {
	headers: { Authorization: `Bearer ${process.env.SEHARI_API_KEY}` }
});

if (!res.ok) {
	const { error } = await res.json();

	if (error.code === 'credit_cap_exceeded') {
		// Buka [dashboard developer](/dashboard/developer), lihat tab Aktivitas untuk memastikan…
		console.error(error.message, error.details);
	}

	// request_id adalah satu-satunya cara kami menemukan request ini di log.
	console.error(`request_id: ${error.request_id}`);
}

#Selanjutnya

Pertanyaan umum

Apa arti error credit_cap_exceeded di Se-Hari API?

HTTP 403. Saldo Anda masih ada, tapi API key yang dipakai sudah menyentuh batas kredit hariannya. Batas ini Anda sendiri yang menetapkannya di dashboard, per key.

Apakah aman mengulang request yang gagal dengan credit_cap_exceeded?

Percuma sampai batasnya diubah atau harinya berganti. Batas dihitung per hari, jadi pekerjaan yang tertunda bisa dijadwalkan ulang untuk besok kalau memang tidak mendesak — itu sering lebih tepat daripada menaikkan batas.

Bagaimana cara memperbaiki credit_cap_exceeded?

Buka [dashboard developer](/dashboard/developer), lihat tab Aktivitas untuk memastikan pemakaiannya memang berasal dari Anda, lalu naikkan batasnya. Kalau pemakaiannya tidak Anda kenali, **cabut key itu sekarang** — batas harian sudah membatasi kerugiannya, dan mencabut menghentikannya sepenuhnya.

Siap mencoba?

Buat API key gratis di dashboard — tidak ada biaya berlangganan, kredit terpakai hanya saat Anda benar-benar memproses rekaman atau membuat meeting.

Buat API Key