API v1

Uploadex API อ้างอิง

REST API สำหรับอัปโหลดไฟล์ แสดงรายการไฟล์ และจัดการเมทาดาทา ใช้ JSON ผ่าน HTTPS พร้อมการยืนยันตัวตนแบบ Bearer-token

ภาพรวม

Uploadex API ช่วยให้คุณอัปโหลดไฟล์ แสดงรายการไฟล์ และอัปเดตข้อมูลเมตาแบบโปรแกรมมิ่งในนามของเจ้าของ API key ทุกเอนด์พอยต์เป็น REST resource รับข้อมูลเข้าเป็น JSON (หรือ multipart สำหรับการอัปโหลดแบบไบนารี) และส่งข้อมูลกลับเป็น JSON ผ่าน HTTPS เท่านั้น

  • Base URL https://uploadex.net/api/v1
  • การยืนยันตัวตน Bearer token ในส่วนหัว Authorization
  • การส่งข้อมูล HTTPS เท่านั้น · TLS 1.2 หรือ 1.3
  • การเข้ารหัส UTF-8 JSON · multipart/form-data สำหรับการอัปโหลด
  • วันที่ ISO 8601 ในรูปแบบ UTC · 2026-04-21T08:12:04Z

การยืนยันตัวตน

ทุกคำขอต้องมีส่วนหัว Authorization พร้อม Bearer token สร้างและหมุนเวียนคีย์ได้จากแดชบอร์ดสำหรับนักพัฒนาของคุณ

Authorization: Bearer ux_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

คีย์ขึ้นต้นด้วย ux_live_ คีย์จะแสดงเพียงครั้งเดียวตอนสร้าง — จัดเก็บไว้ในตัวจัดการข้อมูลลับ คีย์สามารถกำหนดขอบเขตให้กับการกระทำเฉพาะได้ (files:read, files:write, upload หรือ *) และตั้งให้หมดอายุในอนาคตได้

การเข้าถึง API ต้องใช้แพ็กเกจที่เปิดใช้งานการเข้าถึง API หากบัญชีลดเป็นแพ็กเกจที่ไม่มีการเข้าถึง API คีย์ที่มีอยู่จะหยุดทำงานจนกว่าบัญชีจะอัปเกรดใหม่ เพิกถอนคีย์ที่รั่วไหลทันทีจากแดชบอร์ดสำหรับนักพัฒนา

เริ่มต้นอย่างรวดเร็ว

ดึงข้อมูลบัญชีของคุณเพื่อยืนยันว่าคีย์ใช้งานได้

# Get your account info
curl https://uploadex.net/api/v1/account \
  -H "Authorization: Bearer $UX_API_KEY"
การตอบกลับ · 200 OK
{
  "data": {
    "id":               "clxxxxxxxxxxxxxxxxxxxxxx",
    "email":            "[email protected]",
    "name":             "Your Name",
    "plan":             "PRO",
    "balance":          0,
    "totalEarnings":    0,
    "storageUsed":      52428800,
    "storageLimit":     53687091200,
    "storageFormatted": "50 MB / 50 GB",
    "fileCount":        3,
    "createdAt":        "2026-04-01T09:21:00.000Z"
  }
}

แพ็กเกจ ขีดจำกัด

ขีดจำกัดการอัปโหลดและพื้นที่จัดเก็บขึ้นอยู่กับแพ็กเกจและอาจเปลี่ยนแปลงเมื่อบัญชีอัปเกรดหรือลดแพ็กเกจ ขีดจำกัดสำหรับแพ็กเกจที่รวมการเข้าถึง API:

แพ็กเกจสูงสุด ไฟล์ ขนาดพื้นที่เก็บข้อมูล
Pro10 GB100 GB
Business50 GB1 TB

ขีดจำกัดอัตราs

การจำกัดอัตราปกป้องบริการจากทราฟฟิกที่พุ่งสูงเกินควบคุม การใช้เกินขีดจำกัดจะได้รับ 429 Too Many Requests

ขอบเขตขีดจำกัดช่วงเวลาหัวข้อ
อัปโหลด init301 minต่อ API key
ดาวน์โหลด601 minต่อ IP
บันทึกin1015 minต่อ IP
ลงทะเบียน51hต่อ IP

ข้อผิดพลาด

Errหรือ responses use stและard HTTP status codes และ a consistent JSON body.

{ "error": "Invalid or missing API key" }
สถานะความหมาย
400เนื้อหาของคำขอมีรูปแบบไม่ถูกต้องหรือไม่ผ่านการตรวจสอบความถูกต้อง
401ไม่พบหรือ API key ไม่ถูกต้อง
403คีย์นี้ขาดสโคป (scope) ที่จำเป็น (เช่น files:write)
404ไม่พบรีซอร์สนี้ หรือรีซอร์สนี้ไม่ได้เป็นของเจ้าของคีย์
413ไฟล์มีขนาดเกินขีดจำกัดขนาดไฟล์ของแพ็กเกจบัญชีนี้
429ขีดจำกัดอัตรา exceeded. Slow down และ ลองใหม่.
500ข้อผิดพลาดภายใน โปรดตรวจสอบหน้าสถานะก่อนลองใหม่

การแบ่งหน้า

List เอนด์พอยต์ use page-based pagination. Pass page (1-indexed) และ ขีดจำกัด (max 100) as query parameters.

GET /api/v1/files?page=1&limit=50

บัญชี

GET/api/v1/accountReturn บัญชีinfo, แพ็กเกจ, พื้นที่เก็บข้อมูล usage, ไฟล์ count.

Scope: no scope จำเป็น beyond a ถูกต้อง คีย์.

อัปโหลด

POST/api/v1/uploadเริ่มการอัปโหลดแบบ multipart ส่งคืน URL ที่ลงนามล่วงหน้าซึ่งไคลเอนต์ใช้ในการ PUT ชิ้นไฟล์ไปยังพื้นที่จัดเก็บออบเจ็กต์ R2
ฟิลด์ประเภทคำอธิบาย
filenamestring · requiredไฟล์ name, including extension (max 255 chars).
sizeinteger · requiredขนาดไฟล์ทั้งหมดเป็นไบต์
contentTypestring · requiredประเภท MIME (สูงสุด 200 อักขระ)

ขอบเขต: upload ส่งคืน 413 หาก size เกินขีดจำกัดของแพ็กเกจบัญชี

ไฟล์

GET/api/v1/filesแสดงรายการไฟล์ที่เป็นของคีย์ รองรับ page, limit (สูงสุด 100), status
GET/api/v1/files/:idRetrieve a single ไฟล์ by ID.
PATCH/api/v1/files/:idอัปเดต displayName, description, tags, หรือ visibility.
DELETE/api/v1/files/:idลบไฟล์และคืนโควตาพื้นที่จัดเก็บ
{
  "data": {
    "id":            "clxxxxxxxxxxxxxxxxxxxxxx",
    "slug":          "9nK2xA",
    "filename":      "demo.mp4",
    "size":          881975296,
    "sizeFormatted": "841.1 MB",
    "mimeType":      "video/mp4",
    "status":        "READY",
    "scanStatus":    "CLEAN",
    "downloads":     128,
    "views":         412,
    "tags":          ["demo"],
    "visibility":    "PUBLIC",
    "adsEnabled":    true,
    "createdAt":     "2026-04-21T08:12:04.000Z",
    "updatedAt":     "2026-04-21T08:12:04.000Z"
  }
}

ขอบเขต: GET ต้องใช้ files:read; PATCH/DELETE ต้องใช้ files:write

ต้องการปลายทางที่ไม่มีอยู่ที่นี่ใช่ไหม

เปิดตั๋วสนับสนุนและอธิบายกรณีการใช้งาน

ติดต่อฝ่ายสนับสนุน