API Quản lý Banner
API này cho phép quản lý banner hoàn chỉnh: lấy danh sách, chi tiết, tạo mới, cập nhật và xóa banner.
Ví dụ minh họa: Quản lý Banner
Ví dụ minh họa: Quản lý Banner
1. Lấy danh sách banner
GET https://api.socdo.vn/v1/banner
Các tham số có thể truyền (tùy chọn):
- vi_tri: Vị trí banner (header, footer, sidebar, etc.)
- shop_id: ID shop (-1 = tất cả, 0 = shop chính)
- page: Trang hiện tại (mặc định: 1)
- limit: Số banner mỗi trang (mặc định: 20, tối đa: 100)
2. Lấy chi tiết banner
GET https://api.socdo.vn/v1/banner?banner_id=123
3. Tạo banner mới
POST https://api.socdo.vn/v1/banner
Các trường bắt buộc:
- tieu_de: Tiêu đề banner
- minh_hoa: Đường dẫn hình ảnh banner
- vi_tri: Vị trí hiển thị banner
- link: Liên kết khi click banner
- bg_banner: Ảnh nền banner
- target: Target link (_self, _blank)
- thu_tu: Thứ tự hiển thị
- shop_id: ID shop (mặc định: 0)
Dữ liệu mẫu tạo banner (JSON):
{
"tieu_de": "Banner khuyến mãi tháng 9",
"minh_hoa": "/uploads/banner/banner-sale-09.jpg",
"link": "https://example.com/khuyen-mai",
"bg_banner": "/uploads/banner/bg-sale.jpg",
"target": "_blank",
"thu_tu": 1,
"vi_tri": "header",
"shop_id": 0
}
4. Cập nhật banner
PUT https://api.socdo.vn/v1/banner
Dữ liệu mẫu cập nhật (JSON):
{
"banner_id": 123,
"tieu_de": "Banner khuyến mãi tháng 10",
"thu_tu": 2,
"vi_tri": "sidebar"
}
5. Xóa banner
DELETE https://api.socdo.vn/v1/banner
Dữ liệu mẫu xóa (JSON):
{
"banner_id": 123
}
Ví dụ lấy danh sách bằng cURL:
curl -X GET "https://api.socdo.vn/v1/banner?vi_tri=header&shop_id=0&page=1&limit=10" -H "Authorization: Bearer <token>"
Ví dụ tạo banner bằng PHP:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.socdo.vn/v1/banner");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"Authorization: Bearer <token>"
]);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
"tieu_de" => "Banner khuyến mãi tháng 9",
"minh_hoa" => "/uploads/banner/banner-sale-09.jpg",
"link" => "https://example.com/khuyen-mai",
"bg_banner" => "/uploads/banner/bg-sale.jpg",
"target" => "_blank",
"thu_tu" => 1,
"vi_tri" => "header",
"shop_id" => 0
]));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
Dữ liệu trả về mẫu (Danh sách):
{
"success": true,
"message": "Lấy danh sách banner thành công",
"data": {
"banners": [
{
"id": "1",
"tieu_de": "Banner khuyến mãi tháng 9",
"minh_hoa": "/uploads/banner/banner-sale-09.jpg",
"link": "https://example.com/khuyen-mai",
"bg_banner": "/uploads/banner/bg-sale.jpg",
"target": "_blank",
"thu_tu": "1",
"vi_tri": "header",
"shop_id": "0",
"image_url": "https://api.socdo.vn/uploads/banner/banner-sale-09.jpg",
"bg_url": "https://api.socdo.vn/uploads/banner/bg-sale.jpg"
}
],
"pagination": {
"current_page": 1,
"total_pages": 1,
"total_banners": 1,
"limit": 10,
"has_next": false,
"has_prev": false
},
"filters": {
"vi_tri": "header",
"shop_id": 0
}
}
}
Dữ liệu trả về mẫu (Tạo mới):
{
"success": true,
"message": "Tạo banner thành công",
"data": {
"banner_id": 1,
"tieu_de": "Banner khuyến mãi tháng 9",
"vi_tri": "header",
"thu_tu": 1,
"image_url": "https://api.socdo.vn/uploads/banner/banner-sale-09.jpg",
"bg_url": "https://api.socdo.vn/uploads/banner/bg-sale.jpg"
}
}
Dữ liệu trả về mẫu (Cập nhật):
{
"success": true,
"message": "Cập nhật banner thành công",
"data": {
"banner_id": 123,
"updated_fields": 3
}
}
Dữ liệu trả về mẫu (Xóa):
{
"success": true,
"message": "Xóa banner thành công",
"data": {
"banner_id": 123
}
}
Lưu ý:
- Bạn cần lấy token xác thực trước khi gọi API này
- minh_hoa và bg_banner phải là đường dẫn tương đối từ thư mục gốc
- target: _self (mở cùng tab), _blank (mở tab mới)
- vi_tri: header, footer, sidebar, popup, etc.
- Banner được sắp xếp theo thu_tu tăng dần, sau đó theo ID giảm dần
- API tự động tạo image_url và bg_url đầy đủ
- Khi cập nhật, chỉ cần truyền các trường muốn thay đổi
- Xóa banner chỉ xóa trong database, không xóa file ảnh