rdurl API
Tạo và quản lý liên kết rút gọn bằng code
Thông tin chung về API
- Mọi yêu cầu đều cần token API. Xem phần Xác thực.
- Endpoint gốc là: https://rdurl.link/api
- Chỉ hỗ trợ HTTPS.
- Mọi endpoint đều trả về một đối tượng JSON.
- Yêu cầu được gửi dưới dạng JSON (Content-Type: application/json).
- Mọi trường thời gian và dấu thời gian đều tính bằng miligiây.
- Mọi bảng mã ký tự đều là UTF-8.
Xác thực
API dùng token để xác định yêu cầu thuộc về tài khoản nào. Token tương đương mật khẩu tài khoản: ai sở hữu token đều có thể tạo và xoá liên kết của tài khoản đó.
Bước 1. Phát hành token
Đăng nhập vào bảng điều khiển và phát hành token từ menu 'Token API'. Mỗi lần phát hành sẽ tạo token mới và chỉ xem được một lần.
Bước 2. Thêm token vào yêu cầu
Chọn một trong hai cách bên dưới.
1. Authorization: Bearer (khuyến nghị)
Phương thức xác thực chuẩn của hầu hết các API công khai.
curl https://rdurl.link/api/link/create -H "Authorization: Bearer rd_YOUR_TOKEN" -H "Content-Type: application/json" -d '{ "url": "https://example.com/very/long/url" }' 2. x-api-key header
Tiện lợi cho các công cụ không hỗ trợ header Authorization dễ dàng.
curl https://rdurl.link/api/link/create -H "x-api-key: rd_YOUR_TOKEN" -H "Content-Type: application/json" -d '{ "url": "https://example.com/very/long/url" }' Bước 3. Kiểm tra token
Chạy lệnh bên dưới. Nếu danh sách liên kết được trả về, token đang hoạt động bình thường.
curl https://rdurl.link/api/link/list \ -H "Authorization: Bearer rd_YOUR_TOKEN"
Quản lý token
Token gồm rd_ kèm 32 ký tự thập lục phân. Nó chỉ xem được một lần khi phát hành, hãy giữ an toàn. Nếu nghi ngờ bị lộ, hãy thu hồi ngay trong bảng điều khiển — token sẽ ngừng hoạt động ngay lập tức.
Endpoint
/api/link/create Tạo liên kết rút gọn. Gửi URL và nhận về slug cùng liên kết rút gọn.
Tham số
urlURL cần rút gọn (bắt buộc)titleTiêu đề liên kết (tùy chọn, tối đa 100 ký tự)folderThư mục của liên kết (tùy chọn, tối đa 100 ký tự — lọc danh sách theo thư mục)domainMiền tùy chỉnh (tùy chọn, vd: example.com)
Yêu cầu
{ "url": "https://example.com/very/long/url" } Phản hồi
{
"success": true,
"message": {
"slug": "abc123",
"short": "https://rdurl.link/abc123",
"domain_no": 0,
"domain": ""
}
} /api/link/list Liệt kê liên kết của bạn theo trang, 20 liên kết/trang. Hỗ trợ tìm kiếm và lọc theo miền.
Tham số
pageSố trang (mặc định 1)domainMiền tùy chỉnh (tùy chọn, vd: example.com)searchTừ khóa (khớp một phần slug/URL)folderThư mục của liên kết (tùy chọn, tối đa 100 ký tự — lọc danh sách theo thư mục)
Yêu cầu
GET /api/link/list?page=1&domain=example.com&search=keyword
Phản hồi
{
"success": true,
"message": {
"total": 42,
"page": 1,
"list": [
{
"slug": "abc123",
"url": "https://example.com/very/long/url",
"short": "https://rdurl.link/abc123",
"clicks": 128,
"tm": 1789379625000
}
]
}
} /api/link/info Lấy chi tiết và số lượt nhấp của một liên kết.
Tham số
slugslug (bắt buộc)domainMiền tùy chỉnh (tùy chọn, vd: example.com)
Yêu cầu
GET /api/link/info?slug=abc123
Phản hồi
{
"success": true,
"message": {
"slug": "abc123",
"url": "https://example.com/very/long/url",
"short": "https://rdurl.link/abc123",
"clicks": 128,
"tm": 1789379625000
}
} /api/link/stats Thống kê lượt nhấp theo liên kết — tổng, hôm nay và top 10 quốc gia.
Tham số
slugslug (bắt buộc)domainMiền tùy chỉnh (tùy chọn, vd: example.com)
Yêu cầu
GET /api/link/stats?slug=abc123
Phản hồi
{
"success": true,
"message": {
"clicks": 128,
"clicksToday": 5,
"countries": [
{ "country": "KR", "clicks": 80 },
{ "country": "US", "clicks": 30 }
]
}
} /api/link Xoá liên kết. Liên kết toàn cục có thể khôi phục trong 30 ngày; liên kết miền tùy chỉnh bị xoá ngay lập tức.
Tham số
slugslug (bắt buộc)domainMiền tùy chỉnh (tùy chọn, vd: example.com)
Yêu cầu
DELETE /api/link
{ "slug": "abc123" } Phản hồi
{ "success": true } Giới hạn tần suất
Tối đa 10 yêu cầu/phút mỗi IP và 1.000 liên kết/ngày mỗi tài khoản. Vượt giới hạn sẽ trả về 429.
Mã lỗi
Khi thất bại, phản hồi chứa success: false và mã lỗi.
{ "success": false, "message": "api_invalid_token" } | code | status | Ý nghĩa |
|---|---|---|
api_invalid_token | 401 | Thiếu token hoặc token không hợp lệ |
link_invalid_url | 400 | URL không hợp lệ (chỉ hỗ trợ http/https) |
link_invalid_slug | 400 | Định dạng slug không hợp lệ |
link_not_found | 400 | Không tìm thấy liên kết |
domain_not_found | 400 | Không tìm thấy miền tùy chỉnh |
link_own_domain | 400 | Không thể rút gọn miền của chính bạn |
link_create_failed | 400 | Tạo liên kết thất bại |
link_rate_limit | 429 | Vượt quá giới hạn yêu cầu |