คีย์ Brave API ช่วยให้คุณเข้าถึงดัชนีเว็บอิสระของ Brave ได้ด้วยการเขียนโปรแกรม: ซึ่งเป็นผลลัพธ์เดียวกับที่ Brave Search ให้บริการในเบราว์เซอร์ โดยส่งคืนเป็น JSON ที่คุณสามารถนำไปใช้ในสคริปต์ แดชบอร์ด หรือ AI agent ได้ Brave Search API กลายเป็นตัวเลือกยอดนิยมสำหรับการให้ agent เข้าถึงเว็บแบบเรียลไทม์ หากนั่นคือเป้าหมายสุดท้ายของคุณ คู่มือ Brave Search MCP server จะแสดงวิธีการเชื่อมต่อคีย์เข้ากับ Claude และไคลเอนต์ MCP อื่นๆ โพสต์นี้ครอบคลุมส่วนก่อนหน้านั้น: การสร้างบัญชี การเลือกแผน การสร้างคีย์ และการส่งคำขอจริงด้วย curl, Python และ Apidog
ข้อมูลทั้งหมดด้านล่างนี้มาจากเอกสารประกอบแดชบอร์ดของ Brave เอง ณ เดือนกันยายน 2026 ราคาและข้อจำกัดมีการเปลี่ยนแปลง ดังนั้นให้ถือว่าตัวเลขเหล่านี้เป็นข้อมูล ณ ขณะนั้น และตรวจสอบหน้าเว็บที่เชื่อมโยงก่อนที่คุณจะวางแผนงบประมาณ
สิ่งที่คุณต้องมีก่อนเริ่มต้น
- ที่อยู่อีเมลสำหรับบัญชีแดชบอร์ด
- บัตรเครดิต Brave กำหนดให้ต้องมีในทุกแผน รวมถึงแผนเครดิตฟรี เพื่อเป็นการตรวจสอบการฉ้อโกง คำถามที่พบบ่อยในหน้าแผนระบุว่าสำหรับแผนฟรี บัตรจะใช้เพื่อยืนยันตัวตนของคุณเท่านั้น
- curl หรือ Python 3 พร้อมแพ็คเกจ
requestsสำหรับตัวอย่างคำสั่งบรรทัด - Apidog หากคุณต้องการจัดเก็บคีย์อย่างปลอดภัยและเปลี่ยนคำขอเป็นการทดสอบที่ทำซ้ำได้ เป็นทางเลือกสำหรับครั้งแรก
ขั้นตอนที่ 1: สร้างบัญชี Brave Search API
ไปที่ แดชบอร์ด Brave Search API และลงทะเบียนด้วยที่อยู่อีเมลและรหัสผ่าน Brave จะส่งลิงก์ยืนยัน; คลิกเพื่อยืนยันที่อยู่ จนกว่าคุณจะทำ คุณจะไม่สามารถเปิดใช้งานแผนได้
แดชบอร์ดนี้แยกต่างหากจากเบราว์เซอร์ Brave หรือการเข้าสู่ระบบ Brave Rewards ดังนั้นบัญชีเบราว์เซอร์ที่มีอยู่จะไม่ถูกโอนมา ลงทะเบียนใหม่
ขั้นตอนที่ 2: เลือกแผน (แผนฟรีมีข้อจำกัดหนึ่งอย่าง)
เปิดหน้าแผนในแดชบอร์ด ณ เดือนกันยายน 2026 หน้าการกำหนดราคา ของ Brave แสดงตัวเลือกเหล่านี้:
| แผน | ราคา | เครดิตฟรี | ข้อจำกัดอัตรา |
|---|---|---|---|
| Search | $5.00 ต่อ 1,000 คำขอ | เครดิต $5 ทุกเดือน | 50 คำขอต่อวินาที |
| Answers | $4.00 ต่อ 1,000 คำค้นหา บวก $5.00 ต่อ 1,000,000 โทเค็นอินพุต และ $5.00 ต่อ 1,000,000 โทเค็นเอาต์พุต | เครดิต $5 ทุกเดือน | 2 คำขอต่อวินาที |
| Spellcheck | $5.00 ต่อ 10,000 คำขอ | เครดิต $5 ทุกเดือน | 100 คำขอต่อวินาที |
| Autosuggest | $5.00 ต่อ 10,000 คำขอ | เครดิต $5 ทุกเดือน | 100 คำขอต่อวินาที |
| Enterprise | กำหนดเอง | ติดต่อฝ่ายขาย | กำหนดเอง |
สำหรับการค้นหาเว็บ ให้เลือก Search เครดิต $5 ต่อเดือนครอบคลุมคำขอค้นหาเว็บประมาณ 1,000 ครั้งก่อนที่คุณจะต้องจ่ายเงิน ซึ่งเพียงพอสำหรับการพัฒนาและปริมาณงาน agent ขนาดเล็ก การเรียกเก็บเงินเป็นแบบเติมเงิน: คุณซื้อเครดิตล่วงหน้า และเครดิตฟรีรายเดือนจะถูกใช้โดยอัตโนมัติ
ข้อจำกัดคือบัตร คุณไม่สามารถเปิดใช้งานแผนใดๆ รวมถึงเครดิตฟรีได้หากไม่ได้ป้อนบัตร หากคุณเคยเห็นคู่มือเก่าๆ ที่อธิบายแผนฟรีที่ไม่มีบัตรพร้อมโควต้าคำค้นหารายเดือนที่กำหนดไว้ พวกเขาอธิบายถึงการกำหนดราคาของ Brave รุ่นก่อนหน้านี้ บัญชีใหม่จะได้รับโมเดลเครดิตข้างต้น
เลือกแผนและป้อนรายละเอียดบัตรของคุณ แผนจะแสดงสถานะว่าใช้งานอยู่ในแดชบอร์ดทันที
ขั้นตอนที่ 3: สร้างคีย์ API
เมื่อแผนใช้งานอยู่ ให้เปิดส่วน API Keys คลิก “Add API Key” และตั้งชื่อคีย์ที่สื่อความหมาย Quickstart ของ Brave แนะนำชื่อเช่น “Production App” หรือ “Development” การมีคีย์หนึ่งคีย์ต่อสภาพแวดล้อมจะช่วยได้ในภายหลัง เมื่อคุณต้องการยกเลิกคีย์เดียวโดยไม่กระทบกับคีย์อื่น
คัดลอกคีย์และจัดเก็บไว้ในที่ปลอดภัยทันที คู่มือการรับรองความถูกต้อง ของ Brave ชี้แจงชัดเจนว่าไม่ควรจัดเก็บไว้ที่ใด: โค้ดฝั่งไคลเอนต์, คลังสาธารณะ หรือที่สาธารณะใดๆ หากคุณยังใหม่กับวิธีการทำงานของข้อมูลประจำตัวเหล่านี้ บทนำเกี่ยวกับ API key จะอธิบายโมเดลภายในไม่กี่นาที
ขั้นตอนที่ 4: ส่งคำขอค้นหาครั้งแรกของคุณ
ปลายทางของการค้นหาเว็บคือ https://api.search.brave.com/res/v1/web/search ทุกคำขอต้องการคีย์ในส่วนหัว X-Subscription-Token โปรดสังเกตชื่อส่วนหัว: ไม่ใช่ Authorization: Bearer และการส่งคีย์ด้วยวิธีนั้นจะล้มเหลว
curl
curl "https://api.search.brave.com/res/v1/web/search?q=openapi+3.1+breaking+changes&count=5&freshness=py" \
-H "Accept: application/json" \
-H "Accept-Encoding: gzip" \
-H "X-Subscription-Token: $BRAVE_API_KEY"
count กำหนดจำนวนผลลัพธ์ต่อหน้า (สูงสุด 20, ค่าเริ่มต้น 20), offset ใช้ในการแบ่งหน้า (อิงจาก 0, สูงสุด 9), และ freshness กรองตามอายุ: pd, pw, pm, หรือ py สำหรับวัน, สัปดาห์, เดือน, หรือปีที่ผ่านมา พารามิเตอร์อื่นๆ ที่มีประโยชน์คือ country (รหัสสองตัวอักษร), search_lang, และ safesearch (off, moderate, หรือ strict; moderate เป็นค่าเริ่มต้น)
Python
import os
import requests
url = "https://api.search.brave.com/res/v1/web/search"
headers = {
"Accept": "application/json",
"Accept-Encoding": "gzip",
"X-Subscription-Token": os.environ["BRAVE_API_KEY"],
}
params = {"q": "openapi 3.1 breaking changes", "count": 5, "freshness": "py"}
resp = requests.get(url, headers=headers, params=params, timeout=10)
resp.raise_for_status()
data = resp.json()
for hit in data["web"]["results"]:
print(hit["title"])
print(hit["url"])
print(hit["description"][:120], "\n")
การตอบกลับจะมาพร้อมกับออบเจกต์ query (พร้อม original และบูลีน more_results_available สำหรับการแบ่งหน้า) และอาร์เรย์ web.results แต่ละผลลัพธ์จะมี title, url, และ description; ตั้งค่า extra_snippets=true และคุณจะได้รับตัวอย่างเพิ่มเติมสูงสุดห้าข้อความต่อผลลัพธ์ ซึ่งช่วยเมื่อคุณกำลังสร้างบริบทสำหรับโมเดล
Brave กำหนดเวอร์ชัน API ด้วยส่วนหัว Api-Version ที่เป็นทางเลือกในรูปแบบ YYYY-MM-DD หากคุณไม่ใส่ คุณจะได้รับเวอร์ชันล่าสุด; หากคุณตรึงเวอร์ชันไว้เมื่อการผสานรวมของคุณอยู่ในเวอร์ชันโปรดักชัน การเปลี่ยนแปลงที่อาจทำให้เกิดความเสียหายในอนาคตจะไม่เกิดขึ้นโดยไม่คาดคิด
ขั้นตอนที่ 5: ทดสอบคีย์ใน Apidog
การวางคีย์ลงในคำสั่ง curl บรรทัดเดียวก็ใช้ได้สำหรับการเรียกใช้ครั้งแรก แต่ไม่ใช่ที่ที่ดีที่จะทิ้งไว้ ใน Apidog คุณจะเก็บคีย์ไว้ครั้งเดียวเป็นตัวแปร อ้างอิงได้ทุกที่ และเก็บความลับนั้นออกจากโปรเจกต์ที่แชร์
- เปิดการจัดการสภาพแวดล้อมที่มุมขวาบนของโปรเจกต์ Apidog ของคุณและเพิ่มสภาพแวดล้อมที่ชื่อว่า
Braveสร้างตัวแปรที่ชื่อว่าbrave_api_keyและใส่คีย์จริงในช่องค่าในเครื่อง (local value) ไม่ใช่ค่าที่แชร์ (shared value) ค่าในเครื่องจะอยู่บนเครื่องของคุณและไม่ซิงค์กับเพื่อนร่วมทีม เอกสารอ้างอิงตัวแปร อธิบายโมเดลสองค่า และเวิร์กโฟลว์เต็มรูปแบบสำหรับ สภาพแวดล้อมและตัวแปรลับใน Apidog ครอบคลุมเค้าโครง dev, staging, และ prod หากคุณต้องการมากกว่าหนึ่ง - สร้างคำขอ GET ใหม่ไปยัง
https://api.search.brave.com/res/v1/web/searchในแท็บ Headers ให้เพิ่มX-Subscription-Tokenพร้อมค่า{{brave_api_key}}ใน Params ให้เพิ่มq,count, และfreshness - คลิก Send แผงการตอบสนองจะแสดงเนื้อหา JSON และแผงส่วนหัวจะแสดง
X-RateLimit-RemainingและX-RateLimit-Resetเพื่อให้คุณสามารถตรวจสอบโควต้าของคุณได้โดยไม่ต้องพิมพ์อะไร - เพิ่มการยืนยัน: รหัสสถานะเท่ากับ 200,
$.web.resultsมีอยู่และมีองค์ประกอบอย่างน้อยหนึ่งรายการ, และ$.query.originalตรงกับคำค้นหาที่คุณส่งไป บันทึกคำขอลงในสถานการณ์ทดสอบ ตอนนี้การหมุนเวียนคีย์หรือการเปลี่ยนแปลงฝั่ง Brave จะแสดงเป็นข้อผิดพลาดแทนที่จะเป็น agent ที่เสียในเวลาตี 2
ดาวน์โหลด Apidog เพื่อทำตาม; แผนฟรีครอบคลุมผู้ใช้สี่คนและรวมถึงสภาพแวดล้อมและสถานการณ์ทดสอบ
ข้อจำกัดอัตราและวิธีการรายงานของ Brave
ทุกการตอบกลับจะมีส่วนหัวสี่ส่วน ซึ่งระบุไว้ใน คู่มือการจำกัดอัตรา ของ Brave:
X-RateLimit-Limit: ขีดจำกัดที่เกี่ยวข้องกับแผนของคุณ เช่น1, 15000X-RateLimit-Policy: ขีดจำกัดเดียวกันกับขนาดหน้าต่างเป็นวินาที เช่น1;w=1, 15000;w=2592000(หน้าต่างหนึ่งวินาทีและหน้าต่าง 30 วัน)X-RateLimit-Remaining: สิ่งที่เหลืออยู่ในแต่ละหน้าต่างX-RateLimit-Reset: วินาทีที่เหลือจนกว่าแต่ละหน้าต่างจะรีเซ็ต
มีสองรายละเอียดที่สำคัญสำหรับการจัดการงบประมาณ ประการแรก คู่มือระบุว่าเฉพาะการตอบกลับที่สำเร็จและไม่มีข้อผิดพลาดเท่านั้นที่จะนับรวมในโควต้า ดังนั้นการเกิดข้อผิดพลาด 422 จากการพิมพ์ผิดจำนวนมากจะไม่กินเครดิต ประการที่สอง ตัวเลขต่อวินาทีในส่วนหัวตัวอย่างเหล่านั้น (1 คำขอต่อวินาที) เป็นภาพประกอบในเอกสาร ไม่ใช่ 50 คำขอต่อวินาทีที่โฆษณาในแผน Search ให้อ่านส่วนหัวของคุณเองแทนที่จะคาดเดา
ข้อผิดพลาดที่พบบ่อยและสิ่งที่ต้องทำ
การตรวจสอบสิทธิ์ล้มเหลวสำหรับคีย์ใหม่ คู่มือการตรวจสอบสิทธิ์ของ Brave ระบุว่าทุกคำขอต้องมี X-Subscription-Token และค่าที่หายไปหรือไม่ถูกต้องจะถูกปฏิเสธ โดยปกติแล้วจะแสดงเป็น HTTP 401 พร้อมรหัสข้อผิดพลาด token-invalid แม้ว่าเอกสารอ้างอิง API ของ Brave จะไม่ได้ระบุสถานะนี้ไว้ ตรวจสอบสามสิ่ง: ชื่อส่วนหัวถูกต้อง (ไม่ใช่ Authorization), คีย์ถูกคัดลอกโดยไม่มีช่องว่างท้าย, และแผนใช้งานอยู่บนบัญชี หากคุณไม่แน่ใจว่าทำไมรูปแบบนี้จึงแตกต่างจากการตรวจสอบสิทธิ์แบบ Bearer โปรดดู API key เทียบกับ Bearer token
422 Unprocessable Entity พารามิเตอร์อยู่นอกช่วงหรือมีรูปแบบไม่ถูกต้อง: count เกิน 20, offset เกิน 9, ค่า freshness ที่ไม่รู้จัก หรือ q ว่างเปล่า เนื้อหาจะตามโครงสร้างข้อผิดพลาดของ Brave:
{
"type": "ErrorResponse",
"error": {
"id": "<unique occurrence id>",
"status": 422,
"code": "<application error code>",
"detail": "<what went wrong>",
"meta": {}
},
"time": 0
}
อ่าน error.detail; มันจะระบุฟิลด์ที่เกิดปัญหา
429 Too Many Requests คุณถึงขีดจำกัดต่อวินาทีหรือเครดิตหมด Brave ระบุทั้ง RATE_LIMITED และ QUOTA_LIMITED เป็นรหัสข้อผิดพลาด ดังนั้นให้ตรวจสอบว่าคุณได้รับข้อผิดพลาดใด: การรอตามจำนวนวินาทีใน X-RateLimit-Reset และลองใหม่ด้วย Backoff (Brave แนะนำ 1s, 2s, 4s) จะแก้ไขปัญหาแรก และการเติมเครดิตหรือรอการรีเซ็ตรายเดือนเท่านั้นที่จะแก้ไขปัญหาที่สอง
คำถามที่พบบ่อย
Brave Search API ฟรีหรือไม่?
บางส่วน ทุกแผนจะได้รับเครดิต $5 ทุกเดือน ซึ่งเท่ากับประมาณ 1,000 คำขอค้นหา หลังจากนั้นคุณต้องจ่าย $5.00 ต่อ 1,000 คำขอ ไม่มีวิธีเปิดใช้งานแผนใดๆ โดยไม่มีบัตรเครดิต แม้ว่าคุณจะไม่เคยใช้เกินเครดิตเลยก็ตาม
ฉันจำเป็นต้องใช้คีย์แยกต่างหากสำหรับการค้นหาเว็บและปลายทาง LLM Context หรือไม่?
เอกสารอ้างอิง API ของ Brave อธิบายว่าโทเค็นถูกสร้างขึ้น “สำหรับผลิตภัณฑ์” ซึ่งชี้ให้เห็นว่าคีย์ผูกอยู่กับการสมัครสมาชิกที่สร้างขึ้นมา หากคีย์ที่ใช้งานได้บน /web/search ล้มเหลวบน /llm/context หรือปลายทาง Answers ให้ตรวจสอบว่าคีย์นั้นเป็นของแผนใดในแดชบอร์ดก่อนที่จะสรุปว่าคีย์เสีย
จะเกิดอะไรขึ้นหากคีย์ Brave API ของฉันรั่วไหล?
ยกเลิกในส่วน API Keys สร้างคีย์ใหม่ และอัปเดตตัวแปรใน Apidog เพื่อให้คำขอที่บันทึกไว้ทั้งหมดใช้ค่าใหม่พร้อมกัน จากนั้นหาสาเหตุที่คีย์รั่วไหล: การใช้ secret scanner เพื่อตรวจสอบคีย์ API ที่รั่วไหล ทั่วทั้งคลังข้อมูลและบันทึก CI ของคุณเป็นวิธีที่เร็วที่สุดในการยืนยันว่าไม่มีสิ่งอื่นใดถูกเปิดเผย
ฉันสามารถลองใช้คำค้นหาโดยไม่ต้องเขียนโค้ดได้หรือไม่?
ได้ แดชบอร์ดมีหน้า Playground สำหรับคำค้นหาเฉพาะกิจ และเครื่องมือสร้างคำขอของ Apidog ก็ทำเช่นเดียวกัน โดยมีข้อดีเพิ่มเติมคือคำขอจะถูกบันทึกและสามารถทดสอบได้ในภายหลัง
ขั้นตอนต่อไป
คุณมีบัญชี แผนที่ใช้งานอยู่ คีย์ที่มีชื่อ และคำขอที่ส่งคืนผลลัพธ์จริงจากไคลเอนต์สามราย จากจุดนี้ ไม่ว่าจะเชื่อมต่อคีย์เข้ากับ agent ผ่านเซิร์ฟเวอร์ MCP หรือสร้างสถานการณ์ทดสอบ Apidog เพื่อให้การหมุนเวียนคีย์และโควต้าที่หมดถูกตรวจพบก่อนที่ผู้ใช้ของคุณจะสังเกตเห็น ทั้งสองเริ่มต้นด้วยส่วนหัว X-Subscription-Token เดียวกันที่คุณตั้งค่าไว้ในวันนี้
