Get machine by ID API
Applies to:
Want to experience Defender for Endpoint? Sign up for a free trial.
Note
If you are a US Government customer, please use the URIs listed in Microsoft Defender for Endpoint for US Government customers.
Tip
For better performance, you can use server closer to your geo location:
- us.api.security.microsoft.com
- eu.api.security.microsoft.com
- uk.api.security.microsoft.com
- au.api.security.microsoft.com
- swa.api.security.microsoft.com
- ina.api.security.microsoft.com
API description
Retrieves specific Machine by its device ID or computer name.
Limitations
- You can get devices last seen according to your configured retention policy.
- Rate limitations for this API are 100 calls per minute and 1500 calls per hour.
Permissions
One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Use Microsoft Defender for Endpoint APIs
Permission type | Permission | Permission display name |
---|---|---|
Application | Machine.Read.All | 'Read all machine profiles' |
Application | Machine.ReadWrite.All | 'Read and write all machine information' |
Delegated (work or school account) | Machine.Read | 'Read machine information' |
Delegated (work or school account) | Machine.ReadWrite | 'Read and write machine information' |
Note
When obtaining a token using user credentials:
- The user needs to have at least the following role permission: 'View Data' (See Create and manage roles for more information)
- The user needs to have access to the device, based on device group settings (See Create and manage device groups for more information)
Device group creation is supported in Defender for Endpoint Plan 1 and Plan 2.
HTTP request
GET /api/machines/{id}
Request headers
Name | Type | Description |
---|---|---|
Authorization | String | Bearer {token}. Required. |
Request body
Empty
Response
If successful and device exists - 200 OK with the machine entity in the body. If machine with the specified ID wasn't found - 404 Not Found.
Example
Request example
Here's an example of the request.
GET https://api.security.microsoft.com/api/machines/1e5bc9d7e413ddd7902c2932e418702b84d0cc07
Response example
Here's an example of the response.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://api.security.microsoft.com/api/$metadata#Machine",
"id": "1e5bc9d7e413ddd7902c2932e418702b84d0cc07",
"computerDnsName": "mymachine1.contoso.com",
"firstSeen": "2018-08-02T14:55:03.7791856Z",
"lastSeen": "2018-08-02T14:55:03.7791856Z",
"osPlatform": "Windows10" "Windows11",
"version": "1709",
"osProcessor": "x64",
"lastIpAddress": "172.17.230.209",
"lastExternalIpAddress": "167.220.196.71",
"osBuild": 18209,
"healthStatus": "Active",
"rbacGroupId": 140,
"rbacGroupName": "The-A-Team",
"riskScore": "Low",
"exposureLevel": "Medium",
"isAadJoined": true,
"aadDeviceId": "80fe8ff8-2624-418e-9591-41f0491218f9",
"machineTags": [ "test tag 1", "test tag 2" ]
}
Tip
Do you want to learn more? Engage with the Microsoft Security community in our Tech Community: Microsoft Defender for Endpoint Tech Community.