Articles API

Warning

Deprecation Notice
The Marketing Version 202310 (Marketing October 2023) and earlier versions (excluding 202306 and 202307) have been sunset. Additionally, the unversioned APIs will be sunset soon. We recommend that you migrate to the versioned APIs as well as migrate to the new Content and Community Management APIs to avoid disruptions. See the Migration page for more details. If you haven’t yet migrated and have questions, submit a request on the LinkedIn Developer Support Portal.

Network updates is a key feature of the LinkedIn platform experience. It enables you to share important news and articles of interest with your professional network. The Articles API enables you to retrieve and delete published news and article posts.

Note

Refer to Media Changes and Migration for media criteria.

Permissions

Permissions Description
r_compliance Required to retrieve activities for compliance monitoring and archiving.
w_compliance Required to manage and delete data for compliance.

Note

To protect LinkedIn members' privacy, only PUBLISHED article posts are returned. All API requests are represented in protocol 2.0.0 and require the header X-Restli-Protocol-Version: 2.0.0.

Retrieve Articles

Look Up an Article by ID

Sample Request

GET https://api.linkedin.com/v2/originalArticles/{originalArticlesId}

Look Up an Articles by IDs

Sample Request

GET https://api.linkedin.com/v2/originalArticles?ids=List({originalArticlesId1},{originalArticlesId2})

Schema

Field Names Sub-field Names Type Description
author optional array An array containing the authors of the article.
author person URN The author of article represented in person URN.
type string The author type. Can be one of the following values:
  • PRIMARY_AUTHOR - primary author of the article.
  • AUTHOR - author of the article.
  • COLLABORATOR - an author who can collaborate on the article with a PRIMARY_AUTHOR/AUTHOR, but cannot edit the article directly.
  • content Full content of the article version.
    com.linkedin. publishing. HtmlContent
    htmlText optional string HTML markup of the article.
    secureHtml optional string HTML markup with https versions of embedded content.
    coverImage optional object Cover image of the article.
    caption optional string A caption to display with the image.
    croppedImage object This contains the URN of the cropped image, along with URN of uploaded original, and cropping rectangle info.
    coverMedia optional URN URN of the rich media in cover slot of article.
    created string A timestamp corresponding to the creation of this article.
    displayImage optional URN Image used when displaying the article on the site.
    id long Unique identifier for the article.
    lastModified string A timestamp corresponding to the last modification of the article.
    newsArticle URN The article referenced URN to look up comments and likes.
    permlink optional string Unique string used to compose the permanent link (URL) to this article.
    publishedAt optional string Time the article was published.
    state string State of the article. Always shown as PUBLISHED.
    title optional string Title of the article.
    version optional int Version number of the contents of the article.
    ugcPost optional ugcPost URN The ugcPost (urn:li:ugcPost:{id}) created when the article is initially published. This field only applies to articles created after migration, and is only valid for published articles

    Sample Response

    {
        "authors": [
            {
                "author": "urn:li:person:Ylpq-RobP9",
                "type": "PRIMARY_AUTHOR"
            }
        ],
        "content": {
            "com.linkedin.publishing.HtmlContent": {
                "htmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>",
                "secureHtmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>"
            }
        },
        "coverImage": {
            "caption": "API cover image",
            "croppedImage": {
                "cropInfo": {
                    "height": 400,
                    "width": 744,
                    "x": 0,
                    "y": 70
                },
                "cropped": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
                "original": "urn:li:media:/AAEAAQAAAAAAAACDAAAAJDliZjVlZDk2LWEyYzMtNDQyNy04YjA0LTZkOGI2YzZkNjI2OQ.png"
            }
        },
        "created": 1482280477000,
        "displayImage": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
        "id": 6217134937280131072,
        "lastModified": 1482280484000,
        "newsArticle": "urn:li:article:7152306650999999",
        "permlink": "awesome-publishing-article",
        "publishedAt": 1482280484000,
        "state": "PUBLISHED",
        "title": "An Awesome Publishing Article",
        "version": 3
    }
    

    To get the actual media link, replace the URN sub-string urn:li:media: with https://media.licdn.com/mpr/mpr.

    For example, if the field value is urn:li:media:/p/1/000/0a1/99/123456.jpg, modify it to https://media.licdn.com/mpr/mpr/p/1/000/0a1/99/123456.jpg to retrieve it as a media URL through the LinkedIn CDN.

    To get a specific dimension, append shrink_X_X/ to get appropriate sizing. For example, https://media.licdn.com/mpr/mpr/shrink_100_100/p/1/000/0a1/99/123456.jpg.

    Retrieve Articles by Author

    Sample Request

    GET https://api.linkedin.com/v2/originalArticles?q=authors
    

    Sample Response

    The returned articles are sorted by descending publication date.

    {
      "elements": [
        {
          "displayImage": "urn:li:media:/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png",
          "publishedAt": 1489707195000,
          "created": 1489704180000,
          "lastModified": 1489707296000,
          "id": 6248272202878201856,
          "newsArticle": "urn:li:article:7152306650999991",
          "state": "PUBLISHED",
          "title": "Testing a new article!",
          "version": 4,
          "content": {
            "com.linkedin.publishing.HtmlContent": {
              "htmlText": "<pre spellcheck=\"false\">yoyoyo1231455t1\n</pre> \n<p>Hi!</p> \n<p><br></p> \n<div class=\"slate-resizable-image-embed slate-image-embed__resize-full-width\" data-imgsrc=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n <img src=\"//:0\" data-li-src=\"http://m.c.lnkd.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n</div> \n<p>Bye</p>",
              "secureHtmlText": "<pre spellcheck=\"false\">yoyoyo1231455t1\n</pre> \n<p>Hi!</p> \n<p><br></p> \n<div class=\"slate-resizable-image-embed slate-image-embed__resize-full-width\" data-imgsrc=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n <img src=\"//:0\" data-li-src=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n</div> \n<p>Bye</p>"
            }
          },
          "permlink": "testing-a-new-article",
          "authors": [
            {
              "author": "urn:li:person:Ylpq-RobP9",
              "type": "PRIMARY_AUTHOR"
            }
          ]
        },
        {
          "publishedAt": 1482280484000,
          "created": 1482280477000,
          "lastModified": 1482280484000,
          "id": 6217134937280131072,
          "newsArticle": "urn:li:article:7152306650999999",
          "state": "PUBLISHED",
          "title": "An Awesome Publishing Article",
          "version": 3,
          "content": {
            "com.linkedin.publishing.HtmlContent": {
              "htmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>",
              "secureHtmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>"
            }
          },
          "displayImage": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
          "coverImage": {
            "croppedImage": {
              "original": "urn:li:media:/AAEAAQAAAAAAAACDAAAAJDliZjVlZDk2LWEyYzMtNDQyNy04YjA0LTZkOGI2YzZkNjI2OQ.png",
              "cropped": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
              "cropInfo": {
                "width": 744,
                "x": 0,
                "y": 70,
                "height": 400
              }
            },
            "caption": "API cover image"
          },
          "permlink": "awesome-publishing-article",
          "authors": [
            {
              "author": "urn:li:person:Ylpq-RobP9",
              "type": "PRIMARY_AUTHOR"
            }
          ]
        },
        ...
      ],
      "paging": {
        "total": 2,
        "count": 10,
        "start": 0,
        "links": []
      }
    }
    

    Sample Request

    GET https://api.linkedin.com/v2/originalArticles?q=permlinks&permlinks=List({permlink1},{permlink2})
    

    Note

    Use https://www.linkedin.com/pulse/{PERMLINK} to get the permalink. Permalinks have to be URL encoded.

    Sample Response

    {
      "elements": [
        {
          "displayImage": "urn:li:media:/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png",
          "publishedAt": 1489707195000,
          "created": 1489704180000,
          "lastModified": 1489707296000,
          "id": 6248272202878201856,
          "newsArticle": "urn:li:article:7152306650999999",
          "state": "PUBLISHED",
          "title": "Testing a new article!",
          "version": 4,
          "content": {
            "com.linkedin.publishing.HtmlContent": {
              "htmlText": "<pre spellcheck=\"false\">yoyoyo1231455t1\n</pre> \n<p>Hi!</p> \n<p><br></p> \n<div class=\"slate-resizable-image-embed slate-image-embed__resize-full-width\" data-imgsrc=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n <img src=\"//:0\" data-li-src=\"http://m.c.lnkd.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n</div> \n<p>Bye</p>",
              "secureHtmlText": "<pre spellcheck=\"false\">yoyoyo1231455t1\n</pre> \n<p>Hi!</p> \n<p><br></p> \n<div class=\"slate-resizable-image-embed slate-image-embed__resize-full-width\" data-imgsrc=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n <img src=\"//:0\" data-li-src=\"https://media.licdn-ei.com/mpr/mpr/AAEAAQAAAAAAAAA-AAAAJDI0OTQxODgyLTU4MmEtNGNmYS1hZjI1LTcyYjk4NzAyZDUzOA.png\"> \n</div> \n<p>Bye</p>"
            }
          },
          "permlink": "testing-a-new-article",
          "authors": [
            {
              "author": "urn:li:person:Ylpq-RobP9",
              "type": "PRIMARY_AUTHOR"
            }
          ]
        },
        {
          "publishedAt": 1482280484000,
          "created": 1482280477000,
          "lastModified": 1482280484000,
          "id": 6217134937280131072,
          "newsArticle": "urn:li:article:7152306650999979",
          "state": "PUBLISHED",
          "title": "An Awesome Publishing Article",
          "version": 3,
          "content": {
            "com.linkedin.publishing.HtmlContent": {
              "htmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>",
              "secureHtmlText": "<p>How to build awesome APIs? Visit https://developer.linkediin.com for more information!</p>"
            }
          },
          "displayImage": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
          "coverImage": {
            "croppedImage": {
              "original": "urn:li:media:/AAEAAQAAAAAAAACDAAAAJDliZjVlZDk2LWEyYzMtNDQyNy04YjA0LTZkOGI2YzZkNjI2OQ.png",
              "cropped": "urn:li:media:/AAEAAQAAAAAAAAALAAAAJDU4ZTQ0YWY1LWEzNDktNDQ4YS1hOGVhLTE5NGQxZWY2ZTNjMg.png",
              "cropInfo": {
                "width": 744,
                "x": 0,
                "y": 70,
                "height": 400
              }
            },
            "caption": "API cover image"
          },
          "permlink": "awesome-publishing-article",
          "authors": [
            {
              "author": "urn:li:person:Ylpq-RobP9",
              "type": "PRIMARY_AUTHOR"
            }
          ]
        },
        ...
      ],
      "paging": {
        "total": 2,
        "count": 10,
        "start": 0,
        "links": [
    
        ]
      }
    }
    

    Retrieve Articles with New Media Types

    All values are set for new media types. Refer to media migration effort for the types of new media type that can be returned. Use convertVectorUrns=false to get the intended article.

    Sample Request

    GET https://api.linkedin.com/v2/originalArticles/{originalArticleId}?convertVectorUrns=false
    
    GET https://api.linkedin.com/v2/originalArticles?ids=List({originalArticlesId1},{originalArticlesId2})&convertVectorUrns=false
    
    GET https://api.linkedin.com/v2/originalArticles?q=authors&convertVectorUrns=false
    
    GET https://api.linkedin.com/v2/originalArticles?q=permlinks&permlinks=List({permlink1},{permlink2})&convertVectorUrns=false
    

    Sample Response

    {
        "authors": [
            {
                "author": "urn:li:person:123ABC",
                "type": "PRIMARY_AUTHOR"
            }
        ],
        "content": {
            "com.linkedin.publishing.HtmlContent": {
                "htmlText": "<p>And text</p>",
                "secureHtmlText": "<p>And text</p>"
            }
        },
        "coverImage": {
            "caption": "",
            "croppedImage": {
                "cropInfo": {
                    "height": 1333,
                    "width": 2000,
                    "x": 0,
                    "y": 0
                },
                "cropped": "urn:li:digitalmediaAsset:C5400AQENYhjODZ9eRw",
                "original": "urn:li:digitalmediaAsset:C5400AQENYhjODZ9eRw"
            }
        },
        "created": 1517248648000,
        "displayImage": "urn:li:digitalmediaAsset:C5400AQENYhjODZ9eRw",
        "id": 6363802076731973632,
        "lastModified": 1517253706000,
        "locale": {
            "language": "en"
        },
        "newsArticle": "urn:li:article:7255369085935814179",
        "permlink": "article-with-new",
        "publishCommentary": {
            "attributes": [],
            "text": ""
        },
        "publishedAt": 1517253706000,
        "state": "PUBLISHED",
        "title": "Article with New Media Type",
        "version": 12
    }
    

    To decorate the digitalmediaAsset URN, use projection as described in the Media Migration Guide:

    GET https://api.linkedin.com/v2/originalArticles/{originalArticleId}?convertVectorUrns=false&projection=(authors,content,coverImage(croppedImage(original~:playableStreams,cropped~:playableStreams,cropInfo,caption)),coverMedia~:playableStreams,created,displayImage~:playableStreams,id,lastModified,permlink,publishedAt,state,title,version,newsArticle)
    
    GET https://api.linkedin.com/v2/originalArticles?q=authors&convertVectorUrns=false&projection=(elements*(authors,content,coverImage(croppedImage(original~:playableStreams,cropped~:playableStreams,cropInfo,caption)),coverMedia~:playableStreams,created,displayImage~:playableStreams,id,lastModified,permlink,publishedAt,state,title,version,newsArticle))
    

    Delete Articles

    You can delete an article on a member's behalf.

    Sample Request

    DELETE https://api.linkedin.com/v2/originalArticles/{originalArticleId}
    

    A 200 OK response is returned if the article is successfully deleted.

    Retrieve Article Comments and Likes

    To retrieve an article's comments and likes, use the article's newsArticle URN and apply it toward the socialActions API.

    Retrieve Comments for an Article

    Sample Request

    GET https://api.linkedin.com/v2/socialActions/{newsArticle Urn}/comments
    

    Retrieve Likes for an Article

    Sample Request

    GET https://api.linkedin.com/v2/socialActions/{newsArticle Urn}/likes