getProducts
Sayfa başına ürün nesnelerini arayın ve filtreleyin.
Açıklama
Bu yöntem, sağlanan sorgu parametrelerine (userQuery) dayanarak kategoriye sahip olmayan tüm ürün nesnelerini sayfalama ile arar. Bir IProductsResponse döndüren bir Promise döner.
Products.getProducts(
body,
langCode,
userQuery
);
Parametreler şeması
Şema
body: IFilterParams[]
İstek gövdesi. Varsayılan: []
örnek:
[
{
"attributeMarker": "price",
"conditionMarker": "mth",
"statusMarker": "waiting",
"conditionValue": 1,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
},
{
"attributeMarker": "price",
"conditionMarker": "lth",
"conditionValue": 3,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
}
]
langCode: string
Dil kodu. Varsayılan: "en_US"
örnek: "en_US"
userQuery: IProductsQuery
İsteğe bağlı sorgu parametreleri
örnek:
{
"limit": 30,
"offset": 0,
"sortOrder": "DESC",
"sortKey": "id",
"statusId": 123,
"statusMarker": "in_stock",
"conditionValue": "new",
"conditionMarker": "equals",
"attributeMarker": "color"
}
userQuery.offset(gerekli): number
Sayfalama için parametre. Varsayılan: 0.
userQuery.limit(gerekli): number
Sayfalama için parametre. Varsayılan: 30.
userQuery.sortOrder(gerekli): string
Sıralama düzeni "DESC" | "ASC". Varsayılan: "DESC".
userQuery.sortKey(gerekli): string
Sıralama için alan (varsayılan - null). Olası değerler: "id", "position", "title", "date", "price". Varsayılan: null.
userQuery.templateMarker: string | null
Ürün sayfası şablon işareti, varsayılan null.
örnek: "template_12345"
userQuery.statusMarker: string | null
Ürün sayfası durum işareti, varsayılan null.
örnek: "in_stock"
userQuery.conditionValue: string | null
Aranan değer, varsayılan null.
örnek: "new"
userQuery.attributeMarker: string | null
Değerlerin filtrelendiği dizinlenmiş niteliğin metin tanımlayıcısı, varsayılan null.
örnek: "color"
userQuery.conditionMarker: string | null
Değerlerin filtrelendiği koşul işareti, varsayılan null.
örnek: "equals"
Örnekler
Minimal örnek
const response = await Products.getProducts();
body parametresi ile örnek
const body = [ { "attributeMarker": "price", "conditionMarker": "mth", "statusMarker": "waiting", "conditionValue": 1, "pageUrls": [ "23-laminat-floorwood-maxima" ], "isNested": false, "title": "" }, { "attributeMarker": "price", "conditionMarker": "lth", "conditionValue": 3, "pageUrls": [ "23-laminat-floorwood-maxima" ], "isNested": false, "title": "" }];
const response = await Products.getProducts(body);
Örnek yanıt
{
"items": [
{
"id": 2957,
"attributeSetIdentifier": "products",
"localizeInfos": {
"title": "Cosmo"
},
"statusLocalizeInfos": {
"title": "İndirim"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 51,
"max": 150
}
},
"sku": null,
"isSync": true,
"categories": [
"catalog"
],
"attributeValues": {
"product-name": {
"type": "string",
"value": "Cosmo",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 150,
"isIcon": false,
"position": 1,
"additionalFields": [],
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "",
"isIcon": false,
"position": 2,
"additionalFields": [],
"isProductPreview": false
},
"img": {
"type": "image",
"value": [],
"isIcon": false,
"position": 3,
"additionalFields": [],
"isProductPreview": false
}
}
},
{
"id": 2955,
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Ürün"
},
"statusLocalizeInfos": {
"title": "İndirim"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 3,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 51,
"max": 150
}
},
"sku": null,
"isSync": false,
"categories": [
"catalog"
],
"attributeValues": {}
},
{
"id": 2954,
"attributeSetIdentifier": "products",
"localizeInfos": {
"title": "Kutu"
},
"statusLocalizeInfos": {
"title": "İndirim"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 150
}
},
"sku": null,
"isSync": true,
"categories": [
"catalog"
],
"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",
"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
}
}
}
],
"total": 3
}
Yanıt şeması
Şema: IProductsResponse
total: number
Bulunan toplam ürün sayısı.
örnek: 100
items: IProductsEntity[]
Ürün varlıklarının bir dizisi.
örnek:
[
{
"id": 12345,
"title": "Ürün 1"
},
{
"id": 67890,
"title": "Ürün 2"
}
]