public async Task <IEnumerable <ProductBrief> > GetProductBriefsAsync()
        {
            using (var log = RequestLogger.Current.BeginJungoLog(this))
            {
                try
                {
                    var billboard = await Billboard.GetAsync(Client).ConfigureAwait(false);

                    var uri           = Billboard.ResolveExpand(billboard.Products, Billboard.Templates.ExpandProductIdQueryValue);
                    var prodsResponse = await Client.GetCacheableAsync <ProductsResponse>(uri).ConfigureAwait(false);

                    if (prodsResponse == null || prodsResponse.Products == null ||
                        prodsResponse.Products.Product == null)
                    {
                        return(new ProductBrief[0]);
                    }
                    return(prodsResponse.Products.Product.Select(p => new ProductBrief
                    {
                        Id = p.Id,
                        Uri = p.Uri,
                        Relation = p.Relation,
                        DisplayName = p.DisplayName,
                        ThumbnailImage = p.ThumbnailImage
                    }));
                }
                catch (Exception exc)
                {
                    throw log.LogException(exc);
                }
            }
        }