{"name":"Chemical Supply Chain Tracker","nodes":[{"id":"schedule","type":"n8n-nodes-base.scheduleTrigger","name":"Daily Supply Chain Check","position":[250,300],"parameters":{"rule":{"interval":[{"field":"cronExpression","expression":"0 7 * * 1-5"}]}}},{"id":"fetchInventory","type":"n8n-nodes-base.httpRequest","name":"Get Raw Material Levels","position":[450,200],"parameters":{"url":"={{$env.ERP_API}}/inventory/raw-materials","method":"GET","queryParameters":{"below_safety_stock":true}}},{"id":"fetchOrders","type":"n8n-nodes-base.httpRequest","name":"Get Open PO Status","position":[450,400],"parameters":{"url":"={{$env.ERP_API}}/purchase-orders/open","method":"GET"}},{"id":"querySuppliers","type":"n8n-nodes-base.httpRequest","name":"Query Supplier Pricing","position":[700,200],"parameters":{"url":"={{$env.PROCUREMENT_API}}/rfq","method":"POST","body":{"materials":"={{$json.reorder_items}}","approved_suppliers_only":true}}},{"id":"aiAnalyze","type":"n8n-nodes-base.openAi","name":"AI Supply Chain Analysis","position":[900,300],"parameters":{"model":"gpt-4o","prompt":"Analyze chemical supply chain data. Evaluate: supplier pricing trends, lead time reliability, inventory coverage days, and risk factors.\n\nLow stock materials: {{JSON.stringify($json.low_stock)}}\nOpen POs: {{JSON.stringify($json.open_orders)}}\nSupplier quotes: {{JSON.stringify($json.supplier_quotes)}}\n\nReturn JSON: {\n  reorder_recommendations: [{material: string, supplier: string, quantity: string, unit_price: number, total: number, reasoning: string}],\n  supply_risks: [{material: string, risk: string, mitigation: string}],\n  price_alerts: [{material: string, current_price: number, avg_price: number, trend: string}],\n  delayed_orders: [{po_number: string, expected_date: string, new_eta: string, impact: string}]\n}"}},{"id":"generatePOs","type":"n8n-nodes-base.httpRequest","name":"Generate Purchase Orders","position":[1100,200],"parameters":{"url":"={{$env.ERP_API}}/purchase-orders","method":"POST","body":{"orders":"={{$json.reorder_recommendations}}"}}},{"id":"alertRisks","type":"n8n-nodes-base.slack","name":"Alert Supply Risks","position":[1100,400],"parameters":{"channel":"#supply-chain","text":"Supply Chain Update:\n\nReorders placed: {{$json.reorder_recommendations.length}}\nRisks identified: {{$json.supply_risks.length}}\nDelayed orders: {{$json.delayed_orders.length}}\n\n{{$json.supply_risks.map(r => \"⚠ \" + r.material + \": \" + r.risk).join(\"\\n\")}}"}},{"id":"logReport","type":"n8n-nodes-base.googleSheets","name":"Log to Supply Chain Sheet","position":[1300,300],"parameters":{"operation":"append","sheetId":"={{$env.SUPPLY_CHAIN_SHEET}}"}}],"connections":{"Daily Supply Chain Check":{"main":[[{"node":"Get Raw Material Levels","type":"main","index":0},{"node":"Get Open PO Status","type":"main","index":0}]]},"Get Raw Material Levels":{"main":[[{"node":"Query Supplier Pricing","type":"main","index":0}]]},"Get Open PO Status":{"main":[[{"node":"AI Supply Chain Analysis","type":"main","index":0}]]},"Query Supplier Pricing":{"main":[[{"node":"AI Supply Chain Analysis","type":"main","index":0}]]},"AI Supply Chain Analysis":{"main":[[{"node":"Generate Purchase Orders","type":"main","index":0},{"node":"Alert Supply Risks","type":"main","index":0}]]},"Generate Purchase Orders":{"main":[[{"node":"Log to Supply Chain Sheet","type":"main","index":0}]]},"Alert Supply Risks":{"main":[[{"node":"Log to Supply Chain Sheet","type":"main","index":0}]]}}}