API Action builder Quickchat AI menghubungkan AI agent Anda ke REST API dari satu kalimat bahasa sederhana. Anda menjelaskan API yang ingin dipanggil, misalnya “cari status pengiriman pesanan dan beri tahu pelanggan kapan pesanan akan tiba”, lalu LLM dengan pencarian web membaca dokumentasi langsung API tersebut dan menyusun action lengkap yang berfungsi, mengisi method, URL, header, parameter, dan deskripsi yang memberi tahu agent Anda kapan menggunakannya. Builder mengutip dokumentasi yang dibacanya, dan ketika tidak dapat mengonfirmasi endpoint nyata, builder mengatakannya, bukan menebak.
Panduan ini membuat dua action langsung dari dua kalimat yang diketik, pada akun gratis, dan membuktikan keduanya dengan panggilan nyata yang dicatat di Inbox. Selama prosesnya, panduan ini menjelaskan apa sebenarnya arti panggilan API bagi agent Anda dan apa itu “function calling”, yaitu mekanisme yang menjalankan fitur ini.
Semua yang ada di bawah ini dibuat dan diuji pada agent nyata. Setiap tangkapan layar, field yang dibuat, dan panggilan API berasal dari build tersebut, dan Anda dapat mereproduksi semuanya.
Hasil akhir: seorang traveler bertanya tentang akhir pekan, agent memanggil API cuaca di tengah percakapan dan menjawab dengan angka langsung.
Yang akan Anda buat
Agent support untuk Wanderlark Tours, operator hiking pegunungan Alpen kelompok kecil fiktif, yang menjawab dari pengetahuannya dan memanggil dua API nyata di tengah percakapan. Membuat keduanya, mengujinya, dan melihat panggilan langsung membutuhkan sekitar lima belas menit:
- Lookup prakiraan cuaca terhadap Open-Meteo, dibuat dari satu kalimat. Tanpa key, jadi Anda dapat menyelesaikannya hanya dengan akun Quickchat.
- Astronomy Picture of the Day NASA terhadap api.nasa.gov, untuk add-on pengamatan bintang Wanderlark. Yang ini memerlukan API key, dan itulah alasan action ini disertakan: action ini mengajarkan alur placeholder
[[secret]], saat aktivasi tetap diblokir sampai Anda menempelkan key.
Anda juga akan mengetik kalimat yang sengaja ditolak oleh builder, karena melihat cara kegagalannya adalah bagian dari memahami kapan builder dapat dipercaya.
Yang Anda butuhkan:
- Akun Quickchat AI gratis (daftar di sini).
- Tanpa kode, tanpa server. Untuk action kedua, API key NASA: NASA mengoperasikan
DEMO_KEYbersama dengan batas rate untuk mencoba, yang digunakan dalam tangkapan layar, dan menerbitkan key pribadi secara instan di api.nasa.gov.
Apa arti AI agent memanggil API?
Agent yang dapat memanggil API dapat mengambil atau mengubah hal di sistem nyata di tengah percakapan, lalu menjawab dengan hasilnya. Chatbot dapat menjelaskan bisnis Anda; agent yang memanggil API dapat bertindak di dalamnya.
Dari sisi pengguna akhir, tidak ada yang berubah kecuali jawabannya. Seorang traveler bertanya “bagaimana cuaca di Interlaken pada hari Sabtu?” dan melihat indikator mengetik selama beberapa detik, lalu balasan dengan suhu aktual. Mereka tidak melihat tool, request, atau payload JSON. Dua detik di antaranya terlihat seperti ini:
Traveler melihat pertanyaan dan jawaban. Di antaranya, model memilih action, mengisi nilainya, dan Quickchat membuat HTTP request nyata: 280 ms dari sekitar dua detik.
Anda bahkan dapat mengatur apa yang dilihat pengunjung selama jeda tersebut. Setiap action dapat membawa thinking message, baris singkat yang ditampilkan website widget menggantikan “Thinking…” generiknya saat panggilan berjalan. Action prakiraan Wanderlark menetapkannya, sehingga inilah yang sebenarnya dilihat traveler selama dua detik tersebut:
Tampilan sisi traveler, saat panggilan berlangsung: baris thinking kustom berkilau di tempat balasan akan muncul. Anda akan mengatur baris ini di editor action nanti.
Tidak ada bagian dari ini yang spesifik untuk cuaca. Sistem apa pun yang mengekspos HTTP API dapat berada di ujung lain sebuah action: database pesanan Anda, sistem booking, CRM, tool ticketing, platform messaging. Lookup menjawab pertanyaan dengan data langsung; operasi tulis mengubah sesuatu dan meninggalkan catatan.
Setiap tile adalah satu HTTP request yang dideskripsikan. Panduan ini membuat dua lookup; pola tulis dibahas dalam panduan yang ditautkan di akhir.
Secara historis, kendalanya adalah menyambungkan salah satu dari ini berarti membaca docs API dan mengisi request secara manual. Bagian itulah yang dihilangkan builder.
Bagaimana cara kerja builder action bahasa sederhana?
Anda menjelaskan API dalam satu kalimat, dan LLM dengan pencarian web langsung mengubah kalimat itu menjadi action lengkap. LLM mencari dokumentasi API saat membuat, menyusun method, URL, header, query parameter, dan deskripsi yang memberi tahu agent kapan memanggilnya, lalu mengembalikan hasil dengan tautan ke halaman docs yang dibacanya. Pembuatan memerlukan sekitar setengah menit, dan hasilnya terbuka dalam dialog saat siap.
Builder hanya mengirimkan hal yang dikonfirmasi dalam docs. Apa pun yang tidak dapat dikonfirmasi menjadi placeholder atau penolakan, bukan tebakan.
Tiga properti membuatnya aman digunakan:
- Tidak ada yang berjalan sampai Anda mengaktifkannya. Setiap action yang dibuat tiba dalam keadaan nonaktif, untuk Anda tinjau.
- Hal yang tidak diketahui menjadi placeholder, bukan tebakan. Nilai yang harus diisi model per panggilan (tanggal, kota) menjadi blank
{{param}}; konstanta yang hanya Anda ketahui (API key) menjadi blank[[secret]], dan aktivasi diblokir sampai Anda menggantinya. - Builder menunjukkan pekerjaannya. Hasil mencantumkan halaman dokumentasi yang dibaca, masing-masing dengan catatan tentang apa yang dikonfirmasi halaman itu, sehingga tinjauan dimulai dari bukti, bukan kepercayaan:
Sitasi dari pembuatan kedua atas kalimat cuaca yang sama dan digunakan nanti dalam panduan ini: halaman docs plus bagian API-nya, masing-masing dengan apa yang dikonfirmasi builder di sana.
Langkah 1: Buat agent perjalanan
Buat agent terlebih dahulu agar action memiliki pemilik. Setelah mendaftar, beri nama agent (build ini menggunakan Wanderlark) dan berikan tugasnya di field AI Main Prompt di bawah Identity pada dashboard:
Anda adalah asisten untuk Wanderlark Tours, operator tur hiking pegunungan Alpen kelompok kecil. Wanderlark menjalankan tiga tur berpemandu: Interlaken Classic, Zermatt Highline, dan Dolomites Traverse, plus add-on pengamatan bintang Dark-Sky Nights. Bantu traveler memilih tur, memahami tanggal, harga, tingkat kesulitan, dan apa yang harus dibawa, serta menjawab pertanyaan booking dan pembatalan. Bersikap hangat, praktis, dan ringkas, serta pertahankan jawaban tetap singkat.
Jawab hanya dari hal yang benar-benar Anda ketahui tentang Wanderlark. Jika Anda tidak memiliki detail, katakan bahwa Anda tidak memilikinya dan tawarkan untuk menghubungkan mereka dengan tim Wanderlark, bukan menebak.
Kemudian tambahkan beberapa fakta di bawah Knowledge Base agar agent memiliki bahan jawaban. Demo menggunakan lima artikel singkat (tur dan harga, add-on Dark-Sky Nights, booking dan pembatalan, perlengkapan, titik temu); teks lengkapnya ada di blok salinan di dekat akhir. Kita memperluas prompt ini dengan dua baris khusus action setelah action ada. Jika Anda menginginkan panduan dari nol untuk prompt dan knowledge, post resep utama yang ditautkan di bawah menjelaskannya langkah demi langkah.
Langkah 2: Jelaskan API dalam satu kalimat
Di sidebar, buka Actions & MCPs, klik Add Action, dan pilih API Action, item pertama di menu.
Custom action berada di bawah Actions & MCPs. Item API Action membuka dialog untuk mendeskripsikannya.
Dialog yang terbuka meminta Anda menjelaskan API yang harus dipanggil action ini, dan menyebutkan endpoint atau menautkan docs-nya. Berikut kalimat persis untuk action cuaca:
Dapatkan prakiraan cuaca harian untuk suatu tempat dari Open-Meteo API (docs: https://open-meteo.com/en/docs) sehingga ketika traveler bertanya seperti apa cuaca di salah satu destinasi kami, agent dapat menjawab dengan suhu nyata dan peluang hujan untuk hari yang mereka tanyakan.
Satu kalimat: API mana, tautan docs, kapan agent harus menggunakannya, dan apa yang harus dilakukan dengan hasilnya.
Kalimat itu membawa tiga hal yang dibutuhkan deskripsi yang baik:
- API, endpoint, atau URL docs yang konkret. “Open-Meteo API” plus tautan docs memberi builder sesuatu yang nyata untuk dibaca. Tanpanya, Anda mendapat penolakan, bukan action.
- Kapan agent harus menggunakannya. “Ketika traveler bertanya seperti apa cuaca” masuk, hampir verbatim, ke deskripsi yang memicu action nanti.
- Apa yang harus dilakukan dengan hasilnya. “Menjawab dengan suhu nyata dan peluang hujan” membentuk cara agent menggunakan respons.
Field ini menerima hingga 500 karakter, lebih banyak dari yang dibutuhkan deskripsi yang baik; setiap kalimat dalam panduan ini muat dengan banyak sisa ruang.
Klik Submit. Dialog ditutup, toast memberi tahu Anda bahwa action sedang disiapkan, dan sekitar setengah menit kemudian dialog hasil terbuka sendiri:
Seluruh alur secara real time, dengan waktu tunggu dipotong: deskripsikan, kirim, dan tinjau hasil yang kembali.
Apa isi action yang dibuat?
Dialog hasil adalah permukaan tinjauan. Di kiri, kartu pratinjau action baru, persis seperti akan muncul di halaman Actions Anda. Di kanan, Details: builder menjelaskan apa yang dibuat, nilai mana yang diisi model saat runtime, dan apa yang diasumsikan ketika kalimat Anda menyisakan hal terbuka. Di bawahnya, Sources: dokumentasi yang dibaca, sebagai tautan.
Builder menjelaskan pekerjaannya field demi field. Saat dialog digulir, bagian Sources mencantumkan apa yang dibaca untuk action ini: halaman docs Open-Meteo dan spesifikasi OpenAPI proyek di GitHub, masing-masing dengan catatan tentang apa yang dikonfirmasi.
Untuk kalimat cuaca, builder membuat action bernama get_open_meteo_daily_forecast (nama builder terlihat seperti ditulis engineer; Anda dapat mengganti nama di editor). Klik Edit Action pada pratinjau untuk melihat setiap field yang diisinya:
Semua yang dimiliki action yang dibuat manual, sudah terisi: nama, tabel parameter di bawah “What to ask the user first”, dan endpoint.
Dibaca dari atas ke bawah:
- API Action Name: yang dilihat model sebagai nama tool.
- What to ask the user first: tabel parameter. Builder mendeklarasikan tujuh parameter, masing-masing dengan tipe dan deskripsi:
latitude,longitude,timezone,start_date,end_date, plus unit opsional. Ini adalah nilai{{param}}yang diisi model per panggilan. Perhatikan yang tidak ada di sini: tidak ada parameter “city”. Builder menyambungkan endpoint sebagaimana Open-Meteo benar-benar bekerja, berdasarkan koordinat, dan menyerahkan geografi kepada model. Kita akan melihatnya mengisi koordinat tersebut dengan benar sebentar lagi. - API Endpoint:
GET https://api.open-meteo.com/v1/forecast, dengan query parameter tersambung. Nilai tetap tetap literal, seperti daftardailyvariabel prakiraan yang dipilih builder; nilai yang diisi model muncul sebagai chip{{...}}berwarna.
Bagian tetap tetap tetap; chip berwarna adalah blank yang diisi model. Chip adalah legenda UI sendiri untuk asal nilai.
Tab keempat editor endpoint, Test Response, menjalankan request nyata sebelum action bertemu pengunjung. Setiap parameter mendapat field “Your test value”; isi dengan nilai yang masuk akal, tekan tombol play (“Test the API”), dan respons aktual kembali dengan kode statusnya. Toggle Show cURL menampilkan, dengan kata-katanya sendiri, “the exact HTTP request that would be triggered when this AI Action runs with these parameters”. Berikut pengujian build ini, dengan koordinat Interlaken lagi:
200 nyata dari Open-Meteo, dijalankan dari dalam editor, dengan request yang terselesaikan dituliskan di bawahnya. Tinjau, uji, lalu aktifkan.
- API Action Description: kalimat yang menentukan kapan agent mengambil action ini. Builder menuliskannya dari klausa “ketika traveler bertanya” Anda. Field ini melakukan pekerjaan terbesar saat runtime, dan merupakan hal pertama yang perlu disesuaikan jika agent pernah menjalankan action pada momen yang salah.
- Thinking message: baris sisi traveler dari linimasa sebelumnya. Editor mendeskripsikannya sebagai “a thinking preloader that will be displayed to the user when this action is invoked”; action prakiraan Wanderlark menetapkannya menjadi “Checking the live forecast for you…”.
Action tiba dalam keadaan nonaktif. Buka di editor dan Quickchat menampilkan banner yang mengatakan action nonaktif, dengan tombol Enable; atau balik sakelar pada kartunya di halaman Actions. Karena tidak ada yang perlu diisi untuk yang ini, action langsung aktif.
Tinjau dahulu, lalu aktifkan. Tidak ada yang memanggil apa pun sampai Anda melakukannya.
Jika Anda lebih suka membuat action yang sama ini secara manual, field demi field, dan memahami setiap kotak dari prinsip pertama, itu ada di panduan utama: Build a Free AI Agent That Takes Actions. Builder dan editor manual menghasilkan jenis action yang sama; post ini adalah jalur yang dibuat otomatis.
Langkah 3: Uji dan lihat panggilan terjadi
Ajukan pertanyaan kepada agent yang seharusnya memicu action. Transkrip di sini dijalankan melalui pipeline pengujian Quickchat dan dicatat di Inbox seperti percakapan apa pun; pada akun Anda, panel AI Preview di sidebar memberi Anda loop yang sama di browser.
Pesan pengujian:
Hai! Kami mengikuti Interlaken Classic akhir pekan depan. Seperti apa cuaca di Interlaken pada Sabtu 25 Juli dan Minggu 26 Juli?
Agent menjawab dengan prakiraan nyata: sekitar 27,7°C dan hampir tanpa hujan untuk Sabtu, lebih sejuk dengan kemungkinan hujan hingga 18 mm untuk Minggu, plus saran perlengkapan yang diambil dari knowledge-nya.
Buktinya ada di Inbox. Di bawah balasan agent ada penanda “1 action called”; perluas dan Anda mendapat catatan lengkap tentang yang terjadi:
Catatan panggilan: get_open_meteo_daily_forecast, HTTP 200 dalam 280 ms, dan setiap nilai yang diisi model.
Baca parameter yang dipilih model: latitude: 46.6863, longitude: 7.8632, timezone: Europe/Zurich, start_date: 2026-07-25, end_date: 2026-07-26. Tidak ada yang mengetik koordinat. Traveler mengatakan “Interlaken”, dan model menerjemahkannya menjadi nilai yang dibutuhkan API, cukup presisi untuk mengenai kota tersebut. Itulah separuh penilaian sistem yang melakukan tugasnya; separuh deterministiknya (URL, method, daftar variabel daily tetap) keluar persis seperti yang ditinjau.
Apa itu function calling pada AI agent?
Bukti di atas adalah gambaran mekanisme yang industri sebut function calling: language model, di tengah percakapan, memilih untuk mengeluarkan panggilan terstruktur ke tool yang telah ditentukan, bukan kalimat, platform menjalankannya, dan model melanjutkan dengan hasil di tangan.
Function calling pada panggilan nyata panduan ini. Model hanya pernah menghasilkan nilai terstruktur; platform memiliki request; API adalah HTTP biasa.
Beberapa hal mengikuti dari diagram:
- Model memutuskan, platform menjalankan. Model tidak pernah mengirim byte ke Open-Meteo. Model menghasilkan
{"latitude": 46.6863, ...}dan Quickchat memasukkan nilai tersebut ke request yang Anda tinjau. Bagian yang Anda tetapkan, URL, method, secret apa pun, bukan milik model untuk diubah. - “Tool calling” adalah hal yang sama. Kedua nama tersebut mendeskripsikan satu mekanisme; tool calling adalah istilah yang lebih baru dan lebih umum. AI Action adalah definisi tool: nama, deskripsi, dan tabel parameternya adalah persis yang dibaca model saat memutuskan apakah dan bagaimana memanggilnya. Karena itu field deskripsi sangat penting. Secara konsep, seluruh definisi yang dilihat model kurang lebih seperti ini:
name: get_open_meteo_daily_forecast
description: Gunakan action ini ketika traveler bertanya seperti apa cuaca pada hari-hari mendatang tertentu di sebuah destinasi...
parameters: latitude (number, required), longitude (number, required), timezone (text, required), start_date (text, required), end_date (text, required), temperature_unit (text), precipitation_unit (text)
- Sisi API adalah hal biasa. Open-Meteo tidak menambahkan dukungan AI untuk ini. Endpoint apa pun yang berbicara HTTP dan mengembalikan JSON dapat menjadi tool, karena itulah resep satu kalimat ini berlaku umum untuk backend Anda sendiri.
Setiap keluarga model besar mendukung mekanisme ini. Yang berbeda antar platform adalah siapa yang menulis definisi tool. Di platform developer dan custom GPT actions, itu adalah Anda, secara manual, dalam sebuah schema. Builder yang Anda gunakan di Langkah 2 adalah function calling dengan penulisan schema dihilangkan: kalimat Anda menjadi definisi tool. Untuk sudut pandang engineering tentang lanskap ini, dari protokol seperti MCP hingga endpoint kustom, lihat APIs for AI Agents: From MCP to Custom Endpoints.
Langkah 4: API yang memerlukan key
Sebagian besar API nyata menginginkan kredensial. Di sinilah jenis placeholder kedua milik builder masuk, dan add-on pengamatan bintang Wanderlark memberi kita alasan yang alami: tamu di Dark-Sky Nights senang bertanya tentang Astronomy Picture of the Day NASA.
Buka Add Action, pilih API Action lagi, dan jelaskan, kali ini beri tahu builder dari awal bahwa Anda akan menyediakan key:
Ambil Astronomy Picture of the Day NASA dari NASA APOD API (GET https://api.nasa.gov/planetary/apod) sehingga tamu yang penasaran tentang add-on Dark-Sky Nights kami dapat bertanya tentang gambar astronomi unggulan malam ini dan mendengar judulnya serta apa yang ditampilkannya. Saya akan menyediakan NASA API key saya sendiri.
Mengatakan “Saya akan menyediakan API key saya sendiri” memberi tahu builder untuk meninggalkan blank yang bersih, bukan menebak auth.
Setengah menit kemudian dialog hasil terbuka, dan terlihat berbeda pada satu hal penting: panel amber berjudul “Replace before activating”, yang mencantumkan persis satu hal: [[nasa_api_key]]. Kartu pratinjau membawa badge merah Incomplete, dan sakelar aktivasinya mati serta tetap mati.
Builder menyambungkan seluruh action dan menyisakan satu blank yang tidak dapat diisinya: key Anda. Sampai Anda menggantinya, action tidak dapat diaktifkan.
Di halaman Actions, sakelar benar-benar dinonaktifkan, dengan tooltip yang menjelaskan alasannya:
Aktivasi diblokir di level platform selama ada [[secret]] yang tersisa. Action dengan placeholder di tempat key tidak dapat gagal pada pukul 3 pagi, karena tidak dapat berjalan.
Kedua jenis placeholder memiliki pemilik berbeda:
Satu URL, kedua jenis: {{date}} adalah blank milik model, diisi per panggilan dari percakapan; [[nasa_api_key]] adalah milik Anda, ditempel sekali.
Sekarang isi. NASA menerbitkan key pribadi secara instan (nama dan email di api.nasa.gov, key tiba melalui email), dan mendokumentasikan DEMO_KEY bersama untuk mencoba, yang digunakan build ini:
- Pada kartu action, klik Edit Action, lalu buka tab Query Params pada bagian API Endpoint.
- Baris
api_keyberisi chip amber[[nasa_api_key]]. Klik ke nilai, lalu ganti dengan key Anda. - Klik Save changes.
Placeholder adalah nilai biasa yang dapat diedit. Ganti dan simpan.
Lalu perhatikan apa yang tidak perlu Anda lakukan: membalik sakelar. Ketika penyimpanan pertama kali membuat action read-only GET lengkap dan valid, Quickchat mengaktifkannya untuk Anda. Action yang menulis (POST, PUT, PATCH, DELETE) tidak pernah melakukan ini; action tersebut menunggu aktivasi sengaja, yang merupakan default yang tepat untuk apa pun yang mengubah data.
Tempel, simpan, dan lookup read-only aktif sendiri. Action tulis selalu menyerahkan keputusan akhir kepada Anda.
Uji dengan cara yang sama seperti prakiraan:
Kami menambahkan add-on Dark-Sky Nights ke perjalanan Zermatt Highline kami. Tentang apa gambar astronomi malam ini?
Agent mengambil gambar malam ini, “Shadow and Rainbow”, dan merangkum apa yang ditampilkannya.
Dan buktinya lagi, di Inbox:
HTTP 200 dari api.nasa.gov. Satu-satunya nilai yang diisi model adalah tanggal, dibiarkan kosong agar NASA default ke hari ini. Key tidak ada di catatan ini: key bukan parameter, sehingga tidak pernah menjadi milik model untuk diisi atau diungkap.
Apa yang terjadi ketika builder tidak dapat menemukan API?
Builder tidak selalu menghasilkan action, dan itu disengaja. Ketik kalimat yang menjelaskan perilaku tetapi tidak menyebut API:
Biarkan agent saya membantu traveler menjadwalkan ulang tur mereka ketika cuaca terlihat buruk.
Builder mencari, tidak menemukan satu API yang dapat dipilih secara bertanggung jawab untuk Anda, dan kembali dengan dialog berbeda: “We need a bit more detail”. Tidak ada action yang dibuat. Panel Details menjelaskan persis apa yang kurang (penyedia cuaca mana? sistem booking mana?) dan memodelkan rumusan ulang, sampai ke contoh kalimat dengan endpoint konkret di dalamnya.
Penolakan dengan perangkat perbaikan: apa yang ambigu, mengapa menebak akan salah, dan contoh kalimat yang akan berfungsi.
Ada jenis penolakan kedua. Jelaskan sesuatu yang sudah dilakukan Quickchat secara native:
Alihkan percakapan ke pemandu manusia ketika traveler tampak frustrasi atau meminta berbicara dengan seseorang.
Builder mengenali ini sebagai wilayah bawaan dan, alih-alih membungkus API eksternal di sekitar masalah yang sudah terselesaikan, mengarahkan Anda ke fitur tersebut, dengan tombol Set up Human Handoff langsung di dialog:
Tidak setiap kapabilitas harus menjadi action kustom. Eskalasi ke manusia sudah bawaan, dan builder mengarahkan Anda ke sana, bukan menggandakannya.
Kalimat dan pengaturan persis untuk disalin
Semua yang digunakan demo, di satu tempat. Dua kalimat yang membuat action:
Dapatkan prakiraan cuaca harian untuk suatu tempat dari Open-Meteo API (docs: https://open-meteo.com/en/docs) sehingga ketika traveler bertanya seperti apa cuaca di salah satu destinasi kami, agent dapat menjawab dengan suhu nyata dan peluang hujan untuk hari yang mereka tanyakan.
Ambil Astronomy Picture of the Day NASA dari NASA APOD API (GET https://api.nasa.gov/planetary/apod) sehingga tamu yang penasaran tentang add-on Dark-Sky Nights kami dapat bertanya tentang gambar astronomi unggulan malam ini dan mendengar judulnya serta apa yang ditampilkannya. Saya akan menyediakan NASA API key saya sendiri.
AI Main Prompt, termasuk dua baris action yang ditambahkan setelah action ada. Menyebut nama action dan momen trigger-nya dalam prompt membuat eksekusi terasa jauh lebih andal, dan nama action yang digunakan adalah nama yang dibuat yang Anda lihat di editor:
Anda adalah asisten untuk Wanderlark Tours, operator tur hiking pegunungan Alpen kelompok kecil. Wanderlark menjalankan tiga tur berpemandu: Interlaken Classic, Zermatt Highline, dan Dolomites Traverse, plus add-on pengamatan bintang Dark-Sky Nights. Bantu traveler memilih tur, memahami tanggal, harga, tingkat kesulitan, dan apa yang harus dibawa, serta menjawab pertanyaan booking dan pembatalan. Bersikap hangat, praktis, dan ringkas, serta pertahankan jawaban tetap singkat.
Ketika traveler bertanya seperti apa cuaca di sebuah destinasi pada hari-hari mendatang, panggil get_open_meteo_daily_forecast dan jawab dengan angka nyata untuk hari yang mereka tanyakan. Ketika tamu bertanya tentang gambar astronomi malam ini atau apa yang mungkin mereka lihat pada Dark-Sky Night, panggil get_tonights_nasa_apod dan jelaskan judul gambar serta apa yang ditampilkannya.
Jawab hanya dari hal yang benar-benar Anda ketahui tentang Wanderlark. Jika Anda tidak memiliki detail, katakan bahwa Anda tidak memilikinya dan tawarkan untuk menghubungkan mereka dengan tim Wanderlark, bukan menebak.
API Action Descriptions yang dibuat, sebagaimana ditulis builder (sesuaikan ini, bukan URL, ketika perilaku eksekusi perlu diperbaiki):
Gunakan action ini ketika traveler bertanya seperti apa cuaca pada hari-hari mendatang tertentu di sebuah destinasi, dan Anda memerlukan data prakiraan harian nyata (suhu tertinggi/terendah dan peluang hujan) dari Open-Meteo API. Asisten harus memanggil ini dengan latitude/longitude destinasi, rentang tanggal, dan unit yang disukai, lalu menggunakan respons JSON untuk mendeskripsikan suhu prakiraan dan probabilitas presipitasi untuk hari yang diminta dalam bahasa alami.
Gunakan action ini ketika tamu bertanya tentang Astronomy Picture of the Day malam ini terkait add-on Dark-Sky Nights Anda sehingga Anda dapat mengambil metadata APOD resmi NASA dan mendeskripsikan judul serta apa yang ditampilkan gambar. Action memanggil APOD API NASA untuk tanggal yang ditentukan (default ke hari ini jika tidak ada tanggal yang diberikan) dan mengembalikan JSON termasuk URL gambar atau video, judul, penjelasan, dan jenis media, yang harus dirangkum asisten secara percakapan untuk tamu.
Thinking message yang ditetapkan pada action prakiraan (baris yang ditampilkan widget saat panggilan berjalan):
Memeriksa prakiraan langsung untuk Anda...
Lima artikel Knowledge Base, disingkat ke faktanya:
Tur: Interlaken Classic, 3 hari, mudah hingga sedang, 890 euro, maks 10 tamu, Mei hingga Oktober. Zermatt Highline, 4 hari, sedang hingga menantang, 1.290 euro, maks 8, Juni hingga September. Dolomites Traverse, 5 hari, menantang, 1.590 euro, maks 8, akhir Juni hingga pertengahan September, dari pondok ke pondok. Harga termasuk pemandu, akomodasi, sarapan.
Dark-Sky Nights: add-on pengamatan bintang pada Zermatt Highline dan Dolomites Traverse, 120 euro per orang, jalan malam berpemandu dengan teleskop, dijadwalkan sekitar bulan baru; sesi yang tertutup awan dipindahkan atau dikembalikan dananya.
Booking: deposit 200 euro, sisa pembayaran jatuh tempo 30 hari sebelum mulai. Pembatalan gratis hingga 30 hari; refund 50 persen 29 hingga 14 hari; dalam 14 hari tidak ada refund tetapi satu rebooking gratis dalam 12 bulan.
Perlengkapan: pakaian berlapis, shell tahan air, sepatu bot yang sudah nyaman, daypack 30 liter; pole dan crampon disediakan; malam dingin bahkan pada musim panas.
Titik temu: stasiun Interlaken Ost; stasiun Zermatt (bebas mobil, shuttle dari Taesch); Cortina d'Ampezzo, transfer bandara Venice 45 euro sekali jalan.
Bagaimana cara mendeskripsikan API agar builder membuatnya dengan benar?
Tiga aturan mencakup semua hal yang ditemui build ini, dan dialog kegagalan mengajarkan pelajaran yang sama dari sisi lain:
Pola di balik setiap hasil dalam panduan ini: API konkret masuk, action berfungsi keluar; hanya perilaku masuk, panduan kembali.
- Sebut nama API, endpoint, atau tempel URL docs. “Open-Meteo API (docs: …)” menghasilkan action yang benar dengan dasar dua sumber yang dikutip. “Jadwalkan ulang tur mereka ketika cuaca terlihat buruk” menghasilkan penolakan, karena menyebut keinginan, bukan API. Builder memerlukan sesuatu yang konkret untuk dibaca, dan itulah aturan yang menjadi dasar dua aturan lainnya.
- Katakan kapan agent harus menggunakannya, dan apa yang harus dikatakan berikutnya. Klausa trigger Anda menjadi deskripsi action hampir verbatim, dan deskripsi adalah yang menjalankan action saat runtime. “Ketika traveler bertanya seperti apa cuaca” adalah sinyal yang dapat dikenali model di tengah percakapan.
- Katakan bagaimana kredensial akan bekerja, jika ada. “Saya akan menyediakan NASA API key saya sendiri” membuat auth dimodelkan sebagai
[[secret]]yang bersih. Builder juga cenderung ke arah ini sendiri: builder lebih memilih kredensial statis dan berumur panjang seperti key dan URL webhook daripada token OAuth berumur pendek, karena action berjalan apa adanya pada setiap panggilan, tanpa mekanisme refresh token.
Dan satu hal yang bukan aturan: Anda tidak perlu menentukan parameter, format, atau field respons. Builder membaca docs Open-Meteo dan memilih tujuh parameter, default yang masuk akal, serta variabel harian yang tepat tanpa diminta. Tinjau pilihannya di editor, bukan mencoba mendiktekannya di awal.
Iterasi sendiri murah. Tidak ada tombol regenerate; ketika draft keluar salah, hapus dan kirim ulang kalimat yang lebih tajam, sekitar setengah menit per percobaan. Akun dapat menyimpan hingga 15 action yang dibuat, jadi bersihkan draft selama proses.
Masuk live
Aktivasi sudah menyelesaikannya. Actions milik agent, bukan channel, sehingga dua lookup yang Anda buat berjalan dengan cara yang sama dari website widget, WhatsApp, Messenger, Slack, Telegram, Discord, atau tempat lain mana pun agent dideploy, dengan setiap panggilan dicatat di Inbox. Jika website widget adalah channel utama, Anda dapat white-label AI chatbot tanpa mengubah action. Hal yang sama berlaku untuk hal yang tidak dapat dijawab: ketika ditanya tentang tur snowshoe musim dingin, Wanderlark mengatakan tidak menjalankan tur tersebut, bukan berimprovisasi.
Ketika ditanya sesuatu di luar knowledge-nya, agent mengatakannya, bukan berimprovisasi. Pembatasan yang sama terbawa ke panggilan API-nya.
Dua langkah berikutnya yang alami setelah action pertama Anda live:
- Buat eksekusi deterministik ketika penting. Deskripsi action menentukan kapan model memanggil; untuk action yang hanya boleh berjalan dalam kondisi tertentu, tambahkan kondisi run sisi server dan memory capture: How to Make Your AI Agent’s Actions Reliable.
- Gunakan integrasi sekali klik untuk tool yang memilikinya. Menu Add Action yang sama menyimpan jalur lain: HubSpot Action, Discord Action, dan Google Sheets tersedia sebagai galeri siap pakai, Shopify MCP menghubungkan katalog toko, dan MCP menghubungkan MCP server jarak jauh apa pun, dari katalog 240+ atau URL yang ditempel, mengimpor tool server tersebut. Panduan di bawah menjelaskan galeri tersebut.
Tiga jalan ke tempat yang sama, satu aturan praktis:
| Integrasi sekali klik dan MCP | Builder bahasa sederhana | Editor manual | |
|---|---|---|---|
| Paling cocok untuk | Tool populer dengan galeri, atau MCP server apa pun | REST API terdokumentasi apa pun, termasuk long tail | API internal, atau kontrol penuh atas setiap field |
| Yang Anda sediakan | Koneksi akun atau URL server | Satu kalimat, plus key jika API memerlukannya | Setiap field sendiri |
| Yang didapat agent | Set tool siap pakai yang dikurasi | Satu action yang ditinjau dan dikutip per kalimat | Persis yang Anda ketik |
| Dibahas di | Panduan di bawah | Panduan ini | Anatomi di atas, dan resep utama yang ditautkannya |
Panduan terkait
- Hubungkan AI Agent Anda ke HubSpot: kontak, deal, dan ticket ditulis di tengah percakapan, dengan pola keamanan write-only.
- Ubah AI Agent Anda menjadi MCP server: bentuk terbalik, saat ChatGPT, Claude, dan Cursor memanggil agent Anda.
- Buat bot AI Telegram untuk mengelola grup Anda: enam Bot API action yang dibuat manual dengan admin gating.
- Bot moderasi AI Discord: action moderasi dengan permission dan authorization yang dilakukan dengan benar.
- Bot ticket AI Discord: separuh support dari galeri yang sama, menjawab dari knowledge base dan membuka thread ticket privat.
- Hubungkan AI Agent Anda ke Google Sheets: integrasi pelaporan sekali klik.
Pertanyaan yang sering diajukan
Bagaimana cara menghubungkan AI agent ke API tanpa menulis kode?
Di Quickchat AI, buka Actions & MCPs, klik Add Action, pilih API Action, lalu jelaskan API dalam satu kalimat bahasa Inggris sederhana. LLM dengan pencarian web langsung membaca dokumentasi API dan membuat action lengkap, dengan method, URL, parameter, dan deskripsi. Anda meninjaunya, mengisi nilai placeholder apa pun seperti API key, lalu mengaktifkannya.
Apa itu function calling pada AI agent?
Function calling adalah mekanisme ketika language model, di tengah percakapan, menghasilkan request terstruktur untuk menjalankan tool yang telah ditentukan, bukan teks biasa. Platform menjalankan tool tersebut, dalam kasus ini sebuah HTTP request, lalu menyerahkan hasilnya kembali ke model, yang kemudian menulis balasannya menggunakan data nyata. Setiap panggilan AI Action dalam panduan ini adalah satu function call.
Apakah function calling sama dengan tool calling?
Ya. Function calling dan tool calling menamai mekanisme yang sama; tool calling adalah istilah yang lebih baru dan lebih umum. AI Action adalah salah satu tool ini: HTTP request yang dideskripsikan dan dapat dipilih model untuk dipanggil selama percakapan.
Bagaimana builder mengetahui bentuk API?
Builder menjalankan pencarian web langsung pada dokumentasi API saat membuat action, dan menyusun action hanya dari hal yang dapat dikonfirmasi di sana. Dialog hasil mencantumkan sumber yang dibaca, sehingga Anda dapat memeriksanya sebelum mengaktifkan action.
Apa perbedaan antara placeholder {{param}} dan [[secret]]?
Nilai {{param}} diisi oleh model dari percakapan pada setiap panggilan, misalnya tanggal atau kota. Nilai [[secret]] adalah konstanta yang Anda tempelkan sekali sebelum aktivasi, misalnya API key. Model tidak pernah memilih atau mengedit secret, dan secret bukan parameter yang dapat diisinya.
Di mana API key saya ditempatkan, dan apakah pengunjung dapat mengambilnya dari agent?
Anda mengganti placeholder [[secret]] di dalam action, di editor, sebelum aktivasi. Key menjadi bagian dari request tetap yang dikirim Quickchat. Key bukan parameter, sehingga model tidak dapat mengubahnya, dan key tidak muncul dalam catatan action-call percakapan.
Apakah builder hanya membuat lookup GET, atau agent juga dapat menulis data?
Keduanya. Alur satu kalimat yang sama membuat action POST, PUT, PATCH, dan DELETE. Action GET read-only akan aktif sendiri setelah lengkap dan valid; action tulis selalu menunggu Anda mengaktifkannya secara sengaja.
Apakah ini dapat terhubung ke API privat atau internal?
Ya, selama endpoint dapat dijangkau melalui HTTPS dari sisi Quickchat. Builder mendasarkan dirinya pada dokumentasi publik, jadi untuk API internal, jelaskan endpoint secara eksplisit dalam kalimat Anda, atau buat template yang mendekati lalu sesuaikan URL dan field di editor.
Apa yang terjadi jika saya menjelaskan perilaku, bukan API tertentu?
Builder gagal secara tertutup. Alih-alih mengarang endpoint, builder menjelaskan hal yang kurang dan menunjukkan cara merumuskan ulang, biasanya dengan menyebut vendor, endpoint, atau URL docs yang konkret. Jika request Anda cocok dengan fitur bawaan seperti Human Handoff, builder mengarahkan Anda ke fitur tersebut, bukan membuat action kustom.
Apa yang terjadi jika panggilan API gagal selama percakapan?
Agent melihat error dan memberi tahu pengguna bahwa lookup tidak dapat diselesaikan, bukan mengarang jawaban. Setiap panggilan dicatat pada percakapan di Inbox dengan parameter dan kode status HTTP-nya, sehingga Anda dapat melihat persis apa yang dikirim dan apa yang kembali.
Bisakah ChatGPT, Claude, atau Gemini terhubung ke API seperti ini?
Model mereka semuanya mendukung function calling, tetapi penyambungannya adalah pekerjaan developer: Anda menulis function schema atau spesifikasi OpenAPI sendiri, seperti pada custom GPT actions. Di sini Anda mengetik satu kalimat dan action dibuat dari docs langsung API, lalu berjalan di semua channel agent Anda. Anda juga dapat mengekspos agent Quickchat yang selesai ke ChatGPT, Claude, dan Cursor sebagai MCP server.
Dari channel mana agent dapat memanggil API?
Semua channel. Actions milik agent, bukan channel, sehingga action yang sama berjalan dari website widget, WhatsApp, Messenger, Slack, Telegram, Discord, dan tempat lain mana pun tempat agent Anda dideploy.
Apakah builder action bahasa sederhana gratis?
Ya. Membuat, meninjau, dan mengaktifkan API Actions berfungsi pada paket gratis, dan kedua action dalam panduan ini dibuat pada akun gratis. Paket berbayar menambahkan batas penggunaan yang lebih tinggi dan model yang lebih canggih, bukan akses ke builder.
Bagaimana agent memilih di antara beberapa action?
Agent membaca nama dan deskripsi setiap action lalu memilih yang cocok dengan momen dalam percakapan. Agent demo memiliki dua: pertanyaan cuaca diarahkan ke action prakiraan, dan pertanyaan astronomi diarahkan ke action NASA, karena deskripsinya menyebut trigger tersebut. Deskripsi yang jelas dan berbeda membuat pilihan andal.
Berapa banyak latensi yang ditambahkan panggilan API ke balasan?
Lebih kecil dari yang mungkin Anda perkirakan. Panggilan prakiraan nyata dalam panduan ini kembali dalam 280 ms, di dalam balasan yang memerlukan sekitar dua detik dari awal hingga akhir. Pengunjung melihat indikator berpikir singkat, yang dapat Anda ganti dengan thinking message kustom, lalu jawaban yang dibuat dari data langsung.
Ringkasan
Dua kalimat yang diketik menjadi dua API Actions live, terdokumentasi, dan telah ditinjau: lookup cuaca tanpa key dan lookup NASA dengan key, masing-masing dibuktikan dengan HTTP 200 yang dicatat di Inbox di sebelah nilai yang diisi model. Aturan yang membuatnya dapat diandalkan muat dalam tiga baris. Sebut API nyata dan builder mendasarkan action pada docs-nya serta mengutipnya. Apa pun yang hanya Anda ketahui hadir sebagai [[secret]] yang memblokir aktivasi sampai Anda mengisinya. Apa pun yang tidak dapat dikonfirmasi builder menjadi penjelasan dan saran rumusan ulang, bukan tebakan.
Untuk daftar lengkap field API Actions, kondisi run, dan penanganan respons, simpan AI Actions docs di dekat Anda saat membangun.