REST API · v1

Tài liệu API XuniBOX

API chỉ đọc để lấy danh sách nhạc, nghệ sĩ và thể loại từ kho XuniBOX. Mỗi chủ đề dưới đây là một trang riêng, có đường dẫn riêng để bạn chia sẻ cho đội kỹ thuật.

Ghép nhạc vào trình chỉnh sửa video

  1. 1. Tải danh sáchGọi /tracks khi mở bộ chọn nhạc, kèm /genres để dựng tab thể loại.
  2. 2. Nghe thửPhát audio_url; đó đã là đoạn preview cắt sẵn nên không cần tua.
  3. 3. Lưu IDLưu id vào draft video, không lưu URL ký tạm thời.
  4. 4. Render videoLấy URL mới bằng /tracks/:id/audio-url (hoặc /tracks/by-ids cho nhiều bài) ngay trước khi ghép audio.
Ví dụ bộ chọn nhạc
async function loadXuniBoxMusic({ query = "", genre = "" }) {
  const params = new URLSearchParams({
    q: query,
    genre,
    sort: "popular",
    limit: "30",
    page: "1"
  });

  const response = await fetch(
    `https://xunibox.vn/api/public/tracks?${params}`,
    { headers: { "X-API-Key": XUNIBOX_API_KEY } }
  );

  if (response.status === 401 || response.status === 403) {
    throw new Error("API key không hợp lệ");
  }
  if (!response.ok) throw new Error("Không thể tải kho nhạc");

  const { data, meta } = await response.json();
  return { tracks: data, pagination: meta };
}

// Khi người dùng chọn bài hát:
const audio = new Audio(selectedTrack.audio_url);
await audio.play();
Muốn tìm kiếm mượt: debounce ô nhập khoảng 300ms, limit=30 cho trang đầu, và hủy request cũ bằng AbortController khi người dùng gõ tiếp.

Sẵn sàng tích hợp?

Gửi thông tin sản phẩm để admin XuniBOX xét duyệt và cấp API key.

Xin quyền tích hợp