API บีบอัดรูปภาพ
บีบอัด JPG, PNG, WebP และ AVIF ด้วย API บีบอัดรูปภาพของ Bitinz ได้รูปที่เล็กลงในเวิร์กโฟลว์ พร้อมโควตารายเดือนฟรีสำหรับทุกบัญชี
ดาวน์โหลดข้อกำหนด OpenAPIการยืนยันตัวตน
สร้างคีย์ API ในแดชบอร์ด แล้วใช้การยืนยันตัวตนแบบ HTTP Basic (ผู้ใช้ api รหัสผ่าน = คีย์) หรือส่ง Authorization: Bearer <key>
curl --user api:YOUR_API_KEY ... # or curl -H "Authorization: Bearer YOUR_API_KEY" ...
บีบอัดรูปภาพ
ส่งรูปด้วย POST เป็นเนื้อหาคำขอไปที่ /api/v1/shrink พารามิเตอร์คิวรีเพิ่มเติม: level (fast / default / best) และ filename
curl -i --user api:YOUR_API_KEY \ --data-binary @photo.jpg \ "https://bitinz.com/api/v1/shrink?level=default&filename=photo.jpg"
การตอบกลับ
คำขอที่สำเร็จมักตอบกลับ 201 พร้อม status เป็น done ส่วนหัว Location และ output.url ชี้ไปยังการดาวน์โหลด Compression-Count คือการใช้งานของคุณในเดือนนี้
HTTP/1.1 201 Created
Location: https://bitinz.com/api/v1/results/<id>/download
Compression-Count: 1
{
"id": "<id>",
"status": "done",
"input": { "size": 2277375, "type": "image/jpeg" },
"output": { "size": 992450, "type": "image/jpeg", "ratio": 0.436,
"url": "https://bitinz.com/api/v1/results/<id>/download" },
"unchanged": false,
"expiresAt": "2026-10-02T12:00:00Z"
}รับคำขอแล้วและกำลังรอ: 202
เมื่อคิวยาวขึ้น อาจได้ 202 Accepted พร้อม status เป็น pending โดย Location จะชี้ไปยังสถานะงาน ไม่ใช่การดาวน์โหลด โปรดเก็บ URL นี้ไว้และตรวจสอบสถานะแทนการส่งรูปซ้ำ
HTTP/1.1 202 Accepted
Location: https://bitinz.com/api/v1/results/<id>
{
"id": "<id>",
"status": "pending",
"input": { "size": 2277375 },
"expiresAt": "2026-10-02T12:00:00Z"
}ตรวจสอบสถานะงาน
ส่ง GET /api/v1/results/{id} ไปยัง URL ที่ได้จาก Location ทุก 1–2 วินาที pending หมายถึงอยู่ในคิว (queuePosition บอกลำดับปัจจุบัน) processing หมายถึงกำลังบีบอัด เมื่อ status เป็น done ให้ดาวน์โหลดจาก downloadUrl ส่วน failed หมายถึงงานไม่สำเร็จ โดย failure ระบุประเภท และ note อธิบายสาเหตุ
curl "https://bitinz.com/api/v1/results/<id>"
{
"id": "<id>",
"status": "done",
"available": true,
"downloadUrl": "/api/v1/results/<id>/download",
"outputSize": 992450,
"unchanged": false
}ดาวน์โหลดผลลัพธ์
ดาวน์โหลดผลลัพธ์ได้จนกว่าจะหมดอายุ หลังจากนั้น URL จะตอบกลับ 410
curl -o photo.min.jpg "https://bitinz.com/api/v1/results/<id>/download"
รหัสข้อผิดพลาด
{ "error": { "code": "...", "message": "..." } }
| 401 unauthorized / invalid_key | ไม่มีคีย์ ไม่รู้จักคีย์ หรือคีย์ถูกเพิกถอน |
| 413 too_large | รูปมีขนาดเกินขีดจำกัด |
| 415 unsupported_image | เส้นทางแบบซิงโครนัส: ไม่ใช่รูป PNG, JPEG, WebP หรือ AVIF ที่รองรับ |
| 422 image_too_large | เส้นทางแบบซิงโครนัส: รูปมีพิกเซลมากเกินกว่าที่บริการประมวลผลได้ |
| failed / unsupported | งานในคิวจะรายงานรูปที่ไม่รองรับในผลลัพธ์เป็น status: failed และ failure: unsupported |
| failed / too_large | งานในคิวจะรายงานรูปที่เกินขีดจำกัดการประมวลผลเป็น status: failed และ failure: too_large |
| 429 quota_exceeded | ใช้โควตารายเดือนหมดแล้ว |
| 503 busy | เซิร์ฟเวอร์ไม่ว่าง โปรดลองอีกครั้งในอีกสักครู่ |