Namespace: microsoft.graph
Note: The Microsoft Graph API for Intune requires an active Intune license for the tenant.
Create a new deviceInstallState object.
This API is available in the following national cloud deployments.
Global service |
US Government L4 |
US Government L5 (DOD) |
China operated by 21Vianet |
✅ |
✅ |
✅ |
✅ |
Permissions
One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.
Permission type |
Permissions (from least to most privileged) |
Delegated (work or school account) |
DeviceManagementApps.ReadWrite.All |
Delegated (personal Microsoft account) |
Not supported. |
Application |
DeviceManagementApps.ReadWrite.All |
HTTP Request
POST /deviceAppManagement/managedEBooks/{managedEBookId}/deviceStates
POST /deviceAppManagement/managedEBooks/{managedEBookId}/userStateSummary/{userInstallStateSummaryId}/deviceStates
Request body
In the request body, supply a JSON representation for the deviceInstallState object.
The following table shows the properties that are required when you create the deviceInstallState.
Property |
Type |
Description |
id |
String |
Key of the entity. |
deviceName |
String |
Device name. |
deviceId |
String |
Device Id. |
lastSyncDateTime |
DateTimeOffset |
Last sync date and time. |
installState |
installState |
The install state of the eBook. Possible values are: notApplicable , installed , failed , notInstalled , uninstallFailed , unknown . |
errorCode |
String |
The error code for install failures. |
osVersion |
String |
OS Version. |
osDescription |
String |
OS Description. |
userName |
String |
Device User Name. |
Response
If successful, this method returns a 201 Created
response code and a deviceInstallState object in the response body.
Example
Request
Here is an example of the request.
POST https://graph.microsoft.com/v1.0/deviceAppManagement/managedEBooks/{managedEBookId}/deviceStates
Content-type: application/json
Content-length: 374
{
"@odata.type": "#microsoft.graph.deviceInstallState",
"deviceName": "Device Name value",
"deviceId": "Device Id value",
"lastSyncDateTime": "2017-01-01T00:02:49.3205976-08:00",
"installState": "installed",
"errorCode": "Error Code value",
"osVersion": "Os Version value",
"osDescription": "Os Description value",
"userName": "User Name value"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new DeviceInstallState
{
OdataType = "#microsoft.graph.deviceInstallState",
DeviceName = "Device Name value",
DeviceId = "Device Id value",
LastSyncDateTime = DateTimeOffset.Parse("2017-01-01T00:02:49.3205976-08:00"),
InstallState = InstallState.Installed,
ErrorCode = "Error Code value",
OsVersion = "Os Version value",
OsDescription = "Os Description value",
UserName = "User Name value",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DeviceAppManagement.ManagedEBooks["{managedEBook-id}"].DeviceStates.PostAsync(requestBody);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
mgc device-app-management managed-ebooks device-states create --managed-ebook-id {managedEBook-id} --body '{\
"@odata.type": "#microsoft.graph.deviceInstallState",\
"deviceName": "Device Name value",\
"deviceId": "Device Id value",\
"lastSyncDateTime": "2017-01-01T00:02:49.3205976-08:00",\
"installState": "installed",\
"errorCode": "Error Code value",\
"osVersion": "Os Version value",\
"osDescription": "Os Description value",\
"userName": "User Name value"\
}\
'
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewDeviceInstallState()
deviceName := "Device Name value"
requestBody.SetDeviceName(&deviceName)
deviceId := "Device Id value"
requestBody.SetDeviceId(&deviceId)
lastSyncDateTime , err := time.Parse(time.RFC3339, "2017-01-01T00:02:49.3205976-08:00")
requestBody.SetLastSyncDateTime(&lastSyncDateTime)
installState := graphmodels.INSTALLED_INSTALLSTATE
requestBody.SetInstallState(&installState)
errorCode := "Error Code value"
requestBody.SetErrorCode(&errorCode)
osVersion := "Os Version value"
requestBody.SetOsVersion(&osVersion)
osDescription := "Os Description value"
requestBody.SetOsDescription(&osDescription)
userName := "User Name value"
requestBody.SetUserName(&userName)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
deviceStates, err := graphClient.DeviceAppManagement().ManagedEBooks().ByManagedEBookId("managedEBook-id").DeviceStates().Post(context.Background(), requestBody, nil)
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
DeviceInstallState deviceInstallState = new DeviceInstallState();
deviceInstallState.setOdataType("#microsoft.graph.deviceInstallState");
deviceInstallState.setDeviceName("Device Name value");
deviceInstallState.setDeviceId("Device Id value");
OffsetDateTime lastSyncDateTime = OffsetDateTime.parse("2017-01-01T00:02:49.3205976-08:00");
deviceInstallState.setLastSyncDateTime(lastSyncDateTime);
deviceInstallState.setInstallState(InstallState.Installed);
deviceInstallState.setErrorCode("Error Code value");
deviceInstallState.setOsVersion("Os Version value");
deviceInstallState.setOsDescription("Os Description value");
deviceInstallState.setUserName("User Name value");
DeviceInstallState result = graphClient.deviceAppManagement().managedEBooks().byManagedEBookId("{managedEBook-id}").deviceStates().post(deviceInstallState);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
const options = {
authProvider,
};
const client = Client.init(options);
const deviceInstallState = {
'@odata.type': '#microsoft.graph.deviceInstallState',
deviceName: 'Device Name value',
deviceId: 'Device Id value',
lastSyncDateTime: '2017-01-01T00:02:49.3205976-08:00',
installState: 'installed',
errorCode: 'Error Code value',
osVersion: 'Os Version value',
osDescription: 'Os Description value',
userName: 'User Name value'
};
await client.api('/deviceAppManagement/managedEBooks/{managedEBookId}/deviceStates')
.post(deviceInstallState);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\DeviceInstallState;
use Microsoft\Graph\Generated\Models\InstallState;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new DeviceInstallState();
$requestBody->setOdataType('#microsoft.graph.deviceInstallState');
$requestBody->setDeviceName('Device Name value');
$requestBody->setDeviceId('Device Id value');
$requestBody->setLastSyncDateTime(new \DateTime('2017-01-01T00:02:49.3205976-08:00'));
$requestBody->setInstallState(new InstallState('installed'));
$requestBody->setErrorCode('Error Code value');
$requestBody->setOsVersion('Os Version value');
$requestBody->setOsDescription('Os Description value');
$requestBody->setUserName('User Name value');
$result = $graphServiceClient->deviceAppManagement()->managedEBooks()->byManagedEBookId('managedEBook-id')->deviceStates()->post($requestBody)->wait();
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
Import-Module Microsoft.Graph.Devices.CorporateManagement
$params = @{
"@odata.type" = "#microsoft.graph.deviceInstallState"
deviceName = "Device Name value"
deviceId = "Device Id value"
lastSyncDateTime = [System.DateTime]::Parse("2017-01-01T00:02:49.3205976-08:00")
installState = "installed"
errorCode = "Error Code value"
osVersion = "Os Version value"
osDescription = "Os Description value"
userName = "User Name value"
}
New-MgDeviceAppManagementManagedEBookDeviceState -ManagedEBookId $managedEBookId -BodyParameter $params
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.device_install_state import DeviceInstallState
from msgraph.generated.models.install_state import InstallState
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = DeviceInstallState(
odata_type = "#microsoft.graph.deviceInstallState",
device_name = "Device Name value",
device_id = "Device Id value",
last_sync_date_time = "2017-01-01T00:02:49.3205976-08:00",
install_state = InstallState.Installed,
error_code = "Error Code value",
os_version = "Os Version value",
os_description = "Os Description value",
user_name = "User Name value",
)
result = await graph_client.device_app_management.managed_e_books.by_managed_e_book_id('managedEBook-id').device_states.post(request_body)
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation.
Response
Here is an example of the response. Note: The response object shown here may be truncated for brevity. All of the properties will be returned from an actual call.
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 423
{
"@odata.type": "#microsoft.graph.deviceInstallState",
"id": "b9feb68f-b68f-b9fe-8fb6-feb98fb6feb9",
"deviceName": "Device Name value",
"deviceId": "Device Id value",
"lastSyncDateTime": "2017-01-01T00:02:49.3205976-08:00",
"installState": "installed",
"errorCode": "Error Code value",
"osVersion": "Os Version value",
"osDescription": "Os Description value",
"userName": "User Name value"
}