Бөлісу құралы:


Справочная документация по API каталога Microsoft Learn

В этой статье содержатся сведения для разработчиков и запрашивающих разработчиков, реализующих API каталога Microsoft Learn. Мы также рекомендуем проверка рекомендации по API каталога Learn, заметки о выпуске и часто задаваемые вопросы для поддержки процесса разработки.

Конечная точка API

API каталога Microsoft Learn — это веб-API на основе REST, который возвращает ответ в кодировке JSON. Чтобы запросить полный каталог, отправьте запрос GET по адресу:

https://learn.microsoft.com/api/catalog/

Примечание.

Указанная выше конечная точка является текущей конечной точкой. Если вы используете другую, старую конечную точку, она по-прежнему будет работать должным образом при подключении, но преимущества переключения на новую конечную точку дают расширенные функции, такие как дополнительные параметры запроса.

Параметры запроса

Ниже приведены параметры запроса, которые может включать запрос. Все являются необязательными. Значения параметров запроса необходимо включить в URL-адрес. Конечную точку можно использовать без одного, одного, некоторых или всех этих параметров.

Важно!

Если вы используете несколько, запрос будет оценен с помощью оператора AND.

Имя (название) Значение Тип Обязательное поле Пример
локаль Один допустимый код языкового стандарта из поддерживаемого списка языковых стандартов. Возвращаемые метаданные будут отображаться в соответствии с указанным языковым стандартом (при наличии). Если этот параметр не указан, en-us возвращается ответ. строка Нет ?locale=en-us
type Разделенный запятыми список одного или нескольких объектов содержимого верхнего уровня или таксономий, которые мы в настоящее время предоставляем в ответе на возврат. Поддерживаемые значения: modules, units, learningPathsexamsmergedCertificationsappliedSkillscertificationslevelscourses, . subjectsrolesproducts строка Нет ?type=modules,learningPaths
uid Разделенный запятыми список одного или нескольких допустимых идентификаторов содержимого (uid) из доступных типов контента. Примечание. Пользовательские интерфейсы чувствительны к регистру. строка Нет ?uid=learn.azure.intro-to-azure-fundamentals
last_modified Оператор и datetime для фильтрации по последней измененной дате объектов. Оператор включает lt ( lte меньше или равно), (меньше или равно eq ), (равно), gt (больше или равно), gte (больше или равно). При использовании этого параметра оператор по умолчанию будет использоваться, gte если он не указан. строка Нет ?last_modified=gte 2022-01-01
Популярности Оператор и значение для фильтрации по значению популярности (в диапазоне от 0 до 1) объектов. Оператор включает lt ( lte меньше или равно), (меньше или равно eq ), (равно), gt (больше или равно), gte (больше или равно). При использовании этого параметра оператор по умолчанию будет использоваться, gte если он не указан. строка Нет ?popularity=gte 0.5
level Список разделенных запятыми одного или нескольких уровней, доступных в настоящее время (полный список находится в объекте уровня ответа API). строка Нет ?level=beginner
роль Список разделенных запятыми одной или нескольких ролей, доступных в настоящее время (полный список находится в объекте ролей ответа API). строка Нет ?role=developer
продукт Список разделенных запятыми одной или нескольких ролей, доступных в настоящее время (полный список находится в объекте продуктов ответа API). API не поддерживает иерархию продуктов, поэтому добавьте каждый продукт в список, который вы хотите включить в запрос. строка Нет ?product=azure
субъект Список разделенных запятыми одной или нескольких ролей, доступных в настоящее время (полный список находится в объекте субъектов ответа API). API не поддерживает иерархию субъектов, поэтому добавьте каждый субъект в список, который вы хотите включить в запрос. строка Нет ?subject=cloud-computing

Примеры запросов

Приведенные ниже запросы — это примеры, которые помогут вам получить представление о том, что можно запросить и как сформировать запрос.

Description Query
Все элементы в API каталога Learn https://learn.microsoft.com/api/catalog/
Все испанские модули https://learn.microsoft.com/api/catalog/?locale=es-es&type=modules
Все модули с оценкой популярности 0,9 или выше https://learn.microsoft.com/api/catalog/?type=modules&popularity>0.9
Все начальные объекты обучения и сертификации https://learn.microsoft.com/api/catalog/?level=beginner&subject=security
Все расширенные модули специальных возможностей с оценкой популярности более 0,5 и обновлены в прошлом месяце https://learn.microsoft.com/api/catalog/?level=advanced&subject=accessibility&popularity>0.5&last_modified=gte 2022-10-01

Ответ API

Служба может возвращать следующие коды состояния HTTP.

Код состояния Description
200 Успешно. Текст ответа содержит данные в формате JSON.
400 Один из параметров запроса отсутствует или имеет недопустимое значение.
404 URL-адрес не найден на сервере.
500 Непредвиденная ошибка сервера.
503 Служба временно недоступна.

Указывающий на успешное выполнение запроса ответ должен содержать сведения обо всех модулях и схемах обучения, как показано ниже.

Текст ответа

Текст успешного ответа будет закодирован в формате JSON и содержит 12 разделов:

{
    "modules": [ ... ],
    "units": [...],
    "learningPaths": [ ... ],
    "appliedSkills": [ ... ],
    "mergedCertifications": [ ... ],
    "certifications": [ ... ],
    "exams": [ ... ],
    "courses": [ ... ],
    "levels": [ ... ],
    "products": [ ... ],
    "roles": [ ... ],
    "subjects": [...],
}

Каждый массив включает один или несколько объектов в формате JSON, которые содержат данные, характерные для этого раздела ответа.

  1. modules — массив опубликованных модулей.
  2. units — массив опубликованных уроков.
  3. learningPaths — массив опубликованных схем обучения.
  4. appliedSkills: представляет собой массив опубликованных примененных навыков.
  5. mergedCertifications: представляет собой массив опубликованных сертификатов, объединенных с экзаменами.
  6. certifications — массив опубликованных сертификаций.
  7. exams — массив опубликованных экзаменов.
  8. courses — массив опубликованных учебных курсов под руководством инструктора.
  9. levels — массив возможных уровней аудитории.
  10. products — массив возможных продуктов и служб, входящих в каталог.
  11. roles — массив возможных должностных ролей.
  12. subjects — массив возможных тегов темы.

Записи модулей

Записи модулей

Каждая запись о модуле представлена в следующем формате:

{
    "summary": "Explore the core concepts of cloud computing and how it can help your business.",
    "levels": [
        "beginner"
    ],
    "roles": [
        "administrator",
        "business-analyst",
        "developer"
    ],
    "products": [
        "azure",
        "azure-portal",
        "azure-resource-manager"
    ],
    "subjects": [
        "data-visualization"
    ],
    "uid": "learn.principles-cloud-computing",
    "type": "module",
    "title": "Cloud Concepts - Principles of cloud computing",
    "duration_in_minutes": 62,
    "rating": {
        count: 2014,
        average: 4.84
    },
    "popularity": 0.8839785477023878, 
    "icon_url": "https://learn.microsoft.com/learn/achievements/principles-cloud-computing.svg",
    "social_image_url": "https://learn.microsoft.com/learn/achievements/principles-cloud-computing-social.png",
    "locale": "en-us",
    "last_modified": "2018-09-24T00:00:00Z",
    "url": "https://learn.microsoft.com/learn/modules/principles-cloud-computing",
    "firstUnitUrl": "https://learn.microsoft.com/learn/modules/principles-cloud-computing/1-introduction",
    "units": [
        "learn.principles-cloud-computing.1-introduction",
        "learn.principles-cloud-computing.2-types-of-cloud-computing",
        "learn.principles-cloud-computing.3-benefits-of-cloud-computing",
        "learn.principles-cloud-computing.4-categories-of-cloud-services",
        "learn.principles-cloud-computing.5-knowledge-check",
        "learn.principles-cloud-computing.6-summary"
    ],
    "number_of_children": 6
}

Сведения о полях

Поле Тип Описание:
summary строка Строка с кратким описанием модуля. Значение выражается в виде тега абзаца HTML с текстом, представляющим сводку.
levels массив строк Список уровней, связанных с этим модулем, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов этого модуля. В записях об уровнях могут указываться сведения об уроках.
roles массив строк Список должностных ролей, для которых актуален этот модуль.
products массив строк Список продуктов, которые охватывает этот модуль. В записях о продуктах могут указываться сведения о продуктах.
subjects массив строк Список соответствующих тем, которые входят в эту схему обучения.
uid строка Уникальный идентификатор модуля. Это значение будет уникальным в пределах платформы MS Learn.
type строка Тип записи. Во всех случаях указывается значение module.
title строка Заголовок модуля, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его недоступности — на английском языке (США).
duration_in_minutes integer Среднее время выполнения модуля в минутах.
rating объект Содержит как count (количество людей, которые оценили модуль), так и average (агрегированное значение оценок, от 1 до 5)
popularity двойной точности Нормализованное значение от 0 до 1, указывающее популярность модуля
icon_url строка Полный URL-адрес изображения, представляющего достижения для модуля, размером 100x100 пикселей в формате SVG на прозрачном фоне.
social_image_url строка Полный URL-адрес изображения в формате PNG, представляющего собой изображение достижений уровня модуля на прямоугольным непрозрачном фоне, которое подходит для социальных сетей или плиток. Если он недоступен для этого модуля, это свойство не будет возвращено в ответе.
locale строка Язык, на котором записаны данные JSON. Это значение будет соответствовать запрошенному языковому стандарту, если он доступен; в противном случае — en-us.
last_modified Дата Дата и время внесения последних значительных изменений.
url строка Полный URL-адрес модуля Learn согласно запрошенному языковому стандарту.
firstUnitUrl строка Полный URL-адрес первого урока модуля Learn согласно запрошенному языковому стандарту.
units массив строк Список связанных идентификаторов UID для урока. В записях об уроках могут указываться сведения об уроках.
number_of_children integer Число страниц (уроков) в модуле.

Записи об уроках (units)

Каждая запись об уроке представлена в следующем формате:

{
    "uid": "learn.azure.fundamental-azure-concepts.types-of-cloud-computing",
    "type": "unit",
    "title": "Discuss different types of cloud models",
    "duration_in_minutes": 5,
    "locale": "en-us",
    "last_modified": "2021-12-09T02:45:00+00:00"
},

Примечание.

У записи об уроке нет связанного URL-адреса, так как уроки не записываются как отдельное содержимое. Они должны выполняться в определенном порядке в рамках модуля. Поэтому мы включаем в запись о модуле ссылку на страницу сведений о модуле и первый урок, чтобы пользователи могли начать с этого места и продолжить работу с содержимым. Однако записи об уроках можно использовать для получения сведений об уроках, отображаемых в системах управления обучением (LMS) или в других интерфейсах.

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор модуля. Это значение будет уникальным в пределах платформы MS Learn.
type строка Тип записи. Во всех случаях указывается значение unit.
title строка Заголовок урока, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
duration_in_minutes Продолжительность урока. Если добавить все duration_in_minutes единиц, связанных с каждым модулем, вы получите общее время модуля.
locale строка Язык, на котором записаны данные JSON. Это значение будет соответствовать запрошенному языковому стандарту, если он доступен; в противном случае — en-us.
last_modified Дата Дата и время внесения последних значительных изменений.

Записи схем обучения

Каждая запись о схеме обучения (learningPath) представлена в следующем формате:

{
    "summary": "Azure Functions enable the creation of event driven, compute-on-demand systems that can be triggered by various external events. Learn how to leverage functions to execute server-side logic and build serverless architectures.",
    "levels": [
        "beginner",
        "intermediate"
    ],
    "roles": [
        "developer",
        "solution-architect"
    ],
    "products": [
        "azure",
        "azure-portal",
        "azure-functions",
        "azure-cosmos-db",
        "azure-cloud-shell"
    ],
    "subjects": [
        "data-visualization"
    ],
    "uid": "learn.create-serverless-applications",
    "type": "learningPath",
    "title": "Create serverless applications",
    "duration_in_minutes": 450,
    "rating": {
        count: 2014,
        average: 4.84
    },
    "popularity": 0.8839785477023878, 
    "icon_url": "https://learn.microsoft.com/learn/achievements/create-serverless-applications.svg",
    "social_image_url": "https://learn.microsoft.com/learn/achievements/create-serverless-applications-social.png",
    "locale": "en-us",
    "last_modified": "2018-12-27T00:00:00Z",
    "url": "https://learn.microsoft.com/learn/paths/create-serverless-applications",
    "firstModuleUrl": "https://learn.microsoft.com/learn/modules/choose-azure-service-to-integrate-and-automate-business-processes/",
    "modules": [
        "learn.choose-azure-service-to-integrate-and-automate-business-processes",
        "learn.create-serverless-logic-with-functions",
        "learn.execute-azure-function-with-triggers",
        "learn.chain-azure-functions-data-using-input-output-bindings",
        "learn.azure-create-long-running-serverless-workflow-with-durable-functions",
        "learn-pr.develop-test-deploy-azure-functions-core-tools",
        "learn.develop-test-deploy-azure-functions-with-visual-studio",
        "learn.azure.monitor-github-events-with-a-function-triggered-by-a-webhook",
        "learn.advocates.azure-functions-and-signalr"
    ],
    "number_of_children": 9
}

Сведения о полях

Поле Тип Описание:
summary строка Строка с кратким описанием схемы обучения. Значение выражается в виде тега абзаца HTML с текстом, представляющим сводку.
levels массив строк Список уровней, связанных с этой схемой обучения, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов этой схемы обучения. В записях об уровнях могут указываться сведения об уроках.
roles массив строк Список соответствующих ролей для этой схемы обучения.
products массив строк Список продуктов, которые охватывает эта схема обучения. В записях о продуктах могут указываться сведения о продуктах.
subjects массив строк Список соответствующих тем, которые входят в эту схему обучения.
uid строка Уникальный идентификатор схемы обучения. Это значение будет уникальным в пределах платформы MS Learn.
type строка Тип записи. Во всех случаях указывается значение learningPath.
title строка Заголовок схемы обучения, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его недоступности — на английском языке (США).
duration_in_minutes integer Среднее время выполнения схемы обучения в минутах. Это значение представляет собой сумму соответствующих значений всех модулей, включенных в эту схему обучения.
rating объект Содержит как count (количество людей, которые оценили схему обучения), так и average (агрегированное значение оценок, от 1 до 5)
popularity двойной точности Нормализованное значение от 0 до 1, указывающее популярность схемы обучения
icon_url строка Полный URL-адрес изображения, представляющего схему обучения, размером 100x100 пикселей в формате SVG.
social_image_url строка Полный URL-адрес изображения в формате PNG, представляющего собой изображение достижений уровня схемы обучения на прямоугольным непрозрачном фоне, которое подходит для социальных сетей или плиток. Если он недоступен для этого модуля, это свойство не будет возвращено в ответе.
locale строка Язык, на котором записаны данные JSON. Это значение будет соответствовать запрошенному языковому стандарту, если он доступен; в противном случае — en-us.
last_modified Дата Время последнего изменения схемы обучения.
url строка Полный URL-адрес схемы обучения в Microsoft Learn согласно запрошенному языковому стандарту.
firstModuleUrl строка Полный URL-адрес первого модуля схемы обучения в Microsoft Learn согласно запрошенному языковому стандарту.
modules массив строк Список связанных идентификаторов UID модуля. В записях о модулях могут указываться сведения о модулях.
number_of_children integer Количество модулей, включенных в эту схему обучения.

Записи примененных навыков

Каждая запись "Примененные навыки" будет иметь следующую форму:

{
    "uid": "applied-skill.deploy-and-configure-azure-monitor",
    "locale": "en-us",
    "url": "https://learn.microsoft.com/en-us/credentials/applied-skills/deploy-and-configure-azure-monitor/?WT.mc_id=api_CatalogApi",
    "title": "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",
    "levels": [
        "intermediate"
    ],
    "roles": [
        "administrator"
    ],
    "products": [
        "azure-monitor",
        "azure-virtual-machines",
        "azure-virtual-network",
        "windows-server"
    ],
    "subjects": [
        "it-management-monitoring"
    ],
    "study_guide": [
        {
            "uid": "learn.wwl.deploy-configure-azure-monitor",
            "type": "learningPath"
        }
    ],
    "last_modified": "2023-10-25T17:07:00+00:00"
}

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор для этого примененного навыка — это значение будет уникальным для всех MS Learn.
locale строка Язык, на котором записаны данные JSON. Это значение будет соответствовать запрошенному языковому стандарту, если он доступен; в противном случае — en-us.
title строка Заголовок для примененного навыка в запрашиваемом языковом стандарте или на английском языке США в качестве резервного.
summary строка Сводка по примененным навыкам в запрашиваемом языковом стандарте или на английском языке США в качестве резервного.
url строка Полный URL-адрес примененного навыка в Microsoft Learn в запрошенном языковом стандарте.
icon_url строка Полный URL-адрес изображения SVG 100x100, представляющего примененный навык (если он доступен, в противном случае не включен).
levels массив строк Список уровней, связанных с этим примененным навыком.
roles массив строк Список соответствующих ролей задания для этого примененного навыка. В записях о ролях могут указываться сведения о ролях.
subjects массив строк Список соответствующих предметов, охватывающих этот примененный навык.
study_guide массив объектов Список связанного содержимого для изучения этого примененного навыка. Сведения об объектах можно ссылаться в связанных записях.
last_modified Дата Последний раз, когда этот примененный навык был изменен.

Объединенные записи сертификации

Каждая объединенная запись сертификации будет иметь следующую форму:

{
    "uid": "certification.d365-functional-consultant-manufacturing",
    "title": "Microsoft Certified: Dynamics 365 Supply Chain Management, Manufacturing Functional Consultant Associate",
    "summary": "<div class=\"WARNING\">\n<p>Warning</p>\n<p>This certification retired on June 30, 2023. You can renew it for at least six months after the retirement date by completing the free online assessment available on the <a href=\"/credentials/certifications/d365-functional-consultant-manufacturing/renew\">certification renewal page</a>. <a href=\"https://aka.ms/BACertPortfolioUpdatesBlog\">Read the blog post</a>.</p>\n</div>\n<p>If you’re a functional consultant or a business user with a deep understanding of manufacturing industry standards, this certification might be for you. You also need experience configuring and implementing Dynamics 365 Supply Chain Management to meet the needs of your organization. Supply chain management, manufacturing functional consultants are key resources who work with developers, solution architects, project managers, and functional consultants in finance, commerce, and supply chain.</p>\n<p>If you need more experience before you try to earn this certification, here are some suggestions:</p>\n<ul>\n<li>Study the supply chain management and supply chain management, manufacturing modules on Microsoft Learn, and complete more hands-on practice.</li>\n<li>Sign up for an instructor-led training course that covers the MB-300 or MB-320 track.</li>\n<li>Take part in the community at <a href=\"https://community.dynamics.com/\">community.dynamics.com</a>, or join a user group.</li>\n<li>Shadow a manufacturing functional consultant in a manufacturing workstream.</li>\n<li>Get a mentor, tour manufacturing lines, and learn how things are made.</li>\n<li>Ask questions, and learn from experts and customers.</li>\n</ul>\n",
    "url": "https://learn.microsoft.com/en-us/credentials/certifications/d365-functional-consultant-manufacturing/?WT.mc_id=api_CatalogApi",
    "icon_url": "https://learn.microsoft.com/en-us/media/learn/certification/badges/microsoft-certified-associate-badge.svg",
    "last_modified": "2023-09-19T00:47:00+00:00",
    "type": "cert",
    "certification_type": "role-based",
    "products": [
        "dynamics-365",
        "dynamics-finance"
    ],
    "levels": [
        "intermediate"
    ],
    "roles": [
        "functional-consultant"
    ],
    "subjects": [],
    "renewal_frequency_in_days": 0,
    "prerequisites": [],
    "skills": [
        "Describe finance and operations apps, and extend apps by using Microsoft Power Platform technologies",
        "Configure administrative features and workflows",
        "Manage finance and operations data",
        "Validate and support solutions",
        "Configure Dynamics 365 Supply Chain Management, Manufacturing",
        "Manage manufacturing processes",
        "Implement master planning for production",
        "Implement other manufacturing features"
    ],
    "recommendation_list": [],
    "study_guide": [],
    "exam_duration_in_minutes": 0,
    "locales": [],
    "providers": [],
    "career_paths": []
}

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор сертификации. Это значение будет уникальным в пределах платформы MS Learn.
title строка Заголовок сертификации, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
summary строка Сводка по сертификации в запрашиваемом языковом стандарте или на английском языке США в качестве резервного.
url строка Полный URL-адрес сертификации в Microsoft Learn согласно запрошенному языковому стандарту.
icon_url строка Полный URL-адрес изображения, представляющего сертификацию, размером 100x100 пикселей в формате SVG.
last_modified Дата При последнем изменении этой сертификации.
type строка Тип записи. Во всех случаях указывается значение cert.
certification_type строка Тип сертификации. Возможные значения: fundamentals, mce, mcsa, mcsd, mcse, mos, mta, role-based, specialty.
products массив строк Список соответствующих продуктов, охватываемых этой сертификацией. В записях о продуктах могут указываться сведения о продуктах.
levels массив строк Список уровней, связанных с этой сертификацией, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов экзаменов для этой сертификации. В записях об уровнях могут указываться сведения об уроках.
roles массив строк Список соответствующих ролей для этой сертификации. В записях о ролях могут указываться сведения о ролях.
subjects массив строк Список соответствующих субъектов, охватывающих эту сертификацию.
renewal_frequency_in_days integer Число дней до истечения срока действия этой сертификации и должно быть продлено. Если значение равно 0, срок действия сертификации не истекает.
prerequisites массив строк Список рекомендуемых предварительных требований для получения этой сертификации. Сведения о сертификатах можно указать в записях сертификации.
skills массив строк Список навыков, измеряемых на экзамене, необходимом для этой сертификации.
recommendation_list массив строк Список рекомендаций, связанных с этой сертификацией.
study_guide массив объектов Список связанных материалов, которые необходимо изучить для этой сертификации. Сведения об объектах можно ссылаться в связанных записях.
exam_duration_in_minutes integer Количество минут, выделенных для завершения экзамена.
locales массив строк Список языков, в которые предлагается эта сертификация.
providers массив объектов Список поставщиков для этой сертификации. Тип определяет поставщика и полный URL-адрес со ссылкой для планирования экзамена с помощью поставщика.
career_paths массив объектов Список путей карьеры для этой сертификации.

Примечание.

Сертификаты, требующие только одного экзамена, будут возвращены в рамках этого свойства mergedCertifications.

Записи о сертификации (certifications)

Каждая запись о сертификации будет иметь следующий вид:

{
    "uid": "certification.d365-functional-consultant-customer-service",
    "title": "Microsoft Certified: Dynamics 365 Customer Service Functional Consultant Associate",
    "subtitle": "Microsoft Dynamics 365 Customer Service functional consultants are responsible for implementing omnichannel solutions that focus on service, quality, reliability, efficiency, and customer satisfaction.",
    "url": "https://learn.microsoft.com/cert-exam-sandbox/cert/?WT.mc_id=api_CatalogApi",
    "icon_url": "https://learn.microsoft.com/media/learn/certification/badges/microsoft-certified-associate-badge.svg",
    "type": "cert",
    "certification_type": "role-based",
    "exams": [
        "exam.77-881"
    ],
    "levels": [
        "intermediate"
    ],
    "roles": [
        "functional-consultant"
    ],
    "study_guide": [
        {
            "uid": "learn.get-started-with-d365",
            "type": "module"
        },
        {
            "uid": "learn.d365-notebook",
            "type": "module"
        },
        {
            "uid": "learn.d365-fundamentals",
            "type": "learningPath"
        }
    ]
}

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор сертификации. Это значение будет уникальным в пределах платформы MS Learn.
title строка Заголовок сертификации, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
subtitle строка Подзаголовок сертификации, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
url строка Полный URL-адрес сертификации в Microsoft Learn согласно запрошенному языковому стандарту.
icon_url строка Полный URL-адрес изображения, представляющего сертификацию, размером 100x100 пикселей в формате SVG.
type строка Тип записи. Во всех случаях указывается значение cert.
certification_type строка Тип сертификации. Возможные значения: fundamentals, mce, mcsa, mcsd, mcse, mos, mta, role-based, specialty.
exams массив строк Список связанных экзаменов, необходимых для этой сертификации. В записях о сертификации могут указываться сведения об уроках.
levels массив строк Список уровней, связанных с этой сертификацией, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов экзаменов для этой сертификации. В записях об уровнях могут указываться сведения об уроках.
roles массив строк Список соответствующих ролей для этой сертификации. В записях о ролях могут указываться сведения о ролях.
study_guide массив объектов Список связанных материалов, которые необходимо изучить для этой сертификации. Сведения об объектах можно ссылаться в связанных записях.

Примечание.

Сертификаты, требующие более одного экзамена, будут присутствовать в этой записи сертификации, ссылающейся на массив экзаменов.

Записи об экзаменах (exams)

Каждая запись об экзамене представлена в следующем формате:

{
    "uid": "exam.77-881",
    "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.",
    "display_name": "77-881",
    "url": "https://learn.microsoft.com/cert-exam-sandbox/exam/77-881/?WT.mc_id=api_CatalogApi",
    "icon_url": "https://learn.microsoft.com/media/learn/certification/badges/certification-exam.svg",
    "pdf_download_url": "https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4trjX",
    "practice_test_url": "https://www.mindhub.com/70-413-Designing-and-Implementing-a-Server-Infrast-p/mu-70-413_p.htm?utm_source=microsoft&amp;utm_medium=certpage&amp;utm_campaign=msofficialpractice",
    "practice_assessment_url": "https://learn.microsoft.com/en-us/certifications/exams/{exam}/practice/assessment?assessment-type=practice&assessmentId={assessmentId}",
    "locales": [],
    "type": "exam",
    "courses": [
        "course.pl-200t00",
        "course.mb-230t01"
    ],
    "levels": [
        "beginner"
    ],
    "roles": [
        "business-user"
    ],
    "products": [
        "office-word"
    ],
    "providers": [],
    "study_guide": [
        {
            "uid": "learn.get-started-with-word-2010",
            "type": "module"
        },
        {
            "uid": "learn.office2010-notebook",
            "type": "module"
        },
        {
            "uid": "learn.office2010-fundamentals",
            "type": "learningPath"
        }
    ]
}

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор экзамена. Это значение будет уникальным в пределах платформы MS Learn.
title строка Заголовок экзамена, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
subtitle строка Подзаголовок экзамена, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
display_name строка Отображаемое имя экзамена, отображаемое в соответствии с запрошенным языковым стандартом, а в случае его отсутствия — на английском языке (США).
url строка Полный URL-адрес экзамена в Microsoft Learn согласно запрошенному языковому стандарту.
icon_url строка Полный URL-адрес изображения, представляющего экзамен, размером 100x100 пикселей в формате SVG.
pdf_download_url строка Полный URL-адрес изображения в формате PDF, представляющего навыки, которые оцениваются на этом экзамене.
practice_test_url строка Полный URL-адрес практического теста, связанного с экзаменом.
practice_assessment_url строка Полный URL-адрес бесплатной оценки практики, связанной с экзаменом.
locales массив строк Список языков, на которых доступен этот экзамен.
type строка Тип записи. Во всех случаях указывается значение exam.
courses массив строк Список соответствующих идентификаторов UID для курса. В записях о курсах могут указываться сведения о курсах.
levels массив строк Список уровней, связанных с этим экзаменом, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов этого экзамена. В записях об уровнях могут указываться сведения об уроках.
roles массив строк Список соответствующих ролей для этого экзамена. В записях о ролях могут указываться сведения о ролях.
products массив строк Список продуктов, которые охватывает этот экзамен. В записях о продуктах могут указываться сведения о продуктах.
providers массив объектов Список поставщиков для этого экзамена. Тип определяет поставщика и полный URL-адрес со ссылкой для планирования экзамена с помощью поставщика.
study_guide массив объектов Список связанных материалов, которые необходимо изучить для этого экзамена. Сведения об объектах можно ссылаться в связанных записях.

Записи о курсах под руководством инструктора (courses)

Каждая запись о курсе представлена в следующем формате:

{
    "uid": "course.mb-230t01",
    "course_number": "MB-230T01",
    "title": "Microsoft Dynamics 365 Customer Service - added non-exist studyguide",
    "summary": "Microsoft Dynamics 365 Customer Service offers any organization an opportunity for customer success. Using tools such as automatic case creation and queue management frees up your time to dedicate it where you can have a greater impact, directly with your customers. Join our team of globally recognized experts as they take you step by step from creating cases to interacting with customers to resolving those cases. Once you’ve resolved those cases you can learn from data analysis the key details to help you resolve similar cases faster or avoid new issues altogether. A Dynamics 365 Customer Engagement Functional Consultant is responsible for performing discovery, capturing requirements, engaging subject matter experts and stakeholders, translating requirements, and configuring the solution and applications. The Functional Consultant implements a solution using out of the box capabilities, codeless extensibility, application and service integrations.",
    "duration_in_hours": 72,
    "url": "https://learn.microsoft.com/cert-exam-sandbox/course/mb-230t01/?WT.mc_id=api_CatalogApi",
    "icon_url": "https://learn.microsoft.com/media/learn/certification/course.svg",
    "locales": [
        "en"
    ],
    "type": "course",
    "certification": "certification.d365-functional-consultant-customer-service",
    "exam": "exam.77-881",
    "levels": [
        "intermediate"
    ],
    "roles": [
        "functional-consultant"
    ],
    "products": [
        "dynamics-365"
    ],
    "study_guide": [
        {
            "uid": "learn.align-requirements-in-azure",
            "type": "module"
        },
        {
            "uid": "learn.manage-resources-in-azure",
            "type": "learningPath"
        }
    ]
},

Сведения о полях

Поле Тип Описание:
uid строка Уникальный идентификатор курса под руководством инструктора. Это значение будет уникальным в пределах платформы MS Learn.
course_number строка Идентификатор курса под руководством инструктора.
title строка Заголовок курса под руководством инструктора, отображаемый в соответствии с запрошенным языковым стандартом, а в случае его недоступности — на английском языке (США).
summary строка Строка с кратким описанием курса под руководством инструктора. Значение выражается в виде тега абзаца HTML с текстом, представляющим сводку.
duration_in_hours integer Средняя продолжительность курса под руководством инструктора в часах.
url строка Полный URL-адрес страницы со сведениями о курсе под руководством инструктора в Microsoft Learn согласно запрошенному языковому стандарту.
icon_url строка Полный URL-адрес изображения, представляющего достижения для курса под руководством инструктора, размером 100x100 пикселей в формате SVG.
locales массив строк Список языков, на которых официально доступен этот курс под руководством инструктора. Партнеры по обучению могут поддерживать другие языки.
type строка Тип записи. Для курсов под руководством инструктора во всех случаях указывается значение course.
certification строка Сертификация, связанная с курсом под руководством инструктора.
exam строка Экзамен, связанный с курсом под руководством инструктора.
levels массив строк Список уровней, связанных с этим курсом под руководством инструктора, которые указывают, какой опыт работы в роли необходим для изучения всех аспектов этого курса. В записях об уровнях могут указываться сведения об уроках.
study_guide массив объектов Полный URL-адрес изображения в формате PDF, представляющего навыки, которые оцениваются в рамках этой сертификации.

Записи по уровням, продуктам, ролям и темам

Коллекции levels, products, roles и subjects содержат понятные имена значений, используемых в данных модулей и схем обучения. Все четыре коллекции представлены в одном формате:

{
    "id": "unique-id",
    "name": "name-of-item",
    "children": [
        { "id": "unique-id", "name": "name-of-item" },
        { "id": "unique-id", "name": "name-of-item" },
           ...
    ]
}

Значение параметра id соответствует значениям уровней, продуктов, ролей и тем, указанным в других записях каталога. Значение связанного с ним параметра name — это имя собственное для записи, указанное на английском языке. Массив children является необязательным и вводит иерархию для значений дочерних элементов, таких как продукты.

Например, вот набор возможных ролей:

{
    ...
    "roles": [
        {
            "id": "administrator",
            "name": "Administrator"
        },
        {
            "id": "ai-engineer",
            "name": "AI Engineer"
        },
        {
            "id": "business-analyst",
            "name": "Business Analyst"
        },
        {
            "id": "developer",
            "name": "Developer"
        },
        ...
    ]
}

Ниже приведен пример набора продуктов с дочерними элементами для предоставления более конкретной категории продуктов.

{
    ...
    "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"
        },
        ...
    ]
}

Примеры кода

Существует множество способов вызова API каталога Learn, но приведенные ниже примеры кода являются примерами того, как его можно использовать.

jQuery;

$(function() {
    var params = {
        locale:'en-us'
    };
    $.ajax({
        url: "https://learn.microsoft.com/api/learn/catalog?" + $.param(params),
            type: "GET"
    }).done(function(data) {
        alert("success");
    }).fail(function(error) {
        alert("error");
    });
})

.NET и C#

public string GetCatalogData()
{
var client = new WebClient();
client.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko");
var response = client.DownloadString("https://learn.microsoft.com/api/learn/catalog?locale=en-us");
dynamic parsedJson = JsonConvert.DeserializeObject(response);
JsonConvert.SerializeObject(response, Formatting.Indented);
return Convert.ToString(response);
}

PHP с расширением cURL

<?php 

// From URL to get webpage contents. 
$url = "https://learn.microsoft.com/api/learn/catalog"; 

// Initialize a CURL session. 
$ch = curl_init(); 

// Return Page contents. 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 
//grab URL and pass it to the variable. 
curl_setopt($ch, CURLOPT_URL, $url); 

$result = curl_exec($ch); 

echo $result;

?>

PYTHON 3 с использованием библиотеки requests


#!/usr/bin/env python3
#Using Python 3.8.2 install 5/6/2020

import requests
import json

#if given error 'response / requests not defined', install requests via 'pip install requests' in the command line

parameters= {"locale": "en-us"}

response = requests.get("https://learn.microsoft.com/api/learn/catalog/", parameters)

#print(response.status_code)

rawJson = response._content

#Create python objects based on the data using json.loads

data = json.loads(rawJson)

print(data)

Следующие шаги

Просмотрите приведенные ниже ресурсы, чтобы помочь вам в процессе разработки: