public async Task <SearchResultViewModel> Search(string searchText, string pageToken) { SearchResource.ListRequest listRequest = youTubeDataApiService.Search.List("snippet"); listRequest.Q = searchText; listRequest.Order = SearchResource.ListRequest.OrderEnum.Relevance; listRequest.SafeSearch = SearchResource.ListRequest.SafeSearchEnum.None; listRequest.RegionCode = "BR"; listRequest.RelevanceLanguage = "PT-BR"; listRequest.Type = "video"; listRequest.MaxResults = 10; listRequest.PageToken = pageToken; SearchListResponse searchResponse = listRequest.Execute(); List <Models.Video> videos = new List <Models.Video>(); foreach (SearchResult searchResult in searchResponse.Items) { var video = new Models.Video() { Id = searchResult.Id.VideoId, Title = searchResult.Snippet.Title, Description = searchResult.Snippet.Description, Url = searchResult.Snippet.Thumbnails.Medium.Url }; videos.Add(video); await SaveVideo(video); } return(new SearchResultViewModel() { nextPageToken = searchResponse.NextPageToken, prevPageToken = searchResponse.PrevPageToken, Videos = await LoadPlaylistsInVideo(videos), Playlists = await repository.PlaylistList() }); }