重新启动 synchronizationJob
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
重新启动已停止的同步作业,以强制它重新处理目录中的所有对象。 (可选)清除现有同步状态和以前的错误。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
Directory.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
Application.ReadWrite.OwnedBy、Directory.ReadWrite.All |
HTTP 请求
POST /servicePrincipals/{id}/synchronization/jobs/{jobId}/restart
| 名称 |
类型 |
说明 |
| Authorization |
string |
Bearer {token}。必需。 |
请求正文
在请求正文中,提供具有以下参数的 JSON 对象。
响应
如果成功,则返回 响应 204 No Content 。 它不会在响应正文中返回任何内容。
示例
请求
请求示例如下所示。
POST https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs/{jobId}/restart
Authorization: Bearer <token>
Content-type: application/json
{
"criteria": {
"resetScope": "Watermark, Escrows, QuarantineState"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var criteria = new SynchronizationJobRestartCriteria
{
ResetScope = SynchronizationJobRestartScope.Escrows | SynchronizationJobRestartScope.Watermark | SynchronizationJobRestartScope.QuarantineState
};
await graphClient.ServicePrincipals["{servicePrincipal-id}"].Synchronization.Jobs["{synchronizationJob-id}"]
.Restart(criteria)
.Request()
.Header("Authorization","Bearer <token>")
.PostAsync();
const options = {
authProvider,
};
const client = Client.init(options);
const restart = {
criteria: {
resetScope: 'Watermark, Escrows, QuarantineState'
}
};
await client.api('/servicePrincipals/{id}/synchronization/jobs/{jobId}/restart')
.version('beta')
.post(restart);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/servicePrincipals/{id}/synchronization/jobs/{jobId}/restart"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"Bearer <token>" forHTTPHeaderField:@"Authorization"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSMutableDictionary *payloadDictionary = [[NSMutableDictionary alloc] init];
MSGraphSynchronizationJobRestartCriteria *criteria = [[MSGraphSynchronizationJobRestartCriteria alloc] init];
[criteria setResetScope: [MSGraphSynchronizationJobRestartScope Watermark]];
payloadDictionary[@"criteria"] = criteria;
NSData *data = [NSJSONSerialization dataWithJSONObject:payloadDictionary options:kNilOptions error:&error];
[urlRequest setHTTPBody:data];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
LinkedList<Option> requestOptions = new LinkedList<Option>();
requestOptions.add(new HeaderOption("Authorization", "Bearer <token>"));
SynchronizationJobRestartCriteria criteria = new SynchronizationJobRestartCriteria();
criteria.resetScope = EnumSet.of(SynchronizationJobRestartScope.WATERMARK,SynchronizationJobRestartScope.ESCROWS,SynchronizationJobRestartScope.QUARANTINE_STATE);
graphClient.servicePrincipals("{id}").synchronization().jobs("{jobId}")
.restart(SynchronizationJobRestartParameterSet
.newBuilder()
.withCriteria(criteria)
.build())
.buildRequest( requestOptions )
.post();
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewCriteriaRequestBody()
criteria := msgraphsdk.NewSynchronizationJobRestartCriteria()
requestBody.SetCriteria(criteria)
resetScope := "Watermark, Escrows, QuarantineState"
criteria.SetResetScope(&resetScope)
headers := map[string]string{
"Authorization": "Bearer <token>"
}
options := &msgraphsdk.RestartRequestBuilderPostRequestConfiguration{
Headers: headers,
}
servicePrincipalId := "servicePrincipal-id"
synchronizationJobId := "synchronizationJob-id"
graphClient.ServicePrincipalsById(&servicePrincipalId).Synchronization().JobsById(&synchronizationJobId).Restart(servicePrincipal-id, synchronizationJob-id).PostWithRequestConfigurationAndResponseHandler(requestBody, options, nil)
Import-Module Microsoft.Graph.Applications
$params = @{
Criteria = @{
ResetScope = "Watermark, Escrows, QuarantineState"
}
}
Restart-MgServicePrincipalSynchronizationJob -ServicePrincipalId $servicePrincipalId -SynchronizationJobId $synchronizationJobId -BodyParameter $params
响应
响应示例如下所示。
HTTP/1.1 204 No Content