15 49.0138 8.38624 1 0 4000 1 https://vladtalkstech.com 300 1
theme-sticky-logo-alt

MS-600 Study Guide – Building Applications and Solutions with Microsoft 365 Core Services

The MS-600 exam is the only exam needed to get the Microsoft 365 Certified: Developer Associate. Candidates for this exam are Microsoft 365 Developers who design, build, test, and maintain applications and solutions that are optimized for the productivity and collaboration needs of organizations using the Microsoft 365 platform.

In this MS-600 Study Guide , I will share both free and paid options, whether books, video training or simply links to articles and blog posts. I will not share any dumps as those are against the Microsoft Terms of Service, and by using dumps, we decrease the value of our certifications.

Books

There is no book covering all the content of the exam yet, but the following books cover part of it.

SharePoint Development with the SharePoint Framework: Design and implement state-of-the-art customizations for SharePoint
This book shows you how design, build, deploy and manage SPFx based solutions for SharePoint Online and SharePoint 2016.The book starts by getting you familiar with the basic capabilities of SPFx. After that, we will walk through the tool-chain on how to best create production-ready solutions that can be easily deployed manually or fully automated throughout your target Office 365 tenants.

Video Training

NOTE: Pluralsight is a paid resource unlike Channel9 and Microsoft Virtual Academy which are free. The quality they provide is also superior because of all the quality checks they go through, and the instructors are one of the best in the industry. The Pluralsight courses have a link to where you can get a free trial and decide for yourself if paying a subscription or not is worth it, but the 10-day free trial should allow you to view all those courses for free. Other paid resources in this study guide include Udemy and Voitanos

SharePoint Framework – Getting Started
SharePoint has evolved a lot over the years, which has caused a fair amount of confusion. This course gives you an introduction to SharePoint Framework, the newest iteration of Office 365 and SharePoint developer story.

SharePoint Framework Extensions
SharePoint Framework Extensions (SPFx) allow you to customize facets of SharePoint beyond just Web Parts. In addition to teaching how to write, deploy, and uninstall SPFx extensions, this course also covers Office 365 CDN and column formatters.

Tooling up for SharePoint Framework
SharePoint developers looking to use the new SharePoint Framework must first become comfortable with several new tools and technologies. This course introduces and demonstrates each component of the SharePoint Framework development toolchain.

Mastering the SharePoint Framework
This course is your best resource available to learn this new development model to extend and customize SharePoint. Whether you are just starting out and need the basics, or you are an experienced developer looking to dive deep into the nuts and bolts, there is a package for you! And not to worry, if you start with the basics and find yourself wanting more, you can always upgrade to the next level!

SharePoint Framework Tutorials
These are recorded SharePoint Framework tutorials by the SharePoint Developer PnP Community

Mastering SharePoint Framework SPFx Development
 Learn How to Develop SPFx Solutions using React & NoJS Frameworks From Scratch Step By Step

SharePoint: SPFx Development Model
SharePoint SPFx Development Model is designed to help both new and existing developers better acquaint themselves with the new set of tools required to do the job, as well as providing clear instructions how some of the server-side full trust development model practices can be achieved with this new framework. Moving into the cloud and away from server-side takes away certain customization capabilities but enhances the client-side look and feel. Relying on the SPFx framework, this new model can be used to create modern lightweight web applications in SharePoint Online.

Extend Office fundamentals
Learn about the fundamentals of extending Office using Add-ins.

Instructor-led training (Microsoft Official Courses)

Course MS-600T00-A: Building applications and solutions with Microsoft 365 core services
This course covers five central elements of Microsoft 365 platform – implementing Microsoft Identity, working with Microsoft Graph, extending and customizing SharePoint, extending Teams, and extending Office. In this course, students will learn how to implement Microsoft Identity and work with Microsoft Graph. Students will also gain the knowledge on UI elements (including Adaptive Cards and UI Fabric), Integration Points (including Microsoft Teams, Office Add-ins, SharePoint Framework, Actionable Messages), and determining workload platform targets.

Articles / Blog Posts Per Objective

Implement Microsoft Identity (20-25%)

Register an Application

  • determine the supported account type
  1. Getting Started with Microsoft Identity
  2. Quickstart: Register an application with the Microsoft identity platform
  • select authentication and client credentials for app type and authentication flow
  1. Microsoft identity platform and the OAuth 2.0 client credentials flow
  2. Authentication flows and application scenarios
  3. Authentication flows
  • define app roles
  1. Application roles
  2. How to: Add app roles in your application and receive them in the token

Implement Authentication

  • configure Microsoft Authentication Library (MSAL JS) for endpoint and token cache
  1. Overview of Microsoft Authentication Library (MSAL)
  2. Acquire and cache tokens using the Microsoft Authentication Library (MSAL)
  3. Microsoft Authentication Library for JavaScript (MSAL.js)
  • plan and configure scopes for dynamic or static permission
  1. Permissions and consent in the Microsoft identity platform endpoint
  2. Scopes for a web API accepting v1.0 tokens
  • use the MSAL JS login method
  1. Single sign-on with MSAL.js
  2. Initialize client applications using MSAL.js
  3. Prompt behavior in MSAL.js interactive requests

Configure Permissions to Consume an API

  • configure Delegated permissions for the app
  1. Permissions and consent in the Microsoft identity platform endpoint
  2. Configure how end-users consent to applications
  • configure Application permissions for the app
  1. Permissions and consent in the Microsoft identity platform endpoint
  • identify admin consent requirements
  1. Azure Active Directory consent framework
  2. Admin consent on the Microsoft identity platform

Implement Authorization to Consume an API

  • configure incremental consent scopes
  1. Why update to Microsoft identity platform (v2.0)?
  • call MSAL JS using AquireTokenSilent/AquireToken pattern
  1. Use the Microsoft Authentication Library (MSAL) to sign in the user

Implement Authorization in an API

  • validate Access Token
  1. Microsoft identity platform access tokens
  2. Permissions and consent in the Microsoft identity platform endpoint
  3. How to: Add app roles in your application and receive them in the token
  4. Microsoft identity platform ID tokens
  • configure effective permissions for delegated scopes
  1. Permissions and consent in the Microsoft identity platform endpoint
  • implement app permissions using roles
  1. How to: Add app roles in your application and receive them in the token
  • use a delegated access token to call a Microsoft API
  1. Get access without a user
  2. Service-to-service calls that use delegated user identity in the On-Behalf-Of flow
  3. Microsoft identity platform and OAuth 2.0 On-Behalf-Of flow

Create a Service to Access Microsoft Graph

  • configure client credentials using a certificate
  1. Service to service calls using client credentials (shared secret or certificate)
  2. How to: Specify Client Credential Values
  • acquire an access token for Microsoft Graph using an application permission and client credential certificate
  1. Build ASP.NET MVC web applications with the Microsoft Graph .NET SDK
  2. Resolve Microsoft Graph authorization errors

Build Apps with Microsoft Graph (20-25%)

Optimize Data Usage with query parameters

  • use $filter query parameter
  1. Optimize data usage when using Microsoft Graph with query parameters
  2. Use query parameters to customize responses
  • use $select query parameter
  1. Optimize data usage when using Microsoft Graph with query parameters
  2. Use query parameters to customize responses
  • order results using $orderby query parameter
  1. Optimize data usage when using Microsoft Graph with query parameters
  2. Use query parameters to customize responses
  • set page size of results using $skip and $top query parameters
  1. Paging Microsoft Graph data in your app
  • expand and retrieve resources using $expand query parameter
  • retrieve the total count of matching resources using $count query parameter
  • search for resources using $search query parameter
  1. searchRequest resource type
  • determine the appropriate Microsoft Graph SDK to leverage
  1. Microsoft Graph SDKs overview

Optimize network traffic

  • monitor for changes using change notifications
  1. Optimize network traffic with Microsoft Graph
  2. Microsoft Graph change notifications
  3. Use the Microsoft Graph API to get change notifications
  4. Use Change Notifications and Track Changes with Microsoft Graph
  5. Set up change notifications that include resource data (preview)
  • combine multiple requests using $batch
  1. Combine multiple requests in one HTTP call using JSON batching
  2. Use the Microsoft Graph SDKs to batch requests
  3. Batching requests to Microsoft Graph
  • get changes using a delta query
  1. Microsoft Graph track changes (delta query)
  2. Use delta query to track changes in Microsoft Graph data
  • implement error 429 handler
  1. Microsoft Graph throttling guidance

Access User data from Microsoft Graph

  • get the signed in users profile
  1. Access User Data from Microsoft Graph
  2. Get a user
  • get a list of users in the organization
  1. Working with users in Microsoft Graph
  2. List users
  • get the users profile photo
  1. profilePhoto resource type
  2. Get photo
  3. List photos
  • get the user object based on the users unique identifier
  1. Get a user
  • get the users manager profile
  1. List manager

Access Files with Microsoft Graph

  • get the list of files in the signed in users OneDrive
  1. Access Files with Microsoft Graph
  • download a file from the signed in users OneDrive using file unique id
  1. Working with files in Microsoft Graph
  2. Access Files with Microsoft Graph
  • download a file from a SharePoint Site using the relative path to the file
  1. Download the contents of a DriveItem
  • get the list of files trending around the signed in user
  1. Overview of people and workplace intelligence in Microsoft Graph
  2. Use the Microsoft Graph API to integrate people and workplace intelligence in an app
  3. List trending
  • upload a large file to OneDrive
  1. Upload large files with an upload session
  • get a user object from an owner list in a group and retrieve that user’s files
  1. List ownedObjects

Manage a group lifecycle on Microsoft Graph

  • get the information on a group by id
  1. Get group
  2. Manage Group Lifecycle with Microsoft Graph
  • get the list of members in a Group
  1. List members
  • get the list of owners of a Group
  1. List owners
  • get the list of Groups where the signed in user is a member
  1. List memberOf
  • get the list of Groups where the signed in user is an owner
  1. List owners
  • provision a Group
  1. Create group
  • provision a Team with a Group
  1. Create team
  2. Creating teams and managing members using Microsoft Graph
  • delete a group
  1. Delete group

Extend and Customize SharePoint (20-25%)

Understand the components of a SharePoint Framework (SPFx) web part

  • identify the appropriate tool to create an SPFx Web Part project
  1. Introduction to customizing and extending SharePoint
  2. SharePoint Framework development tools and libraries
  3. Set up your SharePoint Framework development environment
  • understand properties of client-side web parts
  1. Build your first SharePoint client-side web part (Hello World part 1)
  2. Connect your client-side web part to SharePoint (Hello World part 2)
  3. Make your SharePoint client-side web part configurable
  4. Provision SharePoint assets from your SharePoint client-side web part
  5. Integrate web part properties with SharePoint
  • understand Office UI Fabric in client-side web parts
  1. Use Office UI Fabric React components in your SharePoint client-side web part
  2. Using Office UI Fabric Core and Fabric React in SharePoint Framework
  3. Design considerations for SharePoint client-side web parts
  • understand when to use an app page
  1. Using single part app pages in SharePoint Online
  • differentiate between app page and web part
  • understand rendering framework options
  1. Overview of the SharePoint Framework

Understand SPFx extensions

  • identify the appropriate tool to create an SPFx Extension project
  1. SharePoint Framework development tools and libraries
  • understand page placeholders from Application Customizer
  1. Use page placeholders from Application Customizer (Hello World part 2)
  2. Pre-allocate space for SharePoint Framework extension placeholders
  • understand the ListView Command Set extension
  1. Build your first ListView Command Set extension
  • understand the Field Customizer extension
  1. Build your first Field Customizer extension

Understand the process to package and deploy an SPFx solution

  • understand the options for preparing a package for deployment
  1. Deploy your client-side web part to a SharePoint page (Hello World part 3)
  • understand the options for packaging a solution
  1. SharePoint solution packaging
  • understand the requirements of tenant-scoped solution deployment
  1. Tenant-scoped solution deployment for SharePoint Framework solutions
  • understand the requirements of domain isolated web parts
  1. Isolated web parts
  • understand the options to deploy a solution
  1. Solutions Deployment and Maintenance

Understand the consumption of Microsoft Graph

  • understand the purpose of the MSGraphClient object
  1. Use the MSGraphClient to connect to Microsoft Graph
  2. Consume the Microsoft Graph in the SharePoint Framework
  3. SharePoint PnP Webcast – Using MSGraphClient within SharePoint Framework
  • understand the methods for granting permissions to Microsoft Graph
  1. Microsoft Graph permissions reference

Understand the consumption of third party APIs secured with Azure AD from within SPFx

• understand the purpose of the AadHttpClient object understand the methods for granting permissions to consume a third party API

  1. Connect to Azure AD-secured APIs in SharePoint Framework solutions

Understand Web Parts as Teams Tabs

  • understand the considerations for creating a SPFx Web Part to be a Teams Tab
  1. Build Microsoft Teams tab using SharePoint Framework – Tutorial
  2. Considerations for building for Microsoft Teams using SharePoint Framework
  3. Building Microsoft Teams Tabs using SharePoint Framework
  • understand the options for deploying a SPFx Web Part as a Teams Tab
  1. Create Microsoft Teams manifest manually for a web part and deploy it to Microsoft Teams
  2. Adding a Microsoft Teams tab in SharePoint as an SPFx web part
  3. Expose SharePoint Framework web parts in Microsoft Teams

Understand branding and theming in SharePoint

  • understand the options for SharePoint site theming
  1. SharePoint Design Manager branding and design capabilities
  2. Themes overview for SharePoint
  3. SharePoint site theming
  4. Branding your SharePoint site
  • understand the options for site designs and site scripts
  1. SharePoint site design and site script overview
  2. Get started creating site designs and site scripts
  3. Set up a site design for your hub site

Extend Teams (15-20%)

Understand the components of a Teams app

  • understand the purpose of a Teams app manifest
  1. Introduction to building apps for Microsoft Teams
  2. Reference: Manifest schema for Microsoft Teams
  1. Create an app package for your Microsoft Teams app
  2. Building an app for Microsoft Teams
  • understand the options for distributing a Teams app
  1. Distribute your Microsoft Teams app
  2. Upload an app package to Microsoft Teams
  3. Manage your apps in the Microsoft Teams admin center
  • understand the benefits of using deep links
  1. Create deep links to content and features in Microsoft Teams
  • understand task modules
  1. What are task modules?
  2. Collect Input in Microsoft Teams with Task Modules
  3. Using task modules from Microsoft Teams bots

Understand webhooks in Microsoft Teams

  • understand when to use webhooks
  1. What are webhooks and connectors?
  2. Sending messages to connectors and webhooks
  3. What are webhooks and connectors?
  4. Post external requests to Teams with incoming webhooks
  • understand the limitations of webhooks
  1. What are webhooks and connectors?
  • understand the differences between incoming and outgoing webhooks
  1. Post external requests to Teams with incoming webhooks
  2. Add custom bots to Microsoft Teams with outgoing webhooks

Understand tabs in Microsoft Teams

  • understand when to use tabs
  1. Create embedded web experiences with tabs for Microsoft Teams
  2. Use built-in and custom tabs in Microsoft Teams
  • understand the capabilities of personal tabs
  1. What are Microsoft Teams custom tabs?
  • understand the capabilities of channel tabs
  1. What are Microsoft Teams custom tabs?

Understand messaging extensions

  • understand when to use messaging extensions
  1. What are messaging extensions?
  2. Develop messaging extensions for Microsoft Teams
  3. Initiate actions with messaging extensions
  4. Task-oriented interactions in Microsoft Teams with messaging extensions
  • understand where messaging extensions can be invoked from
  1. Define messaging extension action commands
  2. Create a messaging extension in Microsoft Teams
  • understand search based messaging extensions
  1. Search with messaging extensions
  2. Define messaging extension search commands
  • choose the appropriate message extension command type based on requirements
  • understand action-based messaging extensions with adaptive cards understand action-based messaging extensions with parameters
  1. Define messaging extension action commands

Understand conversational bots

  • understand when to use conversational bots
  1. What are conversational bots?
  2. Create interactive conversational bots for Microsoft Teams
  • understand the scoping options for bots
  • understand when to use a task module from a bot
  1. What are task modules?
  2. Using task modules from Microsoft Teams bots

Extend Office (15-20%)

Understand fundamental components and types of Office Add-ins

  • understand task pane and Content Office Add-ins
  1. Introduction to Office client customization with add-ins
  • understand dialogs
  • understand custom functions
  1. Create custom functions in Excel
  2. Tutorial: Create custom functions in Excel
  3. Troubleshoot custom functions
  4. Runtime for UI-less Excel custom functions
  5. Get started developing Excel custom functions
  • understand Add-in commands
  1. Add-in commands for Excel, PowerPoint, and Word
  • understand the purpose of Office Add-ins manifest
  1. Start Here! A guide for beginners making Office Add-ins
  2. Office Add-ins XML manifest

Understand Office JS APIs

  • understand the Office Add-in programming model
  1. Introduction to Office client customization with add-ins
  2. Office Add-ins platform overview
  • understand Office Add-in developer tools
  1. Develop Office Add-ins
  2. Microsoft Office Add-in Debugger Extension for Visual Studio Code
  • understand the capabilities of the Excel Javascript API
  1. Excel JavaScript API overview
  2. Fundamental programming concepts with the Excel JavaScript API
  3. Performance optimization using the Excel JavaScript API
  4. Work with workbooks using the Excel JavaScript API
  • understand the capabilities of the Outlook JavaScript API
  1. Outlook add-in APIs
  • understand the capabilities of the Word JavaScript API
  1. Word JavaScript API overview
  2. Fundamental programming concepts with the Word JavaScript API
  3. Word add-ins overview
  • understand the capabilities of the PowerPoint JavaScript API
  1. JavaScript API for PowerPoint
  • understand the capabilities of custom functions
  1. Get started developing Excel custom functions
  2. Tutorial: Create custom functions in Excel

Understand customization of Add-ins

  • understand the options of persisting state and settings
  1. Introduction to Office client customization with add-ins
  2. Manage state and settings for an Outlook add-in
  • understand Office UI Fabric in Office Add-ins
  1. Office UI Fabric in Office Add-ins
  2. Use Office UI Fabric React in Office Add-ins
  • understand when to use Microsoft Graph in Office Add-ins
  1. Authorize to Microsoft Graph with SSO
  2. Office Add-in that that supports Single Sign-on to Office, the Add-in, and Microsoft Graph
  • understand authorization when using Microsoft Graph in Office Add-ins
  1. Authentication and authorization basics for Microsoft Graph
  2. Authorize to Microsoft Graph with SSO

Understand testing, debugging, and deployment options

  • select deployment options based on requirements
  1. Deploy and publish Office Add-ins
  • understand testing and debugging concepts for Office Add-ins
  1. Test and debug Office Add-ins
  2. Debug Office Add-ins in Visual Studio
  3. Microsoft Office Add-in Debugger Extension for Visual Studio Code
  4. Troubleshoot user errors with Office Add-ins
  5. Debug add-ins in Office on the web
  6. Sideload Office Add-ins in Office on the web for testing

Understand actionable messages

• understand the features of actionable messages with an adaptive card

  1. Introduction to Office client customization with add-ins
  2. Adaptive Cards Overview
  3. Designing Outlook Actionable Message cards with the Adaptive Card format
  4. Adaptive Cards for Outlook Actionable Message Developers
  • understand the scenarios for refreshing an actionable message
  1. Refresh an actionable message when the user opens it

Additional Tips

I think the best thing that you can do after reading this, or even meanwhile, is to open a free Microsoft 365 trial (or a few), and play with those features, follow the tutorials and you shouldn’t have any problems with the exam!

Did I miss any cool links in this guide? Let me know in the comments!

5 Comments

  • June 22, 2020 at 12:28 pm
    Eduardo Jimenez

    Hi Vlad, when is available the Articles/blog post per objective? thanks in advance, regards.

    Reply
  • July 6, 2020 at 12:54 pm
    Nanddeep

    Hi Vlad,
    Does MS-600 exam involves Lab?

    Reply
  • September 15, 2020 at 12:16 pm
    Ganesh Sanap

    Why the title is “Microsoft 365 Certified: Teams Administrator Associate” in “Certification Path” section?

    Also, can you please suggest some study resources for Microsoft Identity and Graph (other than Microsoft Learn)??

    Reply
    • September 22, 2020 at 2:23 pm

      The full MS-600 Study Guide will go live in max a week!

      Reply

Leave a Reply