API สำหรับนักพัฒนา
สร้างลิงก์ย่อและ QR Code จากโปรแกรมของคุณเอง ส่งคำขอ HTTPS พร้อมคีย์ API แล้วรับลิงก์ย่อ รูป QR Code และลิงก์จัดการกลับมา
1. รับคีย์ API
ตั้งชื่อคีย์ให้จำได้ แล้วกดสร้าง คีย์จะแสดงครั้งเดียว ให้คัดลอกไปเก็บไว้ในที่ปลอดภัย (เช่น ตัวแปรสภาพแวดล้อมของเซิร์ฟเวอร์) และอย่าใส่ไว้ในโค้ดฝั่งเบราว์เซอร์
2. ยืนยันตัวตน
ส่งคีย์ในส่วนหัว Authorization ของทุกคำขอ:
Authorization: Bearer qrk_YOUR_KEY3. สร้างลิงก์และ QR Code
ส่ง POST พร้อม JSON มีแค่ url ที่จำเป็น ช่องอื่นไม่บังคับ:
curl -X POST https://qrgoto.link/api/v1/links \
-H "Authorization: Bearer qrk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/menu",
"slug": "my-menu",
"maxClicks": 500,
"qrStyle": { "fg": "#111111", "bg": "#ffffff", "shape": "rounded", "template": "coffee" }
}'ผลลัพธ์ (ตัดบางส่วน):
{
"slug": "my-menu",
"shortUrl": "https://qrgoto.link/my-menu",
"qrContent": "https://qrgoto.link/q/my-menu",
"qrImage": {
"png": "https://qrgoto.link/api/v1/links/my-menu/qr?format=png",
"svg": "https://qrgoto.link/api/v1/links/my-menu/qr?format=svg"
},
"manageUrl": "https://qrgoto.link/manage/…#k=…",
"link": { "url": "https://example.com/menu", "status": "ok", "clicks": 0, … }
}ช่องที่ส่งได้
url- ลิงก์ปลายทาง (จำเป็น)
slug- ชื่อลิงก์ย่อเอง 3–32 ตัว a-z 0-9 - _ (ไม่ส่ง = สุ่มให้)
title- ชื่อเรียกไว้จำ (ผู้เข้าชมไม่เห็น)
password- รหัสผ่านที่ผู้เข้าชมต้องใส่ก่อนเปิดลิงก์
maxClicks- จำนวนครั้งสูงสุดที่เปิดได้
startsAt- เวลาเริ่มเปิด (ISO 8601 เช่น 2026-12-01T09:00:00+07:00)
expiresAt- เวลาปิด (ISO 8601)
qrStyle- ดีไซน์ QR: { fg, bg, shape: square | rounded | dots, logo: PNG data URL, template: รหัสเทมเพลตกรอบ }
รายการ API ทั้งหมด
POST /api/v1/linksสร้างลิงก์ย่อและ QR CodeGET /api/v1/linksรายการลิงก์ที่คีย์นี้สร้าง (?page=2)GET /api/v1/links/{slug}รายละเอียดและสถิติของลิงก์ (?days=7|30|90)PATCH /api/v1/links/{slug}แก้ไขปลายทาง กติกา ดีไซน์ หรือปิด/เปิด (isActive)DELETE /api/v1/links/{slug}ลบลิงก์ถาวรGET /api/v1/links/{slug}/qrรูป QR Code (?format=png|svg&size=128–2048) ใช้ได้โดยไม่ต้องมีคีย์GET /api/v1/templatesรายการเทมเพลตกรอบ (รหัสและรูปตัวอย่าง) ใช้ได้โดยไม่ต้องมีคีย์GET /api/v1/keyข้อมูลและการใช้งานของคีย์ที่ส่งมาDELETE /api/v1/keyยกเลิกคีย์ที่ส่งมา
ขีดจำกัดและข้อผิดพลาด
แต่ละคีย์สร้างลิงก์ได้ไม่เกิน 100 ลิงก์ต่อชั่วโมง (ผู้ดูแลอาจกำหนดต่างจากนี้) เกินแล้วได้รหัส 429 ข้อผิดพลาดทุกแบบตอบเป็น JSON { error, code, field } ข้อความเป็นภาษาอังกฤษ หรือตามส่วนหัว Accept-Language