แค็ตตาล็อก API Microsoft Learn (ตัวอย่าง)

แค็ตตาล็อก API Microsoft Learn (ตัวอย่าง) ช่วยให้คุณส่งคิวรีบนเว็บไปยัง Microsoft Learn และรับรายละเอียดเกี่ยวกับเนื้อหาที่เผยแพร่ เช่น ชื่อเรื่อง ผลิตภัณฑ์ที่ครอบคลุม และลิงก์ที่ไปยังการฝึกอบรม ลูกค้าสามารถรับข้อมูลที่ส่งกลับมาและแสดงในระบบการจัดการการเรียนรู้ (LMSs) ควบคู่เนื้อหาการฝึกอบรมอื่นๆ

หมายเหตุ

ลูกค้าสามารถใช้ API นี้เพื่อแสดงข้อมูลเกี่ยวกับการฝึกอบรมที่พร้อมใช้งาน แต่ต้องทำการฝึกอบรมให้เสร็จสมบูรณ์บน Microsoft Learn

แค็ตตาล็อก API ได้รับการเสนอภายใต้เงื่อนไขของข้อกำหนดการใช้ Microsoft APIs หน้านี้แสดงรายละเอียดทางเทคนิคเกี่ยวกับ API และวิธีการแปลข้อมูลที่ส่งกลับ

เส้นทางโมดูลและการเรียนรู้

เนื้อหาใน Microsoft Learn ได้รับการจัดระเบียบรอบๆ สององค์ประกอบ: โมดูล และ เส้นทางการเรียนรู้

โมดูล

โมดูล เป็นเนื้อหาการฝึกอบรมที่แท้จริง โมดูลเดี่ยวประกอบด้วยหลายหน้าเว็บที่สำรวจการบริการหรือเทคโนโลยีและมักจะให้ฟอร์มการโต้ตอบบางอย่างเพื่อลองใช้เทคโนโลยี แต่ละโมดูลที่มีเมตาดาต้าที่เกี่ยวข้องเพื่อระบุอย่างรวดเร็วว่าสำหรับให้ใคร ครอบคลุมอะไรบ้าง และระยะเวลาที่จะดำเนินการให้เสร็จสมบูรณ์ รายละเอียดเหล่านี้สามารถพบได้ในไทล์กราฟิกบนหน้าที่เรียกดู Microsoft Learn ดังที่แสดงในรูปประกอบต่อไปนี้

รูปประกอบแสดงโมดูลเดี่ยวพร้อมรายละเอียดทั้งหมดจากเว็บไซต์ Microsoft Learn

เส้นทางการเรียนรู้

เส้นทางการเรียนรู้ คือคอลเลกชันของโมดูลที่เกี่ยวข้องที่แสดงในลำดับที่เฉพาะเจาะจงเพื่อให้โมดูลที่สร้างบนอีกที่หนึ่งเพื่อสอนหัวข้อที่กว้างขึ้น เส้นทางการเรียนรู้ยังได้บ่งบอกลักษณะเมตาดาต้าที่คล้ายคลึงกับโมดูล ที่แสดงให้เห็นในรูปประกอบจากหน้าค้นหาด้านล่าง

รูปประกอบแสดงเส้นทางการเรียนรู้จากเว็บไซต์ Microsoft Learn

จุดสิ้นสุด API

แค็ตตาล็อก API Microsoft Learn คือเว็บ API แบบพื้นฐาน REST ซึ่งส่งการตอบสนองการเข้ารหัส JSON กลับมา

หากต้องการร้องขอแค็ตตาล็อกของโมดูลและเส้นทางการเรียนรู้ ให้ส่งคำขอ GET ไปยัง:

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

ข้อสำคัญ

คำขอต้องใช้โพรโทคอล HTTPS

พารามิเตอร์คำถาม

ต่อไปนี้คือพารามิเตอร์คำถามซึ่งคำขอก็จะรวมอยู่ด้วย คอลัมน์ ที่ร้องขอ จะแสดงโดยคุณต้องระบุพารามิเตอร์ คุณต้องเข้ารหัส URL ค่าของพารามิเตอร์คำถาม

ชื่อ ค่า พิมพ์ จำเป็น
ตำแหน่งที่ตั้ง รหัสตำแหน่งที่ตั้งที่ใช้ได้จาก รายการที่ได้รับการสนับสนุนของตำแหน่งที่ตั้ง เช่น ' en-us ' เมตาดาต้าที่ถูกส่งกลับมาจะอยู่ในตำแหน่งคำขอหากปรากฎ หากพารามิเตอร์นี้ไม่ได้ถูกส่งมา ค่าตั้งต้นของ 'en-us' จะถูกใช้ สตริง ไม่

การตอบสนอง API

การบริการอาจแสดงเป็นในโค้ดสถานะ HTTP

โค้ดสถานะ คำอธิบาย
200 สำเร็จ รูปแบบของการตอบสนองจะอยู่ในแบบข้อมูลการเข้ารหัส JSON ด้วย
400 หนึ่งในพารามิเตอร์คิวรีได้หายไปหรือไม่สามารถใช้งาน
404 ไม่พบ URL บนเซิร์ฟเวอร์
500 ข้อผิดพลาดเซิร์ฟเวอร์ที่คาดไม่ถึง
503 บริการนี้ไม่สามารถใช้งานได้ชั่วคราว

การตอบสนองที่สำเร็จจะมีข้อมูลที่เกี่ยวกับโมดูลและเส้นทางการเรียนรู้ทั้งหมด ดังที่แสดงด้านล่าง

เคล็ดลับ

ขอแนะนำให้แคชการตอบสนองและรีเฟรชมุมมองของข้อมูลในช่วงเวลาเป็นครั้งคราวแทนที่จะเป็นทุกครั้งที่จำเป็น

รูปแบบการตอบสนอง

การตอบสนองที่สำเร็จจะเข้ารหัสใน JSON และมีห้าส่วน:

{
    "modules": [ ... ],
    "learningPaths": [ ... ],
    "products": [ ... ],
    "roles": [ ... ],
    "levels": [ ... ]
}

แต่ละการเรียงลำดับหรือวัตถุการเข้ารหัส JSON ที่มากกว่าประกอบด้วยข้อมูลที่ระบุเฉพาะซึ่งเป็นส่วนของการตอบสนอง

  1. modules: คือการเรียงลำดับการเผยแพร่โมดูล
  2. learningPaths: คือการเรียงลำดับการเผยแพร่เส้นทางการเรียนรู้
  3. levels: คือการเรียงลำดับระดับความเป็นไปได้ของผู้ชม
  4. roles: คือการเรียงลำดับบทบาทความเป็นไปได้ของงาน
  5. products: คือการเรียงลำดับของผลิตภัณฑ์และบริการที่ครอบคลุมโมดูลที่เผยแพร่

การบันทึกโมดูล

แต่ละโมดูลจะมีฟอร์มดังต่อไปนี้:

{
    "summary": "<p sourcefile=\"azure/principles-cloud-computing/index.yml\" sourcestartlinenumber=\"1\" jsonPath=\"/summary\">Explore the core concepts of cloud computing and how it can help your business.</p>\n",
    "levels": [
        "beginner"
    ],
    "roles": [
        "administrator",
        "business-analyst",
        "developer"
    ],
    "products": [
        "azure",
        "azure-portal",
        "azure-resource-manager"
    ],
    "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://docs.microsoft.com/learn/achievements/principles-cloud-computing.svg",
    "locale": "en-us",
    "last_modified": "2018-09-24T00:00:00Z",
    "url": "https://docs.microsoft.com/en-us/learn/modules/principles-cloud-computing",
    "firstUnitUrl": "https://docs.microsoft.com/en-us/learn/modules/principles-cloud-computing/1-introduction",
    "number_of_children": 10
}
ฟิลด์ พิมพ์ คำอธิบาย
summary สตริง สตริงที่มีคำอธิบายสั้นๆ สำหรับโมดูล ค่าที่แสดงออกมาเป็นแท็กย่อหน้า HTML กับข้อความภายในคือข้อสรุป
levels อาร์เรย์ของสตริง การแสดงประสบการณ์ในบทบาทที่สำคัญเพื่อให้เข้าใจลักษณะทั้งหมดของโมดูลนี้
roles อาร์เรย์ของสตริง รายการของบทบาทงานซึ่งโมดูลนี้เกี่ยวข้องด้วย
products อาร์เรย์ของสตริง รายการของผลิตภัณฑ์ที่เกี่ยวข้องที่โมดูลนี้ครอบคลุม
uid สตริง ตัวระบุที่ไม่ซ้ำกันสำหรับโมดูลนี้ - ค่านี้จะไม่ซ้ำกันกับ MS Learn ทั้งหมด
type สตริง การบันทึกประเภท ค่าจะเป็น 'โมดูล' เสมอ
title สตริง หัวข้อสำหรับโมดูลในตำแหน่งคำขอ หรือภาษาอังกฤษแบบ US จะเป็นแบบสำรอง
duration_in_minutes จำนวนเต็ม เวลาเฉลี่ยของโมดูลนี้ใช้ครบเป็นนาที
rating วัตถุ ซึ่งประกอบด้วยทั้ง count ซึ่งเป็นจำนวนคนที่ให้คะแนนโมดูลและ average ผลรวมของการให้คะแนนซึ่งจะเท่ากับ 1-5
popularity สองตัวเลข ค่าปกติจาก 0-1 ที่ระบุความนิยมของโมดูล
icon_url สตริง URL ที่รับรองอย่างสมบูรณ์จนไปถึงภาพขนาด 100x100 .svg หรือ .png ที่แสดงโมดูล
locale สตริง ภาษาที่ข้อมูล JSON นี้ถูกเขียน ค่านี้จะเป็นตำแหน่งคำขอหากใช้งานได้หรือเป็น 'en-us' หากใช้งานไม่ได้
last_modified วันที่ ครั้งสุดท้ายที่โมดูลนี้ได้ทำการปรับปรุงครั้งใหญ่
url สตริง URL ที่รับรองอย่างสมบูรณ์ไปยังโมดูลใน Microsoft Learn ในแหล่งกำเนิดคำขอ
firstUnitUrl สตริง URL แบบเต็มสำหรับหน่วยแรกของโมดูลใน Microsoft Learn ในตำแหน่งคำขอ
number_of_children จำนวนเต็ม จำนวนหน้า (หน่วย) โมดูลนี้ได้ระบุ

การบันทึกเส้นทางการเรียนรู้

แต่ละเส้นทางการเรียนรู้จะมีฟอร์มต่อไปนี้:

{
    "summary": "<p sourcefile=\"paths/create-serverless-applications/index.yml\" sourcestartlinenumber=\"1\" jsonPath=\"/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.</p>\n",
    "levels": [
        "beginner",
        "intermediate"
    ],
    "roles": [
        "developer",
        "solution-architect"
    ],
    "products": [
        "azure",
        "azure-portal",
        "azure-functions",
        "azure-cosmos-db",
        "azure-cloud-shell"
    ],
    "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://docs.microsoft.com/learn/achievements/create-serverless-applications.svg",
    "locale": "en-us",
    "last_modified": "2018-12-27T00:00:00Z",
    "url": "https://docs.microsoft.com/en-us/learn/paths/create-serverless-applications",
    "firstModuleUrl": "https://docs.microsoft.com/en-us/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 อาร์เรย์ของสตริง รายการผลิตภัณฑ์ที่เกี่ยวข้องสำหรับเส้นทางการเรียนรู้นี้
uid สตริง ตัวระบุที่ไม่ซ้ำกันสำหรับเส้นทางการเรียนรู้ - ค่านี้จะไม่ซ้ำกันกับ MS Learn ทั้งหมด
type สตริง ประเภทของระเบียน ค่าจะเป็น 'เส้นทางการเรียนรู้' เสมอ
title สตริง หัวข้อสำหรับเส้นทางการเรียนรู้ในตำแหน่งคำขอ หรือภาษาอังกฤษแบบ US จะเป็นแบบสำรอง
duration_in_minutes จำนวนเต็ม เวลาเฉลี่ยของเส้นทางการเรียนรู้นี้จะใช้ครบนาที ค่านี้คือค่ารวมของข้อมูลจากโมดูลที่รวมอยู่ด้วยทั้งหมด
rating วัตถุ ซึ่งประกอบด้วยทั้ง count ซึ่งเป็นจำนวนคนที่ให้คะแนนเส้นทางการเรียนรู้และ average ผลรวมของการให้คะแนนซึ่งจะเท่ากับ 1-5
popularity สองตัวเลข ค่าปกติจาก 0-1 ที่ระบุความนิยมของเส้นทางการเรียนรู้
icon_url สตริง URL ที่รับรองอย่างสมบูรณ์จนไปถึงภาพขนาด 100x100 .svg หรือ .png ที่แสดงเส้นทางการเรียนรู้
locale สตริง ภาษาที่ข้อมูล JSON นี้ถูกเขียน ค่านี้จะเป็นตำแหน่งคำขอหากใช้งานได้หรือเป็น 'en-us' หากใช้งานไม่ได้
last_modified วันที่ ครั้งสุดท้ายที่เส้นทางการเรียนรู้ถูกเปลี่ยน
url สตริง URL ที่รับรองอย่างสมบูรณ์ไปยังเส้นทางการเรียนรู้ใน Microsoft Learn ในแหล่งกำเนิดคำขอ
firstModuleUrl สตริง URL แบบเต็มสำหรับโมดูลแรกของเส้นทางการเรียนรู้ใน Microsoft Learn ในตำแหน่งคำขอ
modules อาร์เรย์ของสตริง รายการตัวระบุโมดูล (uid's) ที่รวมอยู่ในเส้นทางการเรียนรู้นี้
number_of_children จำนวนเต็ม จำนวนโมดูลที่เส้นทางการเรียนรู้นี้มีอยู่ในนั้น

ระเบียนผลิตภัณฑ์ บทบาท และระดับ

การรวบรวม levels roles และ products มีชื่อง่ายๆ สำหรับค่าที่ถูกใช้ในข้อมูลโมดูลและเส้นทางการเรียนรู้ การรวบรวมทั้งสามมีรูปร่างเหมือนกัน:

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

ผู้ให้บริการแค็ตตาล็อก LTI

ต้องการรวมแค็ตตาล็อก API เข้าไปยังระบบการจัดการการเรียนรู้ (LMS) หรือไม่ ตรวจสอบแอปพลิเคชัน LTI โอเพนซอร์สของเรา

เราได้สร้างรหัสอ้างอิงที่จะเปลี่ยนแค็ตตาล็อก API ให้เป็นผู้ให้บริการ LTI คุณสามารถทำการแก้ไขหรือติดตั้งแอปพลิเคชันโดยตรงลงใน LMS ของคุณได้อย่างรวดเร็ว แอปพลิเคชัน LTI จะช่วยให้คุณรวมโมดูล Microsoft Learn เข้ากับหลักสูตรที่มีอยู่ของคุณ และยังให้ประสบการณ์การใช้งานจริงด้วย Azure และเทคโนโลยีอื่น ๆ ของ Microsoft ผู้เรียนจะถูกส่งจาก LMS ไปยัง Microsoft Learn ซึ่งผู้เรียนสามารถสะสมคะแนนและความสำเร็จ และติดตามความคืบหน้าของกิจกรรมการเรียนรู้

โปรแกรมแสดงตัวอย่างแค็ตตาล็อก API

คุณกำลังผสานเนื้อหา Microsoft Learn ลงในแพลตฟอร์มการเรียนรู้ของคุณหรือไม่ ใช้สำหรับ โปรแกรมการแสดงตัวอย่างแค็ตตาล็อก API (CAP) เพื่อให้ทีมงานของเราสามารถช่วยให้แน่ใจว่าเป็นประสบการณ์การรวมที่ดีที่สุดและได้รับการป้อนข้อมูลของคุณในเวอร์ชันในอนาคตของแค็ตตาล็อก API

ข้อคิดเห็นและการสนับสนุน

แค็ตตาล็อก API อยู่ในตัวอย่างขณะนี้และให้โดยไม่มีข้อตกลงระดับบริการ หากคุณได้รับคำแนะนำหรือมีปัญหาในการใช้ API คุณสามารถแสดงข้อคิดเห็นกับทีมได้