private async Task <string> Publish_Link_Share(UserAuthorization user, string ownerUrn)
        {
            try
            {
                var text = new PostShareText()
                {
                    Annotations = null,
                    Text        = $"Publish Link test from { DateTime.Now}"
                };

                var postItem = new PostShare()
                {
                    Content = new PostShareContent()
                    {
                        Title           = "Test title",
                        ContentEntities = new List <PostShareContentEntities>()
                        {
                            new PostShareContentEntities()
                            {
                                EntityLocation = "https://yandex.ru/",
                                Thumbnails     = new List <PostShareContentThumbnails>()
                                {
                                    new PostShareContentThumbnails()
                                    {
                                        ResolvedUrl          = "https://www.google.com/images/branding/googleg/1x/googleg_standard_color_128dp.png",
                                        ImageSpecificContent = {}
                                    }
                                }
                            }
                        }
                    },
                    Distribution = new Distribution()
                    {
                        LinkedInDistributionTarget = new LinkedInDistributionTarget()
                        {
                            VisibleToGuest = true
                        }
                    },
                    Subject = " Test Description",
                    Owner   = ownerUrn,
                    Text    = text
                };

                var response = await api.Shares.PostAsync(user, postItem);

                var postUrn = "urn:li:share:" + response.Id;

                return(postUrn);
            }
            catch (LinkedInApiException ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
            catch (Exception ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
        }
        private async Task <string> Publish_Article_Share(UserAuthorization user, string ownerUrn, string mediaUrl)
        {
            try
            {
                var imagesData = DownladFromUrlToByte(mediaUrl);

                var text = new PostShareText()
                {
                    Annotations = null,
                    Text        = $"Publish Document test from { DateTime.Now}"
                };

                var postItem = new PostShare()
                {
                    Distribution = new Distribution()
                    {
                        LinkedInDistributionTarget = new LinkedInDistributionTarget()
                        {
                            VisibleToGuest = true
                        }
                    },
                    Owner = ownerUrn,
                    Text  = text
                };

                if (imagesData != null)
                {
                    var contentEntities = new List <PostShareContentEntities>
                    {
                        new PostShareContentEntities()
                        {
                            EntityLocation = mediaUrl
                        }
                    };

                    postItem.Content = new PostShareContent()
                    {
                        ContentEntities = contentEntities,
                        MediaCategory   = "ARTICLE"
                    };
                }

                var response = await api.Shares.PostAsync(user, postItem);

                var postUrn = "urn:li:share:" + response.Id;

                return(postUrn);
            }
            catch (LinkedInApiException ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
            catch (Exception ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
        }
        private async Task <string> Publish_Status_Share(UserAuthorization user, string ownerUrn)
        {
            try
            {
                var text = new PostShareText()
                {
                    Annotations = null,
                    Text        = $"Publish Status test from { DateTime.Now}"
                };

                var postItem = new PostShare()
                {
                    Distribution = new Distribution()
                    {
                        LinkedInDistributionTarget = new LinkedInDistributionTarget()
                        {
                            VisibleToGuest = true
                        }
                    },
                    Owner = ownerUrn,
                    Text  = text
                };

                var response = await api.Shares.PostAsync(user, postItem);

                var postUrn = "urn:li:share:" + response.Id;

                return(postUrn);
            }
            catch (LinkedInApiException ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
            catch (Exception ex)
            {
                errors.Add(ex.ToString());
                return(null);
            }
        }