Alat web fetch saat ini dalam beta. Untuk mengaktifkannya, gunakan header beta
web-fetch-2025-09-10 dalam permintaan API Anda.Silakan gunakan formulir ini untuk memberikan umpan balik tentang kualitas respons model, API itu sendiri, atau kualitas dokumentasi.Mengaktifkan alat web fetch di lingkungan di mana Claude memproses input yang tidak terpercaya bersama dengan data sensitif menimbulkan risiko eksfiltrasi data. Kami merekomendasikan hanya menggunakan alat ini di lingkungan terpercaya atau saat menangani data non-sensitif.Untuk meminimalkan risiko eksfiltrasi, Claude tidak diizinkan untuk secara dinamis membuat URL. Claude hanya dapat mengambil URL yang telah secara eksplisit disediakan oleh pengguna atau yang berasal dari hasil pencarian web atau web fetch sebelumnya. Namun, masih ada risiko sisa yang harus dipertimbangkan dengan hati-hati saat menggunakan alat ini.Jika eksfiltrasi data menjadi perhatian, pertimbangkan:
- Menonaktifkan alat web fetch sepenuhnya
- Menggunakan parameter
max_usesuntuk membatasi jumlah permintaan - Menggunakan parameter
allowed_domainsuntuk membatasi ke domain yang diketahui aman
Model yang didukung
Web fetch tersedia di:- Claude Sonnet 4.5 (
claude-sonnet-4-5-20250929) - Claude Sonnet 4 (
claude-sonnet-4-20250514) - Claude Sonnet 3.7 (deprecated) (
claude-3-7-sonnet-20250219) - Claude Haiku 4.5 (
claude-haiku-4-5-20251001) - Claude Haiku 3.5 (
claude-3-5-haiku-latest) - Claude Opus 4.1 (
claude-opus-4-1-20250805) - Claude Opus 4 (
claude-opus-4-20250514)
Cara kerja web fetch
Ketika Anda menambahkan alat web fetch ke permintaan API Anda:- Claude memutuskan kapan harus mengambil konten berdasarkan prompt dan URL yang tersedia.
- API mengambil konten teks lengkap dari URL yang ditentukan.
- Untuk PDF, ekstraksi teks otomatis dilakukan.
- Claude menganalisis konten yang diambil dan memberikan respons dengan kutipan opsional.
Alat web fetch saat ini tidak mendukung situs web yang dirender secara dinamis melalui Javascript.
Cara menggunakan web fetch
Sediakan alat web fetch dalam permintaan API Anda:Definisi alat
Alat web fetch mendukung parameter berikut:JSON
Max uses
Parametermax_uses membatasi jumlah web fetch yang dilakukan. Jika Claude mencoba lebih banyak fetch daripada yang diizinkan, web_fetch_tool_result akan menjadi kesalahan dengan kode kesalahan max_uses_exceeded. Saat ini tidak ada batas default.
Penyaringan domain
Saat menggunakan filter domain:- Domain tidak boleh menyertakan skema HTTP/HTTPS (gunakan
example.combukanhttps://example.com) - Subdomain secara otomatis disertakan (
example.commencakupdocs.example.com) - Subpath didukung (
example.com/blog) - Anda dapat menggunakan
allowed_domainsataublocked_domains, tetapi tidak keduanya dalam permintaan yang sama.
Perhatikan bahwa karakter Unicode dalam nama domain dapat menciptakan kerentanan keamanan melalui serangan homograf, di mana karakter yang terlihat serupa dari skrip berbeda dapat melewati filter domain. Misalnya,
аmazon.com (menggunakan ‘а’ Cyrillic) mungkin terlihat identik dengan amazon.com tetapi mewakili domain yang berbeda.Saat mengonfigurasi daftar izin/blokir domain:- Gunakan nama domain ASCII-only jika memungkinkan
- Pertimbangkan bahwa parser URL dapat menangani normalisasi Unicode secara berbeda
- Uji filter domain Anda dengan variasi homograf potensial
- Audit secara teratur konfigurasi domain Anda untuk karakter Unicode yang mencurigakan
Batas konten
Parametermax_content_tokens membatasi jumlah konten yang akan disertakan dalam konteks. Jika konten yang diambil melebihi batas ini, konten akan dipotong. Ini membantu mengontrol penggunaan token saat mengambil dokumen besar.
Batas parameter
max_content_tokens adalah perkiraan. Jumlah token input aktual yang digunakan dapat bervariasi dalam jumlah kecil.Kutipan
Tidak seperti pencarian web di mana kutipan selalu diaktifkan, kutipan bersifat opsional untuk web fetch. Atur"citations": {"enabled": true} untuk memungkinkan Claude mengutip bagian tertentu dari dokumen yang diambil.
Saat menampilkan output API secara langsung kepada pengguna akhir, kutipan harus disertakan ke sumber asli. Jika Anda membuat modifikasi pada output API, termasuk dengan memproses ulang dan/atau menggabungkannya dengan materi Anda sendiri sebelum menampilkannya kepada pengguna akhir, tampilkan kutipan sesuai kebutuhan berdasarkan konsultasi dengan tim hukum Anda.
Respons
Berikut adalah contoh struktur respons:Hasil fetch
Hasil fetch mencakup:url: URL yang diambilcontent: Blok dokumen yang berisi konten yang diambilretrieved_at: Stempel waktu saat konten diambil
Alat web fetch menyimpan hasil dalam cache untuk meningkatkan kinerja dan mengurangi permintaan yang berlebihan. Ini berarti konten yang dikembalikan mungkin bukan selalu versi terbaru yang tersedia di URL. Perilaku cache dikelola secara otomatis dan dapat berubah seiring waktu untuk mengoptimalkan jenis konten dan pola penggunaan yang berbeda.
Kesalahan
Ketika alat web fetch mengalami kesalahan, Claude API mengembalikan respons 200 (sukses) dengan kesalahan yang diwakili dalam badan respons:invalid_input: Format URL tidak validurl_too_long: URL melebihi panjang maksimum (250 karakter)url_not_allowed: URL diblokir oleh aturan penyaringan domain dan pembatasan modelurl_not_accessible: Gagal mengambil konten (kesalahan HTTP)too_many_requests: Batas laju terlampauiunsupported_content_type: Jenis konten tidak didukung (hanya teks dan PDF)max_uses_exceeded: Penggunaan alat web fetch maksimum terlampauiunavailable: Kesalahan internal terjadi
Validasi URL
Untuk alasan keamanan, alat web fetch hanya dapat mengambil URL yang sebelumnya muncul dalam konteks percakapan. Ini mencakup:- URL dalam pesan pengguna
- URL dalam hasil alat sisi klien
- URL dari hasil pencarian web atau web fetch sebelumnya
Pencarian dan fetch gabungan
Web fetch bekerja dengan mulus dengan pencarian web untuk pengumpulan informasi yang komprehensif:- Menggunakan pencarian web untuk menemukan artikel yang relevan
- Memilih hasil yang paling menjanjikan
- Menggunakan web fetch untuk mengambil konten lengkap
- Memberikan analisis terperinci dengan kutipan
Prompt caching
Web fetch bekerja dengan prompt caching. Untuk mengaktifkan prompt caching, tambahkan titik henticache_control dalam permintaan Anda. Hasil fetch yang di-cache dapat digunakan kembali di seluruh putaran percakapan.
Streaming
Dengan streaming diaktifkan, peristiwa fetch adalah bagian dari aliran dengan jeda selama pengambilan konten:Permintaan batch
Anda dapat menyertakan alat web fetch dalam Messages Batches API. Panggilan alat web fetch melalui Messages Batches API dihargai sama dengan yang ada dalam permintaan Messages API biasa.Penggunaan dan harga
Web fetch usage has no additional charges beyond standard token costs:max_content_tokens parameter to set appropriate limits based on your use case and budget considerations.
Example token usage for typical content:
- Average web page (10KB): ~2,500 tokens
- Large documentation page (100KB): ~25,000 tokens
- Research paper PDF (500KB): ~125,000 tokens