const putData = async (data, ms) => { return new Promise(resolve => { setTimeout(() => { resolve(data); }, ms); }); }; const [ result1, result2, result3 ] = await Promise.all([ putData({ foo: 'bar-1' }, 1000), Promise.reject(new Error()), putData({ foo: 'bar-3' }, 3000) ]);