命名空间:microsoft.graph
在当前或指定用户的上下文中处理针对数据保护策略 的内容 。
此 API 可用于以下国家级云部署。
| 全局服务 | 美国政府 L4 | 美国政府 L5 (DOD) | 由世纪互联运营的中国 |
|---|---|---|---|
| ✅ | ❌ | ❌ | ❌ |
权限
为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 | 最低特权权限 | 更高特权权限 |
|---|---|---|
| 委派(工作或学校帐户) | Content.Process.User | Content.Process.All |
| 委派(个人 Microsoft 帐户) | 不支持。 | 不支持。 |
| 应用程序 | Content.Process.User | Content.Process.All |
HTTP 请求
POST /me/dataSecurityAndGovernance/processContent
注意
调用 /me 终结点需要已登录的用户,因此需要委派权限。 使用 /me 终结点时,不支持应用程序权限。
POST /users/{userId}/dataSecurityAndGovernance/processContent
请求标头
| 名称 | 说明 |
|---|---|
| Authorization | 持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| Content-Type | application/json. 必需。 |
| If-None-Match | 可选。 此值由 API 用于确定自上次调用 API 以来策略状态是否发生了更改。 该值来自 protectionScopes 计算返回的 Etag 标头。 如果新计算的 Etag 值与此标头中传递的值不匹配,则返回的 protectionScopeState 属性将被“修改”,并且应用需要通过调用 protectionScopes 计算进行刷新。 |
请求正文
在请求正文中,提供参数的 JSON 表示形式。
下表列出了调用此作时所需的参数。
| 参数 | 类型 | 说明 |
|---|---|---|
| contentToProcess | processContentRequest | 必填。 包含要针对指定用户进行评估 (活动、设备、应用程序) 的内容条目和元数据的对象。 |
响应标头
| 名称 | 说明 |
|---|---|
| ETag | 一个指示器,可用于检测配置的策略状态是否已更改。 如果策略状态发生更改,ETag 值将更改,返回的 protectionScopeState 属性将“修改”,应用需要通过调用 protectionScopes 计算进行刷新。 |
响应
如果成功,此作在200 OK响应正文或 中返回响应代码和 processContentResponse,202 Accepted204 No Content而没有响应正文。
示例
示例 1:企业 AI 应用
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/me/dataSecurityAndGovernance/processContent
Content-Type: application/json
{
"contentToProcess": {
"contentEntries": [
{
"@odata.type": "microsoft.graph.processConversationMetadata",
"identifier": "07785517-9081-4fe7-a9dc-85bcdf5e9075",
"content": {
"@odata.type": "microsoft.graph.textContent",
"data": "Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052"
},
"name":"PC Purview API Explorer message",
"correlationId": "d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d",
"sequenceNumber": 0,
"isTruncated": false,
"createdDateTime": "2025-05-27T17:23:20",
"modifiedDateTime": "2025-05-27T17:23:20"
}
],
"activityMetadata": {
"activity": "uploadText"
},
"deviceMetadata": {
"deviceType": "Unmanaged",
"operatingSystemSpecifications": {
"operatingSystemPlatform": "Windows 11",
"operatingSystemVersion": "10.0.26100.0"
},
"ipAddress": "127.0.0.1"
},
"protectedAppMetadata": {
"name": "PC Purview API Explorer",
"version": "0.2",
"applicationLocation":{
"@odata.type": "microsoft.graph.policyLocationApplication",
"value": "83ef208a-0396-4893-9d4f-d36efbffc8bd"
}
},
"integratedAppMetadata": {
"name": "PC Purview API Explorer",
"version": "0.2"
}
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Me.DataSecurityAndGovernance.ProcessContent;
using Microsoft.Graph.Models;
var requestBody = new ProcessContentPostRequestBody
{
ContentToProcess = new ProcessContentRequest
{
ContentEntries = new List<ProcessContentMetadataBase>
{
new ProcessConversationMetadata
{
OdataType = "microsoft.graph.processConversationMetadata",
Identifier = "07785517-9081-4fe7-a9dc-85bcdf5e9075",
Content = new TextContent
{
OdataType = "microsoft.graph.textContent",
Data = "Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052",
},
Name = "PC Purview API Explorer message",
CorrelationId = "d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d",
SequenceNumber = 0L,
IsTruncated = false,
CreatedDateTime = DateTimeOffset.Parse("2025-05-27T17:23:20"),
ModifiedDateTime = DateTimeOffset.Parse("2025-05-27T17:23:20"),
},
},
ActivityMetadata = new ActivityMetadata
{
Activity = UserActivityType.UploadText,
},
DeviceMetadata = new DeviceMetadata
{
DeviceType = "Unmanaged",
OperatingSystemSpecifications = new OperatingSystemSpecifications
{
OperatingSystemPlatform = "Windows 11",
OperatingSystemVersion = "10.0.26100.0",
},
IpAddress = "127.0.0.1",
},
ProtectedAppMetadata = new ProtectedApplicationMetadata
{
Name = "PC Purview API Explorer",
Version = "0.2",
ApplicationLocation = new PolicyLocationApplication
{
OdataType = "microsoft.graph.policyLocationApplication",
Value = "83ef208a-0396-4893-9d4f-d36efbffc8bd",
},
},
IntegratedAppMetadata = new IntegratedApplicationMetadata
{
Name = "PC Purview API Explorer",
Version = "0.2",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.DataSecurityAndGovernance.ProcessContent.PostAsync(requestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphusers.NewItemProcessContentPostRequestBody()
contentToProcess := graphmodels.NewProcessContentRequest()
processContentMetadataBase := graphmodels.NewProcessConversationMetadata()
identifier := "07785517-9081-4fe7-a9dc-85bcdf5e9075"
processContentMetadataBase.SetIdentifier(&identifier)
content := graphmodels.NewTextContent()
data := "Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052"
content.SetData(&data)
processContentMetadataBase.SetContent(content)
name := "PC Purview API Explorer message"
processContentMetadataBase.SetName(&name)
correlationId := "d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d"
processContentMetadataBase.SetCorrelationId(&correlationId)
sequenceNumber := int64(0)
processContentMetadataBase.SetSequenceNumber(&sequenceNumber)
isTruncated := false
processContentMetadataBase.SetIsTruncated(&isTruncated)
createdDateTime , err := time.Parse(time.RFC3339, "2025-05-27T17:23:20")
processContentMetadataBase.SetCreatedDateTime(&createdDateTime)
modifiedDateTime , err := time.Parse(time.RFC3339, "2025-05-27T17:23:20")
processContentMetadataBase.SetModifiedDateTime(&modifiedDateTime)
contentEntries := []graphmodels.ProcessContentMetadataBaseable {
processContentMetadataBase,
}
contentToProcess.SetContentEntries(contentEntries)
activityMetadata := graphmodels.NewActivityMetadata()
activity := graphmodels.UPLOADTEXT_USERACTIVITYTYPE
activityMetadata.SetActivity(&activity)
contentToProcess.SetActivityMetadata(activityMetadata)
deviceMetadata := graphmodels.NewDeviceMetadata()
deviceType := "Unmanaged"
deviceMetadata.SetDeviceType(&deviceType)
operatingSystemSpecifications := graphmodels.NewOperatingSystemSpecifications()
operatingSystemPlatform := "Windows 11"
operatingSystemSpecifications.SetOperatingSystemPlatform(&operatingSystemPlatform)
operatingSystemVersion := "10.0.26100.0"
operatingSystemSpecifications.SetOperatingSystemVersion(&operatingSystemVersion)
deviceMetadata.SetOperatingSystemSpecifications(operatingSystemSpecifications)
ipAddress := "127.0.0.1"
deviceMetadata.SetIpAddress(&ipAddress)
contentToProcess.SetDeviceMetadata(deviceMetadata)
protectedAppMetadata := graphmodels.NewProtectedApplicationMetadata()
name := "PC Purview API Explorer"
protectedAppMetadata.SetName(&name)
version := "0.2"
protectedAppMetadata.SetVersion(&version)
applicationLocation := graphmodels.NewPolicyLocationApplication()
value := "83ef208a-0396-4893-9d4f-d36efbffc8bd"
applicationLocation.SetValue(&value)
protectedAppMetadata.SetApplicationLocation(applicationLocation)
contentToProcess.SetProtectedAppMetadata(protectedAppMetadata)
integratedAppMetadata := graphmodels.NewIntegratedApplicationMetadata()
name := "PC Purview API Explorer"
integratedAppMetadata.SetName(&name)
version := "0.2"
integratedAppMetadata.SetVersion(&version)
contentToProcess.SetIntegratedAppMetadata(integratedAppMetadata)
requestBody.SetContentToProcess(contentToProcess)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
processContent, err := graphClient.Me().DataSecurityAndGovernance().ProcessContent().Post(context.Background(), requestBody, nil)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody processContentPostRequestBody = new com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody();
ProcessContentRequest contentToProcess = new ProcessContentRequest();
LinkedList<ProcessContentMetadataBase> contentEntries = new LinkedList<ProcessContentMetadataBase>();
ProcessConversationMetadata processContentMetadataBase = new ProcessConversationMetadata();
processContentMetadataBase.setOdataType("microsoft.graph.processConversationMetadata");
processContentMetadataBase.setIdentifier("07785517-9081-4fe7-a9dc-85bcdf5e9075");
TextContent content = new TextContent();
content.setOdataType("microsoft.graph.textContent");
content.setData("Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052");
processContentMetadataBase.setContent(content);
processContentMetadataBase.setName("PC Purview API Explorer message");
processContentMetadataBase.setCorrelationId("d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d");
processContentMetadataBase.setSequenceNumber(0L);
processContentMetadataBase.setIsTruncated(false);
OffsetDateTime createdDateTime = OffsetDateTime.parse("2025-05-27T17:23:20");
processContentMetadataBase.setCreatedDateTime(createdDateTime);
OffsetDateTime modifiedDateTime = OffsetDateTime.parse("2025-05-27T17:23:20");
processContentMetadataBase.setModifiedDateTime(modifiedDateTime);
contentEntries.add(processContentMetadataBase);
contentToProcess.setContentEntries(contentEntries);
ActivityMetadata activityMetadata = new ActivityMetadata();
activityMetadata.setActivity(UserActivityType.UploadText);
contentToProcess.setActivityMetadata(activityMetadata);
DeviceMetadata deviceMetadata = new DeviceMetadata();
deviceMetadata.setDeviceType("Unmanaged");
OperatingSystemSpecifications operatingSystemSpecifications = new OperatingSystemSpecifications();
operatingSystemSpecifications.setOperatingSystemPlatform("Windows 11");
operatingSystemSpecifications.setOperatingSystemVersion("10.0.26100.0");
deviceMetadata.setOperatingSystemSpecifications(operatingSystemSpecifications);
deviceMetadata.setIpAddress("127.0.0.1");
contentToProcess.setDeviceMetadata(deviceMetadata);
ProtectedApplicationMetadata protectedAppMetadata = new ProtectedApplicationMetadata();
protectedAppMetadata.setName("PC Purview API Explorer");
protectedAppMetadata.setVersion("0.2");
PolicyLocationApplication applicationLocation = new PolicyLocationApplication();
applicationLocation.setOdataType("microsoft.graph.policyLocationApplication");
applicationLocation.setValue("83ef208a-0396-4893-9d4f-d36efbffc8bd");
protectedAppMetadata.setApplicationLocation(applicationLocation);
contentToProcess.setProtectedAppMetadata(protectedAppMetadata);
IntegratedApplicationMetadata integratedAppMetadata = new IntegratedApplicationMetadata();
integratedAppMetadata.setName("PC Purview API Explorer");
integratedAppMetadata.setVersion("0.2");
contentToProcess.setIntegratedAppMetadata(integratedAppMetadata);
processContentPostRequestBody.setContentToProcess(contentToProcess);
var result = graphClient.me().dataSecurityAndGovernance().processContent().post(processContentPostRequestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const processContentResponse = {
contentToProcess: {
contentEntries: [
{
'@odata.type': 'microsoft.graph.processConversationMetadata',
identifier: '07785517-9081-4fe7-a9dc-85bcdf5e9075',
content: {
'@odata.type': 'microsoft.graph.textContent',
data: 'Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052'
},
name: 'PC Purview API Explorer message',
correlationId: 'd63eafd2-e3a9-4c1a-b726-a2e9b9d9580d',
sequenceNumber: 0,
isTruncated: false,
createdDateTime: '2025-05-27T17:23:20',
modifiedDateTime: '2025-05-27T17:23:20'
}
],
activityMetadata: {
activity: 'uploadText'
},
deviceMetadata: {
deviceType: 'Unmanaged',
operatingSystemSpecifications: {
operatingSystemPlatform: 'Windows 11',
operatingSystemVersion: '10.0.26100.0'
},
ipAddress: '127.0.0.1'
},
protectedAppMetadata: {
name: 'PC Purview API Explorer',
version: '0.2',
applicationLocation: {
'@odata.type': 'microsoft.graph.policyLocationApplication',
value: '83ef208a-0396-4893-9d4f-d36efbffc8bd'
}
},
integratedAppMetadata: {
name: 'PC Purview API Explorer',
version: '0.2'
}
}
};
await client.api('/me/dataSecurityAndGovernance/processContent')
.post(processContentResponse);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\DataSecurityAndGovernance\ProcessContent\ProcessContentPostRequestBody;
use Microsoft\Graph\Generated\Models\ProcessContentRequest;
use Microsoft\Graph\Generated\Models\ProcessContentMetadataBase;
use Microsoft\Graph\Generated\Models\ProcessConversationMetadata;
use Microsoft\Graph\Generated\Models\TextContent;
use Microsoft\Graph\Generated\Models\ActivityMetadata;
use Microsoft\Graph\Generated\Models\UserActivityType;
use Microsoft\Graph\Generated\Models\DeviceMetadata;
use Microsoft\Graph\Generated\Models\OperatingSystemSpecifications;
use Microsoft\Graph\Generated\Models\ProtectedApplicationMetadata;
use Microsoft\Graph\Generated\Models\PolicyLocationApplication;
use Microsoft\Graph\Generated\Models\IntegratedApplicationMetadata;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ProcessContentPostRequestBody();
$contentToProcess = new ProcessContentRequest();
$contentEntriesProcessContentMetadataBase1 = new ProcessConversationMetadata();
$contentEntriesProcessContentMetadataBase1->setOdataType('microsoft.graph.processConversationMetadata');
$contentEntriesProcessContentMetadataBase1->setIdentifier('07785517-9081-4fe7-a9dc-85bcdf5e9075');
$contentEntriesProcessContentMetadataBase1Content = new TextContent();
$contentEntriesProcessContentMetadataBase1Content->setOdataType('microsoft.graph.textContent');
$contentEntriesProcessContentMetadataBase1Content->setData('Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052');
$contentEntriesProcessContentMetadataBase1->setContent($contentEntriesProcessContentMetadataBase1Content);
$contentEntriesProcessContentMetadataBase1->setName('PC Purview API Explorer message');
$contentEntriesProcessContentMetadataBase1->setCorrelationId('d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d');
$contentEntriesProcessContentMetadataBase1->setSequenceNumber(0);
$contentEntriesProcessContentMetadataBase1->setIsTruncated(false);
$contentEntriesProcessContentMetadataBase1->setCreatedDateTime(new \DateTime('2025-05-27T17:23:20'));
$contentEntriesProcessContentMetadataBase1->setModifiedDateTime(new \DateTime('2025-05-27T17:23:20'));
$contentEntriesArray []= $contentEntriesProcessContentMetadataBase1;
$contentToProcess->setContentEntries($contentEntriesArray);
$contentToProcessActivityMetadata = new ActivityMetadata();
$contentToProcessActivityMetadata->setActivity(new UserActivityType('uploadText'));
$contentToProcess->setActivityMetadata($contentToProcessActivityMetadata);
$contentToProcessDeviceMetadata = new DeviceMetadata();
$contentToProcessDeviceMetadata->setDeviceType('Unmanaged');
$contentToProcessDeviceMetadataOperatingSystemSpecifications = new OperatingSystemSpecifications();
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemPlatform('Windows 11');
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemVersion('10.0.26100.0');
$contentToProcessDeviceMetadata->setOperatingSystemSpecifications($contentToProcessDeviceMetadataOperatingSystemSpecifications);
$contentToProcessDeviceMetadata->setIpAddress('127.0.0.1');
$contentToProcess->setDeviceMetadata($contentToProcessDeviceMetadata);
$contentToProcessProtectedAppMetadata = new ProtectedApplicationMetadata();
$contentToProcessProtectedAppMetadata->setName('PC Purview API Explorer');
$contentToProcessProtectedAppMetadata->setVersion('0.2');
$contentToProcessProtectedAppMetadataApplicationLocation = new PolicyLocationApplication();
$contentToProcessProtectedAppMetadataApplicationLocation->setOdataType('microsoft.graph.policyLocationApplication');
$contentToProcessProtectedAppMetadataApplicationLocation->setValue('83ef208a-0396-4893-9d4f-d36efbffc8bd');
$contentToProcessProtectedAppMetadata->setApplicationLocation($contentToProcessProtectedAppMetadataApplicationLocation);
$contentToProcess->setProtectedAppMetadata($contentToProcessProtectedAppMetadata);
$contentToProcessIntegratedAppMetadata = new IntegratedApplicationMetadata();
$contentToProcessIntegratedAppMetadata->setName('PC Purview API Explorer');
$contentToProcessIntegratedAppMetadata->setVersion('0.2');
$contentToProcess->setIntegratedAppMetadata($contentToProcessIntegratedAppMetadata);
$requestBody->setContentToProcess($contentToProcess);
$result = $graphServiceClient->me()->dataSecurityAndGovernance()->processContent()->post($requestBody)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.datasecurityandgovernance.process_content.process_content_post_request_body import ProcessContentPostRequestBody
from msgraph.generated.models.process_content_request import ProcessContentRequest
from msgraph.generated.models.process_content_metadata_base import ProcessContentMetadataBase
from msgraph.generated.models.process_conversation_metadata import ProcessConversationMetadata
from msgraph.generated.models.text_content import TextContent
from msgraph.generated.models.activity_metadata import ActivityMetadata
from msgraph.generated.models.user_activity_type import UserActivityType
from msgraph.generated.models.device_metadata import DeviceMetadata
from msgraph.generated.models.operating_system_specifications import OperatingSystemSpecifications
from msgraph.generated.models.protected_application_metadata import ProtectedApplicationMetadata
from msgraph.generated.models.policy_location_application import PolicyLocationApplication
from msgraph.generated.models.integrated_application_metadata import IntegratedApplicationMetadata
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ProcessContentPostRequestBody(
content_to_process = ProcessContentRequest(
content_entries = [
ProcessConversationMetadata(
odata_type = "microsoft.graph.processConversationMetadata",
identifier = "07785517-9081-4fe7-a9dc-85bcdf5e9075",
content = TextContent(
odata_type = "microsoft.graph.textContent",
data = "Write an acceptance letter for Alex Wilber with Credit card number 4532667785213500, ssn: 120-98-1437 at One Microsoft Way, Redmond, WA 98052",
),
name = "PC Purview API Explorer message",
correlation_id = "d63eafd2-e3a9-4c1a-b726-a2e9b9d9580d",
sequence_number = 0,
is_truncated = False,
created_date_time = "2025-05-27T17:23:20",
modified_date_time = "2025-05-27T17:23:20",
),
],
activity_metadata = ActivityMetadata(
activity = UserActivityType.UploadText,
),
device_metadata = DeviceMetadata(
device_type = "Unmanaged",
operating_system_specifications = OperatingSystemSpecifications(
operating_system_platform = "Windows 11",
operating_system_version = "10.0.26100.0",
),
ip_address = "127.0.0.1",
),
protected_app_metadata = ProtectedApplicationMetadata(
name = "PC Purview API Explorer",
version = "0.2",
application_location = PolicyLocationApplication(
odata_type = "microsoft.graph.policyLocationApplication",
value = "83ef208a-0396-4893-9d4f-d36efbffc8bd",
),
),
integrated_app_metadata = IntegratedApplicationMetadata(
name = "PC Purview API Explorer",
version = "0.2",
),
),
)
result = await graph_client.me.data_security_and_governance.process_content.post(request_body)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.processContentResponse",
"protectionScopeState": "notModified",
"policyActions": [],
"processingErrors": []
}
示例 2:网络提供商应用
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/users/{5def8f26-aff8-4db6-a08c-0fcf8f1aa2ba}/dataSecurityAndGovernance/processContent
Content-Type: application/json
{
"contentToProcess": {
"contentEntries": [
{
"@odata.type": "#microsoft.graph.processConversationMetadata",
"identifier": "f7af180f-dc2e-467c-9719-757e1c61eabf",
"content": {
"@odata.type": "#microsoft.graph.textContent",
"data": "some data"
},
"correlationId": "d63eafd2-e3a9-4c1a-b726-a2e9b9d95811",
"sequenceNumber": 0,
"name": "Test Content"
}
],
"activityMetadata": {
"activity": "uploadText"
},
"deviceMetadata": {
"deviceType": "unmanaged",
"ipAddress": null,
"operatingSystemSpecifications": {
"operatingSystemPlatform": "Windows",
"operatingSystemVersion": "11.1"
}
},
"integratedAppMetadata": {
"name": "My Entra App",
"version": "0.1"
},
"protectedAppMetadata": {
"name": "My Entra App",
"version": "0.1",
"applicationLocation": {
"@odata.type": "#microsoft.graph.policyLocationUrl",
"value": "https://gemini.google.com"
}
}
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Users.Item.DataSecurityAndGovernance.ProcessContent;
using Microsoft.Graph.Models;
var requestBody = new ProcessContentPostRequestBody
{
ContentToProcess = new ProcessContentRequest
{
ContentEntries = new List<ProcessContentMetadataBase>
{
new ProcessConversationMetadata
{
OdataType = "#microsoft.graph.processConversationMetadata",
Identifier = "f7af180f-dc2e-467c-9719-757e1c61eabf",
Content = new TextContent
{
OdataType = "#microsoft.graph.textContent",
Data = "some data",
},
CorrelationId = "d63eafd2-e3a9-4c1a-b726-a2e9b9d95811",
SequenceNumber = 0L,
Name = "Test Content",
},
},
ActivityMetadata = new ActivityMetadata
{
Activity = UserActivityType.UploadText,
},
DeviceMetadata = new DeviceMetadata
{
DeviceType = "unmanaged",
IpAddress = null,
OperatingSystemSpecifications = new OperatingSystemSpecifications
{
OperatingSystemPlatform = "Windows",
OperatingSystemVersion = "11.1",
},
},
IntegratedAppMetadata = new IntegratedApplicationMetadata
{
Name = "My Entra App",
Version = "0.1",
},
ProtectedAppMetadata = new ProtectedApplicationMetadata
{
Name = "My Entra App",
Version = "0.1",
ApplicationLocation = new PolicyLocationUrl
{
OdataType = "#microsoft.graph.policyLocationUrl",
Value = "https://gemini.google.com",
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].DataSecurityAndGovernance.ProcessContent.PostAsync(requestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphusers.NewProcessContentPostRequestBody()
contentToProcess := graphmodels.NewProcessContentRequest()
processContentMetadataBase := graphmodels.NewProcessConversationMetadata()
identifier := "f7af180f-dc2e-467c-9719-757e1c61eabf"
processContentMetadataBase.SetIdentifier(&identifier)
content := graphmodels.NewTextContent()
data := "some data"
content.SetData(&data)
processContentMetadataBase.SetContent(content)
correlationId := "d63eafd2-e3a9-4c1a-b726-a2e9b9d95811"
processContentMetadataBase.SetCorrelationId(&correlationId)
sequenceNumber := int64(0)
processContentMetadataBase.SetSequenceNumber(&sequenceNumber)
name := "Test Content"
processContentMetadataBase.SetName(&name)
contentEntries := []graphmodels.ProcessContentMetadataBaseable {
processContentMetadataBase,
}
contentToProcess.SetContentEntries(contentEntries)
activityMetadata := graphmodels.NewActivityMetadata()
activity := graphmodels.UPLOADTEXT_USERACTIVITYTYPE
activityMetadata.SetActivity(&activity)
contentToProcess.SetActivityMetadata(activityMetadata)
deviceMetadata := graphmodels.NewDeviceMetadata()
deviceType := "unmanaged"
deviceMetadata.SetDeviceType(&deviceType)
ipAddress := null
deviceMetadata.SetIpAddress(&ipAddress)
operatingSystemSpecifications := graphmodels.NewOperatingSystemSpecifications()
operatingSystemPlatform := "Windows"
operatingSystemSpecifications.SetOperatingSystemPlatform(&operatingSystemPlatform)
operatingSystemVersion := "11.1"
operatingSystemSpecifications.SetOperatingSystemVersion(&operatingSystemVersion)
deviceMetadata.SetOperatingSystemSpecifications(operatingSystemSpecifications)
contentToProcess.SetDeviceMetadata(deviceMetadata)
integratedAppMetadata := graphmodels.NewIntegratedApplicationMetadata()
name := "My Entra App"
integratedAppMetadata.SetName(&name)
version := "0.1"
integratedAppMetadata.SetVersion(&version)
contentToProcess.SetIntegratedAppMetadata(integratedAppMetadata)
protectedAppMetadata := graphmodels.NewProtectedApplicationMetadata()
name := "My Entra App"
protectedAppMetadata.SetName(&name)
version := "0.1"
protectedAppMetadata.SetVersion(&version)
applicationLocation := graphmodels.NewPolicyLocationUrl()
value := "https://gemini.google.com"
applicationLocation.SetValue(&value)
protectedAppMetadata.SetApplicationLocation(applicationLocation)
contentToProcess.SetProtectedAppMetadata(protectedAppMetadata)
requestBody.SetContentToProcess(contentToProcess)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
processContent, err := graphClient.Users().ByUserId("user-id").DataSecurityAndGovernance().ProcessContent().Post(context.Background(), requestBody, nil)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody processContentPostRequestBody = new com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody();
ProcessContentRequest contentToProcess = new ProcessContentRequest();
LinkedList<ProcessContentMetadataBase> contentEntries = new LinkedList<ProcessContentMetadataBase>();
ProcessConversationMetadata processContentMetadataBase = new ProcessConversationMetadata();
processContentMetadataBase.setOdataType("#microsoft.graph.processConversationMetadata");
processContentMetadataBase.setIdentifier("f7af180f-dc2e-467c-9719-757e1c61eabf");
TextContent content = new TextContent();
content.setOdataType("#microsoft.graph.textContent");
content.setData("some data");
processContentMetadataBase.setContent(content);
processContentMetadataBase.setCorrelationId("d63eafd2-e3a9-4c1a-b726-a2e9b9d95811");
processContentMetadataBase.setSequenceNumber(0L);
processContentMetadataBase.setName("Test Content");
contentEntries.add(processContentMetadataBase);
contentToProcess.setContentEntries(contentEntries);
ActivityMetadata activityMetadata = new ActivityMetadata();
activityMetadata.setActivity(UserActivityType.UploadText);
contentToProcess.setActivityMetadata(activityMetadata);
DeviceMetadata deviceMetadata = new DeviceMetadata();
deviceMetadata.setDeviceType("unmanaged");
deviceMetadata.setIpAddress(null);
OperatingSystemSpecifications operatingSystemSpecifications = new OperatingSystemSpecifications();
operatingSystemSpecifications.setOperatingSystemPlatform("Windows");
operatingSystemSpecifications.setOperatingSystemVersion("11.1");
deviceMetadata.setOperatingSystemSpecifications(operatingSystemSpecifications);
contentToProcess.setDeviceMetadata(deviceMetadata);
IntegratedApplicationMetadata integratedAppMetadata = new IntegratedApplicationMetadata();
integratedAppMetadata.setName("My Entra App");
integratedAppMetadata.setVersion("0.1");
contentToProcess.setIntegratedAppMetadata(integratedAppMetadata);
ProtectedApplicationMetadata protectedAppMetadata = new ProtectedApplicationMetadata();
protectedAppMetadata.setName("My Entra App");
protectedAppMetadata.setVersion("0.1");
PolicyLocationUrl applicationLocation = new PolicyLocationUrl();
applicationLocation.setOdataType("#microsoft.graph.policyLocationUrl");
applicationLocation.setValue("https://gemini.google.com");
protectedAppMetadata.setApplicationLocation(applicationLocation);
contentToProcess.setProtectedAppMetadata(protectedAppMetadata);
processContentPostRequestBody.setContentToProcess(contentToProcess);
var result = graphClient.users().byUserId("{user-id}").dataSecurityAndGovernance().processContent().post(processContentPostRequestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const processContentResponse = {
contentToProcess: {
contentEntries: [
{
'@odata.type': '#microsoft.graph.processConversationMetadata',
identifier: 'f7af180f-dc2e-467c-9719-757e1c61eabf',
content: {
'@odata.type': '#microsoft.graph.textContent',
data: 'some data'
},
correlationId: 'd63eafd2-e3a9-4c1a-b726-a2e9b9d95811',
sequenceNumber: 0,
name: 'Test Content'
}
],
activityMetadata: {
activity: 'uploadText'
},
deviceMetadata: {
deviceType: 'unmanaged',
ipAddress: null,
operatingSystemSpecifications: {
operatingSystemPlatform: 'Windows',
operatingSystemVersion: '11.1'
}
},
integratedAppMetadata: {
name: 'My Entra App',
version: '0.1'
},
protectedAppMetadata: {
name: 'My Entra App',
version: '0.1',
applicationLocation: {
'@odata.type': '#microsoft.graph.policyLocationUrl',
value: 'https://gemini.google.com'
}
}
}
};
await client.api('/users/{5def8f26-aff8-4db6-a08c-0fcf8f1aa2ba}/dataSecurityAndGovernance/processContent')
.post(processContentResponse);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\DataSecurityAndGovernance\ProcessContent\ProcessContentPostRequestBody;
use Microsoft\Graph\Generated\Models\ProcessContentRequest;
use Microsoft\Graph\Generated\Models\ProcessContentMetadataBase;
use Microsoft\Graph\Generated\Models\ProcessConversationMetadata;
use Microsoft\Graph\Generated\Models\TextContent;
use Microsoft\Graph\Generated\Models\ActivityMetadata;
use Microsoft\Graph\Generated\Models\UserActivityType;
use Microsoft\Graph\Generated\Models\DeviceMetadata;
use Microsoft\Graph\Generated\Models\OperatingSystemSpecifications;
use Microsoft\Graph\Generated\Models\IntegratedApplicationMetadata;
use Microsoft\Graph\Generated\Models\ProtectedApplicationMetadata;
use Microsoft\Graph\Generated\Models\PolicyLocationUrl;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ProcessContentPostRequestBody();
$contentToProcess = new ProcessContentRequest();
$contentEntriesProcessContentMetadataBase1 = new ProcessConversationMetadata();
$contentEntriesProcessContentMetadataBase1->setOdataType('#microsoft.graph.processConversationMetadata');
$contentEntriesProcessContentMetadataBase1->setIdentifier('f7af180f-dc2e-467c-9719-757e1c61eabf');
$contentEntriesProcessContentMetadataBase1Content = new TextContent();
$contentEntriesProcessContentMetadataBase1Content->setOdataType('#microsoft.graph.textContent');
$contentEntriesProcessContentMetadataBase1Content->setData('some data');
$contentEntriesProcessContentMetadataBase1->setContent($contentEntriesProcessContentMetadataBase1Content);
$contentEntriesProcessContentMetadataBase1->setCorrelationId('d63eafd2-e3a9-4c1a-b726-a2e9b9d95811');
$contentEntriesProcessContentMetadataBase1->setSequenceNumber(0);
$contentEntriesProcessContentMetadataBase1->setName('Test Content');
$contentEntriesArray []= $contentEntriesProcessContentMetadataBase1;
$contentToProcess->setContentEntries($contentEntriesArray);
$contentToProcessActivityMetadata = new ActivityMetadata();
$contentToProcessActivityMetadata->setActivity(new UserActivityType('uploadText'));
$contentToProcess->setActivityMetadata($contentToProcessActivityMetadata);
$contentToProcessDeviceMetadata = new DeviceMetadata();
$contentToProcessDeviceMetadata->setDeviceType('unmanaged');
$contentToProcessDeviceMetadata->setIpAddress(null);
$contentToProcessDeviceMetadataOperatingSystemSpecifications = new OperatingSystemSpecifications();
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemPlatform('Windows');
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemVersion('11.1');
$contentToProcessDeviceMetadata->setOperatingSystemSpecifications($contentToProcessDeviceMetadataOperatingSystemSpecifications);
$contentToProcess->setDeviceMetadata($contentToProcessDeviceMetadata);
$contentToProcessIntegratedAppMetadata = new IntegratedApplicationMetadata();
$contentToProcessIntegratedAppMetadata->setName('My Entra App');
$contentToProcessIntegratedAppMetadata->setVersion('0.1');
$contentToProcess->setIntegratedAppMetadata($contentToProcessIntegratedAppMetadata);
$contentToProcessProtectedAppMetadata = new ProtectedApplicationMetadata();
$contentToProcessProtectedAppMetadata->setName('My Entra App');
$contentToProcessProtectedAppMetadata->setVersion('0.1');
$contentToProcessProtectedAppMetadataApplicationLocation = new PolicyLocationUrl();
$contentToProcessProtectedAppMetadataApplicationLocation->setOdataType('#microsoft.graph.policyLocationUrl');
$contentToProcessProtectedAppMetadataApplicationLocation->setValue('https://gemini.google.com');
$contentToProcessProtectedAppMetadata->setApplicationLocation($contentToProcessProtectedAppMetadataApplicationLocation);
$contentToProcess->setProtectedAppMetadata($contentToProcessProtectedAppMetadata);
$requestBody->setContentToProcess($contentToProcess);
$result = $graphServiceClient->users()->byUserId('user-id')->dataSecurityAndGovernance()->processContent()->post($requestBody)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.datasecurityandgovernance.process_content.process_content_post_request_body import ProcessContentPostRequestBody
from msgraph.generated.models.process_content_request import ProcessContentRequest
from msgraph.generated.models.process_content_metadata_base import ProcessContentMetadataBase
from msgraph.generated.models.process_conversation_metadata import ProcessConversationMetadata
from msgraph.generated.models.text_content import TextContent
from msgraph.generated.models.activity_metadata import ActivityMetadata
from msgraph.generated.models.user_activity_type import UserActivityType
from msgraph.generated.models.device_metadata import DeviceMetadata
from msgraph.generated.models.operating_system_specifications import OperatingSystemSpecifications
from msgraph.generated.models.integrated_application_metadata import IntegratedApplicationMetadata
from msgraph.generated.models.protected_application_metadata import ProtectedApplicationMetadata
from msgraph.generated.models.policy_location_url import PolicyLocationUrl
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ProcessContentPostRequestBody(
content_to_process = ProcessContentRequest(
content_entries = [
ProcessConversationMetadata(
odata_type = "#microsoft.graph.processConversationMetadata",
identifier = "f7af180f-dc2e-467c-9719-757e1c61eabf",
content = TextContent(
odata_type = "#microsoft.graph.textContent",
data = "some data",
),
correlation_id = "d63eafd2-e3a9-4c1a-b726-a2e9b9d95811",
sequence_number = 0,
name = "Test Content",
),
],
activity_metadata = ActivityMetadata(
activity = UserActivityType.UploadText,
),
device_metadata = DeviceMetadata(
device_type = "unmanaged",
ip_address = None,
operating_system_specifications = OperatingSystemSpecifications(
operating_system_platform = "Windows",
operating_system_version = "11.1",
),
),
integrated_app_metadata = IntegratedApplicationMetadata(
name = "My Entra App",
version = "0.1",
),
protected_app_metadata = ProtectedApplicationMetadata(
name = "My Entra App",
version = "0.1",
application_location = PolicyLocationUrl(
odata_type = "#microsoft.graph.policyLocationUrl",
value = "https://gemini.google.com",
),
),
),
)
result = await graph_client.users.by_user_id('user-id').data_security_and_governance.process_content.post(request_body)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.processContentResponse",
"protectionScopeState": "modified",
"policyActions": [
{
"@odata.type": "#microsoft.graph.restrictAccessAction",
"action": "restrictAccess",
"restrictionAction": "block"
}
],
"processingErrors": []
}
示例 3:包含文件内容的网络提供程序应用
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/users/{5def8f26-aff8-4db6-a08c-0fcf8f1aa2ba}/dataSecurityAndGovernance/processContent
Content-Type: application/json
{
"contentToProcess": {
"contentEntries": [
{
"@odata.type": "#microsoft.graph.processFileMetadata",
"identifier": "f7af180f-dc2e-467c-9719-757e1c61eabf",
"content": {
"@odata.type": "#microsoft.graph.textContent",
"data": "Base64 encoded content"
},
"name": "Test File.docx",
"correlationId": "d63eafd2-e3a9-4c1a-b726-a2e9b9d95822",
"createdDateTime": "2024-07-23T01:31:40.2020463Z",
"modifiedDateTime": "2024-09-17T13:45:21.0000000Z",
"correlationId": "9d84223c-521c-42f4-8f35-3cdeabe515d3",
"length": 17352,
"isTruncated": false,
"ownerId": "ffe1ca70-6e5b-4120-abf0-472034ba05d4",
"customProperties": {
"Department": "Finance",
"ReviewerName": "John Smith"
}
}
],
"activityMetadata": {
"activity": "uploadFile"
},
"deviceMetadata": {
"deviceType": "unmanaged",
"operatingSystemSpecifications": {
"operatingSystemPlatform": "Windows",
"operatingSystemVersion": "11.1"
}
},
"integratedAppMetadata": {
"name": "Network Proxy App",
"version": "1.0.0"
},
"protectedAppMetadata": {
"name": "My App",
"version": "0.1",
"applicationLocation": {
"@odata.type": "#microsoft.graph.policyLocationUrl",
"value": "https://gemini.google.com"
}
}
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Users.Item.DataSecurityAndGovernance.ProcessContent;
using Microsoft.Graph.Models;
var requestBody = new ProcessContentPostRequestBody
{
ContentToProcess = new ProcessContentRequest
{
ContentEntries = new List<ProcessContentMetadataBase>
{
new ProcessFileMetadata
{
OdataType = "#microsoft.graph.processFileMetadata",
Identifier = "f7af180f-dc2e-467c-9719-757e1c61eabf",
Content = new TextContent
{
OdataType = "#microsoft.graph.textContent",
Data = "Base64 encoded content",
},
Name = "Test File.docx",
CorrelationId = "d63eafd2-e3a9-4c1a-b726-a2e9b9d95822",
CreatedDateTime = DateTimeOffset.Parse("2024-07-23T01:31:40.2020463Z"),
ModifiedDateTime = DateTimeOffset.Parse("2024-09-17T13:45:21.0000000Z"),
CorrelationId = "9d84223c-521c-42f4-8f35-3cdeabe515d3",
Length = 17352L,
IsTruncated = false,
OwnerId = "ffe1ca70-6e5b-4120-abf0-472034ba05d4",
CustomProperties = new CustomMetadataDictionary
{
AdditionalData = new Dictionary<string, object>
{
{
"Department" , "Finance"
},
{
"ReviewerName" , "John Smith"
},
},
},
},
},
ActivityMetadata = new ActivityMetadata
{
Activity = UserActivityType.UploadFile,
},
DeviceMetadata = new DeviceMetadata
{
DeviceType = "unmanaged",
OperatingSystemSpecifications = new OperatingSystemSpecifications
{
OperatingSystemPlatform = "Windows",
OperatingSystemVersion = "11.1",
},
},
IntegratedAppMetadata = new IntegratedApplicationMetadata
{
Name = "Network Proxy App",
Version = "1.0.0",
},
ProtectedAppMetadata = new ProtectedApplicationMetadata
{
Name = "My App",
Version = "0.1",
ApplicationLocation = new PolicyLocationUrl
{
OdataType = "#microsoft.graph.policyLocationUrl",
Value = "https://gemini.google.com",
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].DataSecurityAndGovernance.ProcessContent.PostAsync(requestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphusers.NewProcessContentPostRequestBody()
contentToProcess := graphmodels.NewProcessContentRequest()
processContentMetadataBase := graphmodels.NewProcessFileMetadata()
identifier := "f7af180f-dc2e-467c-9719-757e1c61eabf"
processContentMetadataBase.SetIdentifier(&identifier)
content := graphmodels.NewTextContent()
data := "Base64 encoded content"
content.SetData(&data)
processContentMetadataBase.SetContent(content)
name := "Test File.docx"
processContentMetadataBase.SetName(&name)
correlationId := "d63eafd2-e3a9-4c1a-b726-a2e9b9d95822"
processContentMetadataBase.SetCorrelationId(&correlationId)
createdDateTime , err := time.Parse(time.RFC3339, "2024-07-23T01:31:40.2020463Z")
processContentMetadataBase.SetCreatedDateTime(&createdDateTime)
modifiedDateTime , err := time.Parse(time.RFC3339, "2024-09-17T13:45:21.0000000Z")
processContentMetadataBase.SetModifiedDateTime(&modifiedDateTime)
correlationId := "9d84223c-521c-42f4-8f35-3cdeabe515d3"
processContentMetadataBase.SetCorrelationId(&correlationId)
length := int64(17352)
processContentMetadataBase.SetLength(&length)
isTruncated := false
processContentMetadataBase.SetIsTruncated(&isTruncated)
ownerId := "ffe1ca70-6e5b-4120-abf0-472034ba05d4"
processContentMetadataBase.SetOwnerId(&ownerId)
customProperties := graphmodels.NewCustomMetadataDictionary()
additionalData := map[string]interface{}{
"Department" : "Finance",
"ReviewerName" : "John Smith",
}
customProperties.SetAdditionalData(additionalData)
processContentMetadataBase.SetCustomProperties(customProperties)
contentEntries := []graphmodels.ProcessContentMetadataBaseable {
processContentMetadataBase,
}
contentToProcess.SetContentEntries(contentEntries)
activityMetadata := graphmodels.NewActivityMetadata()
activity := graphmodels.UPLOADFILE_USERACTIVITYTYPE
activityMetadata.SetActivity(&activity)
contentToProcess.SetActivityMetadata(activityMetadata)
deviceMetadata := graphmodels.NewDeviceMetadata()
deviceType := "unmanaged"
deviceMetadata.SetDeviceType(&deviceType)
operatingSystemSpecifications := graphmodels.NewOperatingSystemSpecifications()
operatingSystemPlatform := "Windows"
operatingSystemSpecifications.SetOperatingSystemPlatform(&operatingSystemPlatform)
operatingSystemVersion := "11.1"
operatingSystemSpecifications.SetOperatingSystemVersion(&operatingSystemVersion)
deviceMetadata.SetOperatingSystemSpecifications(operatingSystemSpecifications)
contentToProcess.SetDeviceMetadata(deviceMetadata)
integratedAppMetadata := graphmodels.NewIntegratedApplicationMetadata()
name := "Network Proxy App"
integratedAppMetadata.SetName(&name)
version := "1.0.0"
integratedAppMetadata.SetVersion(&version)
contentToProcess.SetIntegratedAppMetadata(integratedAppMetadata)
protectedAppMetadata := graphmodels.NewProtectedApplicationMetadata()
name := "My App"
protectedAppMetadata.SetName(&name)
version := "0.1"
protectedAppMetadata.SetVersion(&version)
applicationLocation := graphmodels.NewPolicyLocationUrl()
value := "https://gemini.google.com"
applicationLocation.SetValue(&value)
protectedAppMetadata.SetApplicationLocation(applicationLocation)
contentToProcess.SetProtectedAppMetadata(protectedAppMetadata)
requestBody.SetContentToProcess(contentToProcess)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
processContent, err := graphClient.Users().ByUserId("user-id").DataSecurityAndGovernance().ProcessContent().Post(context.Background(), requestBody, nil)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody processContentPostRequestBody = new com.microsoft.graph.users.item.datasecurityandgovernance.processcontent.ProcessContentPostRequestBody();
ProcessContentRequest contentToProcess = new ProcessContentRequest();
LinkedList<ProcessContentMetadataBase> contentEntries = new LinkedList<ProcessContentMetadataBase>();
ProcessFileMetadata processContentMetadataBase = new ProcessFileMetadata();
processContentMetadataBase.setOdataType("#microsoft.graph.processFileMetadata");
processContentMetadataBase.setIdentifier("f7af180f-dc2e-467c-9719-757e1c61eabf");
TextContent content = new TextContent();
content.setOdataType("#microsoft.graph.textContent");
content.setData("Base64 encoded content");
processContentMetadataBase.setContent(content);
processContentMetadataBase.setName("Test File.docx");
processContentMetadataBase.setCorrelationId("d63eafd2-e3a9-4c1a-b726-a2e9b9d95822");
OffsetDateTime createdDateTime = OffsetDateTime.parse("2024-07-23T01:31:40.2020463Z");
processContentMetadataBase.setCreatedDateTime(createdDateTime);
OffsetDateTime modifiedDateTime = OffsetDateTime.parse("2024-09-17T13:45:21.0000000Z");
processContentMetadataBase.setModifiedDateTime(modifiedDateTime);
processContentMetadataBase.setCorrelationId("9d84223c-521c-42f4-8f35-3cdeabe515d3");
processContentMetadataBase.setLength(17352L);
processContentMetadataBase.setIsTruncated(false);
processContentMetadataBase.setOwnerId("ffe1ca70-6e5b-4120-abf0-472034ba05d4");
CustomMetadataDictionary customProperties = new CustomMetadataDictionary();
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("Department", "Finance");
additionalData.put("ReviewerName", "John Smith");
customProperties.setAdditionalData(additionalData);
processContentMetadataBase.setCustomProperties(customProperties);
contentEntries.add(processContentMetadataBase);
contentToProcess.setContentEntries(contentEntries);
ActivityMetadata activityMetadata = new ActivityMetadata();
activityMetadata.setActivity(UserActivityType.UploadFile);
contentToProcess.setActivityMetadata(activityMetadata);
DeviceMetadata deviceMetadata = new DeviceMetadata();
deviceMetadata.setDeviceType("unmanaged");
OperatingSystemSpecifications operatingSystemSpecifications = new OperatingSystemSpecifications();
operatingSystemSpecifications.setOperatingSystemPlatform("Windows");
operatingSystemSpecifications.setOperatingSystemVersion("11.1");
deviceMetadata.setOperatingSystemSpecifications(operatingSystemSpecifications);
contentToProcess.setDeviceMetadata(deviceMetadata);
IntegratedApplicationMetadata integratedAppMetadata = new IntegratedApplicationMetadata();
integratedAppMetadata.setName("Network Proxy App");
integratedAppMetadata.setVersion("1.0.0");
contentToProcess.setIntegratedAppMetadata(integratedAppMetadata);
ProtectedApplicationMetadata protectedAppMetadata = new ProtectedApplicationMetadata();
protectedAppMetadata.setName("My App");
protectedAppMetadata.setVersion("0.1");
PolicyLocationUrl applicationLocation = new PolicyLocationUrl();
applicationLocation.setOdataType("#microsoft.graph.policyLocationUrl");
applicationLocation.setValue("https://gemini.google.com");
protectedAppMetadata.setApplicationLocation(applicationLocation);
contentToProcess.setProtectedAppMetadata(protectedAppMetadata);
processContentPostRequestBody.setContentToProcess(contentToProcess);
var result = graphClient.users().byUserId("{user-id}").dataSecurityAndGovernance().processContent().post(processContentPostRequestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const processContentResponse = {
contentToProcess: {
contentEntries: [
{
'@odata.type': '#microsoft.graph.processFileMetadata',
identifier: 'f7af180f-dc2e-467c-9719-757e1c61eabf',
content: {
'@odata.type': '#microsoft.graph.textContent',
data: 'Base64 encoded content'
},
name: 'Test File.docx',
correlationId: 'd63eafd2-e3a9-4c1a-b726-a2e9b9d95822',
createdDateTime: '2024-07-23T01:31:40.2020463Z',
modifiedDateTime: '2024-09-17T13:45:21.0000000Z',
correlationId: '9d84223c-521c-42f4-8f35-3cdeabe515d3',
length: 17352,
isTruncated: false,
ownerId: 'ffe1ca70-6e5b-4120-abf0-472034ba05d4',
customProperties: {
Department: 'Finance',
ReviewerName: 'John Smith'
}
}
],
activityMetadata: {
activity: 'uploadFile'
},
deviceMetadata: {
deviceType: 'unmanaged',
operatingSystemSpecifications: {
operatingSystemPlatform: 'Windows',
operatingSystemVersion: '11.1'
}
},
integratedAppMetadata: {
name: 'Network Proxy App',
version: '1.0.0'
},
protectedAppMetadata: {
name: 'My App',
version: '0.1',
applicationLocation: {
'@odata.type': '#microsoft.graph.policyLocationUrl',
value: 'https://gemini.google.com'
}
}
}
};
await client.api('/users/{5def8f26-aff8-4db6-a08c-0fcf8f1aa2ba}/dataSecurityAndGovernance/processContent')
.post(processContentResponse);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\DataSecurityAndGovernance\ProcessContent\ProcessContentPostRequestBody;
use Microsoft\Graph\Generated\Models\ProcessContentRequest;
use Microsoft\Graph\Generated\Models\ProcessContentMetadataBase;
use Microsoft\Graph\Generated\Models\ProcessFileMetadata;
use Microsoft\Graph\Generated\Models\TextContent;
use Microsoft\Graph\Generated\Models\CustomMetadataDictionary;
use Microsoft\Graph\Generated\Models\ActivityMetadata;
use Microsoft\Graph\Generated\Models\UserActivityType;
use Microsoft\Graph\Generated\Models\DeviceMetadata;
use Microsoft\Graph\Generated\Models\OperatingSystemSpecifications;
use Microsoft\Graph\Generated\Models\IntegratedApplicationMetadata;
use Microsoft\Graph\Generated\Models\ProtectedApplicationMetadata;
use Microsoft\Graph\Generated\Models\PolicyLocationUrl;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ProcessContentPostRequestBody();
$contentToProcess = new ProcessContentRequest();
$contentEntriesProcessContentMetadataBase1 = new ProcessFileMetadata();
$contentEntriesProcessContentMetadataBase1->setOdataType('#microsoft.graph.processFileMetadata');
$contentEntriesProcessContentMetadataBase1->setIdentifier('f7af180f-dc2e-467c-9719-757e1c61eabf');
$contentEntriesProcessContentMetadataBase1Content = new TextContent();
$contentEntriesProcessContentMetadataBase1Content->setOdataType('#microsoft.graph.textContent');
$contentEntriesProcessContentMetadataBase1Content->setData('Base64 encoded content');
$contentEntriesProcessContentMetadataBase1->setContent($contentEntriesProcessContentMetadataBase1Content);
$contentEntriesProcessContentMetadataBase1->setName('Test File.docx');
$contentEntriesProcessContentMetadataBase1->setCorrelationId('d63eafd2-e3a9-4c1a-b726-a2e9b9d95822');
$contentEntriesProcessContentMetadataBase1->setCreatedDateTime(new \DateTime('2024-07-23T01:31:40.2020463Z'));
$contentEntriesProcessContentMetadataBase1->setModifiedDateTime(new \DateTime('2024-09-17T13:45:21.0000000Z'));
$contentEntriesProcessContentMetadataBase1->setCorrelationId('9d84223c-521c-42f4-8f35-3cdeabe515d3');
$contentEntriesProcessContentMetadataBase1->setLength(17352);
$contentEntriesProcessContentMetadataBase1->setIsTruncated(false);
$contentEntriesProcessContentMetadataBase1->setOwnerId('ffe1ca70-6e5b-4120-abf0-472034ba05d4');
$contentEntriesProcessContentMetadataBase1CustomProperties = new CustomMetadataDictionary();
$additionalData = [
'Department' => 'Finance',
'ReviewerName' => 'John Smith',
];
$contentEntriesProcessContentMetadataBase1CustomProperties->setAdditionalData($additionalData);
$contentEntriesProcessContentMetadataBase1->setCustomProperties($contentEntriesProcessContentMetadataBase1CustomProperties);
$contentEntriesArray []= $contentEntriesProcessContentMetadataBase1;
$contentToProcess->setContentEntries($contentEntriesArray);
$contentToProcessActivityMetadata = new ActivityMetadata();
$contentToProcessActivityMetadata->setActivity(new UserActivityType('uploadFile'));
$contentToProcess->setActivityMetadata($contentToProcessActivityMetadata);
$contentToProcessDeviceMetadata = new DeviceMetadata();
$contentToProcessDeviceMetadata->setDeviceType('unmanaged');
$contentToProcessDeviceMetadataOperatingSystemSpecifications = new OperatingSystemSpecifications();
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemPlatform('Windows');
$contentToProcessDeviceMetadataOperatingSystemSpecifications->setOperatingSystemVersion('11.1');
$contentToProcessDeviceMetadata->setOperatingSystemSpecifications($contentToProcessDeviceMetadataOperatingSystemSpecifications);
$contentToProcess->setDeviceMetadata($contentToProcessDeviceMetadata);
$contentToProcessIntegratedAppMetadata = new IntegratedApplicationMetadata();
$contentToProcessIntegratedAppMetadata->setName('Network Proxy App');
$contentToProcessIntegratedAppMetadata->setVersion('1.0.0');
$contentToProcess->setIntegratedAppMetadata($contentToProcessIntegratedAppMetadata);
$contentToProcessProtectedAppMetadata = new ProtectedApplicationMetadata();
$contentToProcessProtectedAppMetadata->setName('My App');
$contentToProcessProtectedAppMetadata->setVersion('0.1');
$contentToProcessProtectedAppMetadataApplicationLocation = new PolicyLocationUrl();
$contentToProcessProtectedAppMetadataApplicationLocation->setOdataType('#microsoft.graph.policyLocationUrl');
$contentToProcessProtectedAppMetadataApplicationLocation->setValue('https://gemini.google.com');
$contentToProcessProtectedAppMetadata->setApplicationLocation($contentToProcessProtectedAppMetadataApplicationLocation);
$contentToProcess->setProtectedAppMetadata($contentToProcessProtectedAppMetadata);
$requestBody->setContentToProcess($contentToProcess);
$result = $graphServiceClient->users()->byUserId('user-id')->dataSecurityAndGovernance()->processContent()->post($requestBody)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.datasecurityandgovernance.process_content.process_content_post_request_body import ProcessContentPostRequestBody
from msgraph.generated.models.process_content_request import ProcessContentRequest
from msgraph.generated.models.process_content_metadata_base import ProcessContentMetadataBase
from msgraph.generated.models.process_file_metadata import ProcessFileMetadata
from msgraph.generated.models.text_content import TextContent
from msgraph.generated.models.custom_metadata_dictionary import CustomMetadataDictionary
from msgraph.generated.models.activity_metadata import ActivityMetadata
from msgraph.generated.models.user_activity_type import UserActivityType
from msgraph.generated.models.device_metadata import DeviceMetadata
from msgraph.generated.models.operating_system_specifications import OperatingSystemSpecifications
from msgraph.generated.models.integrated_application_metadata import IntegratedApplicationMetadata
from msgraph.generated.models.protected_application_metadata import ProtectedApplicationMetadata
from msgraph.generated.models.policy_location_url import PolicyLocationUrl
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ProcessContentPostRequestBody(
content_to_process = ProcessContentRequest(
content_entries = [
ProcessFileMetadata(
odata_type = "#microsoft.graph.processFileMetadata",
identifier = "f7af180f-dc2e-467c-9719-757e1c61eabf",
content = TextContent(
odata_type = "#microsoft.graph.textContent",
data = "Base64 encoded content",
),
name = "Test File.docx",
correlation_id = "d63eafd2-e3a9-4c1a-b726-a2e9b9d95822",
created_date_time = "2024-07-23T01:31:40.2020463Z",
modified_date_time = "2024-09-17T13:45:21.0000000Z",
correlation_id = "9d84223c-521c-42f4-8f35-3cdeabe515d3",
length = 17352,
is_truncated = False,
owner_id = "ffe1ca70-6e5b-4120-abf0-472034ba05d4",
custom_properties = CustomMetadataDictionary(
additional_data = {
"department" : "Finance",
"reviewer_name" : "John Smith",
}
),
),
],
activity_metadata = ActivityMetadata(
activity = UserActivityType.UploadFile,
),
device_metadata = DeviceMetadata(
device_type = "unmanaged",
operating_system_specifications = OperatingSystemSpecifications(
operating_system_platform = "Windows",
operating_system_version = "11.1",
),
),
integrated_app_metadata = IntegratedApplicationMetadata(
name = "Network Proxy App",
version = "1.0.0",
),
protected_app_metadata = ProtectedApplicationMetadata(
name = "My App",
version = "0.1",
application_location = PolicyLocationUrl(
odata_type = "#microsoft.graph.policyLocationUrl",
value = "https://gemini.google.com",
),
),
),
)
result = await graph_client.users.by_user_id('user-id').data_security_and_governance.process_content.post(request_body)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.processContentResponse",
"protectionScopeState": "modified",
"policyActions": [
{
"@odata.type": "#microsoft.graph.restrictAccessAction",
"action": "restrictAccess",
"restrictionAction": "block"
}
],
"processingErrors": []
}
反馈
此页面是否有帮助?
否
需要有关本主题的帮助?
想要尝试使用 Ask Learn 阐明或指导你完成本主题?
其他资源
-
Last updated on
2025-07-25