← back to York Yardgood Exec

nuovo-id.mjs

19 lines

import { readFileSync } from 'node:fs';
const TOKEN=readFileSync(process.env.HOME+'/Projects/secrets-manager/.env','utf8').split('\n').find(l=>l.startsWith('SHOPIFY_ADMIN_TOKEN=')).split('=')[1].trim();
const SHOP='https://designer-laboratory-sandbox.myshopify.com/admin/api/2024-10/graphql.json';
const tgt=JSON.parse(readFileSync('./data/york32-target.json'));
for(const sku of ['DWJS-92436','DWJS-91858']){ // Nuovo, Argent
  const t=tgt.find(x=>x.sell_sku===sku); const gid=`gid://shopify/Product/${t.product_id}`;
  const q=`{p:product(id:"${gid}"){ title vendor handle
    mfr:metafield(namespace:"global",key:"manufacturer_sku"){value}
    dwsku:metafield(namespace:"global",key:"dw_sku"){value}
    mfr2:metafield(namespace:"custom",key:"manufacturer_sku"){value}
    images(first:2){edges{node{url}}} }}`;
  const r=await (await fetch(SHOP,{method:'POST',headers:{'X-Shopify-Access-Token':TOKEN,'Content-Type':'application/json'},body:JSON.stringify({query:q})})).json();
  const p=r.data.p;
  const img=p.images.edges[0]?.node.url.split('/').pop().split('?')[0];
  console.log(`${sku} ${t.pattern} | vendor='${p.vendor}' handle=${p.handle}`);
  console.log(`   mfr(global)=${p.mfr?.value} mfr(custom)=${p.mfr2?.value} dw_sku=${p.dwsku?.value}`);
  console.log(`   image=${img}`);
}