ThunderPhone 2.0 kini resmi hadir.Layanan mandiri, mulai dari 2¢/menit.Baca pengumumannya

Getting Started

Konsep inti

Peta segala sesuatu di platform — fungsi setiap objek, lokasinya di dasbor, dan API yang berinteraksi dengannya.

ThunderPhone adalah platform lengkap untuk membangun, menjalankan, dan meningkatkan agen suara AI. Halaman ini adalah peta: setiap konsep yang akan Anda temui, masing-masing dalam satu bagian singkat, beserta tampilan dasbor dan API yang mendukungnya. Baca sekilas sekali, lalu kembali lagi kapan pun suatu istilah perlu dijelaskan.

Sidebar dasbor mencerminkan struktur ini:


Organisasi

Sebuah organisasi adalah unit tenancy. Setiap sumber daya lain — agen, nomor telepon, panggilan, kunci — hanya dimiliki oleh satu organisasi. Akun Anda dapat menjadi anggota banyak organisasi; masing-masing memiliki saldo, kunci, dan daftar anggotanya sendiri.

Kunci API sk_live_ yang Anda buat di bawah Organisasi → Kunci terikat pada satu organisasi. Keterikatan ini membuat REST API menjadi sangat sederhana: Anda tidak pernah memasukkan id organisasi ke dalam jalur URL, karena kunci Anda sudah mengidentifikasinya.

Di dasbor: pengalih organisasi (footer sidebar) dan pengaturan Organisasi — tab untuk Akun saya, Umum, Kunci, Peringatan, Pengaturan Penagihan, dan Riwayat Penagihan. Lihat referensi pengaturan organisasi.

Di API: /v1/orgs, /v1/developer/api-keys.


Agen

Seorang agen adalah konfigurasi AI yang menjalankan panggilan. Agen mencakup:

  • Sebuah Prompt yang mengatur apa yang dikatakan agen dan bagaimana perilakunya — termasuk tindakan panggilan seperti transfer, penekanan keypad, dan mengakhiri panggilan, yang merupakan baris Prompt biasa, bukan konfigurasi terpisah.
  • Sebuah tingkat mesin (spark, bolt, storm-*): Spark dioptimalkan untuk biaya, Bolt untuk kecepatan, Storm untuk kecerdasan pada Prompt yang kompleks.
  • Sebuah suara serta sebuah bahasa utama dan bahasa tambahan opsional — agen beralih secara otomatis ketika penelepon mengganti bahasa. Lihat Bahasa yang didukung.
  • Kemampuan yang terpasang: aplikasi terhubung, koneksi API, basis pengetahuan, server MCP, dan alat fungsi inline.
  • Pengaturan perilaku: urutan berbicara, mode konfirmasi, trek latar belakang, batas waktu tunggu.

Perubahan di builder tersimpan otomatis sebagai draf; tidak ada yang aktif hingga Anda mengklik Terapkan. Setiap penerapan disimpan sebagai snapshot di tab Riwayat builder, sehingga Anda dapat memeriksa dan memulihkan versi sebelumnya.

Di dasbor: Agen Suara → builder agen (/dashboard/agents). Lihat Buat agen suara pertama Anda.

Di API: /v1/agents — CRUD, duplikasi, transfer, riwayat versi, dan bantuan Prompt.


Suara

Pustaka suara berisi suara yang dapat digunakan agen, sampel yang dapat diputar, bahasa yang kompatibel, pengelompokan gender dan aksen, serta biaya tambahan untuk suara/bahasa premium. Sampler berbayar dapat menyintesis frasa Anda sendiri dengan 1–500 karakter sebelum Anda memilih.

Organisasi yang memenuhi syarat juga dapat membuat suara kustom dari sampel WAV atau MP3 singkat. Suara kustom memiliki kuota dan status pembuatan asinkron; setelah siap, suara tersebut muncul dalam pemilih agen yang sama dengan suara pustaka.

Di dasbor: Suara (/dashboard/voices). Lihat Pustaka suara dan suara kustom.

Di API: /v1/voices, sampel suara, dan suara kustom.


Nomor telepon

Sebuah nomor telepon dimiliki oleh organisasi dan merutekan panggilan masuk ke agen (serta dapat digunakan untuk panggilan keluar). Dua sumber:

  • Nomor demo — nomor AS nyata yang disediakan dari kumpulan nomor ThunderPhone, aktif dalam hitungan detik. Hanya untuk panggilan masuk, nomor ini menjawab dengan pemberitahuan lisan singkat, dan dasbor membatasi organisasi hingga 10 nomor. Cocok untuk pengujian pertama; bukan untuk produksi.
  • Nomor VoIP — dibawa dari penyedia Anda sendiri melalui koneksi VoIP. Twilio dan Telnyx terhubung langsung (Telnyx memiliki penyiapan terpandu); SignalWire dan Vonage akan segera hadir — saat ini Anda dapat menjangkaunya melalui konfigurasi SIP manual, yang menerima trunk SIP apa pun. Setelah diimpor dan diverifikasi, nomor VoIP mendukung panggilan masuk dan keluar.

Setiap baris nomor memungkinkan Anda menetapkan mode perutean, memilih agen untuk panggilan masuk, dan memberi label pada nomor.

Di dasbor: Nomor Telepon (/dashboard/phone-numbers). Lihat Dapatkan nomor telepon.

Di API: /v1/phone-numbers, /v1/voip-connections, /v1/phone-number-labels.


Panggilan

Setiap panggilan masuk, panggilan keluar, simulasi, dan sesi widget menjadi log panggilan. Sebuah panggilan menyimpan transkrip lengkap dengan tag peran, riwayat giliran terstruktur (termasuk pemanggilan alat), rekaman, total penagihan, serta penilaian AI dan laporan masalah opsional.

Saat panggilan langsung, Anda dapat membukanya dan mendengarkan — Anda bergabung secara diam-diam, dan tidak seorang pun dalam panggilan mendengar Anda. Setelah mendengarkan, Anda dapat berbisik: ketik instruksi yang langsung dikirim ke agen Anda di tengah panggilan; penelepon tidak pernah mendengarnya, dan agen mengikuti instruksi tersebut secara langsung.

Di dasbor: Riwayat Panggilan (/dashboard/call-history) untuk arsip dan detail per panggilan; Langsung untuk panggilan yang sedang berlangsung. Lihat Tinjau, dengarkan, dan arahkan panggilan Anda.

Di API: /v1/calls — daftar, transkrip, riwayat, audio, penilaian, ekspor; /v1/issue-reports.


Portal klien

Sebuah portal klien adalah tampilan riwayat panggilan bermerek dan hanya-baca untuk klien eksternal. Admin organisasi memilih agen yang panggilannya ditampilkan, menambahkan email penonton yang disetujui, mengunggah logo dan warna aksen, serta secara opsional memverifikasi domain kustom. Penonton portal dapat memeriksa detail panggilan, transkrip, dan rekaman yang tersedia tanpa menerima akses dasbor.

Di dasbor: Portal klien (/dashboard/client-portals). Lihat Portal klien.

Di API: /v1/client-portals untuk antarmuka pengelolaan admin.


Widget web

Widget web memberi pengunjung situs Anda percakapan berbasis mikrofon dengan agen — tanpa memerlukan nomor telepon. Widget ini melakukan autentikasi dengan kunci yang dapat dipublikasikan (pk_live_...) yang dikunci ke origin untuk domain yang Anda izinkan, sehingga aman digunakan dalam kode sisi klien.

Kunci berjalan dalam salah satu dari dua mode: agent (terikat secara statis ke satu agen) atau webhook (server Anda memilih konfigurasi untuk setiap pengunjung — lihat Konfigurasi dinamis per panggilan). Sesi widget mengalir melalui infrastruktur panggilan yang sama seperti panggilan telepon.

Di dasbor: Widget Web (/dashboard/web-widgets) — buat widget, atur mode dan agen, kelola domain yang diizinkan, dan salin cuplikan embed. Lihat Buat widget web.

Di API: /v1/publishable-key, /v1/mic-session, dan dokumentasi Widget SDK.


Basis pengetahuan

Basis pengetahuan adalah kumpulan dokumen yang dapat dicari agen Anda saat panggilan berlangsung untuk mendasari jawabannya — unggah file, tempel teks, atau impor halaman web melalui URL, lalu lampirkan basis pengetahuan tersebut ke agen di builder. Agen menanyakannya dengan alat pencarian bawaan setiap kali percakapan memerlukannya.

Di dasbor: Pengetahuan (/dashboard/knowledge) untuk pustaka dokumen; bagian Pengetahuan di builder untuk melampirkannya ke agen. Lihat Berikan agen Anda basis pengetahuan.


Koneksi

Koneksi adalah cara agen menjangkau dunia luar. Empat jenis, satu grup bilah samping:

  • Aplikasi (/dashboard/app-connections) — koneksi OAuth ke Slack, HubSpot, Salesforce, Google Calendar, Google Sheets, dan Cal.com. Hubungkan sekali, lalu aktifkan alat per operasi (kirim pesan Slack, upsert kontak HubSpot, pesan slot Cal.com…) ke agen mana pun. Lihat Hubungkan aplikasi.
  • API (/dashboard/api-connections) — ubah HTTP API apa pun menjadi tindakan agen. Tempel perintah cURL dan wizard AI akan menyusun definisi alat, atau buat secara manual; tombol Uji Permintaan menjalankan panggilan sandbox sebelum Anda menerapkannya. Lihat Koneksi API — tampilan dasbor dari /v1/integrations.
  • MCP (/dashboard/mcp-connections) — tambahkan server Model Context Protocol melalui URL dan biarkan agen menggunakan alat yang disediakannya. Lihat Tambahkan server MCP.
  • VoIP (/dashboard/voip-connections) — kredensial provider untuk menggunakan nomor telepon Anda sendiri. Lihat Hubungkan provider VoIP.

ThunderPhone juga menyediakan endpoint MCP miliknya sendiri sehingga klien MCP eksternal dapat mencantumkan agen, memeriksa panggilan dan transkrip, serta melakukan panggilan. Lihat Gunakan ThunderPhone sebagai server MCP.

Di API: /v1/integrations, /v1/mcp-servers, dan /v1/voip-connections; lihat juga Buat integrasi alat.


Kampanye

Kampanye melakukan panggilan keluar dalam skala besar: unggah CSV berisi kontak, pilih agen dan nomor asal, lalu atur jendela panggilan (hari dan jam, dengan mempertimbangkan zona waktu), konkurensi, dan kebijakan coba ulang (jumlah upaya maksimum dan hasil mana — tidak menjawab, pesan suara, gagal — yang dicoba ulang). Kampanye memproses daftar tersebut dan mencatat setiap panggilan di Riwayat Panggilan.

Di dasbor: Kampanye (/dashboard/campaigns). Lihat Jalankan kampanye panggilan keluar.

Untuk panggilan terprogram satu kali: gunakan API panggilan keluar.

Pemantauan langsung

Langsung menampilkan setiap panggilan yang sedang berlangsung di seluruh organisasi, dan memungkinkan Anda membuka salah satunya untuk mendengarkan dan membisikkan secara real time. Ini adalah permukaan supervisi: pantau Prompt baru saat menerima trafik nyata pertamanya, atau awasi kampanye yang sedang berjalan.

Di dashboard: Langsung (/dashboard/live). Lihat Memantau dan mengawasi panggilan langsung.


Simulasi

Sebuah simulasi adalah penelepon AI yang melakukan percakapan nyata dengan agen Anda — jalur telepon yang sama, transkrip nyata, penilaian nyata — sehingga Anda dapat menguji sebelum (dan setelah) merilisnya. Arahkan ke agen atau nomor telepon, tulis sendiri skenario penelepon atau buat skenario dengan AI dari Prompt agen (termasuk kasus tepi, jika Anda memintanya), dan pantau panggilannya secara langsung.

Skenario dikelompokkan ke dalam suite yang menetapkan tingkat kelulusan minimum dan dapat menjadi gerbang rilis di CI; regresi terhadap baseline yang diterima dilaporkan per skenario.

Di dashboard: Simulasi (/dashboard/simulations), serta tombol Simulasi di dalam pembuat agen. Lihat Mensimulasikan panggilan.

Di API: /v1/test-calls dan runner suite — lihat Menguji agen secara menyeluruh.


Set validasi

Sebuah set validasi mengubah momen panggilan nyata menjadi pemeriksaan regresi satu giliran yang dapat diulang. Setiap contoh membekukan konteks percakapan, audio penelepon yang relevan, respons asli, dan perilaku yang diharapkan. Pemutaran ulang dijalankan terhadap draf agen saat ini tanpa melakukan panggilan lain, dan dialog penerapan dapat menampilkan apakah proses terbaru masih sesuai dengan draf tersebut.

Di dashboard: Set validasi (/dashboard/validation) untuk dataset organisasi dan tab Validasi di pembuat agen untuk proses. Lihat Set validasi.

Di API: /v1/validation-sets dan endpoint pemutaran ulang agen/contoh pada halaman referensi yang sama.


Eksperimen

Sebuah eksperimen melakukan pengujian A/B terhadap konfigurasi agen pada trafik langsung: tentukan varian (Prompt, mesin, atau pengaturan yang berbeda), bagi trafik di antara varian tersebut, dan bandingkan hasil per varian. Gunakan ini alih-alih membuat sendiri logika bucket dalam webhook.

Di dashboard: Eksperimen (/dashboard/experiments) dan tab A/B di pembuat agen. Lihat Eksperimen (pengujian A/B).


Masalah

Sebuah masalah adalah problem yang ditandai pada panggilan tertentu — diajukan oleh peninjau manusia atau terdeteksi oleh penilaian AI. Masalah memiliki tingkat keparahan, sumber, dan Status, dan halaman Masalah adalah antrean triase: filter, periksa panggilan yang bermasalah, dan lacak perbaikan.

Di dashboard: Masalah (/dashboard/issues), serta penandaan per panggilan di Riwayat Panggilan. Lihat Triase masalah.

Di API: /v1/issue-reports.


Laporan

Sebuah laporan menjawab pertanyaan bahasa alami tentang data panggilan Anda ("Apa tiga alasan utama penelepon meminta agen manusia minggu lalu?") dengan analisis yang ditulis AI, dibatasi pada agen dan rentang tanggal yang Anda pilih.

Di dashboard: Laporan (/dashboard/reports). Lihat Laporan.


Observabilitas

Observabilitas adalah permukaan metrik: Volume panggilan, hasil, dan kualitas dari waktu ke waktu, dapat difilter berdasarkan agen dan jendela waktu, dengan ekspor untuk analisis lanjutan.

Di dashboard: Observabilitas (/dashboard/observability). Lihat Observabilitas.


Peringatan

Sebuah aturan peringatan memantau metrik (tingkat keberhasilan, tingkat kegagalan, skor rata-rata, Volume panggilan, regresi suite) selama jendela waktu dan terpicu saat melampaui ambang Anda. Notifikasi dikirim ke email dan Slack, serta memicu event alert.triggered ke endpoint webhook Anda.

Di dashboard: Organisasi → Peringatan. Lihat Peringatan.


Webhook

ThunderPhone mengirim webhook HTTP POST ke server Anda ketika sesuatu terjadi selama dan setelah panggilan. Dua model pengiriman:

  • Endpoint webhook (direkomendasikan): kelola banyak URL di /v1/developer/webhook-endpoints dengan secret per endpoint dan langganan peristiwa per endpoint.
  • Webhook URL tunggal lama: satu URL per organisasi. Dikelola di /v1/webhook atau di bawah Organisasi → Umum. Dipertahankan untuk kompatibilitas mundur.

Peristiwa dibagi menjadi dua kelas:

  • Peristiwa pemblokiran mengharapkan server Anda merespons dengan konfigurasi yang membentuk panggilan yang sedang berlangsung — yaitu peristiwa panggilan masuk (telephony.incoming / web.incoming). Anda memiliki hingga 10 detik untuk merespons; saat waktu habis, agen yang ditetapkan secara statis menangani panggilan.
  • Peristiwa non-pemblokiran adalah notifikasi fire-and-forget, yang dicoba ulang dengan backoff eksponensial — lihat semantik pengiriman.

Setiap permintaan membawa tanda tangan HMAC-SHA256 dalam X-ThunderPhone-Signature. Lihat verifikasi tanda tangan.


Alat fungsi

Alat fungsi adalah endpoint HTTP yang dapat dipanggil agen Anda di tengah percakapan. Anda memberikan ThunderPhone skema fungsi bergaya OpenAI beserta URL endpoint; agen memutuskan kapan harus memanggilnya, dan ThunderPhone membuat permintaan HTTP bertanda tangan dari servernya serta memberikan hasilnya kembali kepada agen.

Agen juga dilengkapi dengan kemampuan panggilan bawaan — mentransfer panggilan, mengirim input keypad (DTMF), mengakhiri panggilan, menunggu sambil ditahan — yang Anda aktifkan dengan baris Prompt biasa, bukan definisi alat.

Di dashboard: bagian Koneksi API di builder (lihat Koneksi).

Di API: /v1/integrations dan spesifikasi Alat Fungsi.


Tim dan peran

Setiap organisasi memiliki daftar anggota dengan dua peran: Anggota membangun dan mengoperasikan agen; Admin juga mengelola tim dan penagihan. Undang melalui email — undangan kedaluwarsa setelah 7 hari dan dapat dicabut; menu ⋯ pada baris anggota mengubah peran atau menghapus seseorang. Sistem masuk tunggal dapat dikonfigurasi untuk seluruh organisasi — lihat SSO.

Di dashboard: Organisasi → Umum. Lihat Undang tim Anda.

Di API: /v1/members, /v1/invites.


Penagihan

ThunderPhone adalah prabayar. Setiap organisasi memiliki saldo USD; panggilan mendebitnya sesuai tarif per menit agen (tingkat mesin ditambah biaya tambahan — builder menampilkan tarif total secara langsung saat Anda mengubah pengaturan, dan bahasa tambahan tertentu menambahkan 3¢/menit). Saat saldo mencapai nol, panggilan masuk ditolak dan panggilan keluar mengembalikan 402 Payment Required.

Isi saldo secara manual, atau aktifkan isi saldo otomatis dengan ambang saldo, jumlah pengisian ulang, dan batas pengeluaran bulanan opsional — agar panggilan tidak pernah terputus di tengah kalimat.

Di dashboard: Organisasi → Pengaturan Penagihan dan Riwayat Penagihan. Lihat Tambahkan dana dan aktifkan isi saldo otomatis, serta referensi harga lengkap.

Di API: /v1/billing.


Kopilot dalam aplikasi

Dashboard dilengkapi kopilot bawaan — tanyakan kepadanya "bagaimana cara X" dan kopilot menjawab berdasarkan dokumentasi ini, menawarkan panduan langkah demi langkah yang menyoroti kontrol sebenarnya, serta dapat memutar ulang tur terpandu apa pun. Ini adalah cara tercepat untuk menemukan kontrol yang disebutkan halaman ini. Lihat Tanyakan kepada kopilot dalam aplikasi.


Merangkainya