How to implement the "SearchProduct" API
Catalog management
When implementing the endpoint, the method must be GET.
You will receive the following data in the queryString:
query: Refers to the search term.
from: The from parameter defines the number of hits to skip, defaulting to 0.
size: Total items per page. Default is 10.
teamId: Id of the team that is carrying out this search.
userId: Id of the user who is performing this search.
userEmail: Email of the user who is performing this search.
integrationId: Id of the integration being used.
searchType: The type of query, whether by TEXT , ID, SKUID, URL and REFERENCE. Default is TEXT.
Example:
curl --location 'https://your_endpoint?searchType=TEXT&query=blue shirt&size=15&from=0&teamId=123&userId=1234&[email protected]&integrationId=abcd-1234'Whenever a product is consulted by OmniChat, this api will be called, and it must return a list of products following the pattern below:
[
{
"blocked": false,
"objectId": "12345",
"name": "iPhone 14 Pro",
"productDescription": "Produto de teste",
"externalUrl": "https://www.apple.com/br/iphone-14-pro/",
"externalProduct": true,
"mainVariant": {
"objectId": "12345-1",
"externalImageURL": "https://www.apple.com/newsroom/images/product/iphone/geo/Apple-iPhone-14-Pro-iPhone-14-Pro-Max-deep-purple-220907-geo_inline.jpg.large.jpg",
"erpId": "12345-2",
"name": "iPhone 14 Pro 128gb Purple",
"visible": true,
"price": 9499.99,
"salePrice": 9400,
"quantity": 30,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Purple"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
},
"variants": [
{
"objectId": "12345-1",
"externalImageURL": "https://www.apple.com/newsroom/images/product/iphone/geo/Apple-iPhone-14-Pro-iPhone-14-Pro-Max-deep-purple-220907-geo_inline.jpg.large.jpg",
"erpId": "54321-1",
"name": "iPhone 14 Pro 128gb Purple",
"visible": true,
"price": 9499.99,
"salePrice": 9400,
"quantity": 30,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Purple"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
},
{
"objectId": "12345-2",
"externalImageURL": "https://store.storeimages.cdn-apple.com/4982/as-images.apple.com/is/iphone-14-pro-gold-witb-202209_FMT_WHH?wid=560&hei=744&fmt=jpeg&qlt=90&.v=1660789320262",
"erpId": "54321-2",
"name": "iPhone 14 Pro 128gb Gold",
"visible": true,
"price": 9399.99,
"salePrice": 9200,
"quantity": 28,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Gold"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
},
{
"objectId": "12345-3",
"externalImageURL": "https://www.apple.com/newsroom/images/product/iphone/geo/Apple-iPhone-14-Pro-iPhone-14-Pro-Max-silver-220907-geo_inline.jpg.large.jpg",
"erpId": "54321-2",
"name": "iPhone 14 Pro 128gb Silver",
"visible": true,
"price": 9499.99,
"salePrice": 9499.99,
"quantity": 0,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Gold"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
}
],
"sellOutOfStock": false,
"trackInventory": true
},
{
"blocked": false,
"objectId": "123456",
"name": "iPhone 13",
"productDescription": "Produto de teste",
"externalUrl": "https://www.apple.com/br/shop/buy-iphone/iphone-13",
"mainVariant": {
"objectId": "123456-1",
"externalImageURL": "https://store.storeimages.cdn-apple.com/4982/as-images.apple.com/is/iphone-13-blue-witb-2021_FMT_WHH?wid=560&hei=744&fmt=jpeg&qlt=90&.v=1638579080000",
"erpId": "123456-2",
"name": "iPhone 13 128gb blue",
"visible": true,
"price": 6499.99,
"salePrice": 6400.5,
"quantity": 30,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Purple"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
},
"variants": [
{
"objectId": "123456-1",
"externalImageURL": "https://store.storeimages.cdn-apple.com/4982/as-images.apple.com/is/iphone-13-blue-witb-2021_FMT_WHH?wid=560&hei=744&fmt=jpeg&qlt=90&.v=1638579080000",
"erpId": "123456-2",
"name": "iPhone 13 128gb blue",
"visible": true,
"price": 6499.99,
"salePrice": 6400.5,
"quantity": 30,
"sellerId": "1",
"sellerName": "Apple",
"width": 7.15,
"height": 14.8,
"variantLength": 1,
"weight": 206,
"variations": [
{
"key": "Cor",
"value": "Blue"
},
{
"key": "Memรณria",
"value": "128gb"
}
]
}
],
"sellOutOfStock": false,
"trackInventory": true
}
]
If you want to use omnichat's collections functionality, you need to implement the search endpoint by id (more details in "How to implement the "SearchProduct by Id" API").
Updated 29 days ago