Kısa yanıt
LLMWebSearch API'si bir arama için ne döndürür?
LLMWebSearch, query, created_at, credits_used ve sıralanmış bir results dizisi içeren JSON döndürür. Her sonuçta konum, başlık, URL, host ve snippet ile bir content_status bulunur; bu değer ok olduğunda sayfanın ana içeriği, bir word_count ile birlikte content içindedir. En fazla 3 sayfanın okunduğu tek bir arama 1 kredi tutar; Ekim 2026 itibarıyla $1,20/1K arama üzerinden. KYC yok; kripto ile ödeme yapın.
Hangi alanlar çağrıyı tanımlar?
Bir /search yanıtının en üst düzeyi.
| Alan | Tür | Anlam |
|---|---|---|
query | string | Çalıştırdığımız hâliyle sorgu, boşluklar kırpıldıktan sonra |
created_at | string | Aramanın çalıştığı zaman, UTC cinsinden ISO 8601 |
credits_used | integer | Çağrının maliyeti: 1 veya read 4 ile 10 arasındayken 2 |
results | array | Sıralanmış sonuçlar, en iyisi başta, en fazla max_results öğe |
Her sonuç hangi alanları taşır?
Sayfanın veya arama sonucunun sağlamadığı bir alan boş gönderilmek yerine tamamen atlanır.
| Alan | Tür | Bulunduğunda | Anlam |
|---|---|---|---|
position | integer | Her zaman | Aramadaki sıralama, 1'den başlar |
title | string | Her zaman | Sonucun başlığı |
url | string | Her zaman | Sayfanın adresi |
host | string | Her zaman | Sayfanın host adı, gruplama veya atıf için kullanışlı |
snippet | string | Her zaman | Aramanın gösterdiği kısa alıntı |
published_at | string | Tarih bilindiğinde | Sayfadan veya arama sonucundan alınan yayın tarihi |
content_status | string | Her zaman | Sayfanın okunup okunmadığı ve okunmadıysa nedeni |
content | string | content_status ok olduğunda | Ana içerik Markdown veya düz metin olarak, max_chars sınırında kesilmiş |
word_count | integer | content_status ok olduğunda | Kesimden önce sayılan, çıkarılan metnin tamamındaki kelimeler |
target_status | integer | target_refused ile | Sitenin yanıtladığı HTTP durum kodu, örneğin 403 veya 429 |
Her content_status değeri ne anlama gelir?
Bunların hiçbiri aramanın fiyatını değiştirmez. Tek bir sayfayı tanımlarlar, asla tüm çağrıyı değil.
content_status | Anlam | Bir agent'ın ne yapması gerekir |
|---|---|---|
ok | Sayfa okundu; content ana metnini tutuyor | Kullanın ve url kaynağını belirtin |
not_requested | Sonuç read sayısının ötesinde | read değerini artırın veya gerekirse /extract üzerinden okuyun |
blocked_by_robots | Sitenin robots.txt dosyası okuyucumuzun bu sayfaya erişmesine izin vermiyor | Snippet'e veya başka bir kaynağa güvenin |
blocked_by_site_policy | Site Content-Signal: ai-input=no bildiriyor | Snippet'e veya başka bir kaynağa güvenin |
target_refused | Site isteği reddetti; target_status bölümüne bakın | Sayfayı yeniden denemeyin; başka bir kaynak kullanın |
fetch_failed | DNS, TLS veya bağlantı hatası ya da sayfa artık yok | Başka bir sonucu deneyin; daha sonraki bir deneme işe yarayabilir |
fetch_timeout | Sayfa 15 saniye içinde yanıt vermedi | Başka bir sonucu deneyin; daha sonraki bir deneme işe yarayabilir |
unsupported_content | Bağlantı, metne dönüştüremeyeceğimiz bir dosya | Snippet'i veya başka bir sonucu kullanın |
Tam bir yanıt neye benzer?
Aşağıdaki örnek, ilk 4'ü okunacak şekilde 5 sonuç istedi, bu yüzden 2 krediye mal oldu. 1. ve 3. sonuçlar okundu. 2. sonuç, robots.txt dosyası okuyucumuzu dışarıda tutan bir siteye ait, 4. sonuç isteği reddetti ve 5. sonuç read sayısının ötesinde. Başlıklar, URL'ler ve değerler örnektir.
{
"query": "how to rotate api keys without downtime",
"created_at": "2026-10-22T10:15:04Z",
"credits_used": 2,
"results": [
{
"position": 1,
"title": "Rotating API keys",
"url": "https://docs.example.com/security/key-rotation",
"host": "docs.example.com",
"snippet": "Create a second key, deploy it everywhere, then revoke the first one.",
"published_at": "2026-09-30",
"content_status": "ok",
"content": "# Rotating API keys\n\n## Zero-downtime rotation\n\n1. Create a second key.\n2. Deploy it to every service.\n3. Revoke the old key.",
"word_count": 948
},
{
"position": 2,
"title": "Key rotation checklist",
"url": "https://blog.example.org/key-rotation-checklist",
"host": "blog.example.org",
"snippet": "Keep two keys active during the switch and alert on the old one.",
"content_status": "blocked_by_robots"
},
{
"position": 3,
"title": "Secrets management basics",
"url": "https://security.example.net/secrets-basics",
"host": "security.example.net",
"snippet": "Never commit keys to a repository.",
"content_status": "ok",
"content": "# Secrets management basics\n\n**Never** commit keys to a repository.",
"word_count": 1310
},
{
"position": 4,
"title": "Key management service guide",
"url": "https://cloud.example.com/kms-guide",
"host": "cloud.example.com",
"snippet": "Store keys in a managed vault and rotate them on a schedule.",
"content_status": "target_refused",
"target_status": 403
},
{
"position": 5,
"title": "API key best practices",
"url": "https://dev.example.com/api-key-best-practices",
"host": "dev.example.com",
"snippet": "Scope each key to one service and one environment.",
"content_status": "not_requested"
}
]
}Hangi sonuçlar not_requested dışında bir sayfa durumu alır?
Yalnızca ilk read sonuç ve bir /extract çağrısının her öğesi. Okuyucumuzun gerçekten denediği sayfalar bunlardır. read sayısından sonraki her şey, site ne cevap vermiş olursa olsun not_requested olarak kalır.
Sıra asla değişmez: okuyucu 1, 2, 3 ve devamındaki konumlar üzerinde çalışır, başarısız olan bir önceki sonucun yerine asla daha sonraki bir sonucu almaz. Bir ajan reddedilen bir sayfa için yedek gerektiriyorsa, bir sonraki sonucu /extract aracılığıyla okuyabilir.
Bir extract yanıtı neye benzer?
/extract, credits_used ve gönderdiğiniz URL'lerin sırasına göre bir results dizisi döndürür. Her öğede url ve bir content_status bulunur; ok ile title, content ve word_count eklenir, target_refused ile target_status eklenir. position, host veya snippet yoktur, çünkü hiç arama çalıştırılmamıştır.
extract referansı tam bir örnek gösterir ve kredilerinin nasıl sayıldığını açıklar.
Sonuçları bir model için bağlama nasıl dönüştürürüm?
Kaynakları numaralandırın, her birinin yanında URL'yi tutun ve modele yalnızca ihtiyacı olanı verin. Kompakt bir düzen iyi çalışır: [1] title — url, ardından o sayfanın içeriği, sonra bir sonraki kaynak. Modelden aynı numaralarla atıf yapmasını isteyin.
Bir sonucun içeriği yoksa, modele onun snippet'ini verin ve bunun yalnızca bir snippet olduğunu söyleyin. Bu, modelin hiç görmediği bir sayfaya dayanan yanıtları önler. Python sayfası bunların hepsini bir token bütçesi içinde yapan kısa bir döngü içerir.
Yanıt formatı: sık sorulan sorular
İçerik her zaman Markdown mı?
Varsayılan olarak Markdown. İşaretleme olmadan düz metin almak için format: "text" gönderin, örneğin yalnızca kelime sayacaksanız veya sayfaları sınıflandırıyorsanız. Alan adı content olarak kalır.
Neden bazı sonuçlarda published_at eksik?
Birçok sayfa tarih belirtmez ve bazı arama sonuçları da hiç tarih göstermez. Bu durumda alan atlanır, bu yüzden kullanmadan önce varlığını kontrol edin.
Daha sonra yeni alanlar eklenebilir mi?
Evet. Sürüm 1'de alanlar eklenebilir ancak asla yeniden adlandırılmaz veya kaldırılmaz. Ayrıştırıcınızı bilmediği alanları yok sayacak şekilde yazın.
İçerik sizin tarafınızda saklanıyor mu?
Hayır. Sorgularınız veya API'nin döndürdükleri üzerinde hiçbir model eğitmeyiz ve sonuçları saklamaya karşı kendi kurallarımızı eklemeyiz; sayfalarını okuduğunuz sitelerin hakları hâlâ geçerlidir. İstek günlüğümüz her çağrının yalnızca kısa bir izini tutar, bu gizlilik sayfası açıklanmıştır.