| title | recoveryJob resource type |
|---|---|
| description | Represents a recovery job that applies changes to restore a tenant's directory objects to a specific snapshot state. |
| author | yuhko-msft |
| ms.date | 03/04/2026 |
| ms.localizationpriority | medium |
| ms.subservice | entra-id |
| doc_type | resourcePageType |
Namespace: microsoft.graph.entraRecoveryServices
[!INCLUDE beta-disclaimer]
Represents a recovery job that applies changes to restore a tenant's directory objects to a specific snapshot state. Inherits from recoveryJobBase. After the job completes, use the getFailedChanges function to review any changes that could not be applied.
Inherits from microsoft.graph.entraRecoveryServices.recoveryJobBase.
| Method | Return type | Description |
|---|---|---|
| List | microsoft.graph.entraRecoveryServices.recoveryJob collection | Get a list of the recoveryJob objects and their properties. |
| Create | microsoft.graph.entraRecoveryServices.recoveryJob | Create a new recoveryJob object. |
| Get | microsoft.graph.entraRecoveryServices.recoveryJob | Read the properties and relationships of a recoveryJob object. |
| Get failed changes | microsoft.graph.entraRecoveryServices.recoveryChangeObjectBase collection | Retrieve changes that failed to apply during recovery. |
| Property | Type | Description |
|---|---|---|
| filteringCriteria | microsoft.graph.entraRecoveryServices.recoveryJobFilteringCriteriaBase | Optional filtering criteria used to scope the job to specific entity types or entity IDs. Inherited from recoveryJobBase. |
| id | String | The unique identifier for the job. Inherited from entity. Supports $filter (eq, ne). |
| jobCompletionDateTime | DateTimeOffset | The date and time when the job completed. Null if the job is still running. Inherited from recoveryJobBase. |
| jobStartDateTime | DateTimeOffset | The date and time when the job started. Inherited from recoveryJobBase. |
| status | microsoft.graph.entraRecoveryServices.recoveryStatus | The current status of the job. Inherited from recoveryJobBase. The possible values are: initialized, running, successful, failed, abandoned, unknownFutureValue, calculating, loadingData. You must use the Prefer: include-unknown-enum-members request header to get the following values from this evolvable enum: calculating, loadingData. Supports $filter (eq, ne). |
| targetStateDateTime | DateTimeOffset | The target snapshot timestamp to which the tenant is being restored. Inherited from recoveryJobBase. Supports $filter (eq, ne). |
| totalChangedLinksCalculated | Int32 | The total count of changed directory object links (relationships) calculated by the job. null until the job completes calculation. This value can differ from totalLinksModified because some link changes may fail to apply during recovery. Inherited from recoveryJobBase. |
| totalChangedObjectsCalculated | Int32 | The total count of changed directory objects calculated by the job. null until the job completes calculation. This value can differ from totalObjectsModified because some object changes may fail to apply during recovery. Inherited from recoveryJobBase. |
| totalFailedChanges | Int32 | The count of changes (including both objects and links) that failed to apply during recovery. |
| totalLinksModified | Int32 | The count of directory object links (relationships) that were successfully modified during recovery. This value may be less than totalChangedLinksCalculated if some link changes failed. |
| totalObjectsModified | Int32 | The count of directory objects that were successfully modified during recovery. This value may be less than totalChangedObjectsCalculated if some object changes failed. |
None.
The following JSON representation shows the resource type.
{
"@odata.type": "#microsoft.graph.entraRecoveryServices.recoveryJob",
"id": "String (identifier)",
"status": "String",
"targetStateDateTime": "String (timestamp)",
"jobStartDateTime": "String (timestamp)",
"jobCompletionDateTime": "String (timestamp)",
"filteringCriteria": {
"@odata.type": "microsoft.graph.entraRecoveryServices.recoveryJobFilteringCriteriaBase"
},
"totalChangedObjectsCalculated": "Integer",
"totalChangedLinksCalculated": "Integer",
"totalObjectsModified": "Integer",
"totalLinksModified": "Integer",
"totalFailedChanges": "Integer"
}