Apa sebenarnya API itu
Cara paling bersih untuk memikirkan adalah sebagai daftar menu permintaan yang ditawarkan satu program ke program lain.
Sebuah restoran tidak membiarkanmu masuk ke dapur dan memasak sendiri. Mereka memberimu menu: inilah hal-hal yang bisa kamu pesan, begini cara memesannya, dan inilah yang akan kamu dapatkan. Kamu tidak perlu tahu cara kerja dapur. Kamu hanya butuh menunya. API persis seperti itu — sebuah perusahaan berkata, "inilah permintaan-permintaan yang boleh kamu ajukan ke layanan kami, dan inilah yang dikembalikan oleh masing-masing."
Saat AI menulis kode yang "memanggil API cuaca," ia sedang memesan dari menu itu: berikan saya perkiraan cuaca untuk kota ini. Server perusahaan cuaca itu melakukan pekerjaannya dan mengirim balik jawaban. Aplikasimu tidak pernah melihat atau kode mereka. Kamu hanya mendapatkan hidangannya.
┌────────────┐ request: GET /forecast?city=London ┌────────────┐
│ YOUR APP │ ─────────────────────────────────────▶ │ API │
│ (client) │ │ endpoint │
│ │ ◀───────────────────────────────────── │ (server) │
└────────────┘ response: { "temp": 14, ... } (JSON) └────────────┘
orders off does the work,
the menu sends the dish
Pergeseran pola pikir yang penting: API adalah sebuah kontrak. Perusahaan lain itu berjanji bahwa jika kamu bertanya dengan cara tertentu, kamu akan mendapat jawaban dalam bentuk tertentu pula. Tugasmu — dan tugas AI — adalah bertanya dengan benar dan membaca jawabannya dengan benar. Kebanyakan bug pada API terjadi karena salah satu pihak melanggar kontrak itu.