← back to Shopify Sample Shipping
gf-bulk-start.mjs
10 lines
import {query} from './query.mjs';
// Cancel any running bulk op first (read-only bulk queries only)
try{const cur=(await query(`{currentBulkOperation{id status}}`)).currentBulkOperation;
if(cur&&['CREATED','RUNNING'].includes(cur.status)){await query(`mutation{bulkOperationCancel(id:"${cur.id}"){userErrors{message}}}`);console.log('cancelled prior',cur.id);await new Promise(r=>setTimeout(r,3000));}}catch(e){}
const m=`mutation{bulkOperationRunQuery(query:"""
{ customers { edges { node { email tags numberOfOrders amountSpent{amount currencyCode} } } } }
"""){bulkOperation{id status} userErrors{field message}}}`;
const r=await query(m);
console.log(JSON.stringify(r.bulkOperationRunQuery,null,2));