VideoFetcher raises InvalidVideoURL if VideoProvider fails to parse API response