public async Task<List<VideoChannel>> GetChannels(bool onlyEditable) {
      var query = onlyEditable
        ? await SpHelper.GetVideoPortalRootUrl() + "/_api/VideoService/CanEditChannels"
        : await SpHelper.GetVideoPortalRootUrl() + "/_api/VideoService/Channels";

      // create request for channels
      HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, query);

      // issue request & get response 
      var response = await _client.SendAsync(request);
      string responseString = await response.Content.ReadAsStringAsync();
      // convert response to object
      var jsonResponse = JsonConvert.DeserializeObject<JsonHelpers.VideoChannelCollection>(responseString);

      // convert to model object
      var channels = new List<VideoChannel>();

      foreach (var videoChannel in jsonResponse.Data.Results) {
        var channel = new VideoChannel {
          Id = videoChannel.Id,
          HtmlColor = videoChannel.TileHtmlColor,
          Title = videoChannel.Title,
          Description = videoChannel.Description,
          ServerRelativeUrl = videoChannel.ServerRelativeUrl
        };
        channels.Add(channel);
      }

      return channels.OrderBy(vc => vc.Title).ToList();
    }
        public async Task <List <VideoChannel> > GetChannels(bool onlyEditable)
        {
            var query = onlyEditable
        ? await SpHelper.GetVideoPortalRootUrl() + "/_api/VideoService/CanEditChannels"
        : await SpHelper.GetVideoPortalRootUrl() + "/_api/VideoService/Channels";

            // create request for channels
            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, query);

            // issue request & get response
            var response = await _client.SendAsync(request);

            string responseString = await response.Content.ReadAsStringAsync();

            // convert response to object
            var jsonResponse = JsonConvert.DeserializeObject <JsonHelpers.VideoChannelCollection>(responseString);

            // convert to model object
            var channels = new List <VideoChannel>();

            foreach (var videoChannel in jsonResponse.Data.Results)
            {
                var channel = new VideoChannel {
                    Id                = videoChannel.Id,
                    HtmlColor         = videoChannel.TileHtmlColor,
                    Title             = videoChannel.Title,
                    Description       = videoChannel.Description,
                    ServerRelativeUrl = videoChannel.ServerRelativeUrl
                };
                channels.Add(channel);
            }

            return(channels.OrderBy(vc => vc.Title).ToList());
        }
    public async Task<VideoChannel> GetChannel(string channelId) {
      var query = string.Format("{0}/_api/VideoService/Channels('{1}')", await SpHelper.GetVideoPortalRootUrl(), channelId);

      // issue request & get response 
      var response = await _client.GetAsync(query);
      string responseString = await response.Content.ReadAsStringAsync();
      // convert response to object
      var jsonResponse = JsonConvert.DeserializeObject<JsonHelpers.VideoChannelSingle>(responseString);

      var channel = new VideoChannel {
        Id = jsonResponse.Data.Id,
        HtmlColor = jsonResponse.Data.TileHtmlColor,
        Title = jsonResponse.Data.Title,
        Description = jsonResponse.Data.Description,
        ServerRelativeUrl = jsonResponse.Data.ServerRelativeUrl
      };

      return channel;
    }
        public async Task <VideoChannel> GetChannel(string channelId)
        {
            var query = string.Format("{0}/_api/VideoService/Channels('{1}')", await SpHelper.GetVideoPortalRootUrl(), channelId);

            // issue request & get response
            var response = await _client.GetAsync(query);

            string responseString = await response.Content.ReadAsStringAsync();

            // convert response to object
            var jsonResponse = JsonConvert.DeserializeObject <JsonHelpers.VideoChannelSingle>(responseString);

            var channel = new VideoChannel {
                Id                = jsonResponse.Data.Id,
                HtmlColor         = jsonResponse.Data.TileHtmlColor,
                Title             = jsonResponse.Data.Title,
                Description       = jsonResponse.Data.Description,
                ServerRelativeUrl = jsonResponse.Data.ServerRelativeUrl
            };

            return(channel);
        }