API Documentation
API Reference
เอกสารประกอบการใช้งาน AI-LPR REST API อย่างครบถ้วน
🔐 Authentication
ทุก API request ต้องส่ง API Key ผ่าน Header Authorization
HTTP Header
Authorization: Bearer YOUR_API_KEY
Content-Type: multipart/form-data
สำคัญ: อย่าเปิดเผย API Key ในโค้ด client-side ใช้ server-side proxy แทน
🌐 Base URL
URL
https://api.ai-lpr.com/v1
⏱️ Rate Limits
| แพ็คเกจ | Requests/วินาที | Requests/เดือน |
|---|---|---|
| Starter | 2 req/s | 1,000 |
| Basic | 10 req/s | 10,000 |
| Pro | 50 req/s | 100,000 |
| Enterprise | Custom | Unlimited |
POST
/v1/recognize
อ่านป้ายทะเบียนจากไฟล์รูปภาพ รองรับ JPEG, PNG, WebP
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
image |
file | Yes | ไฟล์รูปภาพ (JPEG, PNG, WebP) ขนาดไม่เกิน 10MB |
region |
string | No | Region code: th, asean, auto (default: auto) |
detect_vehicle |
boolean | No | ตรวจจับประเภทรถยนต์ (default: true) |
return_image |
boolean | No | คืนภาพพร้อม bounding box (default: false) |
Example Request
cURL
curl -X POST https://api.ai-lpr.com/v1/recognize \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "image=@car_photo.jpg" \ -F "region=th" \ -F "detect_vehicle=true"
Response
JSON (200 OK)
{
"success": true,
"data": {
"plate_number": "กข 1234",
"province": "กรุงเทพมหานคร",
"plate_type": "personal",
"confidence": 0.997,
"bounding_box": {
"x": 120, "y": 340,
"width": 280, "height": 80
},
"vehicle": {
"type": "sedan",
"color": "white",
"brand": "Toyota"
}
},
"processing_time": 45,
"credits_remaining": 9955
}
POST
/v1/recognize-url
อ่านป้ายทะเบียนจาก URL ของรูปภาพ
cURL
curl -X POST https://api.ai-lpr.com/v1/recognize-url \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image_url": "https://example.com/car.jpg", "region": "th" }'
POST
/v1/batch
Pro+ส่งรูปภาพหลายรูปพร้อมกัน (สูงสุด 10 รูป) สำหรับแพ็คเกจ Pro ขึ้นไป
cURL
curl -X POST https://api.ai-lpr.com/v1/batch \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "images[]=@car1.jpg" \ -F "images[]=@car2.jpg" \ -F "images[]=@car3.jpg" \ -F "region=th"
GET
/v1/history
ดึงประวัติการอ่านป้ายทะเบียนย้อนหลัง
cURL
curl https://api.ai-lpr.com/v1/history?page=1&limit=20 \ -H "Authorization: Bearer YOUR_API_KEY"
GET
/v1/usage
ดูสถิติการใช้งาน API ของบัญชี
JSON Response
{
"plan": "professional",
"period": "2026-02",
"usage": {
"total_calls": 45230,
"limit": 100000,
"remaining": 54770
},
"avg_response_time": 42
}
📦 SDK Examples
Python
Python
import ailpr client = ailpr.Client("YOUR_API_KEY") # อ่านป้ายทะเบียนจากไฟล์ result = client.recognize("car_photo.jpg") print(f"ป้ายทะเบียน: {result.plate_number}") print(f"จังหวัด: {result.province}") print(f"ความแม่นยำ: {result.confidence}") # อ่านจาก URL result = client.recognize_url("https://example.com/car.jpg") # Batch processing results = client.batch(["car1.jpg", "car2.jpg", "car3.jpg"])
Node.js
JavaScript
const { AILPR } = require('ailpr-sdk'); const client = new AILPR('YOUR_API_KEY'); // อ่านป้ายทะเบียน const result = await client.recognize('./car_photo.jpg'); console.log(`ป้ายทะเบียน: ${result.plateNumber}`); console.log(`จังหวัด: ${result.province}`);
PHP
PHP
use AILPR\Client; $client = new Client('YOUR_API_KEY'); // อ่านป้ายทะเบียน $result = $client->recognize('car_photo.jpg'); echo "ป้ายทะเบียน: " . $result->plate_number; echo "จังหวัด: " . $result->province;
⚠️ Error Codes
| Code | Message | Description |
|---|---|---|
400 |
Bad Request | รูปแบบ request ไม่ถูกต้อง |
401 |
Unauthorized | API Key ไม่ถูกต้อง |
422 |
No Plate Found | ไม่พบป้ายทะเบียนในรูปภาพ |
429 |
Rate Limit | เกิน rate limit กรุณารอแล้วลองใหม่ |
500 |
Server Error | เกิดข้อผิดพลาดภายในระบบ |
🟢 API Status
All Systems Operational
ตรวจสอบสถานะระบบได้ที่ status.ai-lpr.com