⚖️ Thai Legal Data API/MCP
กฎหมายไทยในรูปแบบ ข้อมูล ไม่ใช่ร้อยแก้ว ค้นหามาตราใดๆ แบบตรงตัว, ค้นหากฎหมาย 2,346 ฉบับตามความหมาย, ค้นหาคำพิพากษาศาลฎีกาที่ตีความมาตราที่กำหนด, และถามคำถามที่ได้รับคำตอบจากแหล่งข้อมูลที่ดึงมาเท่านั้น — พร้อมการตรวจสอบการอ้างอิงทุกครั้ง
สร้างมาเพื่อ AI agents: อินเทอร์เฟซทั้งหมดนี้ยังสามารถเข้าถึงได้ผ่าน iApp MCP server เพื่อให้ Claude, ChatGPT, Grok, Cursor หรือไคลเอนต์ MCP ใดๆ สามารถค้นคว้ากฎหมายไทยได้โดยตรง
เนื้อหาในคลังข้อมูล
| กฎหมาย | 2,346 ฉบับ · 68,235 มาตรา — ประมวลกฎหมายทั้งห้า, พ.ร.บ., พ.ร.ก., พ.ร.ฎ. และกฎกระทรวง ครอบคลุม คุ้มครองแรงงาน, ที่ดิน, PDPA, คอมพิวเตอร์, ยาเสพติด, จราจร, ประกันสังคม, ล้มละลาย, ทรัพย์สินทางปัญญา และรัฐธรรมนูญ 2560 |
| ชุดหลักที่คัดสรร | 39 ฉบับในจำนวนนั้นคือตัวบทที่ OpenThai 2.0 Legal ใช้ — ป.พ.พ., ป.อ., ป.วิ.พ., ป.วิ.อ., ประมวลรัษฎากร และชุดกฎหมายหลักทรัพย์ ระบบจะคืนชุดนี้ก่อนเสมอ |
| คำพิพากษาศาลฎีกา | 70,634 คำพิพากษา พร้อมหลักกฎหมาย (headnote) |
| ขอบเขต | ตัวบท พ.ศ. 2417 – 2569 · ฎีกา พ.ศ. 2400s – 2568 (ค่าเริ่มต้นการค้นหาคือตั้งแต่ พ.ศ. 2540) |
| การเชื่อมโยงการอ้างอิง | 99.7% ของคำพิพากษาเชื่อมโยงไปยังกฎหมายและมาตราที่อ้างถึง เพื่อให้คุณสามารถเชื่อมโยงจากมาตราไปยังคำพิพากษาที่เกี่ยวข้องได้ |
ทุกมาตราจะมีค่า in_force กำกับ และ จะไม่มีค่าที่แปลว่า "ใช้บังคับอยู่":
| ค่า | ความหมาย |
|---|---|
curated | ชุดหลัก 39 ฉบับ |
repealed | krisdika ระบุว่ายกเลิกแล้ว — 298 ฉบับ ตัดออกจากการค้นหา แต่ยังเรียกดูผ่าน /section ได้ |
unverified | นอกเหนือจากนั้น |
unverified หมายความตามตัวอักษร เพราะ krisdika ยังไม่ได้ทำเครื่องหมายกฎหมายที่ถูกยกเลิกครบทุกฉบับ —
พ.ร.บ.ยาเสพติดให้โทษ พ.ศ. 2522 ไม่มีเครื่องหมาย ทั้งที่ถูกยกเลิกโดยประมวลกฎหมายยาเสพติด พ.ศ. 2564 —
ดังนั้นการไม่มีเครื่องหมายจึงไม่ได้พิสูจน์อะไร
โปรดตรวจสอบว่ามาตรานั้นยังใช้บังคับก่อนนำไปใช้จริง ดูรายละเอียดที่ /meta
เมื่อไม่มีกฎหมายฉบับนั้นในคลัง
ถ้าถามถึงกฎหมายที่ไม่มีในคลัง API จะบอกชื่อกฎหมายฉบับนั้นตรง ๆ แทนที่จะคืนสิ่งที่ใกล้เคียงที่สุดที่มีอยู่ ผลลัพธ์ที่ความเกี่ยวข้องต่ำจะถูกตัดทิ้ง (คืน count: 0 พร้อมหมายเหตุ confidence) แทนการเติมผลลัพธ์ที่ดูดีแต่ไม่ตรง และ /ask จะปฏิเสธการตอบ (grounded: false) เมื่อไม่มีทั้งตัวบทที่ใช้บังคับและฎีกาที่เกี่ยวข้อง
Endpoints
| Method | Path | Cost |
|---|---|---|
GET | /v3/store/data/thai-legal/meta | ฟรี |
GET | /v3/store/data/thai-legal/laws | ฟรี |
GET | /v3/store/data/thai-legal/section | 0.1 IC |
GET POST | /v3/store/data/thai-legal/search | 0.1 IC |
GET POST | /v3/store/data/thai-legal/deka/search | 0.1 IC |
GET | /v3/store/data/thai-legal/deka/{case_id} | 0.1 IC |
POST | /v3/store/data/thai-legal/ask | 0.1 IC |
/meta และ /laws ฟรีถาวร — ตัวแทน (agent) ต้องเรียกใช้เพื่อสร้างคำขอที่ถูกต้อง ดังนั้นการค้นหาข้อมูลไม่ควรมีค่าใช้จ่าย
เยี่ยมชม API Key Management เพื่อดูคีย์ของคุณหรือขอคีย์ใหม่
ทดลองใช้งาน
ลองค้นหามาตรา
Example Queries (Click to try)
Add query parameters (e.g., ?holiday_type=public&days_after=30)
ค้นหาฎีกา (precedent)
Example Queries (Click to try)
Add query parameters (e.g., ?holiday_type=public&days_after=30)
ค้นหามาตรา
curl "https://api.iapp.co.th/v3/store/data/thai-legal/section?law=ประมวลกฎหมายอาญา§ion=335&with_deka=true" \
-H "apikey: YOUR_API_KEY"
{
"found": true,
"law": "ประมวลกฎหมายอาญา",
"section": "335",
"text": "ผู้ใดลักทรัพย์\n(๑) ในเวลากลางคืน\n...",
"deka": [
{ "case_id": "600/2544", "year_be": 2544,
"headnote": "เมื่อผู้เสียหายเห็นจำเลยทั้งสองกำลังลักเอามะม่วง...",
"official_url": "https://deka.supremecourt.or.th" }
]
}
หากไม่พบผลลัพธ์ จะแสดง found: false พร้อม suggestions — และยังคงเป็น HTTP 200 เพื่อให้ไคลเอนต์ไม่พยายามเรียกซ้ำในมาตราที่ถูกต้องแต่ไม่มีในดัชนี
ค้นหาคำบ รรยาย (precedent)
ตัวกรอง cites_law + cites_section ตอบคำถามที่ทนายความถามจริงๆ: คำพิพากษาฎีกาใดบ้างที่ตีความมาตรานี้?
curl -X POST "https://api.iapp.co.th/v3/store/data/thai-legal/deka/search" \
-H "apikey: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"query":"ลักทรัพย์ในเวลากลางคืน","cites_law":"ป.อ.","cites_section":"335","top_k":3}'
{
"count": 3,
"results": [
{
"case_id": "600/2544",
"year_be": 2544,
"headnote": "…ถือได้ว่าจำเลยที่ 2 ได้พูดขู่เข็ญผู้เสียหาย…อันเป็นการกระทำความผิดฐานชิงทรัพย์",
"cited": [["ป.อ.", "339"], ["ป.อ.", "335"]],
"citation_join": "exact",
"score": 0.9312,
"official_url": "https://deka.supremecourt.or.th"
}
],
"disclaimer": "ข้อมูลเพื่อการค้นคว้า มิใช่คำแนะนำทางกฎหมาย โปรดตรวจสอบกับต้นฉบับที่ศาลฎีกา"
}
ผลลัพธ์ที่ว่างเปล่าคือคำตอบที่แท้จริง เมื่อไม่มีอะไรตรงกัน คุณจะได้รับ count: 0 และข้อความแจ้ง — API จะไม่สร้างหมายเลขคดีขึ้นมาเองเพื่อเติมเต็มช่องว่าง
citation_join บอกคุณว่าคำพิพากษาเชื่อมโยงกับมาตราที่อ้างถึงอย่างไร (exact, range หรือ none) เพื่อให้คุณสามารถกรองเฉพาะการเชื่อมโยงที่มีความแม่นยำสูงเมื่อความถูกต้องสำคัญกว่าการค้นพบ
ถาม-ตอบที่อิงตามข้อมูลจริง
/ask จะดึงกฎหมายและคำพิพากษามาก่อน จากนั้นจึงตอบ เฉพาะ จากข้อมูลที่พบ
curl -X POST "https://api.iapp.co.th/v3/store/data/thai-legal/ask" \
-H "apikey: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"question":"ลักทรัพย์ในเวลากลางคืนมีโทษอย่างไร","include_deka":true}'
รับประกัน 3 ข้อ ซึ่งบังคับใช้ในโค้ด ไม่ใช่แค่จากการเขียน prompt:
- ไม่พบข้อมูล → ไม่มีการตอบ คุณจะได้รับ
grounded: falseพร้อมreason: "no_grounding"จะไม่มีการคาดเดาจากหน่วยความจำของโมเดล - หมายเลขฎีกาทุกรายการในคำตอบจะถูกตรวจสอบ กับชุดข้อมูลที่ดึงมา หากโมเดลอ้างถึงหมายเลขที่ไม่ได้ให้มา คำตอบจะถูกสร้างใหม่ภายใต้คำสั่งที่เข้มงวดขึ้น และจะถูกปฏิเสธหากเกิดขึ้นอีกครั้ง
- การอ้างอิงจะกลับมาในรูปแบบที่มีโครงสร ้าง เพื่อให้คุณสามารถแสดงผลหรือตรวจสอบได้โดยอิสระจากข้อความ
ใช้งานจาก AI agent (iapp-mcp)
API ทั้งหมดมาในรูปแบบเครื่องมือ 6 ตัวใน iApp MCP server (iapp-mcp บน PyPI) เพื่อให้ Claude Code, Claude Desktop, Cursor หรือ MCP client ใดๆ ค้นคว้ากฎหมายไทยได้โดยตรง — ไม่ต้องเขียนโค้ดเชื่อมต่อเอง
เชื่อมต่อแบบใหม่ (URL เดียว ไม่ต้องใช้ API key)
เพิ่ม remote MCP server แล้ว sign in ด้วยบัญชี iApp ไม่ต้อง copy key ใด ๆ:
https://mcp.iapp.co.th
- Claude (claude.ai / Desktop): Settings → Connectors → Add custom connector → Name
iApp AIวาง URL → Connect - Claude Code:
claude mcp add --transport http iapp-ai https://mcp.iapp.co.th - Antigravity (Gemini): แผง Agent → MCP servers → เพิ่ม
{ "iapp-ai": { "serverUrl": "https://mcp.iapp.co.th" } } - Cursor / Codex / Windsurf และ MCP client ทุกตัว — ดูคู่มือตั้งค่ารายไคลเอนต์
หรือติดตั้งแบบ local (วิธีเดิม)
Claude Code ใช้คำสั่งเดียว (ต้องมี uv):
claude mcp add iapp-mcp -s user -e IAPP_API_KEY=YOUR_API_KEY -- uvx iapp-mcp
หรือเพิ่มใน MCP config ของ client ใดก็ได้:
{
"mcpServers": {
"iapp-mcp": {
"command": "uvx",
"args": ["iapp-mcp"],
"env": { "IAPP_API_KEY": "YOUR_API_KEY" }
}
}
}
เซิร์ฟเวอร์แบบ local ทำงานผ่าน stdio — API key อยู่ในเครื่องคุณ มีเพียงการเรียก API เท่านั้นที่ออกไปข้างนอก
เครื่องมือกฎหมายทั้ง 6 ตัว
| เครื่องมือ | พารามิเตอร์ | หน้าที่ |
|---|---|---|
iapp_thai_law_list | q (ตัวกรองชื่อ ไม่บังคับ) | รายชื่อกฎหมายทั้ง 2,346 ฉบับที่จัดทำดัชนี — ฟรี ควรเรียกก่อนเพื่อให้ได้ชื่อกฎหมายที่ถูกต้อง |
iapp_thai_law_section | law, section, with_deka | ข้อความมาตราตรงตัว เช่น law ประมวลกฎหมายอาญา section 335; with_deka: true แนบฎีกาที่อ้างถึงมาตรานั้น |
iapp_thai_law_search | query, top_k (1–20 ค่าเริ่มต้น 8) | ค้นหาเชิงความหมายจาก 68,235 มาตรา โดยใช้ข้อเท็จจริงภาษาไทย และจะเตือนแทนการเดาเมื่อไม่มีกฎหมายฉบับที่ใช้บังคับ |
iapp_thai_deka_search | query, cites_law, cites_section, year_from (ค่าเริ่มต้น 2540), top_k (ค่าเริ่มต้น 5) | ค้นหาฎีกาจาก 70,634 คำพิพากษา กรองเฉพาะที่อ้างมาตราที่กำหนดได้ (ใช้อักษรย่อของศาล เช่น ป.อ.) |
iapp_thai_deka_get | case_id, include_body | ดึงคำพิพากษาตามเลขฎีกา — รับทั้ง 1234/2565 และ 1234-2565; include_body แนบเนื้อหาคำพิพากษาสูงสุด 4,000 ตัวอักษร |
iapp_thai_legal_ask | question, include_deka | คำตอบที่อิงข้อมูลจริงพร้อมการอ้างอิงที่ตรวจสอบด้วยเครื่อง หากไม่พบข้อมูลจะปฏิเสธการตอบแทนการเดา |
ตัวอย่างการใช้งาน
เมื่อเชื่อมต่อแล้ว ถามเป็นภาษาธรรมชาติได้เลย:
- "ลักทรัพย์ในเวลากลางคืนมีโทษอย่างไร อ้างมาตราและฎีกาให้ด้วย"
- "หาฎีกาที่ตีความ ป.อ. มาตรา 335 หลังปี 2560"
- "เปรียบเทียบ ป.พ.พ. 420 กับ 421 พร้อมสรุปแนวฎีกาของแต่ละมาตรา"
การเรียกเครื่องมือคิดค่าบริการเหมือน REST API — 0.1 IC ต่อคำขอ (ฟรีในช่วงโปรโมชั่นเปิดตัว); iapp_thai_law_list ฟรีถาวร
แหล่งที่มาและการอนุญาตให้ใช้สิทธิ์
คำพิพากษาศาลฎีกาเป็นบันทึกอย่างเป็นทางการของศาล ภายใต้ พ.ร.บ. ลิขสิทธิ์ พ.ศ. 2537 มาตรา 7(4) คำพิพากษาและรายงานอย่างเป็นทางการไม่ใช่ผลงานที่มีลิขสิทธิ์ ดังนั้นข้อความต้นฉบับจึงอยู่ในสาธารณสมบัติ
iApp ไม่ได้ให้การรับรองข้อความเหล่านี้ในนามของศาล ทุกผลลัพธ์มีลิงก์กลับไปยังบันทึกอย่างเป็นทางการที่ deka.supremecourt.or.th — โปรดตรวจสอบที่นั่นก่อนที่จะเชื่อถือคำพิพากษาในการใช้งานจริง รายงานข้อผิดพลาดไปที่ legal@iapp.co.th
ข้อจำกัด
- คลังข้อมูลครอบคลุมคำพิพากษาที่ปรากฏในชุดข้อมูลต้นฉบับ; ไม่ใช่คลังเอกสารทั้งหมดของศาลฎีกา
/metaจะรายงานสิ่งที่ถูกจัดทำดัชนีอย่างแม่นยำ - การค้นหาจะเริ่มต้นที่ พ.ศ. 2540 เป็นต้นไป เนื่องจากคำพิพากษาเก่ากว่ามีการอ้างอิงหมายเลขมาตราที่อ าจมีการเปลี่ยนแปลง กำหนด
year_fromให้ต่ำกว่าเพื่อรวมคำพิพากษาเหล่านั้น - การค้นหาคำบรรยาย (Precedent search) จะจับคู่กับ หัวข้อ (หลักกฎหมาย) ไม่ใช่เนื้อหาทั้งหมด
/deka/{id}?include=bodyจะแสดงผลสูงสุด 4,000 อักขระ API นี้เป็นบริการดึงข้อมูล ไม่ใช่การแจกจ่ายคลังเอกสารของศาลในปริมาณมาก- ไม่ใช่คำแนะนำทางกฎหมาย
การสนับสนุน
- อีเมล: sale@iapp.co.th · การแก้ไข: legal@iapp.co.th
- โทรศัพท์: 086-322-5858
- Discord: iApp Technology