fetch with curl support