This resource represents LinkedIn Learning content metadata. You can use these methods to bulk import content metadata or add content search into your application.
Supported Methods
get
Sample Request
curl -X GET 'https://api.linkedin.com/v2/learningAssets/urn:li:lyndaCourse:563322?targetLocale.language=en&targetLocale.country=US&includeRetired=true&expandDepth=3&fields=urn,title' \
-H 'Authorization: Bearer AQU...'
Sample Response
{
"urn": "urn:li:lyndaCourse:563322",
"title": {
"locale": {
"country": "US",
"language": "en"
},
"value": "Measuring Company Culture"
}
}
Query Parameters
Parameter |
Description |
Type |
Required |
targetLocale.language |
The locale language the API will use to try to localize the learning asset. These values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "in_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". If the learning asset cannot be localized or if the target locale is not set, the API will use the default locale of the learning asset. Supported language values include: |
String |
No |
targetLocale.country |
The locale country/region the API will use to try to localize the learning asset. These values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "in_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". If the learning asset cannot be localized or if the target locale is not set, the API will use the default locale of the learning asset. Supported country/region values include: |
String |
No |
expandDepth |
The number of levels in the learning asset hierarchy to include asset details. This parameter is optional. |
Long |
No (default = 1) |
includeRetired |
Whether to include retired learning assets. Supported values include: |
Boolean |
No (default = false) |
criteria
Sample Request
curl -X GET \
'https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.assetTypes[0]=COURSE&assetRetrievalCriteria.includeRetired=true&assetRetrievalCriteria.expandDepth=1&count=2&start=3400&assetFilteringCriteria.licensedOnly=true&assetFilteringCriteria.locales[0].country=US&assetFilteringCriteria.locales[0].language=en&fields=urn,title,details:(level)' \
-H 'Authorization: Bearer AQU...'
Sample Response
{
"metadata": {},
"elements": [
{
"urn": "urn:li:lyndaCourse:187499",
"details": {
"level": "BEGINNER"
},
"title": {
"locale": {
"country": "US",
"language": "en"
},
"value": "Collaborative Design: Process and Efficiency"
}
},
{
"urn": "urn:li:lyndaCourse:187500",
"details": {
"level": "BEGINNER"
},
"title": {
"locale": {
"country": "US",
"language": "en"
},
"value": "Collaborative Design: Vision and Strategy"
}
}
],
"paging": {
"total": 9782,
"count": 2,
"start": 3400,
"links": [
{
"rel": "prev",
"href": "/v2/learningAssets?assetFilteringCriteria.assetTypes[0]=COURSE&assetFilteringCriteria.licensedOnly=true&assetFilteringCriteria.locales[0].country=US&assetFilteringCriteria.locales[0].language=en&assetRetrievalCriteria.expandDepth=1&assetRetrievalCriteria.includeRetired=true&count=2&q=criteria&start=3398",
"type": "application/json"
},
{
"rel": "next",
"href": "/v2/learningAssets?assetFilteringCriteria.assetTypes[0]=COURSE&assetFilteringCriteria.licensedOnly=true&assetFilteringCriteria.locales[0].country=US&assetFilteringCriteria.locales[0].language=en&assetRetrievalCriteria.expandDepth=1&assetRetrievalCriteria.includeRetired=true&count=2&q=criteria&start=3402",
"type": "application/json"
}
]
}
}
Query Parameters
Parameter |
Description |
Type |
Required |
q |
The value of this parameter should always be criteria . |
String |
Yes |
assetFilteringCriteria.assetTypes |
The types of learning assets to search. The search results will include only learning assets of these types. If omitted, the search results will include learning assets of any type. Since this parameter is an array, you will need to specify a zero-based index per value. Supported values include: |
AssetType |
No |
assetFilteringCriteria.classifications |
An array of learning classification URNs to search learning assets. The search results will include only learning assets tagged with these classifications. The supported URN types are "urn:li:lyndaCategory" and "urn:li:skill". Classification URNs can be discovered using /v2/learningClassifications endpoint. If omitted, the search results will include learning assets tagged with any classification. Since this parameter is an array, you will need to specify a zero-based index per value. |
String |
No |
assetFilteringCriteria.difficultyLevels |
An array of difficulty levels of learning assets to search. The search results will include only learning assets of these difficulty levels. If omitted, the search results will include learning assets of any difficulty level. Since this parameter is an array, you will need to specify a zero-based index per value. Supported values include: - BEGINNER
- INTERMEDIATE
- ADVANCED
|
DifficultyLevel |
No |
assetFilteringCriteria.isCurated |
Indicates whether to filter for learning assets curated by an account administrator for integration use cases. If set to true , search results will include only and all curated learning assets. If omitted or set to false , results will include all learning assets, regardless of their curation status. Note: This filter applies only to videos, as detailed in the LMS Video Curation feature article. When using assetFilteringCriteria.isCurated=true , only the following additional filters are supported: - assetFilteringCriteria.assetTypes[0]=VIDEO
- assetFilteringCriteria.locales[].language
- assetFilteringCriteria.locales[].country
- assetFilteringCriteria.licensedOnly
- assetRetrievalCriteria.expandDepth
- assetRetrievalCriteria.includeRetired
- start
- count
|
Boolean |
No |
assetFilteringCriteria.keyword |
The keyword string to search learning assets. The search results will include only learning assets matching this keyword string, as determined by LinkedIn Learning's relevance algorithm. The value of this parameter is case-insensitive.If omitted, the search results will include learning assets matching any keyword string. |
String |
No |
assetFilteringCriteria.lastModifiedAfter |
The time after which the assets were changed i.e. released, modified or retired. Represented by number of milliseconds since midnight, January 1, 1970 UTC. |
Time |
No |
assetFilteringCriteria.locales[].language |
An array of languages from which results should be filtered on. The supported values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "id_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". Since the locales parameter is an array, you will need to specify a zero-based index per value. Supported language values include: |
String |
No (default=en) |
assetFilteringCriteria.locales[].country |
An array of locale countries/regions from which results should be filtered on. Since the locales parameter is an array, you will need to specify a zero-based index per value. The supported values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "id_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". Supported country/region values include: |
String |
No (default=US) |
assetFilteringCriteria.licensedOnly |
Boolean that indicates results should be filtered to only include learningAssets the caller is licensed to access. If this parameter is set to true and assetFilteringCriteria.locales parameter is omitted the locale values are implied by the callers licensed access. |
Boolean |
No (default = false) |
assetPresentationCriteria.sortBy |
How to sort the learning assets in the search results. Relevance sorts the learning assets by LinkedIn Learning's relevance algorithm. Popularity sorts the learning assets by view count. Recency sorts the learning assets by publish date. Supported values include: - POPULARITY
- RELEVANCE
- RECENCY
|
String |
No (default = RELEVANCE) |
assetRetrievalCriteria.expandDepth |
The number of levels in the learning asset hierarchy to include asset details. This parameter is optional; please see the "Specifying the level of asset details" section for an explanation with examples. |
Long |
No (default = 1) |
assetRetrievalCriteria.includeRetired |
Whether to include retired learning assets. To retrieve active and retired learning assets, set this parameter to true. Supported values include: |
Boolean |
No (default = false) |
start |
The start index of learning assets for the page. |
Long |
No (default = 0) |
count |
The number of learning assets to include in the page. The maximum count is 100 assets per page. |
Long |
No (default = 20) |
Limited Response Scenarios
When certain query parameters are used to call the /learningAssets criteria
finder, the endpoint returns only 1000 records in the response body even if the number of records that match the query are greater than 1000. A list of the parameters that trigger this behavior is documented below.
Query Parameter |
Sample Request |
assetFilteringCriteria.assetTypes |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.assetTypes[0]=COURSE&assetFilteringCriteria.assetTypes[1]=CHAPTER |
assetFilteringCriteria.difficultyLevels |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.difficultyLevels[0]=INTERMEDIATE |
assetFilteringCriteria.keyword |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.keyword=Mixing Audio |
assetFilteringCriteria.lastModifiedAfter |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.lastModifiedAfter=1271848477000 |
assetFilteringCriteria.licensedOnly |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.licensedOnly=true |
assetPresentationCriteria.sortBy |
https://api.linkedin.com/v2/learningAssets?q=criteria&assetPresentationCriteria.sortBy=POPULARITY |
Additionally, in some circumstances, calls to /learningAssets criteria
finder endpoint will return the all the records rather than the truncated 1000 if the calls match the exact following conditions:
- Query parameter
assetFilteringCriteria.assetTypes
is set only once in the request to search records only for a single type of asset. A sample request in this scenario will look like https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.assetTypes[0]=COURSE
.
- Query parameter
assetFilteringCriteria.licensedOnly
is set in the request along with query parameterassetFilteringCriteria.assetTypes
and query parameterassetFilteringCriteria.assetTypes
is set only once. A sample request in this scenario will look like https://api.linkedin.com/v2/learningAssets?q=criteria&assetFilteringCriteria.licensedOnly=true&assetFilteringCriteria.assetTypes[0]=COURSE
localeAndType
Sample Request
curl -H 'Authorization: Bearer AQXt…' \
'https://api.linkedin.com/v2/learningAssets?q=localeAndType&assetType=COURSE&sourceLocale.language=en&sourceLocale.country=US&expandDepth=1&includeRetired=false&start=1000&count=20'
Sample Response
{
"elements": [
{
"urn": "urn:li:lyndaCourse:144562",
"details": {
"level": "BEGINNER"
},
"title": {
"locale": {
"country": "US",
"language": "en"
},
"value": "mocha 3 Essential Training"
}
},
{
"urn": "urn:li:lyndaCourse:144561",
"details": {
"level": "BEGINNER"
},
"title": {
"locale": {
"country": "US",
"language": "en"
},
"value": "Learning AutoCAD for Mac"
}
}
],
"paging": {
"total": 7657,
"count": 2,
"start": 1000,
"links": [
{
"rel": "prev",
"href": "/v2/learningAssets?assetType=COURSE&count=2&expandDepth=1&includeRetired=false&q=localeAndType&sourceLocale.country=US&sourceLocale.language=en&start=998",
"type": "application/json"
},
{
"rel": "next",
"href": "/v2/learningAssets?assetType=COURSE&count=2&expandDepth=1&includeRetired=false&q=localeAndType&sourceLocale.country=US&sourceLocale.language=en&start=1002",
"type": "application/json"
}
]
}
}
Parameters
Parameter |
Description |
Type |
Required |
q |
The value of this parameter should always be localeAndType . |
String |
Yes |
assetType |
Specifies the type of learning asset you are retrieving. Supported values include: |
AssetType |
Yes |
sourceLocale.language |
The locale language of the learning assets. The supported values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "in_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". Supported language values include: |
String |
Yes |
sourceLocale.country |
The locale country/region of the learning assets. The supported values correspond to the locales "de_DE", "en_US", "es_ES", "fr_FR", "in_ID", "it_IT", "ja_JP", "ko_KR", "pl_PL", "pt_BR", "tr_TR" and "zh_CN". Supported country/region values include: |
String |
Yes |
expandDepth |
The number of levels in the learning asset hierarchy to include asset details. This parameter is optional. |
Long |
No (default = 1) |
includeRetired |
Whether to include retired learning assets. To retrieve active and retired learning assets, set this parameter to true . Supported values include: |
Boolean |
No (default = false) |
start |
The start index of learning assets for the page. |
Long |
No (default = 0) |
count |
The number of learning assets to include in the page. The maximum count is 100 assets per page. |
Long |
No (default = 20) |
Response Fields
Field |
Description |
Type |
Required |
contents |
The sub-assets of the learning asset. For example, a learning asset representing a course has sub-assets representing its chapters; a learning asset representing a chapter has sub-assets representing its videos. |
SubAsset[] |
No |
details |
If present, the details about the learning asset. If this field is not present, it means the request did not specify retrieving the asset details (see the "Specifying the level of asset details" section). |
AssetDetails |
No |
title |
The title of the learning asset, localized if available. |
LocaleString |
Yes |
type |
The type of the learning asset. |
AssetType |
Yes |
urn |
The URN of the learning asset. The URN is a unique identifier whose value should be treated as opaque. Do not use the URN to determine the type of the learning asset; use the "type" field instead. |
String |
Yes |
Definitions
AssetClassification
Field |
Description |
Type |
Required |
assigner |
The person or organization who tagged the learning asset with the learning classification. |
NamedParty |
Yes |
associatedClassification |
The learning classification the learning asset is tagged with. |
Classification |
Yes |
path |
The parent learning classifications of the associated learning classification. |
Classification [] |
Yes |
AssetDetails
Field |
Description |
Type |
Required |
availability |
The availability of the learning asset. |
Availability |
Yes |
availableLocales |
The locales the learning asset is available in. |
Locale [] |
Yes |
classifications |
The learning classifications the learning asset is tagged with. |
AssetClassification [] |
Yes |
contributors |
The contributors involved in the lifecycle of the learning asset - for example, authors or publishers. |
Contributor [] |
Yes |
description |
If present, the text-only description of the learning asset, localized if available. Any HTML markup will be stripped from this description. |
LocaleString |
No |
descriptionIncludingHtml |
If present, the description - including any HTML markup - of the learning asset, localized if available. |
LocaleString |
No |
images |
The images that can be used to represent the learning asset. |
AssetImages |
Yes |
lastUpdatedAt |
The epoch time in milliseconds indicating when the learning asset was last updated. |
Time |
Yes |
level |
If present, the difficulty level of the learning asset. |
DifficultyLevel |
No |
publishedAt |
The epoch time in milliseconds indicating when the learning asset was published. |
Time |
Yes |
relationships |
The value of this field is currently always an empty array. Future versions of the API may use this field to indicate relationships the learning asset has to other learning assets. |
Array |
Yes |
retiredAt |
If present, the epoch time in milliseconds indicating when the learning asset was retired. |
Time |
No |
shortDescription |
Localized text only short description of the learning asset. |
LocaleString |
Yes |
timeToComplete |
If present, the time span indicating how long the learning asset takes to complete. |
TimeSpan |
No |
urls |
The URLs that can be used to launch the learning asset. |
AssetUrls |
Yes |
curatedForLearningManagementSystem |
Indicates whether the learning asset was curated for Learning Management System consumption by an account administrator in LinkedIn Learning. Currently applies only to video assets |
Boolean |
No |
AssetImages
Field |
Description |
Type |
Required |
primary |
If present, the URL of the primary image associated with the learning asset. This image is usually high-resolution. |
String |
No |
AssetType
Symbol |
Description |
CHAPTER |
The learning asset is a chapter. |
COURSE |
The learning asset is a course. |
VIDEO |
The learning asset is a video. |
AssetUrls
Field |
Description |
Type |
Required |
aiccLaunch |
If present, the AICC launch URL of the learning asset. This value is used to initiate course completion tracking in AICC-compliant systems. The value is only included in the response when the requestor has AICC enabled in their LinkedIn Learning admin settings. |
String |
No |
ssoLaunch |
If present, the single sign-on launch URL of the learning asset. The value is only included in the response when the requestor has configured an active SSO connection in their LinkedIn Learning admin settings. |
String |
No |
webLaunch |
If present, the launch URL of the learning asset in the LinkedIn Learning web application. |
String |
No |
AssociatedClassification
Field |
Description |
Type |
Required |
name |
The localized name of the skill or category. |
LocaleString |
Yes |
owner |
Specifies which person or organization is responsible for originally creating this classification. |
NamedParty |
Yes |
type |
Indicates which type of classification this summary represents. |
ClassificationType |
Yes |
urn |
Identifies the classification, currently supports skill, lyndaCategory, and lyndaCredentialingProgram (CEU) urns. |
Urn |
Yes |
Availability
Symbol |
Description |
AVAILABLE |
The learning asset is available and active. |
RETIRED |
The learning asset is retired and no longer available. |
ContributionType
Symbol |
Description |
AUTHOR |
The contributor is an author of the learning asset. |
PUBLISHER |
The contributor is a publisher of the learning asset. |
Contributor
Field |
Description |
Type |
Required |
contributionType |
The type of contribution the contributor made to the learning asset. |
ContributionType |
Yes |
name |
The name of the contributor, localized if available. |
LocaleString |
Yes |
urn |
The URN identifying the contributor. |
String |
Yes |
DifficultyLevel
Symbol |
Description |
BEGINNER |
The learning asset assumes little to no understanding of the concepts related to the material. |
INTERMEDIATE |
The learning asset assumes basic understanding of the concepts related to the material. |
ADVANCED |
The learning asset assumes advanced understanding of the concepts related to the material. |
Locale
Field |
Description |
Type |
Required |
country |
If present, an uppercase two-letter country code as defined by ISO-3166. |
String |
No |
language |
A lowercase two-letter language code as defined by ISO-639. |
String |
Yes |
variant |
If present, a vendor or browser-specific code. |
String |
No |
LocaleString
Field |
Description |
Type |
Required |
locale |
The locale of the localized string. |
Locale |
Yes |
value |
The localized string. |
String |
Yes |
NamedParty
Field |
Description |
Type |
Required |
name |
The name of a person or organization, localized if available. |
LocaleString |
Yes |
urn |
The URN identifying a person or organization. |
String |
Yes |
SubAsset
Field |
Description |
Type |
Required |
asset |
The learning asset that is a sub-asset of another learning asset. |
AssetDetails |
Yes |
TimeSpan
Field |
Description |
Type |
Required |
duration |
The duration the time span represents. |
Long |
Yes |
unit |
The unit of time the duration refers to. |
TimeUnit |
Yes |
TimeUnit
Symbol |
Description |
SECOND |
A second. |
MINUTE |
A minute. |
HOUR |
An hour. |