VI | EN
Nhắn Messenger
Dành cho developer

Lấy chi tiết một video Shopee Video — API Shopee Video

v2.video.get_video_detail · gọi qua Quantri360 bằng một API key cho chính tài khoản / tài sản bạn đã kết nối và ủy quyền — 360 lo việc ký request và làm mới phiên đăng nhập bạn đã cấp.

v2.video.get_video_detail

GET/api/v2/video/get_video_detailGọi qua 360: GET https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail
Mô tả API

Chi tiết MỘT video: thông tin bài đăng, trạng thái, lượt xem / thích / bình luận, sản phẩm gắn, cài đặt ghép / song ca, hẹn giờ đăng, nhãn nội dung AI.

  • Video đã đăng mà gửi video_upload_id → error_param "posted video must use post_id query".

Request

Địa chỉ

GET https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail

Xác thực & gian hàng

TênVị tríKiểuMẫuMô tả
AuthorizationheaderheaderBearer q360_live_ab12cd34_…Khóa API của brand (tạo ở mục API key). Bắt buộc với mọi request. Brand suy từ key — không truyền mã brand.
platform_shop_idquerystring100001Gian hàng (lấy ở GET /v1/platforms → shops[].platform_shop_id). BẮT BUỘC khi brand có > 1 gian hàng trên nền tảng; 360 bỏ tham số này trước khi chuyển tiếp.

Tham số request

TênVị tríKiểuBắt buộcMẫuMô tả
post_idquerystringKhôngdemo-post-idMã bài đăng — dùng cho video ĐÃ ĐĂNG.
video_upload_idquerystringKhôngdemo-video-uploadMã tệp video — chỉ dùng cho bản NHÁP. Chỉ gửi một trong hai tham số.

Ví dụ request

curl -s "https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail?post_id=demo-post-id" \
  -H "Authorization: Bearer $KEY"
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.get(
    "https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail",
    params={
        "post_id": "demo-post-id"
    },
    headers={"Authorization": f"Bearer {KEY}"},
    timeout=60,
)
print(r.status_code)
print(r.json())
Node.js
const KEY = 'q360_live_...'; // khóa API của brand
const url = new URL('https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail');
for (const [k, v] of Object.entries({"post_id":"demo-post-id"})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
  method: 'GET',
  headers: { Authorization: `Bearer ${KEY}` },
});
console.log(r.status, await r.json());
PHP
<?php
$key = 'q360_live_...'; // khóa API của brand
$url = 'https://partner.quantri360.com/v1/shopee_video/api/v2/video/get_video_detail' . '?' . http_build_query(['post_id' => 'demo-post-id']);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key]);
$res = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status, "\n", $res;

Response

Tham số phản hồi (nguyên của Shopee Video)

TênKiểuMẫuMô tả
request_idstringd52ca43b277a4f9292fb8be658bfd33dMã request của Shopee để tra lỗi.
errorstringMã lỗi Shopee; rỗng = thành công.
messagestringMô tả lỗi.
responseobjectCùng cấu trúc một phần tử của get_video_list.
post_idstringdemo-post-id
video_upload_idstring
statusint300`200` nháp · `300` đã đăng · `400` đã xóa · `500` hẹn giờ · `600` hẹn giờ lỗi.
captionstring
post_timetimestamp1792120504043Mili giây.
durationint40310Mili giây.
viewsint
likesint
commentsint
has_performancebool
item_listobject[]Sản phẩm gắn (item_id, item_name, giá, tồn…).
shop_idint64Mã gian hàng của sản phẩm.
item_idint64Mã sản phẩm.
item_namestringTên sản phẩm.
custom_item_namestringTên sản phẩm hiển thị trong video, tối đa 255 ký tự.
item_cover_image_urlstringĐường dẫn ảnh bìa sản phẩm.
min_pricefloatGiá thấp nhất của sản phẩm.
max_pricefloatGiá cao nhất của sản phẩm.
stockint64Số lượng tồn kho của sản phẩm.
allow_infoobject
allow_stitchbooleanCó cho phép ghép video hay không.
allow_duetbooleanCó cho phép song ca hay không.
scheduled_infoobject | nullChỉ có thông tin với video hẹn lịch; video khác có thể trả null.
scheduled_postbooleanCó hẹn giờ đăng video hay không.
scheduled_post_timetimestampThời điểm hẹn đăng, Unix mili giây; phải có khi scheduled_post=true và để trống khi scheduled_post=false.
update_timetimestampMili giây.
video_urlstringĐường dẫn phát video.
cover_image_urlstringĐường dẫn ảnh bìa video.
aigc_labelboolfalseVideo có nội dung do AI tạo / hỗ trợ.

Mẫu phản hồi

{
  "error": "",
  "message": "",
  "request_id": "demo-request",
  "response": {
    "post_id": "demo-post-id",
    "video_upload_id": "demo-video-upload",
    "video_url": "https://example.com/demo-video.mp4",
    "caption": "Video giới thiệu sản phẩm mẫu",
    "post_time": 1792120504043,
    "duration": 40310,
    "status": 300,
    "item_list": [
      {
        "shop_id": 100001,
        "item_id": 900002,
        "item_name": "Sản phẩm mẫu"
      }
    ]
  }
}

Mã lỗi của Shopee Video (8)

Bấm để xem
MãÝ nghĩa
error-paramvideo_upload_id không hợp lệ.
error_paramTham số sai / thiếu / sai kiểu — xem `message` để biết tham số nào.
unauthorizedNgười dùng chưa được cấp quyền sử dụng tính năng.
error_authỦy quyền gian hàng cho 360 đã hết hạn hoặc bị thu hồi (360 đã tự làm mới token một lần) — chủ gian hàng kết nối lại Shopee trong Partner.
error_limitChạm hạn mức gọi Shopee trong ngày của kết nối — 360 trả kèm thời điểm thử lại; giảm tần suất gọi.
error_rate_limitGọi quá nhanh — chờ vài giây rồi gọi lại (360 cũng giới hạn theo key: 429 + Retry-After).
user_no_linkedTài khoản chưa liên kết với 360 — kết nối lại trong Partner.
user_bannedTài khoản đang bị Shopee khóa, mọi API tạm ngưng tới khi gỡ khóa.

Bắt đầu dùng

  1. Đăng ký tài khoản Partner
  2. Mở loại dữ liệu thuộc nhóm Video ở trang nền tảng
  3. Tạo API key (tick kênh Shopee Video)
  4. Gọi theo ví dụ ở trên