Add Products to Cart
add_products_to_cartFull Description
Add products to cart. Requires cart_id, store_id, items.
Parameters
cart_idstringCart ID
store_idstringStore ID
itemsobjectLIAM → quantity dict (>= 1)
nullBuy groceries online
PC Express provides 7 tools that can be used to interact with its services.
add_products_to_cartAdd products to cart. Requires cart_id, store_id, items.
cart_idstringCart ID
store_idstringStore ID
itemsobjectLIAM → quantity dict (>= 1)
nullclear_cartClear cart. Requires cart_id.
cart_idstringCart ID
get_cartGet cart information. Requires cart_id.
cart_idstringCart ID
remove_products_from_cartRemove products from cart. Requires cart_id, store_id, items.
cart_idstringCart ID
store_idstringStore ID
itemsobjectLIAM → quantity to remove (>= 1)
nullsearch_for_productsSearch the product catalog for grocery products. Supports single or multiple product searches. For recipes: First provide the recipe with a friendly message, then search for ingredients. CRITICAL: Check conversation context for: 1) store_id → cart_id mapping (provide if exists, omit to auto-create), 2) Recipe/ingredients list from search_for_stores (use as 'term' parameter). If no ingredients in context, ask user what to search for. Store returned cart_id in context for future use. IMPORTANT: Infer banner from search_for_stores results - do not ask user. When products are displayed, direct users to use UI buttons to add products or adjust quantities. If products not found, offer to search with alternative keywords or add found products to cart.
bannerstringBanner name for store display. Available: ['LOBLAW', 'SUPERSTORE', 'NOFRILLS', 'FORTINOS', 'MAXI', 'INDEPENDENT', 'VALUMART', 'ZEHRS', 'RASS', 'PROVIGO', 'INDEPENDENTCITYMARKET', 'DOMINION', 'WHOLESALECLUB']. Infer from search_for_stores results - do not ask user.
store_idstringStore identifier (e.g., '10001' for Loblaws Pickering). Can be obtained from search_for_stores results.
termarrayList of search terms. Retrieve from conversation context (ingredients from search_for_stores). If not in context, ask user. Single product: ['milk']. Multiple: ['milk', 'bread', 'eggs']. Tool automatically selects search method based on term count.
cart_idstringCart ID for personalized results. Optional. Check context for store_id → cart_id mapping. If exists, provide it. If not, omit to auto-create. Store returned cart_id in context. Do not show cart_id to user - internal identifier only.
nullnum_resultsintegerNumber of top results to return per search term (for single term searches only). For multiple term searches, returns 1 result per term.
10postal_codestringPostal code for cart creation (if cart_id not provided). From search_for_stores results.
nullsearch_for_storesSearch for nearby stores by postal code. Finds stores with diverse brands automatically. REQUIRES: postal code only (no banner needed). Ask user for postal code if not provided. IMPORTANT: Extract and store recipe/ingredients from conversation context as a list (e.g., ['turkey', 'potatoes', 'gravy']) for later product searches. Invoke when LLM is unsure about available stores.
postal_codestringPostal code to search nearby stores (e.g., 'M5V 0R9'). Required. Ask user if not provided. Cannot be empty.
update_products_in_cartUpdate product quantities in cart. Sets NEW quantity. Requires cart_id, store_id, items.
cart_idstringCart ID
store_idstringStore ID
itemsobjectLIAM → quantity (>= 0). Sets NEW quantity. 0 removes.
null