userDataSecurityAndGovernance: processContent

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

Procesar el contenido con respecto a las directivas de protección de datos en el contexto del usuario actual o especificado.

Esta API está disponible en las siguientes implementaciones en la nube nacional.

Servicio global Administración pública de EE. UU. Gobierno de EE. UU. L5 (DOD) China operado por 21Vianet
✅ ✅ ✅ ❌

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Content.Process.User Content.Process.All
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación Content.Process.User Content.Process.All

Solicitud HTTP

POST /me/dataSecurityAndGovernance/processContent

Nota:

Para llamar al punto de conexión /me, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten al usar el /me punto de conexión.

POST /users/{userId}/dataSecurityAndGovernance/processContent

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización.
Content-Type application/json. Obligatorio.
If-None-Match Opcional. La API usa este valor para determinar si el estado de la directiva cambió desde la última llamada a la API. El valor procede del encabezado Etag devuelto por el proceso de protectionScopes. Si el valor Etag recién calculado no coincide con el valor pasado en este encabezado, la propiedad protectionScopeState devuelta se "modificará" y la aplicación debe actualizarse llamando al proceso de protectionScopes.
client-request-id Cadena (se recomienda GUID). Opcional. Identificador único de esta solicitud, que se usa para el seguimiento y la depuración en los registros y las interacciones de soporte técnico. Si no se proporciona una identificación, se puede generar una automáticamente. Se recomienda especificar el identificador para facilitar el seguimiento y la depuración. El mismo identificador que se envió en la solicitud se devolverá en la respuesta.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON de los parámetros.

En la tabla siguiente se enumeran los parámetros necesarios al llamar a esta acción.

Parámetro Tipo Descripción
contentToProcess processContentRequest Obligatorio. El objeto que contiene las entradas de contenido y los metadatos (actividad, dispositivo, aplicación) que se van a evaluar para el usuario especificado.

Respuesta

Si se realiza correctamente, esta acción devuelve un 200 OK código de respuesta y un processContentResponse en el cuerpo de la respuesta o 202 Accepted, 204 No Content sin cuerpo de respuesta.

Encabezados de respuesta

Nombre Descripción
ETag Un indicador que puede utilizarse para detectar si el estado de la directiva configurada ha cambiado. Si el estado de la directiva cambió, el valor ETag cambiará y la propiedad protectionScopeState devuelta se "modificará" y la aplicación debe actualizarse llamando al proceso de protectionScopes.

Ejemplos

Ejemplo 1: Aplicación de empresa

Solicitud

En el ejemplo siguiente se muestra una solicitud de una aplicación empresarial, que puede ser una aplicación que no sea de IA o una aplicación de IA. El texto con el que envías data puede ser cualquier texto de la aplicación; por ejemplo, el cuerpo de un documento, un mensaje de chat o la pregunta del usuario sobre si la aplicación es una aplicación de IA.

POST https://graph.microsoft.com/beta/me/dataSecurityAndGovernance/processContent
Content-Type: application/json
Client-Request-Id: 50dc805c-3af4-42d9-ad16-a746235cc736

{
    "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",
             "contentCategory": "ai"
          }
       ],
       "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" 
       }
    }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-Type: application/json
Client-Request-Id: 50dc805c-3af4-42d9-ad16-a746235cc736

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.processContentResponse",
  "protectionScopeState": "notModified",
   "policyActions": [],
  "processingErrors": []
}

Ejemplo 2: Agente de IA

Solicitud

En el ejemplo siguiente se muestra una solicitud enviada desde un agente de IA. En la solicitud, observe que hay una agents matriz que es de tipo aiAgentInfo. En este ejemplo, data se usa para enviar la indicación del usuario.

POST https://graph.microsoft.com/beta/users/{5def8f26-aff8-4db6-a08c-0fcf8f1aa2ba}/dataSecurityAndGovernance/processContent
Content-Type: application/json

{
    "contentToProcess": {
      "contentEntries": [
        {
          "@odata.type": "microsoft.graph.processConversationMetadata",
          "identifier": "42837765-85c9-4a28-a165-27b6aaa5f635",
          "content": {
            "@odata.type": "microsoft.graph.textContent",
            "data": "For application 123456789, Write an acceptance letter for Alex Wilber with Credit card number 0000111122223333, ssn: 000-11-2222 at One Microsoft Way, Redmond, WA 98052"
          },
          "agents": [
            {
              "@odata.type": "microsoft.graph.aiAgentInfo",
              "blueprintId": "c84571c6-5ef3-4af7-aed2-0491cfd362a0",
              "identifier": "89515a70-a236-43be-b977-3ff0b454f853",
              "name": "Demo Agent",
              "version": "1.0"
            }
          ],
          "name":"PC Purview API Explorer message",
          "correlationId": "1cd5e33a-c78f-46e4-a242-74b0ef910486",
          "sequenceNumber": 0,
             "isTruncated": false,
             "createdDateTime": "2026-04-08T20:52:08",
             "modifiedDateTime": "2026-04-08T20:52:08"
          }
       ],
       "activityMetadata": { 
          "activity": "uploadText"
       },
       "deviceMetadata": {
          "operatingSystemSpecifications": {
             "operatingSystemPlatform": "Windows 11",
             "operatingSystemVersion": "10.0.26200.0" 
          },
          "ipAddress": "127.0.0.1"
       },
       "protectedAppMetadata": {
          "name": "PC Purview API Explorer",
          "version": "0.2",
          "applicationLocation":{
             "@odata.type": "microsoft.graph.policyLocationApplication",
             "value": "83ef198a-0396-4893-9d4f-d36efbffc8bd"
          }
       },
       "integratedAppMetadata": {
          "name": "PC Purview API Explorer",
          "version": "0.1" 
       }
    }
}


Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.processContentResponse",
  "protectionScopeState": "modified",
  "policyActions": [
    {
      "@odata.type": "#microsoft.graph.restrictAccessAction",
      "action": "restrictAccess",
      "restrictionAction": "block"
    }
  ],
  "processingErrors": []
}

Ejemplo 3: Aplicación del proveedor de red

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/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"
			}
		}
	}
}


Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.processContentResponse",
  "protectionScopeState": "modified",
  "policyActions": [
    {
      "@odata.type": "#microsoft.graph.restrictAccessAction",
      "action": "restrictAccess",
      "restrictionAction": "block"
    }
  ],
  "processingErrors": []
}

Ejemplo 4: Aplicación de proveedor de red con contenido de archivo

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/me/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",
             	"contentCategory": "none",
				"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"
			}
		}
	}
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.processContentResponse",
  "protectionScopeState": "modified",
  "policyActions": [
    {
      "@odata.type": "#microsoft.graph.restrictAccessAction",
      "action": "restrictAccess",
      "restrictionAction": "block"
    }
  ],
  "processingErrors": []
}