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

Create a new live stream, include basic information, like cover, title, description, type (test live or normal live) — API Shopee Live

v2.livestream.create_session · 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.livestream.create_session

POST/api/v2/livestream/create_sessionGọi qua 360: POST https://partner.quantri360.com/v1/shopee_live/api/v2/livestream/create_session
Endpoint ghi — thay đổi dữ liệu trên Shopee Live. Key phải được tạo với tick "Cho phép gọi API ghi", nếu không sẽ nhận 403 write_not_allowed. Mỗi lần gọi được ghi nhật ký.
Mô tả API

Tạo phiên live mới với tiêu đề, mô tả, ảnh bìa và chế độ thử nghiệm.

  • Gọi qua /v1/shopee_live/api/v2/livestream/create_session với Authorization: Bearer <key>. 360 tự gắn token và chữ ký.
  • API GHI: thay đổi dữ liệu thật trên Shopee; cần key có quyền ghi (can_write) và gói mở module Livestream. Tạo phiên live mới với tiêu đề, mô tả, ảnh bìa và chế độ thử nghiệm.
  • HTTP 200 vẫn có thể có lỗi nghiệp vụ trong error/message; chỉ coi là thành công khi error rỗng. Với danh sách kết quả, kiểm từng phần tử success_list và failure_list.
  • Áp dụng TW, ID, TH, PH, MY, SG, VN.
  • session_id lấy từ create_session. Luồng phiên live: create_session → start_session → end_session.
  • Phải kết thúc phiên trước nếu phiên đó vẫn đang live.
  • cover_image_url lấy từ livestream/upload_image; API tải ảnh này chưa gọi được qua 360 nên cần có sẵn link ảnh bìa.
  • Tiêu đề và mô tả không được chứa nội dung nhạy cảm.

Request

Địa chỉ

POST https://partner.quantri360.com/v1/shopee_live/api/v2/livestream/create_session

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ả
titlebodystringCóPhiên giới thiệu sản phẩmTiêu đề phiên live; khi tạo hoặc cập nhật tối đa 200 ký tự.
descriptionbodystringKhôngGiới thiệu sản phẩm mẫuMô tả phiên live; khi tạo hoặc cập nhật tối đa 200 ký tự.
cover_image_urlbodystringCóhttps://example.com/demoLink ảnh bìa phiên live lấy từ livestream/upload_image.
is_testbodybooleanKhôngfalsetrue nếu phiên chỉ dùng để thử nghiệm.

Ví dụ request

curl -s -X POST "https://partner.quantri360.com/v1/shopee_live/api/v2/livestream/create_session" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Phiên giới thiệu sản phẩm","description":"Giới thiệu sản phẩm mẫu","cover_image_url":"https://example.com/demo","is_test":false}'
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.post(
    "https://partner.quantri360.com/v1/shopee_live/api/v2/livestream/create_session",
    params={},
    json={
        "title": "Phiên giới thiệu sản phẩm",
        "description": "Giới thiệu sản phẩm mẫu",
        "cover_image_url": "https://example.com/demo",
        "is_test": False
    },
    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_live/api/v2/livestream/create_session');
for (const [k, v] of Object.entries({})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
  method: 'POST',
  headers: { Authorization: `Bearer ${KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({"title":"Phiên giới thiệu sản phẩm","description":"Giới thiệu sản phẩm mẫu","cover_image_url":"https://example.com/demo","is_test":false}),
});
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_live/api/v2/livestream/create_session' . '?' . http_build_query([]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key, 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"title":"Phiên giới thiệu sản phẩm","description":"Giới thiệu sản phẩm mẫu","cover_image_url":"https://example.com/demo","is_test":false}');
$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 Live)

Mẫu thành công dùng dữ liệu minh họa; kiểm error và message trước khi đọc response.

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.
responseobjectKết quả nghiệp vụ.
session_idint64900001Mã phiên live lấy từ create_session; phiên phải tồn tại và thuộc tài khoản đang gọi.

Mẫu phản hồi

{
  "error": "",
  "message": "",
  "request_id": "demo-request",
  "response": {
    "session_id": 900001
  }
}

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

Bấm để xem
MãÝ nghĩa
error_dataDữ liệu không tồn tại hoặc không hợp lệ cho thao tác (vd mã không có, loại yêu cầu không cho phép).
error_paramTham số sai / thiếu / sai kiểu — xem `message` để biết tham số nào.
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_serverLỗi hệ thống Shopee — thử lại sau ít phút.
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 Livestream ở trang nền tảng
  3. Tạo API key (tick kênh Shopee Live)
  4. Gọi theo ví dụ ở trên