# API ข้อมูลเปิด

ทุกอย่างที่เผยแพร่บน Tempussit — คอร์ส บทความบล็อก คำศัพท์ และคำถามที่พบบ่อย — มีให้ในรูปแบบ JSON สำหรับโปรแกรมและผู้ช่วย AI อ่านอย่างเดียว ไม่ต้องใช้คีย์หรือลงทะเบียน

## มีอะไรบ้าง

**`GET /data/v1/index.json`**

สารบัญ: ภาษาของเว็บไซต์ แคตตาล็อกคอร์ส และลิงก์ไปยังไฟล์ข้อมูลทั้งหมด

**`GET /data/v1/courses/{languageKey}.json`**

คอร์สของภาษาแคตตาล็อกหนึ่งภาษา หน้าละ 100 คอร์ส (พารามิเตอร์ ?page=)

**`GET /data/v1/course/{slug}.json`**

การ์ดของคอร์สที่เผยแพร่หนึ่งคอร์ส: ชื่อ คำอธิบาย ผู้สอน ภาษา ราคา หลักสูตร ที่อยู่หน้า และภาพปก

**`GET /data/v1/{languageCode}/{kind}.json`**

คำศัพท์ คำถามที่พบบ่อย หมวดและบทความบล็อกในภาษาหนึ่งของเว็บไซต์

**`GET /data/v1/openapi.json`**

คำอธิบายการตอบกลับทั้งหมดในรูปแบบ OpenAPI 3.1

## ตัวอย่างคำขอ

```
curl https://tempussit.com/data/v1/index.json
curl https://tempussit.com/data/v1/courses/th.json
curl https://tempussit.com/data/v1/course/{slug}.json
curl -I https://tempussit.com/data/v1/th/faq.json

fetch("https://tempussit.com/data/v1/th/glossary.json")
  .then(response => response.json());
```

## เงื่อนไข

- อ่านอย่างเดียว: รับเฉพาะคำขอ GET และ HEAD
- จำนวนคำขอต่อที่อยู่ IP ต่อนาทีมีจำกัด หากเกินจะตอบ 429 พร้อมส่วนหัว Retry-After
- แคชการตอบกลับได้ 5 นาที และเรียกจากเบราว์เซอร์บนเว็บไซต์ใดก็ได้ (Access-Control-Allow-Origin: \*)
- เฉพาะสิ่งที่มองเห็นบนหน้าสาธารณะ: ไม่มีฉบับร่าง การซื้อ หรือข้อมูลส่วนบุคคล
- เวอร์ชันเป็นส่วนหนึ่งของที่อยู่ (/data/v1/) ที่อยู่เดิมที่ไม่มีเวอร์ชันยังคงใช้งานได้

อัปเดต ที่ 9 พฤศจิกายน ค.ศ. 2026
