TaLaem Developer Center

เชื่อมต่อระบบตรวจภัยออนไลน์ภาษาไทย

API เดียวกับที่ LINE OA และหน้าเว็บ production ใช้จริง รองรับข้อความ ภาพหน้าจอ และเสียง พร้อมผลความเสี่ยงที่อธิบายเหตุผลและแนะนำสิ่งที่ควรทำต่อ

OpenAPI 3.1JSON + multipartPublic access แบบมี rate limit

ภาพรวม

ออกแบบให้เชื่อมต่อง่ายและรับมือความเสี่ยงจริง

ตาแหลมรวมโมเดลภาษาไทย Pathumma, กฎตรวจจับ, ฐานความรู้กลโกง และนโยบายความปลอดภัยเข้าด้วยกัน ผลลัพธ์จึงไม่ได้มีเพียงคะแนน แต่บอกจุดพิรุธ เหตุผล การดำเนินการ และช่องทางหน่วยงานทางการ

ข้อควรรู้

ผล API เป็นการประเมินเบื้องต้น ไม่ใช่คำตัดสิน ห้ามใช้เป็นเหตุผลเดียวในการโอนเงิน เปิดเผยข้อมูล หรือกล่าวหาบุคคล

Quick start

ส่งข้อความแรกภายในไม่กี่นาที

cURL
curl -X POST "https://team03.aiforthai.in.th/api/v1/analyze-scam-text" \
  -H "Content-Type: application/json" \
  -d '{"text":"ตำรวจโทรบอกว่าบัญชีเกี่ยวข้องคดี ให้โอนเงินตรวจสอบ","source_channel":"web"}'

Authentication

Public access สำหรับการทดลองเชื่อมต่อ

เส้นทางวิเคราะห์เรียกได้โดยไม่ส่ง secret และมี rate limit กับ validation ป้องกันการใช้งานผิดรูปแบบ หากต้องการใช้งานในระบบองค์กร ปริมาณสูง หรือมีข้อกำหนด SLA กรุณาติดต่อบริษัท ซินเวนทรา จำกัด เพื่อกำหนดสิทธิ์และโควตาที่เหมาะสม

อย่าใส่ token ที่ไม่จำเป็น

ไม่ต้องส่ง LINE token, Pathumma key หรือรหัสลับใด ๆ มากับ request และไม่ควรฝัง secret ไว้ใน frontend

API endpoints

เลือก input ให้ตรงกับสิ่งที่ผู้ใช้ได้รับ

POST/v1/analyze-scam-textตรวจข้อความ

วิเคราะห์แชท SMS อีเมล หรือข้อความถอดเสียงภาษาไทย ความยาว 1 ถึง 8,000 ตัวอักษร

Request body
Fieldชนิดจำเป็นรายละเอียด
textstringใช่ข้อความ 1 ถึง 8,000 ตัวอักษร
source_channelstringไม่web หรือ line_oa ค่าเริ่มต้นคือ web
POST/v1/analyze-scam-imageตรวจภาพ

อ่านข้อความจากภาพด้วย OCR แล้ววิเคราะห์ต่อใน request เดียว ส่งแบบ multipart/form-data ด้วย field ชื่อ file

ไฟล์ที่รองรับ

PNG, JPEG และ WEBP ขนาดไม่เกิน 8 MB และแต่ละด้านไม่เกิน 4,096 pixels ระบบตรวจชนิดไฟล์จากเนื้อหาจริงและลบ metadata ก่อนประมวลผล

POST/v1/analyze-scam-audioตรวจเสียง

ถอดเสียงภาษาไทยแล้ววิเคราะห์รูปแบบแก๊งคอลเซ็นเตอร์ ส่งแบบ multipart/form-data ด้วย field ชื่อ file

ไฟล์ที่รองรับ

MP3, M4A, WAV, OGG และ WEBM ขนาดไม่เกิน 10 MB ความยาวไม่เกิน 5 นาที ระบบตรวจ signature และระยะเวลาจริงก่อนส่งเข้า ASR

POST/v1/report-feedbackรายงานผลคลาดเคลื่อน

ส่ง feedback เมื่อผลวิเคราะห์ไม่ตรงกับข้อเท็จจริง ต้องแนบ feedback_token ที่ได้จากผลวิเคราะห์ครั้งนั้น เพื่อป้องกันข้อมูลขยะและเชื่อม feedback กับเหตุการณ์จริง

GET/healthตรวจว่า process ทำงาน
GET/readyตรวจว่า service พร้อมรับงาน

Response reference

โครงสร้างผลวิเคราะห์

ตัวอย่าง JSON
{
  "risk_level": "red",
  "risk_score": 82,
  "score_breakdown": { "llm": 85, "rules": 90, "knowledge_base": 75, "rag": 75, "consistency": 80, "final_score": 82 },
  "red_flags": ["แอบอ้างเป็นตำรวจ", "เร่งให้โอนเงิน"],
  "matched_scam_categories": ["บัญชีม้าและตำรวจปลอม"],
  "explanation": "มีการข่มขู่และขอให้โอนเงินเพื่อตรวจสอบ",
  "recommended_actions": ["วางสายทันที", "ติดต่อ AOC 1441"],
  "official_contacts": [{ "name_th": "AOC", "phone": "1441", "purpose": "แจ้งภัยออนไลน์" }],
  "family_summary": "พบความเสี่ยงสูง ควรหยุดติดต่อและไม่โอนเงิน",
  "advisory": null,
  "disclaimer": "ตาแหลมช่วยดูให้เบื้องต้น ไม่ใช่คำตัดสิน",
  "feedback_token": "token-for-this-analysis"
}
Fieldความหมาย
risk_levelgreen, yellow หรือ red ค่าอื่นต้องถือว่าน่าสงสัย
risk_scoreคะแนน 0 ถึง 100 ไม่ใช่ความน่าจะเป็นทางสถิติ
score_breakdownคะแนนย่อยจากโมเดล กฎ similarity ของฐานความรู้ และความสอดคล้อง โดย rag เป็นชื่อเดิมของ knowledge_base ที่คงไว้ชั่วคราวเพื่อให้ client เดิมใช้งานต่อได้
red_flagsจุดพิรุธที่ตรวจพบใน input
recommended_actionsรายการสิ่งที่ผู้ใช้ควรทำต่อ เรียงตามลำดับ
official_contactsช่องทางทางการที่เกี่ยวข้อง ห้ามแทนด้วยเบอร์จากข้อความต้องสงสัย
extracted_textมีเฉพาะ API ภาพ เป็นข้อความที่ OCR อ่านได้
transcriptมีเฉพาะ API เสียง เป็นข้อความที่ ASR ถอดได้
feedback_tokentoken อายุสั้นสำหรับส่ง feedback ของผลครั้งนั้น

Errors

จัดการข้อผิดพลาดแบบคาดเดาได้

Statusกรณีที่พบสิ่งที่ client ควรทำ
413ไฟล์ใหญ่เกินเพดานลดขนาดหรือตัดเฉพาะช่วงสำคัญ
415ชนิดไฟล์ไม่รองรับแปลงเป็นรูปแบบที่ระบุในคู่มือ
422input ว่าง เสียหาย หรือไม่ผ่าน validationแสดงข้อความ detail ให้ผู้ใช้แก้ input
429เรียกถี่เกิน rate limitรอตาม header Retry-After แล้ว retry แบบ exponential backoff
502AI provider หรือ ASR ไม่พร้อมแจ้งว่าเป็นปัญหาชั่วคราวและให้ลองใหม่
500ข้อผิดพลาดภายในไม่ retry รัว บันทึกเวลาและ request context ที่ไม่ใช่ข้อมูลลับ

ทุก response มี header X-Request-ID สำหรับใช้อ้างอิงเมื่อแจ้งปัญหา โดยไม่ต้องส่งเนื้อหาหรือข้อมูลส่วนบุคคลซ้ำ

Privacy and safety

ลดข้อมูลก่อนส่งต่อและไม่บันทึกเนื้อหา request

ปกปิด PII

ข้อมูลส่วนบุคคลที่ตรวจจับได้ถูก mask ก่อนส่งข้อความไปยังโมเดลภายนอก

ไม่ log เนื้อหา

access log เก็บ method, path, status และ latency ไม่เก็บ body ของผู้ใช้

ทำความสะอาดไฟล์

ภาพถูกลบ metadata และไฟล์ชั่วคราวสำหรับตรวจเสียงถูกลบหลังใช้งาน

ผู้พัฒนาฝั่ง client ควรขอความยินยอมอย่างเหมาะสม หลีกเลี่ยงการส่ง OTP, รหัสผ่าน หรือเอกสารจริงถ้าไม่จำเป็น และไม่เก็บผลวิเคราะห์นานกว่าจุดประสงค์การใช้งาน

Operational guidance

ออกแบบ client ให้พร้อมเมื่อระบบช้าหรือไม่พร้อม

  • ระบบมี rate limit ป้องกัน abuse และอาจคืน 429
  • ตั้ง timeout ฝั่ง client อย่างน้อย 30 วินาทีสำหรับข้อความ และนานขึ้นสำหรับภาพหรือเสียง
  • แสดง loading state และป้องกันผู้ใช้กดส่งซ้ำระหว่างรอ
  • เมื่อผิดพลาด ให้บอกผู้ใช้ตรง ๆ และเสนอให้ตรวจสอบกับหน่วยงานทางการ

API Playground

ทดลองส่งข้อความไปยัง production

ข้อความด้านล่างจะถูกส่งไปยัง API จริง โปรดใช้ข้อความตัวอย่างและอย่าใส่ OTP, รหัสผ่าน หรือข้อมูลส่วนบุคคลที่ไม่จำเป็น

พร้อมทดลอง

ผลลัพธ์ JSON จะแสดงที่นี่

พร้อมใช้งาน

เริ่มจาก API หรือทดลองประสบการณ์จริงใน LINE