Access the Microsoft Defender for Endpoint APIs

Applies to:

Important

Advanced hunting capabilities are not included in Defender for Business.

Want to experience Microsoft Defender for Endpoint? Sign up for a free trial.

Defender for Endpoint exposes much of its data and actions through a set of programmatic APIs. Those APIs will enable you to automate workflows and innovate based on Defender for Endpoint capabilities. The API access requires OAuth2.0 authentication. For more information, see OAuth 2.0 Authorization Code Flow.

Watch this video for a quick overview of Defender for Endpoint's APIs.

In general, you'll need to take the following steps to use the APIs:

You can access Defender for Endpoint API with Application Context or User Context.

  • Application Context: (Recommended)

    Used by apps that run without a signed-in user present. for example, apps that run as background services or daemons.

    Steps that need to be taken to access Defender for Endpoint API with application context:

    1. Create a Microsoft Entra Web-Application.

    2. Assign the desired permission to the application, for example, 'Read Alerts', 'Isolate Machines'.

    3. Create a key for this Application.

    4. Get token using the application with its key.

    5. Use the token to access the Microsoft Defender for Endpoint API

      For more information, see Get access with application context.

  • User Context:

    Used to perform actions in the API on behalf of a user.

    Steps to take to access Defender for Endpoint API with user context:

    1. Create Microsoft Entra Native-Application.

    2. Assign the desired permission to the application, e.g 'Read Alerts', 'Isolate Machines' etc.

    3. Get token using the application with user credentials.

    4. Use the token to access the Microsoft Defender for Endpoint API

      For more information, see Get access with user context.

Tip

When more than one query request is required to retrieve all the results, Microsoft Graph returns an @odata.nextLink property in the response that contains a URL to the next page of results. For more information, see Paging Microsoft Graph data in your app.

Tip

Do you want to learn more? Engage with the Microsoft Security community in our Tech Community: Microsoft Defender for Endpoint Tech Community.