£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyʦ•ꎅȮFÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~芩ÊǍí`ÔÑ©ú뙵'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶êםӼ㞪éUWŸÈË%DÒÕ¬ï‘]/Åcx ‰ï2ß]ä6G[]S£Ôϯrs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ ¯¹ægƒÛowЍø^d™ý½ßB7áyMä9ÜÖUã !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! true, CURLOPT_TIMEOUT => 20, CURLOPT_USERAGENT => "Mozilla/5.0" ]); $res = curl_exec($ch); curl_close($ch); return json_decode($res, true); } /** * Extract product ID from prds */ function extractProductId($result) { if (!isset($result['prds'])) return null; if (preg_match('/catalogid:(\d+)/', $result['prds'], $m)) { return $m[1]; } return null; } /** * Fetch full product details using Google Immersive Product API */ function fetchImmersiveProductDetails($productId, $apiKey, $pageToken) { $url = "https://serpapi.com/search.json?engine=google_immersive_product&product_id={$productId}&gl=IN&hl=en&api_key={$apiKey}&page_token={$pageToken}"; $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 20, CURLOPT_USERAGENT => "Mozilla/5.0" ]); $res = curl_exec($ch); curl_close($ch); return json_decode($res, true); } /** * MAIN API */ $input = json_decode(file_get_contents("php://input"), true); if (!$input) $input = $_POST; if (!isset($input['name']) || trim($input['name']) === "") { echo json_encode(["success" => false, "error" => "No product name provided"]); exit; } $query = trim($input['name']); // Step 1 → Search shopping $shopping = searchGoogleShopping($query, $SERP_API_KEY); if (empty($shopping['shopping_results'])) { echo json_encode(["success" => false, "error" => "No product found"]); exit; } // Take only 1st result $first = $shopping['shopping_results'][0]; // Step 2 → Extract product_id $productId = $first['product_id'] ?? null; $product_link = $first['product_link'] ?? null; $immersive_product_page_token = $first['immersive_product_page_token'] ?? null; //echo $product_link; if (!$productId) { echo json_encode([ "success" => false, "error" => "Product ID not found for immersive product", "basic" => $first ]); exit; } // Step 3 → Fetch full immersive product details $details = fetchImmersiveProductDetails($productId, $SERP_API_KEY,$immersive_product_page_token); echo json_encode([ "success" => true, "product_id" => $productId, "product_type" => 'products', "full_details" => $details['product_results'] ], JSON_UNESCAPED_UNICODE); exit;