Nóta
Teastaíonn údarú chun rochtain a fháil ar an leathanach seo. Is féidir leat triail a bhaint as shíniú isteach nó eolairí a athrú.
Teastaíonn údarú chun rochtain a fháil ar an leathanach seo. Is féidir leat triail a bhaint as eolairí a athrú.
This article provides information for developers and integrators implementing the Microsoft Learn Platform API. We also recommend checking out the Learn Platform API Overview, release notes, and frequently asked questions articles to support your development journey.
API Endpoints
The Microsoft Learn Platform API catalog endpoints are a set of authenticated REST-based Web APIs that return a JSON-encoded response.
The endpoints are accessible at:
https://learn.microsoft.com/api/v1
Note
If you're using a different, older endpoint, it will still work as expected until June 2026, at that point the older unauthenticated Catalog API will begin its deprecation. If you have further questions, reach out to LearnPlatformAPIMigration@microsoft.com.
Use cases
Authentication
The Learn Platform REST APIs use Microsoft Entra ID for authentication. Before making API calls, you need to choose an access method, and your client application must authenticate with valid credentials.
App-only access
When your app directly accesses Learn, its access isn't tied to any single user. The app calls APIs directly using its own identity, this scenario is app-only access. Learn more on Microsoft identity platform.
To get started, you need a valid identity on the Microsoft Identity Platform, which can be an app registration or a managed identity. Ideally, each partner should have a single identity to simplify quota and partner management. Using a user-assigned managed identity can help unify managed identities across different services.
Once your Entra ID identity is set up, obtain an access token from Entra ID with scope set to https://learn.microsoft.com/.default as proof of authentication. Include the access token in the HTTP Authorization header when making REST API requests to Learn.
Delegated access
When a user signs into your app and uses it to access Learn, the app will first need to ask for permission to access this resource on the user's behalf. This scenario is called delegated access. Learn more on Microsoft identity platform.
To get started, you need to register an app registration. Once your app registration is set up, your app needs to ask the user to grant a specific scope, or set of scopes to access Learn on behalf of the user. Learn provides a list of scopes for fine-grained resource access. The list of scopes include:
https://learn.microsoft.com/PublicContent.Read.All: This scope allows users to access public content on Learn impersonated as the signed-in user.
Query parameters
The following are the query parameters that the request can include. Only api-version is required and the current version is 2023-11-01-preview. You must URL encode the query parameter values. You can use the endpoint with one, some, or all of these parameters.
Important
If you use more than one, the query is assessed using the AND operator; comma‑delimited values inside a filter are OR‑combined.
| Name | Value | Type | Required | Example |
|---|---|---|---|---|
| api-version | API version is specified as api-version query parameter and uses yyyy-MM-dd for stable versions and yyyy-MM-dd-preview for preview versions. The api-version query parameter is required for every API request. | string | Yes | ?api-version=2023-11-01-preview |
| locale | A single, valid locale code from the supported list of locales. The returned metadata will be in the requested locale if available. If this parameter isn't supplied, the en-us response will be returned. |
string | No | ?locale=en-us |
| id | A comma-separated list of one or more valid content unique IDs (uid) from the available content types. Note: uids are case-sensitive. | string | No | ?uid=learn.azure.intro-to-azure-fundamentals |
| updatedAt.gt | An operator and datetime to filter by the last modified date of objects. Operator includes gt (greater than), gte (greater than or equal to). When you use this parameter, the operator will default to gt if not specified. |
string | No | ?updatedAt.gt=2022-01-01 |
| levels | A comma-separated list of one or more of the levels we currently have available (full list is in the levels object of the API response). | string | No | ?levels=beginner |
| roles | A comma-separated list of one or more of the roles we currently have available (full list is in the roles object of the API response). | string | No | ?roles=developer |
| products | A comma-separated list of one or more of the roles we currently have available (full list is in the products object of the API response). The API doesn't support product hierarchy, so add every product to the list you want to include in your query. | string | No | ?products=azure |
| subjects | A comma-separated list of one or more of the roles we currently have available (full list is in the subjects object of the API response). The API doesn't support subject hierarchy, so add every subject to the list you want to include in your query. | string | No | ?subjects=cloud-computing |
| maxpagesize | The maximum number of resources to include in a single response. The default value is 30. The maximum allowed value is 100. | string | No | ?maxpagesize=50 |
API response
The service may return the following HTTP status codes.
| Status code | Description |
|---|---|
| 200 | Success. The body of the response includes the JSON-encoded data. |
| 400 | One of the query parameters is missing or not valid. |
| 401 | Unauthorized query. |
| 404 | The URL wasn't found on the server. |
| 429 | The request was rate limited. |
| 500 | Unexpected server error. |
| 503 | The service is temporarily unavailable. |
A successful response will include details for each endpoint, as shown below.
Response body
Module response
Module records
Each module record will have the following form:
{
"type": "module",
"id": "learn.wwl.fundamentals-generative-ai",
"url": "https://learn.microsoft.com/training/modules/fundamentals-generative-ai/",
"locale": "en-us",
"title": "Introduction to generative AI and agents",
"durationInMinutes": 37,
"summary": "Ever wondered how AI can create content, answer questions, and assist with tasks? This module introduces you to the world of generative AI and agents.",
"iconUrl": "https://learn.microsoft.com/training/achievements/fundamentals-generative-ai.svg",
"levels": [
{
"id": "beginner",
"name": ""
}
],
"roles": [
{
"id": "ai-engineer",
"name": "AI Engineer"
},
{
"id": "developer",
"name": "Developer"
},
{
"id": "solution-architect",
"name": "Solution Architect"
},
{
"id": "student",
"name": "Student"
}
],
"products": [
{
"id": "azure-ai-foundry",
"name": "Azure AI Foundry"
}
],
"subjects": [
{
"id": "artificial-intelligence",
"name": "Artificial intelligence"
}
],
"units": [
{
"id": "learn.wwl.fundamentals-generative-ai.introduction"
},
{
"id": "learn.wwl.fundamentals-generative-ai.language-models"
},
{
"id": "learn.wwl.fundamentals-generative-ai.writing-prompts"
},
{
"id": "learn.wwl.fundamentals-generative-ai.agents"
},
{
"id": "learn.wwl.fundamentals-generative-ai.exercise-ai-agent"
},
{
"id": "learn.wwl.fundamentals-generative-ai.knowledge-check"
},
{
"id": "learn.wwl.fundamentals-generative-ai.summary"
}
],
"updatedAt": "2025-12-23T00:20:00.0000000Z"
}
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: module. |
id |
string |
Yes | Globally unique module identifier. |
url |
uri |
Yes | Fully qualified URL to the module in the requested locale. |
locale |
string |
Yes | Module content locale. Defaults to en-us if the requested locale is unavailable. |
title |
string |
Yes | Localized module title. |
durationInMinutes |
integer |
Yes | Average module completion time in minutes. |
summary |
string |
Yes | Short description of the module. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG transparent module icon. |
levels |
Level[] |
Yes | Experience levels associated with this module. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
subjects |
Subject[] |
Yes | Relevant subject classifications. |
units |
UnitReference[] |
Yes | Associated learning units. |
updatedAt |
date-time |
Yes | Last updated timestamp (may not change on minor edits). |
Unit records
Each unit record will have the following form:
{
"type": "unit",
"id": "learn.wwl.fundamentals-generative-ai.agents",
"url": "https://learn.microsoft.com/training/modules/fundamentals-generative-ai/7-agents/",
"locale": "en-us",
"title": "AI agents",
"durationInMinutes": 5,
"updatedAt": "2025-10-06T17:09:00.0000000Z"
},
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: unit. |
id |
string |
Yes | Unique identifier for this unit across Microsoft Learn. |
url |
uri |
Yes | Fully qualified URL to the unit in the requested locale. |
locale |
string |
Yes | Locale of the unit; falls back to en-us if requested locale is unavailable. |
title |
string |
Yes | Localized unit title (fallback: US English). |
durationInMinutes |
integer |
Yes | Average completion time in minutes. |
updatedAt |
date-time |
Yes | Last updated timestamp; may remain unchanged for minor edits. |
Learning path records
Each learning path record will have the following form:
{
"type": "learningPath",
"id": "learn.introduction-ai-azure",
"url": "https://learn.microsoft.com/training/paths/introduction-to-ai-on-azure/",
"locale": "en-us",
"title": "Introduction to AI in Azure",
"durationInMinutes": 669,
"summary": "This course introduces core concepts related to artificial intelligence (AI), and the services in Microsoft Azure that can be used to create AI solutions, focusing on Microsoft Foundry.",
"iconUrl": "https://learn.microsoft.com/training/achievements/document-intelligence-knowledge-mining.svg",
"levels": [
{
"id": "beginner",
"name": ""
}
],
"roles": [
{
"id": "ai-engineer",
"name": "AI Engineer"
},
{
"id": "developer",
"name": "Developer"
},
{
"id": "solution-architect",
"name": "Solution Architect"
},
{
"id": "student",
"name": "Student"
}
],
"products": [
{
"id": "azure-ai-foundry",
"name": "Azure AI Foundry"
}
],
"subjects": [
{
"id": "artificial-intelligence",
"name": "Artificial intelligence"
}
],
"modules": [
{
"id": "learn.wwl.get-started-ai-fundamentals"
},
{
"id": "learn.wwl.get-started-ai-in-foundry"
},
{
"id": "learn.wwl.fundamentals-machine-learning"
},
{
"id": "learn.wwl.design-machine-learning-model-training-solution"
},
{
"id": "learn.wwl.fundamentals-generative-ai"
},
{
"id": "learn.wwl.get-started-generative-ai-azure"
},
{
"id": "learn.wwl.introduction-language"
},
{
"id": "learn.wwl.get-started-language-azure"
},
{
"id": "learn.wwl.introduction-ai-speech"
},
{
"id": "learn.wwl.recognize-synthesize-speech"
},
{
"id": "learn.wwl.introduction-computer-vision"
},
{
"id": "learn.wwl.get-started-computer-vision"
},
{
"id": "learn.wwl.introduction-information-extraction"
},
{
"id": "learn.wwl.ai-information-extraction"
}
],
"updatedAt": "2025-12-12T00:08:00.0000000Z"
}
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: learningPath. |
id |
string |
Yes | Unique identifier for this learning path across Microsoft Learn. |
url |
uri |
Yes | Fully qualified URL to the learning path in the requested locale. |
locale |
string |
Yes | Locale the learning path is written in; falls back to en-us if the requested locale is unavailable. |
title |
string |
Yes | Localized learning path title. |
durationInMinutes |
integer |
Yes | Average completion time for the learning path in minutes. |
summary |
string |
Yes | Short description of the learning path. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG icon representing the learning path. |
levels |
Level[] |
Yes | Experience levels associated with the learning path. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
subjects |
Subject[] |
Yes | Relevant subject classifications. |
modules |
ModuleReference[] |
Yes | Associated module references. |
updatedAt |
date-time |
Yes | Last updated timestamp; may remain unchanged for minor edits. |
Applied Skills records
Each Applied Skills record will have the following form:
{
"type": "appliedSkills",
"id": "applied-skill.deploy-and-configure-azure-monitor",
"locale": "en-us",
"title": "Microsoft Applied Skills: Deploy and configure Azure Monitor",
"summary": "<p>To earn this Microsoft Applied Skills credential, learners demonstrate the ability to deploy and configure monitoring for Azure infrastructure.</p>\n<p>Candidates for this assessment lab should be familiar with operating systems, networking, servers, and virtualization.</p>\n",
"iconUrl": "https://learn.microsoft.com/",
"url": "https://learn.microsoft.com/credentials/applied-skills/deploy-and-configure-azure-monitor/",
"levels": [
{
"id": "intermediate",
"name": ""
}
],
"roles": [
{
"id": "administrator",
"name": "Administrator"
}
],
"products": [
{
"id": "azure-monitor",
"name": "Azure Monitor"
},
{
"id": "azure-virtual-machines",
"name": "Azure Virtual Machines"
},
{
"id": "azure-virtual-network",
"name": "Azure Virtual Network"
},
{
"id": "windows-server",
"name": "Windows Server"
}
],
"subjects": [
{
"id": "it-management-monitoring",
"name": "IT management and monitoring"
}
],
"updatedAt": "2026-02-06T00:10:57.0000000Z"
}
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: appliedSkills. |
id |
string |
Yes | Unique identifier for this applied skill across Microsoft Learn. |
locale |
string |
Yes | Locale the applied skill is written in; falls back to en-us if requested locale is unavailable. |
title |
string |
Yes | Localized applied skill title. |
summary |
string |
Yes | Short description of the applied skill. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG icon representing the applied skill. |
url |
uri |
Yes | Fully qualified URL to the applied skill in the requested locale. |
levels |
Level[] |
Yes | Experience levels associated with this applied skill. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
subjects |
Subject[] |
Yes | Relevant subject classifications. |
updatedAt |
date-time |
Yes | Last updated timestamp; may remain unchanged for minor updates. |
Certification records
Each certification record will have the following form:
{
"type": "certification",
"id": "certification.d365-functional-consultant-customer-service",
"locale": "en-us",
"title": "Microsoft Certified: Dynamics 365 Customer Service Functional Consultant Associate (Legacy with Power Platform)",
"subtitle": "<p>If you’re a functional consultant responsible for configuring and implementing Dynamics 365 solutions for customers, you can use this certification to shine a light on your skills and to help advance your career. A Dynamics 365 Customer Service functional consultant implements omnichannel solutions that focus on service, quality, reliability, efficiency, and customer satisfaction. As a functional consultant, you know how to work with project managers, developers, and solution architects. You need a minimum of one to three years of experience as a functional consultant implementing Dynamics 365.</p>\n<p>If you need more experience before you try to earn this certification, here are some suggestions:</p>\n<ul>\n<li>Work as a Dynamics 365 functional consultant on one or more projects.</li>\n<li>Work on a Dynamics 365 Customer Service implementation.</li>\n<li>Join the community at <a href=\"https://community.dynamics.com/\">community.dynamics.com</a>.</li>\n<li>Take available learning paths on <a href=\"/training/browse/?expanded=dynamics-365&products=dynamics-customer-service&roles=functional-consultant&resource_type=learning%20path\">Microsoft Learn</a>.</li>\n<li>Complete more hands-on practice.</li>\n<li>Sign up for an instructor-led training course.</li>\n</ul>\n<div class=\"WARNING\">\n<p>Warning</p>\n<p>This version of the certification is no longer available. <a href=\"https://techcommunity.microsoft.com/t5/microsoft-learn-blog/new-exam-structure-for-dynamics-365-certifications-for-customer/ba-p/3500861\">Read this blog post for more information about this change</a>.</p>\n</div>\n",
"iconUrl": "https://learn.microsoft.com/media/learn/certification/badges/microsoft-certified-associate-badge.svg",
"url": "https://learn.microsoft.com/credentials/certifications/d365-functional-consultant-customer-service-legacy-with-power-platform/",
"levels": [
{
"id": "intermediate",
"name": ""
}
],
"roles": [
{
"id": "business-analyst",
"name": "Business Analyst"
},
{
"id": "developer",
"name": "Developer"
},
{
"id": "functional-consultant",
"name": "Functional Consultant"
}
],
"products": [
{
"id": "power-apps",
"name": "Power Apps"
},
{
"id": "power-bi",
"name": "Power BI"
},
{
"id": "power-automate",
"name": "Power Automate"
},
{
"id": "dataverse",
"name": "Microsoft Dataverse"
},
{
"id": "ai-builder",
"name": "AI Builder"
},
{
"id": "power-platform",
"name": "Microsoft Power Platform"
},
{
"id": "office-teams",
"name": "Microsoft Teams"
},
{
"id": "microsoft-copilot-studio",
"name": "Microsoft Copilot Studio"
},
{
"id": "dynamics-365",
"name": "Dynamics 365"
},
{
"id": "dynamics-customer-service",
"name": "Customer Service"
}
],
"subjects": [],
"certificationType": {
"id": "role-based",
"name": "role-based"
},
"renewalFrequencyInDays": 0,
"prerequisites": [],
"exams": [
{
"id": "exam.mb-230"
}
],
"updatedAt": "2024-10-08T15:40:00.0000000Z"
}
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: certification. |
id |
string |
Yes | Unique identifier for this certification across Microsoft Learn. |
locale |
string |
Yes | Locale the certification is written in; falls back to en-us if the requested locale is unavailable. |
title |
string |
Yes | Localized certification title. |
subtitle |
string |
Yes | Localized certification subtitle. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG icon representing the certification. |
url |
uri |
Yes | Fully qualified URL to the certification in the requested locale. |
levels |
Level[] |
Yes | Experience levels associated with this certification. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
subjects |
Subject[] |
Yes | Relevant subject classifications. |
certificationType |
Taxonomy |
Yes | Classification representing the certification type. |
renewalFrequencyInDays |
integer |
Yes | Number of days before this certification expires; 0 means it does not expire. |
prerequisites |
string[] |
Yes | List of recommended prerequisites for earning this certification. |
exams |
ExamReference[] |
Yes | Associated exams required for this certification. |
updatedAt |
date-time |
Yes | Timestamp of last update; may remain unchanged for minor edits. |
Exam records
Each exam record will have the following form:
{
"type": "exam",
"id": "exam.77-881",
"locale": "en-us",
"title": "Word 2010",
"subtitle": "The core-level Microsoft Office Word 2010 user should be able to navigate Microsoft Office Word 2010 software at the feature and functional level. They should be familiar with and know how to use at least 80 percent of the features and capabilities of Microsoft Office Word 2010. The core-level user should be able to use Microsoft Office Word 2010 to create and edit professional-looking documents for a variety of purposes and situations. Users would include people from a wide variety of job roles from almost all areas of professional, student, and personal life.",
"iconUrl": "https://learn.microsoft.com/media/learn/certification/badges/certification-exam.svg",
"url": "https://learn.microsoft.com/credentials/certifications/exams/77-881/",
"levels": [
{
"id": "beginner",
"name": ""
}
],
"roles": [
{
"id": "business-user",
"name": "Business User"
}
],
"products": [
{
"id": "office-word",
"name": "Word"
}
],
"locales": [],
"examNumber": "77-881",
"pdfUrl": "https://learn.microsoft.comhttps//query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4trjX",
"practiceAssessmentUrl": "https://learn.microsoft.com/",
"providers": [],
"courses": [],
"studyGuide": [],
"updatedAt": "2026-02-06T00:10:57.0000000Z"
}
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: exam. |
id |
string |
Yes | Unique identifier for this exam across Microsoft Learn. |
locale |
string |
Yes | Locale the exam is written in; falls back to en-us if requested locale is unavailable. |
title |
string |
Yes | Localized exam title. |
subtitle |
string |
Yes | Localized exam subtitle. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG icon representing the exam. |
url |
uri |
Yes | Fully qualified URL to the exam in the requested locale. |
levels |
Level[] |
Yes | Experience levels associated with this exam. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
locales |
Locale[] |
Yes | Languages the exam is officially offered in. |
examNumber |
string |
Yes | Exam number identifier. |
pdfUrl |
uri |
No | URL to the “Skills Measured” PDF for this exam. |
practiceAssessmentUrl |
uri |
No | URL to a free practice assessment for this exam. |
providers |
Provider[] |
No | Providers offering this exam. |
courses |
Course[] |
No | Instructor‑led courses associated with this exam. |
studyGuide |
StudyGuideRef[] |
No | Associated study guide content (polymorphic references). |
updatedAt |
date-time |
Yes | Last updated timestamp; may remain unchanged for minor edits. |
Instructor-led course records
Each course record will have the following form:
{
"type": "course",
"id": "course.ai-900t00",
"url": "https://learn.microsoft.com/training/courses/ai-900t00/",
"locale": "en-us",
"title": "Introduction to AI in Azure",
"summary": "<p>This course introduces fundamentals concepts related to artificial intelligence (AI), and the services in Microsoft Azure that can be used to create AI solutions. The course is not designed to teach students to become professional data scientists or software developers, but rather to build awareness of common AI workloads and the ability to identify Azure services to support them. The course is designed as a blended learning experience that combines instructor-led training with online materials on the Microsoft Learn platform (<a href=\"https://azure.com/learn\">https://azure.com/learn</a>). The hands-on exercises in the course are based on Learn modules, and students are encouraged to use the content on Learn as reference materials to reinforce what they learn in the class and to explore topics in more depth.</p>\n<h4 id=\"audience-profile\">Audience Profile</h4>\n<p>The Introduction to AI in Azure course is designed for anyone interested in learning about the types of solution artificial intelligence (AI) makes possible, and the services on Microsoft Azure that you can use to create them. You don’t need to have any experience of using Microsoft Azure before taking this course, but a basic level of familiarity with computer technology and the Internet is assumed. Some of the concepts covered in the course require a basic understanding of mathematics, such as the ability to interpret charts. The course includes hands-on activities that involve working with data and running code, so a knowledge of fundamental programming principles will be helpful.</p>\n",
"iconUrl": "https://learn.microsoft.com/media/learn/certification/course.svg",
"courseNumber": "AI-900T00",
"durationInHours": 24,
"locales": [
{
"id": "en",
"name": "en"
},
{
"id": "ar",
"name": "ar"
},
{
"id": "zh-cn",
"name": "zh-cn"
},
{
"id": "zh-tw",
"name": "zh-tw"
},
{
"id": "fr",
"name": "fr"
},
{
"id": "de",
"name": "de"
},
{
"id": "id",
"name": "id"
},
{
"id": "it",
"name": "it"
},
{
"id": "ja",
"name": "ja"
},
{
"id": "ko",
"name": "ko"
},
{
"id": "pt-br",
"name": "pt-br"
},
{
"id": "ru",
"name": "ru"
},
{
"id": "es",
"name": "es"
}
],
"levels": [],
"roles": [
{
"id": "ai-engineer",
"name": "AI Engineer"
}
],
"products": [
{
"id": "azure",
"name": "Azure"
}
],
"certification": {
"id": "certification.azure-ai-fundamentals"
},
"studyGuide": [],
"updatedAt": "2026-02-06T00:10:57.0000000Z"
},
Property details
| Property | Type | Required | Description |
|---|---|---|---|
type |
enum |
Yes | Type discriminator. Allowed: course. |
id |
string |
Yes | Unique identifier for this course across Microsoft Learn. |
url |
uri |
Yes | Fully qualified URL to the course in the requested locale. |
locale |
string |
Yes | Locale the course is written in; falls back to en-us if requested locale is unavailable. |
title |
string |
Yes | Localized course title. |
summary |
string |
Yes | Short description of the course. |
iconUrl |
uri |
Yes | URL to a 100×100 SVG icon representing the course. |
courseNumber |
string |
Yes | Instructor‑led course number. |
durationInHours |
integer |
Yes | Average time to complete the course (in hours). |
locales |
Locale[] |
Yes | Languages the course is officially offered in; other languages may be supported by partners. |
levels |
Level[] |
Yes | Experience levels associated with this course. |
roles |
Role[] |
Yes | Relevant job roles. |
products |
Product[] |
Yes | Relevant product classifications. |
exam |
ExamRef |
No | Associated exam for this course. |
certification |
CertRef |
No | Associated certification for this course. |
studyGuide |
StudyGuideRef[] |
No | Related study materials (polymorphic references). |
updatedAt |
date-time |
Yes | Last updated timestamp; may remain unchanged for minor updates. |
Level, product, role, and subject records
The levels, products, roles, and subjects collections provide friendly names for the values used in the module and learning path data. All four collections have the same shape:
{
"id": "unique-id",
"name": "name-of-item",
"children": [
{ "id": "unique-id", "name": "name-of-item" },
{ "id": "unique-id", "name": "name-of-item" },
...
]
}
The id will match the values for levels, products, roles, and subjects included in the other catalog entries. The associated name provides a proper name in English for the entry. The children array is optional and enables hierarchical for values that have child relationships such as products.
As an example, here's a set of possible roles:
{
...
"roles": [
{
"id": "administrator",
"name": "Administrator"
},
{
"id": "ai-engineer",
"name": "AI Engineer"
},
{
"id": "business-analyst",
"name": "Business Analyst"
},
{
"id": "developer",
"name": "Developer"
},
...
]
}
Here's an example set of products, with children included to provide a more specific product category.
{
...
"products": [
{
"id": "dotnet",
"name": ".NET",
"children": [
{ "id": "dotnet-core", "name": ".NET Core" },
{ "id": "dotnet-standard", "name": ".NET Standard" },
{ "id": "aspnet-core", "name": "ASP.NET Core" },
{ "id": "ef-core", "name": "Entity Framework Core" }
]
},
{
"id": "ms-graph",
"name": "Microsoft Graph"
},
{
"id": "office",
"name": "Office",
"children": [
{ "id": "office-365", "name": "Office 365" },
{ "id": "office-add-ins", "name": "Office Add-ins" },
{ "id": "office-teams", "name": "Teams" }
]
},
{
"id": "sql-server",
"name": "SQL Server"
},
...
]
}
Next steps
Review the resources below to help you on your development journey: