1import { ApifyClient } from 'apify-client';
2
3
4
5const client = new ApifyClient({
6 token: '<YOUR_API_TOKEN>',
7});
8
9
10const input = {
11 "tierConvention": "all-units",
12 "previousTiers": [
13 {
14 "rowId": "old-a1",
15 "supplierId": "SUP-001",
16 "sku": "0001",
17 "unit": "each",
18 "currency": "USD",
19 "taxBasis": "tax-exclusive",
20 "minimumQuantity": "1",
21 "unitCost": "6"
22 },
23 {
24 "rowId": "old-a50",
25 "supplierId": "SUP-001",
26 "sku": "0001",
27 "unit": "each",
28 "currency": "USD",
29 "taxBasis": "tax-exclusive",
30 "minimumQuantity": "50",
31 "unitCost": "5"
32 },
33 {
34 "rowId": "old-b",
35 "supplierId": "SUP-001",
36 "sku": "MOQ",
37 "unit": "each",
38 "currency": "USD",
39 "taxBasis": "tax-exclusive",
40 "minimumQuantity": "10",
41 "unitCost": "2"
42 },
43 {
44 "rowId": "old-c",
45 "supplierId": "SUP-001",
46 "sku": "DUP",
47 "unit": "each",
48 "currency": "USD",
49 "taxBasis": "tax-exclusive",
50 "minimumQuantity": "1",
51 "unitCost": "2"
52 },
53 {
54 "rowId": "old-d",
55 "supplierId": "SUP-001",
56 "sku": "UNIT",
57 "unit": "each",
58 "currency": "USD",
59 "taxBasis": "tax-exclusive",
60 "minimumQuantity": "1",
61 "unitCost": "2"
62 },
63 {
64 "rowId": "old-e",
65 "supplierId": "SUP-001",
66 "sku": "FX",
67 "unit": "each",
68 "currency": "USD",
69 "taxBasis": "tax-exclusive",
70 "minimumQuantity": "1",
71 "unitCost": "2"
72 },
73 {
74 "rowId": "old-f",
75 "supplierId": "SUP-001",
76 "sku": "ZERO",
77 "unit": "each",
78 "currency": "USD",
79 "taxBasis": "tax-exclusive",
80 "minimumQuantity": "1",
81 "unitCost": "2"
82 },
83 {
84 "rowId": "old-g",
85 "supplierId": "SUP-001",
86 "sku": "DECIMAL",
87 "unit": "each",
88 "currency": "USD",
89 "taxBasis": "tax-exclusive",
90 "minimumQuantity": "0",
91 "unitCost": "0.1"
92 },
93 {
94 "rowId": "old-h",
95 "supplierId": "SUP-001",
96 "sku": "TAX",
97 "unit": "each",
98 "currency": "USD",
99 "taxBasis": "tax-inclusive",
100 "minimumQuantity": "1",
101 "unitCost": "4"
102 }
103 ],
104 "proposedTiers": [
105 {
106 "rowId": "new-a1",
107 "supplierId": "SUP-001",
108 "sku": "0001",
109 "unit": "each",
110 "currency": "USD",
111 "taxBasis": "tax-exclusive",
112 "minimumQuantity": "1",
113 "unitCost": "6"
114 },
115 {
116 "rowId": "new-a100",
117 "supplierId": "SUP-001",
118 "sku": "0001",
119 "unit": "each",
120 "currency": "USD",
121 "taxBasis": "tax-exclusive",
122 "minimumQuantity": "100",
123 "unitCost": "4.8"
124 },
125 {
126 "rowId": "new-b",
127 "supplierId": "SUP-001",
128 "sku": "MOQ",
129 "unit": "each",
130 "currency": "USD",
131 "taxBasis": "tax-exclusive",
132 "minimumQuantity": "20",
133 "unitCost": "1.9"
134 },
135 {
136 "rowId": "new-c1",
137 "supplierId": "SUP-001",
138 "sku": "DUP",
139 "unit": "each",
140 "currency": "USD",
141 "taxBasis": "tax-exclusive",
142 "minimumQuantity": "1",
143 "unitCost": "2.2"
144 },
145 {
146 "rowId": "new-c2",
147 "supplierId": "SUP-001",
148 "sku": "DUP",
149 "unit": "each",
150 "currency": "USD",
151 "taxBasis": "tax-exclusive",
152 "minimumQuantity": "1.0",
153 "unitCost": "2.3"
154 },
155 {
156 "rowId": "new-d",
157 "supplierId": "SUP-001",
158 "sku": "UNIT",
159 "unit": "case",
160 "currency": "USD",
161 "taxBasis": "tax-exclusive",
162 "minimumQuantity": "1",
163 "unitCost": "20"
164 },
165 {
166 "rowId": "new-e",
167 "supplierId": "SUP-001",
168 "sku": "FX",
169 "unit": "each",
170 "currency": "EUR",
171 "taxBasis": "tax-exclusive",
172 "minimumQuantity": "1",
173 "unitCost": "2"
174 },
175 {
176 "rowId": "new-f",
177 "supplierId": "SUP-001",
178 "sku": "ZERO",
179 "unit": "each",
180 "currency": "USD",
181 "taxBasis": "tax-exclusive",
182 "minimumQuantity": "1",
183 "unitCost": "3"
184 },
185 {
186 "rowId": "new-g",
187 "supplierId": "SUP-001",
188 "sku": "DECIMAL",
189 "unit": "each",
190 "currency": "USD",
191 "taxBasis": "tax-exclusive",
192 "minimumQuantity": "0",
193 "unitCost": "0.2"
194 },
195 {
196 "rowId": "new-h",
197 "supplierId": "SUP-001",
198 "sku": "TAX",
199 "unit": "each",
200 "currency": "USD",
201 "taxBasis": "tax-inclusive",
202 "minimumQuantity": "1",
203 "unitCost": "5"
204 }
205 ],
206 "scenarios": [
207 {
208 "rowId": "plan-80",
209 "supplierId": "SUP-001",
210 "sku": "0001",
211 "unit": "each",
212 "currency": "USD",
213 "taxBasis": "tax-exclusive",
214 "quantity": "80",
215 "unitSellingPrice": "8"
216 },
217 {
218 "rowId": "plan-100",
219 "supplierId": "SUP-001",
220 "sku": "0001",
221 "unit": "each",
222 "currency": "USD",
223 "taxBasis": "tax-exclusive",
224 "quantity": "100",
225 "unitSellingPrice": "8"
226 },
227 {
228 "rowId": "below-new-moq",
229 "supplierId": "SUP-001",
230 "sku": "MOQ",
231 "unit": "each",
232 "currency": "USD",
233 "taxBasis": "tax-exclusive",
234 "quantity": "15"
235 },
236 {
237 "rowId": "duplicate-tier",
238 "supplierId": "SUP-001",
239 "sku": "DUP",
240 "unit": "each",
241 "currency": "USD",
242 "taxBasis": "tax-exclusive",
243 "quantity": "5"
244 },
245 {
246 "rowId": "changed-unit",
247 "supplierId": "SUP-001",
248 "sku": "UNIT",
249 "unit": "each",
250 "currency": "USD",
251 "taxBasis": "tax-exclusive",
252 "quantity": "5"
253 },
254 {
255 "rowId": "changed-currency",
256 "supplierId": "SUP-001",
257 "sku": "FX",
258 "unit": "each",
259 "currency": "USD",
260 "taxBasis": "tax-exclusive",
261 "quantity": "5"
262 },
263 {
264 "rowId": "zero-denominator",
265 "supplierId": "SUP-001",
266 "sku": "ZERO",
267 "unit": "each",
268 "currency": "USD",
269 "taxBasis": "tax-exclusive",
270 "quantity": "5",
271 "unitSellingPrice": "0"
272 },
273 {
274 "rowId": "fractional-quantity",
275 "supplierId": "SUP-001",
276 "sku": "DECIMAL",
277 "unit": "each",
278 "currency": "USD",
279 "taxBasis": "tax-exclusive",
280 "quantity": "0.3",
281 "unitSellingPrice": "0.3"
282 },
283 {
284 "rowId": "tax-inclusive",
285 "supplierId": "SUP-001",
286 "sku": "TAX",
287 "unit": "each",
288 "currency": "USD",
289 "taxBasis": "tax-inclusive",
290 "quantity": "5",
291 "unitSellingPrice": "10"
292 },
293 {
294 "rowId": "missing-sku",
295 "supplierId": "SUP-001",
296 "sku": "MISSING",
297 "unit": "each",
298 "currency": "USD",
299 "taxBasis": "tax-exclusive",
300 "quantity": "5"
301 }
302 ]
303};
304
305
306const run = await client.actor("h_murdock/supplier-price-tier-impact").call(input);
307
308
309console.log('Results from dataset');
310console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
311const { items } = await client.dataset(run.defaultDatasetId).listItems();
312items.forEach((item) => {
313 console.dir(item);
314});
315
316