Analisis Mendalam tentang Kode Status API, Kode Kesalahan, dan Pernyataan: Kunci untuk Mengoptimalkan Panggilan API
Artikel ini menyelami kode status API, kode kesalahan, dan pernyataan, serta bagaimana mereka menentukan kesuksesan atau kegagalan panggilan API. Dengan elemen ini, pengembang dapat mendiagnosis dan memperbaiki masalah dengan lebih baik saat berinteraksi dengan API.
"Kode status HTTP 200? Bagus! Tunggu... mengapa saya mendapatkan pesan kesalahan?!"
Selamat datang di dunia yang menipu dari kode status dan kode kesalahan—di mana kesuksesan tidak selalu seperti yang terlihat, dan lampu hijau tidak berarti Anda telah mencapai tujuan.
Panduan ini adalah peta jalan Anda melalui labirin:
- Berhenti pertama: Apa sih kode status itu sebenarnya? (Hint: seperti kurir berteriak "Paketnya disampaikan!" atau "Alamat tidak ditemukan!" di depan pintu Anda.)
- Kemudian kami menyelami kode kesalahan—gremlin cryptic kecil di tubuh respons yang mengatakan, "Tidak, permintaan Anda secara teknis berhasil, tetapi sebenarnya gagal."
- Dan akhirnya, temui teman terbaik baru Anda: pernyataan. Pikirkan mereka sebagai detektor kebohongan API Anda—mendeteksi kegagalan tersembunyi bahkan ketika segalanya terlihat baik-baik saja.
Pada akhirnya, Anda akan tahu bagaimana cara mengetahui jika API Anda benar-benar bekerja, atau hanya pura-pura seperti siswa yang mengatakan "hadir" di kelas sambil diam-diam keluar dari jendela.
Berhenti Pertama: Apa Itu Kode Status?

Bayangkan mengirim paket. Pembaruan kurirnya sangat blak-blakan:
- "Dikirim." (200)
- "Alamat tidak ditemukan." (404)
- "Anda tidak diizinkan mengirim ini." (403)
- "Gudang kami meledak." (500)
Itulah yang dilakukan kode status HTTP — server ramah (atau tidak begitu ramah) berteriak balik bagaimana permintaan Anda berjalan pada tingkat teknis.
Kode Status HTTP Umum:
Kode Status | Arti | Contoh Dunia Nyata |
---|---|---|
200 | OK, permintaan berhasil | Login berhasil, data diambil |
201 | Dibuat | Pengguna atau pesanan baru dibuat |
204 | Tidak Ada Konten | Penghapusan berhasil, tidak perlu membalas |
400 | Permintaan Buruk | Bidang hilang, format tidak valid |
401 | Tidak Berizin | Token hilang atau kadaluwarsa |
403 | Dilarang | Anda bukan admin, teman |
404 | Tidak Ditemukan | ID Pengguna? Ya, itu tidak ada |
500 | Kesalahan Server Internal | Kebangkrutan basis data, kode panik, dll. |
💡 Pikirkan kode status sebagai lampu lalu lintas — mereka memberi tahu Anda jika jalan bebas hambatan, tetapi tidak memberi tahu Anda bagaimana isi bagasi.
Berhenti Kedua: Jadi... Apa Itu Kode Kesalahan?

Anda memanggil API. Kode statusnya 200. Anda mengangguk. "Bagus, semua hijau."
Anda melihat ke tubuh respons — dan boom:
{
"error": true,
"internalError": false,
"code": 106,
"message": "Tidak ada lelucon yang cocok ditemukan",
"causedBy": [
"Tidak ada lelucon yang ditemukan yang cocok dengan filter yang Anda berikan."
]
}
Tunggu, apa?! "Saya pikir 200 berarti sukses!"
Twist alur cerita: itu secara teknis berhasil.
Bom Kebenaran: HTTP Status ≠Kesuksesan Bisnis
Kode status HTTP (200, 404) hanya amplopnya.
Mereka memberi tahu Anda server menerima permintaan Anda dan merespons — tidak memberi tahu Anda apakah permintaan Anda masuk akal.
- âś…
kode status = 200
: Selamat! Servernya hidup dan merespons. - ❌
kode = INVALID_REQUEST
: Oops. Datanya salah, logika bisnis Anda gagal.
Kode status HTTP adalah orang penjaga pintu. Kode kesalahan bisnis adalah manajer perekrutan. Anda masuk pintunya… tetapi tetap ditolak.
Jadi, Apa Itu Kode Kesalahan?
Kode kesalahan dibuat khusus oleh pengembang backend untuk mewakili kegagalan logika bisnis.
Pikirkan: gagal login, produk kehabisan stok, kartu kredit kedaluwarsa — semacam kekacauan kehidupan nyata.
Tim yang berbeda mendefinisikan kode yang berbeda — tetapi inilah yang biasanya ada:
Kode Kesalahan Bisnis Umum
Kode Kesalahan | Ditemukan di | Arti |
---|---|---|
INVALID_REQUEST |
Umum | Bidang hilang, jenis salah |
UNAUTHORIZED |
Umum | Pengguna tidak login, token tidak valid |
FORBIDDEN |
Umum | Anda tidak memiliki izin |
NOT_FOUND |
Umum | Sumber daya tidak ada |
CARD_EXPIRED |
PayPal | Kartu Anda sudah waktunya tidur |
INSUFFICIENT_FUNDS |
PayPal | Uang tidak cukup, waktunya panik |
INVALID_ARGUMENT |
Google APIs | Argumen di luar jangkauan, atau format salah |
ALREADY_EXISTS |
Google APIs | Sumber daya sudah ada |
PERMISSION_DENIED |
Google APIs | Anda tidak diizinkan mengakses itu |
đź§ľ Contoh Respons Kesalahan
Gaya Stripe:
{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"message": "Tidak ada pelanggan seperti: 'cus_123'"
}
}
Gaya PayPal:
{
"name": "CARD_EXPIRED",
"message": "Kartu tersebut telah kedaluwarsa.",
"details": [
{
"field": "/payment_source/card/expiry",
"issue": "CARD_EXPIRED"
}
]
}
Tapi Bagaimana Jika Tidak Ada Kode Kesalahan Standar?
Terkadang tim backend hanya… mencoba. Atau tidak ada dokumen bersama.
Berikut yang dapat Anda lakukan:
- Tanyakan kepada backend Anda: "Yo, ada dokumen kode kesalahan global tidak?"
- Tulis pernyataan untuk menangkap masalah berulang.
- Dorong strategi kode kesalahan yang tepat dalam tim Anda — percayalah, masa depan Anda akan berterima kasih.
⚡ Kode status HTTP memberi tahu Anda jika listriknya menyala. Kode kesalahan memberi tahu Anda jika lampunya benar-benar menyala.
Kode Status vs Kode Kesalahan: Mengenal Lapisan
Lapisan | Didefinisikan oleh | Tujuan | Contoh |
---|---|---|---|
Kode Status | Standar HTTP (IETF) | Permintaan secara teknis berhasil? | 200, 404, 500 |
Kode Kesalahan | Anda / Perusahaan Anda | Logika bisnisnya berhasil? | CARD_EXPIRED, PERMISSION_DENIED |
đź’ˇ Kode status = "Liftnya berhasil bekerja?"
Kode kesalahan = "Apakah Anda sampai di lantai yang benar?"
Berhenti Terakhir: Mengapa Pernyataan Adalah Senjata Rahasia Anda

Mengapa Pernyataan?
Karena…
- Anda tidak dapat mempercayai kode status saja
- Anda perlu menangkap kegagalan diam-diam secara otomatis
- Anda ingin mendeteksi regresi dengan cepat
- Dan yang sebenarnya: memeriksa JSON dengan mata telanjang itu menyakitkan
Bagaimana EchoAPI Membantu Anda Menulis Pernyataan Seperti Profesional
Atur peraturan pernyataan kustom seperti:

Dapatkan umpan balik visual instan tentang sukses atau gagal:

Mengapa Pernyataan Adalah Bodyguard API Anda
Pernyataan seperti kacamata röntgen untuk API Anda. Mereka menangkap:
1. Kegagalan diam-diam di balik kode status hijau
Hanya karena itu mengatakan 200 OK
tidak berarti login Anda berhasil.
Pernyataan memungkinkan Anda memverifikasi bidang utama seperti error = false
, data != null
, atau code == 0
.
2. Menguji secara massal tanpa kehilangan akal sehat Anda
Menjalankan 50 API secara manual adalah mimpi buruk.
Dengan pernyataan + otomatisasi:
- Jalankan tes secara massal
- Lihat tepatnya langkah mana yang gagal, dan mengapa
- Sisipkannya ke CI/CD, dapatkan peringatan seketika saat sesuatu rusak
3. Menangkap perubahan nama bidang yang licik
Backend Anda diam-diam mengubah nama userName
menjadi username
.
Terlihat seperti 200
, bau kesuksesan — tetapi frontend Anda rusak.
Pernyataan menangkapnya.
Anda tertawa sementara yang lain menangis.
Pernyataan = alarm kebakaran API + detektor kebohongan, semua dalam satu.
Tanpa Pernyataan vs Dengan Pernyataan
Fitur | Hanya Periksa Status | Gunakan Pernyataan âś… |
---|---|---|
Mendeteksi kegagalan logika bisnis | ❌ Tidak | ✅ Ya |
Mendeteksi kesalahan secara otomatis | ❌ Manual saja | ✅ Otomatis |
Jalankan tes massal | ❌ Melelahkan | ✅ Satu klik |
Mendeteksi perubahan nama bidang | ❌ Harus squint | ✅ Peringatan instan |
Validasi sebelum rilis | ❌ Harapkan yang terbaik | ✅ Disetujui CI |
Kesimpulan
Kode status adalah penjaga pintu — mereka memberi tahu Anda jika Anda masuk ke gedung.
Kode kesalahan adalah resepsionis — mereka memberi tahu Anda jika janji temu Anda berhasil.
Pernyataan adalah bodyguard — mereka memastikan tidak ada yang berbohong kepada Anda.