Chuyển tới nội dung chính

Xóa sản phẩm liên quan khỏi tin tức

API này giúp bạn gỡ một hoặc nhiều sản phẩm liên quan khỏi một bài viết tin tức. Chỉ liên kết giữa sản phẩm và bài viết bị gỡ bỏ — bản thân sản phẩm không bị xóa khỏi hệ thống.


Endpoint

🔗Endpoint Staging

http DELETE https://staging-manage.api.miniai.vn/api/external/news/{id}/items

🔗Endpoint Production

http DELETE https://manage-api.miniap.vn/api/external/news/{id}/items

Lưu ý về đường dẫn

API tin tức nằm trực tiếp dưới /api/external/news, không có tiền tố /v1 như API sản phẩm hay đơn hàng.

Xác thực (Authentication)

Mọi request phải gửi kèm API key của bạn trong header:

HeaderGiá trịYêu cầu
x-api-keyminiai-partner <API_KEY_CỦA_BẠN>Bắt buộc
Content-Typeapplication/jsonBắt buộc
Không cần gửi shopId

Hệ thống tự động xác định gian hàng (shopId) từ API key của bạn và gán vào request. Vì vậy bạn không cần gửi shopId trong body.

Tham số đường dẫn (Path Parameters)

Tham sốKiểuYêu cầuMô tả
idstringBắt buộcID của tin tức cần gỡ sản phẩm (ObjectId 24 ký tự hex)

Dữ liệu yêu cầu (Request Body)

Request DELETE có body

API này là request DELETE kèm JSON body — khác với thói quen của một số thư viện HTTP. Ví dụ với axios, body của DELETE phải đặt trong config.data: axios.delete(url, { headers, data: { newsIds: [...] } }). Với fetch hoặc curl, gửi body như request POST thông thường.

Tham số (Parameters)

TrườngKiểuYêu cầuMô tả
newsIdsstring[]Bắt buộcDanh sách ID sản phẩm cần gỡ khỏi bài viết (xem lưu ý bên dưới)
Tên trường newsIds thực chất là danh sách ID SẢN PHẨM

Dù có tên là newsIds, trường này nhận ID của sản phẩm, không phải ID tin tức — giống với API Thêm sản phẩm liên quan vào tin tức.

Gỡ sản phẩm chưa gắn là an toàn

Nếu ID sản phẩm không nằm trong danh sách liên quan của bài viết, hệ thống bỏ qua và vẫn trả về thành công (idempotent). Bạn có thể gọi lại API nhiều lần mà không gây lỗi.

{
"newsIds": [
"68c93dba802d36826bc45d01",
"68c93dba802d36826bc45d02"
]
}

Phản hồi (Response)

Thành công trả về mã 200. Phản hồi chỉ gồm cờ success, không kèm dữ liệu bài viết. Để xem danh sách sản phẩm còn lại, hãy gọi Lấy danh sách tin tức và kiểm tra trường items của bài viết.

{
"success": true
}

Lỗi thường gặp

Nguyên nhân
400Thiếu newsIds, hoặc newsIds không phải mảng chuỗi
404Không tìm thấy tin tức với id đã cho
401Thiếu header x-api-key, sai tiền tố miniai-partner , hoặc API key không hợp lệ
429Vượt giới hạn số request (xem mục Giới hạn bên dưới)
500id hoặc phần tử trong newsIds không đúng định dạng ObjectId, hoặc lỗi hệ thống
{
"statusCode": 400,
"error": "Bad Request",
"message": "Validation failed",
"validation": {
"body": {
"source": "body",
"keys": ["newsIds"],
"message": "\"newsIds\" is required"
}
}
}

Giới hạn (Rate limit)

100 request / phút

Mỗi gian hàng được gọi tối đa 100 request mỗi phút trên toàn bộ External API. Vượt quá giới hạn sẽ nhận mã 429.

Các bước tiếp theo