getProductById
Lấy một đối tượng sản phẩm theo id.
Mô tả
Phương thức này truy xuất một đối tượng sản phẩm duy nhất dựa trên định danh (id) của nó từ API. Nó trả về một Promise mà khi hoàn thành sẽ trả về một đối tượng cho sản phẩm IProductsEntity.
Products.getProductById(
id*,
langCode,
isNormalized
);
Sơ đồ tham số
Sơ đồ
id(bắt buộc): số
Id sản phẩm
ví dụ: 12345
langCode: chuỗi
Mã ngôn ngữ. Mặc định: "en_US"
ví dụ: "en_US"
isNormalized: boolean
Nếu đúng, đối tượng sản phẩm sẽ được chuẩn hóa
Ví dụ
Ví dụ tối thiểu
const response = await Products.getProductById(1);
Ví dụ với các thuộc tính
const response = await Products.getProductById(1, 'en_US');
Ví dụ phản hồi
{
"id": 2954,
"attributeSetIdentifier": "products",
"localizeInfos": {
"title": "Box"
},
"statusLocalizeInfos": {
"title": "Sale"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"categories": [
"catalog"
],
"paymentStages": null,
"rating": {},
"attributeValues": {
"product-name": {
"type": "string",
"value": "product-name",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 51,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"img": {
"type": "image",
"value": {
"size": 241636,
"filename": "files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png",
"contentType": "image/png",
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png"
},
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"productPages": [
{
"id": 2847,
"pageId": 10,
"productId": 2954,
"positionId": 3190,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"test",
"similar"
],
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 582,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 582
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
}
Sơ đồ phản hồi
Sơ đồ: IProductsEntity
id: số
Định danh duy nhất.
ví dụ: 12345
localizeInfos: ILocalizeInfo
Tên của các sản phẩm, tính đến việc địa phương hóa.
ví dụ:
{}
statusIdentifier: chuỗi | null
Định danh trạng thái trang sản phẩm (có thể là null).
ví dụ: "in_stock"
statusLocalizeInfos: ILocalizeInfo
Tên trạng thái đã được địa phương hóa cho sản phẩm.
ví dụ:
{ "title": "Sale" }
attributeSetIdentifier: chuỗi | null
Tập hợp các id thuộc tính.
ví dụ: "set_12345"
position: số
Số thứ tự mục (để sắp xếp).
ví dụ: 1
price: số | null
Giá trị của giá trang sản phẩm lấy từ chỉ mục.
ví dụ: 150.00
additional: đối tượng
Giá trị bổ sung từ chỉ mục.
ví dụ:
{
"prices": {
"min": 5,
"max": 150
}
}
sku: chuỗi | null
SKU sản phẩm (Đơn vị giữ hàng), có thể là null.
ví dụ: "SKU_12345"
isSync: boolean
Chỉ báo về việc lập chỉ mục trang.
ví dụ: true
attributeValues: IAttributeValues
Mảng các giá trị thuộc tính từ chỉ mục, được biểu diễn.
ví dụ:
[
{
"id": "color",
"value": "red"
}
]
categories: chuỗi[]
Danh mục sản phẩm.
ví dụ:
[
1,
2,
3
]
isVisible: boolean
Một dấu hiệu về tính khả dụng của trang.
ví dụ: true
moduleFormConfigs: Array<IFormConfig>
Cấu hình biểu mẫu mô-đun (tùy chọn).
rating: IRating
Dữ liệu đánh giá.
isPositionLocked: boolean
Chỉ báo khóa vị trí sắp xếp (tùy chọn).
ví dụ: false
relatedIds: số[]
Id của các trang sản phẩm liên quan.
ví dụ:
[
12345,
67890
]
paymentStages: không xác định
Dữ liệu các giai đoạn thanh toán (có thể là null).
ví dụ: null
distance: số
Khoảng cách liên quan đến tìm kiếm vector (ngữ nghĩa). Chỉ có trong kết quả của tìm kiếm vector.
ví dụ: 0.42
discountConfig: Record<string, unknown>
Đối tượng cấu hình giảm giá.
ví dụ:
{}
templateIdentifier: chuỗi | null
Id người dùng của mẫu liên kết.
ví dụ: "template_12345"
shortDescTemplateIdentifier: chuỗi | null
Id người dùng của mẫu liên kết cho mô tả ngắn.
ví dụ: "short_desc_template_12345"
signedPrice: chuỗi
Giá đã ký của sản phẩm được lấy cùng với dữ liệu sản phẩm khi signPrice được thiết lập.
ví dụ: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
productPages: IProductPageRef[]
Mảng các tham chiếu trang sản phẩm liên kết sản phẩm với các trang của nó.
ví dụ:
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
productPages.id: số
Định danh duy nhất của bản ghi liên kết sản phẩm với trang.
ví dụ: 16
productPages.pageId: số
Định danh của trang mà sản phẩm được liên kết.
ví dụ: 4
productPages.productId: số
Định danh của sản phẩm.
ví dụ: 15
productPages.positionId: số
Định danh vị trí sắp xếp trong trang.
ví dụ: 244
productPages.categoryPath: chuỗi
Đường dẫn danh mục của trang mà sản phẩm thuộc về.
ví dụ: "products"
blocks: chuỗi[]
Mảng các định danh khối.
ví dụ:
[
"block_12345",
"block_67890"
]
🔒
signedPricelà token đã ký mang giá đã khóa — hãy truyền lại khi bạn tạo đơn hàng. Xem Giá sản phẩm cố định (signedPrice).
Ví dụ sử dụng
Hướng dẫn từng bước trong tài liệu:
- Lấy sản phẩm theo ID — truy xuất một sản phẩm duy nhất theo ID số của nó.
Thử nghiệm trực tiếp
Chạy phương thức này một cách tương tác trong JS SDK sandbox — kết nối URL Dự án và Token Ứng dụng của bạn khi lần đầu truy cập, sau đó mở:
- Lấy sản phẩm theo ID — truy xuất một sản phẩm duy nhất theo ID số của nó.