List all tags: Migration guide
This guide details how the List all tags
endpoint has changed (previously known as getSkills
in v1).
Key changes
- Terminology: The API v2 uses different terms for what was previously known as 'skills' in API v1.
- Where you previously used 'skill' in API v1, you'll now use 'tag'.
- Skill in API v2 now refers to a separate platform solution.
- Pagination: To improve performance, we've added pagination to this endpoint. Now, you'll receive your results in pages of 5000 tags. For more information, see our Pagination guide.
- Filtering: The API v2 uses the Left-Hand side (LHS) bracket notation in query parameters for filtering. For more information, see our Filtering guide.
Documentation links
Here is the link to the API reference for the API v2.
The documentation for the API v1 is not publicly available.
Endpoint mapping
Here's the direct correlation between the v1 and v2 endpoint URLs:
- API v1:
/api/v1/skills
- API v2:
/api/v2/tags
Behavior changes
The v2 endpoint is paginated with a page size of 5,000 tags.
Input changes
This section details the specific alterations to the input requirements between API versions.
API v1 input example
curl --request GET \
--url 'https://app.360learning.com/api/v1/skills?company={{company}}&apiKey={{apiKey}}’
API v2 input example
curl --request GET \
--url 'https://app.360learning.com/api/v2/tags?isMain[eq]=true' \
--header '360-api-version: v2.0' \
--header 'accept: application/json' \
--header 'authorization: Bearer your_access_token'
Main input differences
Change type | API v1 | API v2 |
---|---|---|
Added Query parameter | - | isMain (Optional): Filter on isMain property with LHS bracket notation. Expected value format is a boolean (true or false ). |
Output changes
This section details the specific alterations to the successful output returned between API versions.
API v1 output example
[
{
"_id": "60c72b2f9b1e8b001c8e4a7e",
"name": "Active listening",
"isMain": true,
"author": "[email protected]",
"externalId": "1234",
"sourceLang": "en",
"defaultLang": "fr",
"translationsLangs": [
{
"lang": "fr",
"published": true,
"translators": [
"[email protected]",
"[email protected]"
]
}
],
"translations": [
{
"lang": "fr",
"name": "Ecoute active"
}
]
}
]
API v2 output example
[
{
"isMain": true,
"_id": "60c72b2f9b1e8b001c8e4a7e",
"name": "Active listening",
"externalId": "1234"
}
]
Main output differences
API v2 provides a simplified response structure, focusing solely on tag properties. It no longer includes translation-related fields (sourceLang
, defaultLang
, translationsLangs
, translations
) from v1. Additionally, API v2 supports pagination, indicating subsequent pages via a Link
header.
Change type | API v1 | API v2 |
---|---|---|
Removed Output property | author : The email of the author. Removed from endpoint v2, not replaced. | - |
Removed Output property | sourceLang : The source language for the skill. Removed from endpoint v2, not replaced. | - |
Removed Output property | defaultLang : The default language for the skill. Removed from endpoint v2, not replaced. | - |
Removed Output property | translationsLangs : Array of objects for each translation language. Removed from endpoint v2 version, not replaced. | - |
Removed Output property | translations : Translations data for the skill. Removed from endpoint v2, not replaced. | - |
Modified Success output | 200 : Array of objects. | 200 : Array of objects, with an optional Link header for pagination. |
Added Header | - | Link (Optional): URL to fetch the immediate next page of results. Only included if there is another page of results. |
Updated 5 days ago