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)
]);