import requests # Datos de conexión (basados en lo que vi en el código) shop_url = "hazard-mexico.myshopify.com" token = "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" # Tomado de mis registros previos o se asume correcto headers = {'X-Shopify-Access-Token': token} sku = "HRS-POL-BLUKNT-M-WHT-S" # Primero buscamos la variante para obtener el inventory_item_id search_url = f"https://{shop_url}/admin/api/2024-01/products.json?handle=blue-knit-collar-white-polo" # Aproximado por el título en la imagen # O mejor buscamos por SKU usando el endpoint de variantes si fuera posible, pero probemos buscando el producto. # En realidad, como no tengo el ID de la variante a mano, voy a buscarla por SKU en el endpoint de búsqueda de productos si existe o listando. print(f"--- DIAGNÓSTICO PARA SKU: {sku} ---") # Intentemos obtener todas las ubicaciones primero para ver qué IDs tienen loc_url = f"https://{shop_url}/admin/api/2024-01/locations.json" resp_loc = requests.get(loc_url, headers=headers) locations = resp_loc.json().get('locations', []) print("\nUBICACIONES EN SHOPIFY:") for l in locations: print(f"ID: {l['id']} - Nombre: {l['name']}") # Ahora buscamos el producto para obtener el inventory_item_id del SKU # Como no sé el ID del producto, voy a buscar en los primeros productos prod_url = f"https://{shop_url}/admin/api/2024-01/products.json?limit=50" resp_prod = requests.get(prod_url, headers=headers) products = resp_prod.json().get('products', []) target_variant = None for p in products: for v in p['variants']: if v['sku'] == sku: target_variant = v break if target_variant: break if target_variant: inv_item_id = target_variant['inventory_item_id'] print(f"\nVARIANTE ENCONTRADA: {target_variant['id']}") print(f"Inventory Item ID: {inv_item_id}") # Ahora pedimos los niveles de inventario inv_url = f"https://{shop_url}/admin/api/2024-01/inventory_levels.json?inventory_item_ids={inv_item_id}" resp_inv = requests.get(inv_url, headers=headers) levels = resp_inv.json().get('inventory_levels', []) print("\nNIVELES DE INVENTARIO PARA ESTE ITEM:") for lvl in levels: print(f"Location ID: {lvl['location_id']} - Disponible: {lvl['available']}") else: print("\nNo se encontró la variante por SKU en los primeros 50 productos.")