命名空间:microsoft.graph
重要
Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
获取Windows 365 Frontline报表,例如实时数据或历史数据报告。
此 API 可用于以下国家级云部署。
| 全局服务 |
美国政府 L4 |
美国政府 L5 (DOD) |
由世纪互联运营的中国 |
| ✅ |
✅ |
✅ |
❌ |
权限
为此 API 选择标记为最低特权的权限。
只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 |
最低特权权限 |
更高特权权限 |
| 委派(工作或学校帐户) |
CloudPC.Read.All |
CloudPC.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
不支持。 |
| 应用程序 |
CloudPC.Read.All |
CloudPC.ReadWrite.All |
HTTP 请求
POST /deviceManagement/virtualEndpoint/reports/getFrontlineReport
| 名称 |
说明 |
| Authorization |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| Content-Type |
application/json. 必需。 |
请求正文
在请求正文中,提供参数的 JSON 表示形式。
下表显示了可用于此操作的参数。
| 参数 |
类型 |
说明 |
| reportName |
String |
指定报表名称。 |
| filter |
String |
OData 筛选器语法。 支持的筛选器包括 and、、or、ltle、gtge、 和 eq。 |
| select |
字符串集合 |
OData 选择语法。 表示报表的选定列。 |
| search |
String |
指定要搜索的字符串。 |
| groupBy |
字符串集合 |
指定如何对报表进行分组。 如果使用,则必须具有与 select 参数相同的内容。 |
| orderBy |
字符串集合 |
指定如何对报表进行排序。 |
| skip |
Int32 |
要跳过的记录数。 |
| top |
Int32 |
要返回的排名靠前的记录数。 |
响应
如果成功,此作将在200 OK响应正文中返回响应代码和Stream。
示例
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/beta/deviceManagement/virtualEndpoint/reports/getFrontlineReport
Content-Type: application/json
Content-length: 199
{
"reportName": "frontlineLicenseUsageReport",
"filter": "ServicePlanId eq '2d1d344e-d10c-41bb-953b-b3a47521dca0' and DateTimeUTC gt datetime'2022-11-30'",
"select":["ServicePlanId", "LicenseCount", "ClaimedLicenseCount", "DateTimeUTC"],
"skip": 0,
"top": 100
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.DeviceManagement.VirtualEndpoint.Reports.GetFrontlineReport;
using Microsoft.Graph.Beta.Models;
var requestBody = new GetFrontlineReportPostRequestBody
{
ReportName = CloudPcReportName.FrontlineLicenseUsageReport,
Filter = "ServicePlanId eq '2d1d344e-d10c-41bb-953b-b3a47521dca0' and DateTimeUTC gt datetime'2022-11-30'",
Select = new List<string>
{
"ServicePlanId",
"LicenseCount",
"ClaimedLicenseCount",
"DateTimeUTC",
},
Skip = 0,
Top = 100,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.DeviceManagement.VirtualEndpoint.Reports.GetFrontlineReport.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphdevicemanagement "github.com/microsoftgraph/msgraph-beta-sdk-go/devicemanagement"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphdevicemanagement.NewGetFrontlineReportPostRequestBody()
reportName := graphmodels.FRONTLINELICENSEUSAGEREPORT_CLOUDPCREPORTNAME
requestBody.SetReportName(&reportName)
filter := "ServicePlanId eq '2d1d344e-d10c-41bb-953b-b3a47521dca0' and DateTimeUTC gt datetime'2022-11-30'"
requestBody.SetFilter(&filter)
select := []string {
"ServicePlanId",
"LicenseCount",
"ClaimedLicenseCount",
"DateTimeUTC",
}
requestBody.SetSelect(select)
skip := int32(0)
requestBody.SetSkip(&skip)
top := int32(100)
requestBody.SetTop(&top)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.DeviceManagement().VirtualEndpoint().Reports().GetFrontlineReport().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.devicemanagement.virtualendpoint.reports.getfrontlinereport.GetFrontlineReportPostRequestBody getFrontlineReportPostRequestBody = new com.microsoft.graph.beta.devicemanagement.virtualendpoint.reports.getfrontlinereport.GetFrontlineReportPostRequestBody();
getFrontlineReportPostRequestBody.setReportName(CloudPcReportName.FrontlineLicenseUsageReport);
getFrontlineReportPostRequestBody.setFilter("ServicePlanId eq '2d1d344e-d10c-41bb-953b-b3a47521dca0' and DateTimeUTC gt datetime'2022-11-30'");
LinkedList<String> select = new LinkedList<String>();
select.add("ServicePlanId");
select.add("LicenseCount");
select.add("ClaimedLicenseCount");
select.add("DateTimeUTC");
getFrontlineReportPostRequestBody.setSelect(select);
getFrontlineReportPostRequestBody.setSkip(0);
getFrontlineReportPostRequestBody.setTop(100);
graphClient.deviceManagement().virtualEndpoint().reports().getFrontlineReport().post(getFrontlineReportPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const stream = {
reportName: 'frontlineLicenseUsageReport',
filter: 'ServicePlanId eq \'2d1d344e-d10c-41bb-953b-b3a47521dca0\' and DateTimeUTC gt datetime\'2022-11-30\'',
select: ['ServicePlanId', 'LicenseCount', 'ClaimedLicenseCount', 'DateTimeUTC'],
skip: 0,
top: 100
};
await client.api('/deviceManagement/virtualEndpoint/reports/getFrontlineReport')
.version('beta')
.post(stream);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DeviceManagement\VirtualEndpoint\Reports\GetFrontlineReport\GetFrontlineReportPostRequestBody;
use Microsoft\Graph\Beta\Generated\Models\CloudPcReportName;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new GetFrontlineReportPostRequestBody();
$requestBody->setReportName(new CloudPcReportName('frontlineLicenseUsageReport'));
$requestBody->setFilter('ServicePlanId eq \'2d1d344e-d10c-41bb-953b-b3a47521dca0\' and DateTimeUTC gt datetime\'2022-11-30\'');
$requestBody->setSelect(['ServicePlanId', 'LicenseCount', 'ClaimedLicenseCount', 'DateTimeUTC', ]);
$requestBody->setSkip(0);
$requestBody->setTop(100);
$graphServiceClient->deviceManagement()->virtualEndpoint()->reports()->getFrontlineReport()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.devicemanagement.virtualendpoint.reports.get_frontline_report.get_frontline_report_post_request_body import GetFrontlineReportPostRequestBody
from msgraph_beta.generated.models.cloud_pc_report_name import CloudPcReportName
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = GetFrontlineReportPostRequestBody(
report_name = CloudPcReportName.FrontlineLicenseUsageReport,
filter = "ServicePlanId eq '2d1d344e-d10c-41bb-953b-b3a47521dca0' and DateTimeUTC gt datetime'2022-11-30'",
select = [
"ServicePlanId",
"LicenseCount",
"ClaimedLicenseCount",
"DateTimeUTC",
],
skip = 0,
top = 100,
)
await graph_client.device_management.virtual_endpoint.reports.get_frontline_report.post(request_body)
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/octet-stream
{
"TotalRowCount": 2,
"Schema": [
{
"name": "ServicePlanId",
"type": "String"
},
{
"name": "LicenseCount",
"type": "Int32"
},
{
"name": "ClaimedLicenseCount",
"type": "Int32"
},
{
"name": "DateTimeUTC",
"type": "DateTime"
}
],
"Values": [
[
"2d1d344e-d10c-41bb-953b-b3a47521dca0", 100, 10, "2022-12-02T00:00:00"
],
[
"2d1d344e-d10c-41bb-953b-b3a47521dca0", 100, 11, "2022-12-01T00:00:00"
]
]
}