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.
Espacio de nombres: microsoft.graph
Obtenga objetos de directorio recién creados, actualizados o eliminados sin realizar una lectura completa de toda la colección directoryObject. Para obtener más información, consulte Usar la consulta delta para realizar un seguimiento de los cambios en los datos de Microsoft Graph para obtener más información.
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
En la tabla siguiente se muestra el permiso con privilegios mínimos que requiere cada tipo de recurso al llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.
| Recurso admitido |
Delegado (cuenta profesional o educativa) |
Aplicación |
Delegado (cuenta personal de Microsoft) |
|
application |
Application.Read.All |
Application.Read.All |
No se admite |
|
administrativeUnit |
AdministrativeUnit.Read.All |
AdministrativeUnit.Read.All |
No se admite |
|
dispositivo |
Device.Read.All |
Device.Read.All |
No compatible |
|
directoryRole |
RoleManagement.Read.Directory |
RoleManagement.Read.Directory |
No compatible |
|
grupo |
Group.Read.All |
Group.Read.All |
No se admite |
|
orgContact |
OrgContact.Read.All |
OrgContact.Read.All |
No se admite |
|
servicePrincipal |
Application.Read.All |
Application.Read.All |
No compatible |
|
user |
User.Read.All |
User.Read.All |
No admitido |
Solicitud HTTP
Realizar un seguimiento de los cambios de una colección de un tipo de objeto de directorio.
GET /directoryObjects/delta?$filter=isof('microsoft.graph.application')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.administrativeUnit')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.device')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.directoryRole')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.group')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.orgContact')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.servicePrincipal')
GET /directoryObjects/delta?$filter=isof('microsoft.graph.user')
Realizar un seguimiento de los cambios de un objeto de directorio.
GET /directoryObjects/delta?$filter=id eq '{id}'
Parámetros de consulta de OData
Este método admite parámetros de consulta OData opcionales para ayudar a personalizar la respuesta.
- Puede utilizar un parámetro de consulta
$select como en cualquier solicitud GET para especificar solo las propiedades que necesita para un mejor rendimiento. Siempre se devuelve la propiedad id.
- Al filtrar varios objetos, por ejemplo,
/directoryObjects/delta/?$filter=id eq '477e9fc6-5de7-4406-bb2a-7e5c83c9ffff' or id eq '004d6a07-fe70-4b92-add5-e6e37b8affff'hay un límite de 50 expresiones de filtro.
- Puede combinar las
$filter sintaxis. Por ejemplo, $filter=isof('{resource type}') or id eq '{id}'. Esto proporciona una intersección de los objetos especificados por la coincidencia {resource type} y el tipo de recurso de {id}.
| Nombre |
Descripción |
| Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización. |
| Content-Type |
application/json |
| Prefer |
return=minimal.
Especificar este encabezado con una solicitud que utiliza un @odata.deltaLink devolverá solo las propiedades del objeto que han cambiado desde la última ronda. Opcional. |
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si tiene éxito, este método devuelve 200 OK el código de respuesta y el objeto de colección directoryObject en el cuerpo de la respuesta. La respuesta también incluye un token de estado que es una @odata.nextLink dirección URL o una @odata.deltaLink dirección URL.
Predeterminado: devolver las mismas propiedades que la solicitud delta inicial
De forma predeterminada, las solicitudes que usan un @odata.deltaLink o un @odata.nextLink devuelven las mismas propiedades que las seleccionadas en la consulta delta inicial de las siguientes formas:
- Si la propiedad ha cambiado, el nuevo valor se incluye en la respuesta. Esto incluye las propiedades a las cuales se les establece un valor nulo.
- Si la propiedad no ha cambiado, el valor anterior se incluye en la respuesta.
- Si la propiedad nunca se ha establecido, no se incluirá en la respuesta.
Nota: Con este comportamiento, no es posible determinar si una propiedad ha cambiado o no solo mirándola. Además, las respuestas diferenciales tienden a ser grandes porque contienen todos los valores de propiedad, como se muestra en el ejemplo 3.
Alternativa: devolver solo las propiedades que hayan cambiado
Agregar un encabezado de solicitud opcional, prefer:return=minimal, ocasiona el comportamiento siguiente:
- Si la propiedad ha cambiado, el nuevo valor se incluye en la respuesta. Esto incluye las propiedades a las cuales se les establece un valor nulo.
- Si la propiedad no se ha cambiado, la propiedad no se incluye en absoluto en la respuesta. (Distinto del comportamiento predeterminado).
Nota: Se puede agregar el encabezado en una solicitud @odata.deltaLink en cualquier momento del ciclo delta. El encabezado solo afecta al conjunto de propiedades incluidas en la respuesta y no afecta al modo en que se ejecuta la consulta delta.
Vea el ejemplo 4.
Ejemplos
Ejemplo 1: Recuperar cambios para una colección de usuarios y grupos
Solicitud
En el ejemplo siguiente se muestra una solicitud que usa el $filter=isof('{resource type}') parámetro en usuarios y grupos. No hay ningún $select parámetro, por lo que se realiza un seguimiento y se devuelve un conjunto predeterminado de propiedades.
GET https://graph.microsoft.com/beta/directoryObjects/delta?filter=isof('microsoft.graph.user') or isof('microsoft.graph.group')
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DirectoryObjects.Delta.GetAsDeltaGetResponseAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
});
// 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"
graphdirectoryobjects "github.com/microsoftgraph/msgraph-beta-sdk-go/directoryobjects"
//other-imports
)
requestFilter := "isof('microsoft.graph.user') or isof('microsoft.graph.group')"
requestParameters := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetQueryParameters{
Filter: &requestFilter,
}
configuration := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
delta, err := graphClient.DirectoryObjects().Delta().GetAsDeltaGetResponse(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
var result = graphClient.directoryObjects().delta().get(requestConfiguration -> {
requestConfiguration.queryParameters.filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
});
const options = {
authProvider,
};
const client = Client.init(options);
let delta = await client.api('/directoryObjects/delta?filter=isof(\'microsoft.graph.user\') or isof(\'microsoft.graph.group\')')
.version('beta')
.filter('isof(\'microsoft.graph.user\') or isof(\'microsoft.graph.group\')')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DirectoryObjects\Delta\DeltaRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new DeltaRequestBuilderGetRequestConfiguration();
$queryParameters = DeltaRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->directoryObjects()->delta()->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.DirectoryObjects
Get-MgBetaDirectoryObjectDelta -Filter "isof('microsoft.graph.user') or isof('microsoft.graph.group')"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.directory_objects.delta.delta_request_builder import DeltaRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = DeltaRequestBuilder.DeltaRequestBuilderGetQueryParameters(
filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')",
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.directory_objects.delta.get(request_configuration = request_configuration)
Respuesta
Este es un ejemplo de la respuesta al usar @odata.deltaLink obtenida de la inicialización de la consulta con $filter=isof('{resource type}'). Observe la presencia de la propiedad members@delta que incluye los identificadores de objetos miembro del grupo.
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#directoryObjects","@odata.nextLink":"https://graph.microsoft.com/beta/directoryObjects/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjvY1FSSc_",
"value":[
{
"@odata.type": "#microsoft.graph.user",
"businessPhones": [
"+1 425 555 0109"
],
"displayName": "Adele Vance",
"givenName": "Adele",
"jobTitle": "Retail Manager",
"mail": "AdeleV@contoso.com",
"mobilePhone": "+1 425 555 0109",
"officeLocation": "18/2111",
"preferredLanguage": "en-US",
"surname": "Vance",
"userPrincipalName": "AdeleV@contoso.com",
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd"
},
{
"@odata.type": "#microsoft.graph.group",
"createdDateTime":"2021-03-12T10:36:14Z",
"description":"This is the default group for everyone in the network",
"displayName":"All Company",
"groupTypes": [
"Unified"
],
"mail": "allcompany@contoso.com",
"id": "72052a9a-c466-4995-8210-95a1c1221995",
"members@delta": [
{
"@odata.type": "#microsoft.graph.user",
"id": "693acd06-2877-4339-8ade-b704261fe7a0"
},
{
"@odata.type": "#microsoft.graph.user",
"id": "49320844-be99-4164-8167-87ff5d047ace"
}
]
}
]
}
Ejemplo 2: Recuperar una colección de cambios para un objeto de directorio
Solicitud
En el ejemplo siguiente se muestra la solicitud mediante el $filter=id eq '{id}' parámetro. No hay ningún $select parámetro, por lo que se realiza un seguimiento y se devuelve un conjunto predeterminado de propiedades.
GET https://graph.microsoft.com/beta/directoryObjects/delta?$filter=id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DirectoryObjects.Delta.GetAsDeltaGetResponseAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Filter = "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'";
});
// 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"
graphdirectoryobjects "github.com/microsoftgraph/msgraph-beta-sdk-go/directoryobjects"
//other-imports
)
requestFilter := "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'"
requestParameters := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetQueryParameters{
Filter: &requestFilter,
}
configuration := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
delta, err := graphClient.DirectoryObjects().Delta().GetAsDeltaGetResponse(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
var result = graphClient.directoryObjects().delta().get(requestConfiguration -> {
requestConfiguration.queryParameters.filter = "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'";
});
const options = {
authProvider,
};
const client = Client.init(options);
let delta = await client.api('/directoryObjects/delta')
.version('beta')
.filter('id eq \'87d349ed-44d7-43e1-9a83-5f2406dee5bd\'')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DirectoryObjects\Delta\DeltaRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new DeltaRequestBuilderGetRequestConfiguration();
$queryParameters = DeltaRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->filter = "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'";
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->directoryObjects()->delta()->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.DirectoryObjects
Get-MgBetaDirectoryObjectDelta -Filter "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.directory_objects.delta.delta_request_builder import DeltaRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = DeltaRequestBuilder.DeltaRequestBuilderGetQueryParameters(
filter = "id eq '87d349ed-44d7-43e1-9a83-5f2406dee5bd'",
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.directory_objects.delta.get(request_configuration = request_configuration)
Respuesta
Este es un ejemplo de la respuesta al usar @odata.deltaLink obtenida de la inicialización de la consulta con $filter=id eq '{id}'.
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#directoryObjects",
"@odata.nextLink":"https://graph.microsoft.com/beta/directoryObjects/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
"value": [
{
"@odata.type": "#microsoft.graph.group",
"createdDateTime":"2021-03-12T10:36:14Z",
"description":"This is the default group for everyone in the network",
"displayName":"All Company",
"groupTypes": [
"Unified"
],
"mail": "allcompany@contoso.com",
"id": "72052a9a-c466-4995-8210-95a1c1221995",
"members@delta": [
{
"@odata.type": "#microsoft.graph.user",
"id": "693acd06-2877-4339-8ade-b704261fe7a0"
},
{
"@odata.type": "#microsoft.graph.user",
"id": "49320844-be99-4164-8167-87ff5d047ace"
}
]
}
]
}
Ejemplo 3: Recuperar cambios en propiedades específicas de una colección de usuarios y grupos
Solicitud
En el ejemplo siguiente se muestra la solicitud inicial que selecciona una propiedad de un usuario y otro de un grupo para el seguimiento de cambios, con el comportamiento de respuesta predeterminado:
GET https://graph.microsoft.com/beta/directoryObjects/delta?$filter=isof('microsoft.graph.user') or isof('microsoft.graph.group')&$select=microsoft.graph.user/surname,microsoft.graph.group/displayName
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DirectoryObjects.Delta.GetAsDeltaGetResponseAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
requestConfiguration.QueryParameters.Select = new string []{ "microsoft.graph.user/surname","microsoft.graph.group/displayName" };
});
// 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"
graphdirectoryobjects "github.com/microsoftgraph/msgraph-beta-sdk-go/directoryobjects"
//other-imports
)
requestFilter := "isof('microsoft.graph.user') or isof('microsoft.graph.group')"
requestParameters := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetQueryParameters{
Filter: &requestFilter,
Select: [] string {"microsoft.graph.user/surname","microsoft.graph.group/displayName"},
}
configuration := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
delta, err := graphClient.DirectoryObjects().Delta().GetAsDeltaGetResponse(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
var result = graphClient.directoryObjects().delta().get(requestConfiguration -> {
requestConfiguration.queryParameters.filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
requestConfiguration.queryParameters.select = new String []{"microsoft.graph.user/surname", "microsoft.graph.group/displayName"};
});
const options = {
authProvider,
};
const client = Client.init(options);
let delta = await client.api('/directoryObjects/delta')
.version('beta')
.filter('isof(\'microsoft.graph.user\') or isof(\'microsoft.graph.group\')')
.select('microsoft.graph.user,microsoft.graph.group')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DirectoryObjects\Delta\DeltaRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new DeltaRequestBuilderGetRequestConfiguration();
$queryParameters = DeltaRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
$queryParameters->select = ["microsoft.graph.user/surname","microsoft.graph.group/displayName"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->directoryObjects()->delta()->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.DirectoryObjects
Get-MgBetaDirectoryObjectDelta -Filter "isof('microsoft.graph.user') or isof('microsoft.graph.group')" -Property "microsoft.graph.user/surname,microsoft.graph.group/displayName"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.directory_objects.delta.delta_request_builder import DeltaRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = DeltaRequestBuilder.DeltaRequestBuilderGetQueryParameters(
filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')",
select = ["microsoft.graph.user/surname","microsoft.graph.group/displayName"],
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.directory_objects.delta.get(request_configuration = request_configuration)
Respuesta
Este es un ejemplo de la respuesta al usar @odata.deltaLink obtenida de la inicialización de la consulta. Ambas propiedades se incluyen en la respuesta y no se sabe cuáles han cambiado desde que se obtuvo @odata.deltaLink .
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#directoryObjects",
"@odata.nextLink":"https://graph.microsoft.com/beta/directoryObjects/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
"value": [
{
"@odata.type": "#microsoft.graph.user",
"surname": "Vance",
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd"
},
{
"@odata.type": "#microsoft.graph.group",
"displayName":"All Company",
"id": "72052a9a-c466-4995-8210-95a1c1221995",
}
]
}
Ejemplo 4: Recuperar propiedades específicas solo si cambiaron para una colección de usuarios y grupos
Solicitud
En el ejemplo siguiente se muestra la solicitud inicial que selecciona una propiedad de un usuario y un grupo para el seguimiento de cambios, con un comportamiento alternativo de respuesta mínima:
GET https://graph.microsoft.com/beta/directoryObjects/delta?$filter=isof('microsoft.graph.user') or isof('microsoft.graph.group')&$select=microsoft.graph.user/surname,microsoft.graph.group/displayName
Prefer: return=minimal
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DirectoryObjects.Delta.GetAsDeltaGetResponseAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
requestConfiguration.QueryParameters.Select = new string []{ "microsoft.graph.user/surname","microsoft.graph.group/displayName" };
requestConfiguration.Headers.Add("Prefer", "return=minimal");
});
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphdirectoryobjects "github.com/microsoftgraph/msgraph-beta-sdk-go/directoryobjects"
//other-imports
)
headers := abstractions.NewRequestHeaders()
headers.Add("Prefer", "return=minimal")
requestFilter := "isof('microsoft.graph.user') or isof('microsoft.graph.group')"
requestParameters := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetQueryParameters{
Filter: &requestFilter,
Select: [] string {"microsoft.graph.user/surname","microsoft.graph.group/displayName"},
}
configuration := &graphdirectoryobjects.DirectoryObjectsDeltaRequestBuilderGetRequestConfiguration{
Headers: headers,
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
delta, err := graphClient.DirectoryObjects().Delta().GetAsDeltaGetResponse(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
var result = graphClient.directoryObjects().delta().get(requestConfiguration -> {
requestConfiguration.queryParameters.filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
requestConfiguration.queryParameters.select = new String []{"microsoft.graph.user/surname", "microsoft.graph.group/displayName"};
requestConfiguration.headers.add("Prefer", "return=minimal");
});
const options = {
authProvider,
};
const client = Client.init(options);
let delta = await client.api('/directoryObjects/delta')
.version('beta')
.header('Prefer','return=minimal')
.filter('isof(\'microsoft.graph.user\') or isof(\'microsoft.graph.group\')')
.select('microsoft.graph.user,microsoft.graph.group')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DirectoryObjects\Delta\DeltaRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new DeltaRequestBuilderGetRequestConfiguration();
$headers = [
'Prefer' => 'return=minimal',
];
$requestConfiguration->headers = $headers;
$queryParameters = DeltaRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')";
$queryParameters->select = ["microsoft.graph.user/surname","microsoft.graph.group/displayName"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->directoryObjects()->delta()->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.DirectoryObjects
Get-MgBetaDirectoryObjectDelta -Filter "isof('microsoft.graph.user') or isof('microsoft.graph.group')" -Property "microsoft.graph.user/surname,microsoft.graph.group/displayName"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.directory_objects.delta.delta_request_builder import DeltaRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = DeltaRequestBuilder.DeltaRequestBuilderGetQueryParameters(
filter = "isof('microsoft.graph.user') or isof('microsoft.graph.group')",
select = ["microsoft.graph.user/surname","microsoft.graph.group/displayName"],
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
request_configuration.headers.add("Prefer", "return=minimal")
result = await graph_client.directory_objects.delta.get(request_configuration = request_configuration)
Respuesta
Este es un ejemplo de la respuesta al usar @odata.deltaLink obtenida de la inicialización de la consulta. La microsoft.graph.user/surname propiedad no está incluida, lo que significa que no ha cambiado desde la última consulta delta; está incluida, microsoft.graph.group/displayName lo que significa que su valor ha cambiado.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#directoryObjects",
"@odata.nextLink":"https://graph.microsoft.com/beta/directoryObjects/delta?$skiptoken=pqwSUjGYvb3jQpbwVAwEL7yuI3dU1LecfkkfLPtnIjsXoYQp_dpA3cNJWc",
"value": [
{
"@odata.type": "#microsoft.graph.group",
"displayName":"Everyone",
"id": "72052a9a-c466-4995-8210-95a1c1221995",
}
]
}
Contenido relacionado