throw appropriate errors when asset doesn't exist